exl2 version of Synatra-V0.1-7B-Instruct
used dataset : beomi/KoAlpaca
quantized by IHaBiS

command : python convert.py -i models/maywell_Synatra-V0.1-7B-Instruct -o Synatra-V0.1-7B-Instruct-temp -cf Synatra-V0.1-7B-Instruct-4.0bpw-h8-exl2 -c train-00000-of-00001-21df739eb88d711e.parquet -l 4096 -b 4 -hb 8 -ss 4096

Below this sentence is original model card

Synatra-V0.1-7B

Made by StableFluffy

Visit my website! - Currently on consturction..

Join Discord Server

License

This model is strictly non-commercial (cc-by-nc-4.0) use only which takes priority over the LLAMA 2 COMMUNITY LICENSE AGREEMENT. The "Model" is completely free (ie. base model, derivates, merges/mixes) to use for non-commercial purposes as long as the the included cc-by-nc-4.0 license in any parent repository, and the non-commercial use statute remains, regardless of other models' licences. The licence can be changed after new model released.

Model Details

Base Model
mistralai/Mistral-7B-Instruct-v0.1

Trained On
A6000 48GB * 8

Instruction format

In order to leverage instruction fine-tuning, your prompt should be surrounded by [INST] and [/INST] tokens. The very first instruction should begin with a begin of sentence id. The next instructions should not. The assistant generation will be ended by the end-of-sentence token id. Plus, It is strongly recommended to add a space at the end of the prompt.

E.g.

text = "<s>[INST] 아이작 뉴턴의 업적을 알려줘. [/INST] "

Model Benchmark

KULLM Evaluation

구름v2 repo 에서 제공되는 데이터셋과 프롬프트를 사용하여 평가했습니다. 당시 GPT4와 현재 GPT4가 완전히 동일하지는 않기에 실제 결과와 약간의 차이가 존재 할 수 있습니다.

img

Model 이해가능성 자연스러움 맥락유지 흥미로움 지시어사용 전반적퀄리티
GPT-3.5 0.980 2.806 2.849 2.056 0.917 3.905
GPT-4 0.984 2.897 2.944 2.143 0.968 4.083
KoAlpaca v1.1 0.651 1.909 1.901 1.583 0.385 2.575
koVicuna 0.460 1.583 1.726 1.528 0.409 2.440
KULLM v2 0.742 2.083 2.107 1.794 0.548 3.036
Synatra-V0.1-7B 0.960 2.821 2.755 2.356 0.934 4.065

KOBEST_BOOLQ, SENTINEG, WIC - ZERO_SHOT

EleutherAI/lm-evaluation-harness를 사용하여 BoolQ, SentiNeg, Wic을 측정했습니다.

HellaSwag와 COPA는 원본코드를 수정하는 과정에서 어려움을 겪어 아직 진행하지 않았습니다.

NOTE

BoolQ에는 Instruction 모델의 이해를 돕기위해 "위 글에 대한 질문에 사실을 확인하는 작업입니다.", "예, 아니오로 대답해주세요."의 프롬프트를 추가했습니다. SentiNeg에는 Instruction 모델의 이해를 돕기위해 "위 문장의 긍정, 부정 여부를 판단하세요."의 프롬프트를 추가했습니다. Wic의 경우는 [INST], [\INST]만 추가하였습니다.

Model COPA HellaSwag BoolQ SentiNeg Wic
EleutherAI/polyglot-ko-12.8b 0.7937 0.5954 0.4818 0.9117 0.3985
Synatra-V0.1-7B NaN NaN 0.849 0.8690 0.4881

Implementation Code

Since, chat_template already contains insturction format above. You can use the code below.

from transformers import AutoModelForCausalLM, AutoTokenizer

device = "cuda" # the device to load the model onto

model = AutoModelForCausalLM.from_pretrained("maywell/Synatra-V0.1-7B")
tokenizer = AutoTokenizer.from_pretrained("maywell/Synatra-V0.1-7B")

messages = [
    {"role": "user", "content": "What is your favourite condiment?"},
]

encodeds = tokenizer.apply_chat_template(messages, return_tensors="pt")

model_inputs = encodeds.to(device)
model.to(device)

generated_ids = model.generate(model_inputs, max_new_tokens=1000, do_sample=True)
decoded = tokenizer.batch_decode(generated_ids)
print(decoded[0])

If you run it on oobabooga your prompt would look like this. - ** Need to add Space at the end! **

[INST] 링컨에 대해서 알려줘. [\INST] 

Readme format: beomi/llama-2-ko-7b