Saiga Llama3 8b
A Russian chat assistant based on Llama-3 8B Instruct, specially trained to provide Russian dialogue support.
Downloads 25.29k
Release Time : 4/18/2024
Model Overview
This is a Russian chat assistant developed based on Meta's Llama-3 8B Instruct model, specifically optimized and fine-tuned for Russian conversations.
Model Features
Russian Optimization
Specially trained and optimized for Russian dialogue, capable of fluent Russian communication.
Llama-3 Foundation
Based on the powerful Llama-3 8B Instruct model, inheriting its excellent language understanding and generation capabilities.
Multi-turn Dialogue Support
Supports complex multi-turn dialogues, capable of understanding context and providing coherent responses.
Model Capabilities
Russian Dialogue Generation
Q&A System
Story Creation
Information Explanation
Use Cases
Customer Support Assistant
Customer Inquiry Response
Answering various customer questions about products or services
Providing accurate and friendly Russian responses
Educational Assistance
Knowledge Q&A
Answering various knowledge-based questions from students
As shown in the example explaining why grass is green
Content Creation
Story Generation
Creating complete stories based on given elements
As shown in the example creating a story based on 'Tanya' and 'ball'
language:
- ru datasets:
- IlyaGusev/saiga_scored license: other license_name: llama3 license_link: https://llama.meta.com/llama3/license/
Saiga/Llama3 8B, Russian Llama-3-based chatbot
Based on Llama-3 8B Instruct.
Llama.cpp version: link
Colab: link
Prompt format
ОСТОРОЖНО! WARNING! LET OP!
I've changed the prompt format from ChatML to the original Llama-3 format in v4. Don't forget to switch formats!
v4, v5, v6+: LLama-3 prompt format:
<|begin_of_text|><|start_header_id|>system<|end_header_id|>
Ты — Сайга, русскоязычный автоматический ассистент. Ты разговариваешь с людьми и помогаешь им.<|eot_id|><|start_header_id|>user<|end_header_id|>
Как дела?<|eot_id|><|start_header_id|>assistant<|end_header_id|>
Отлично, а у тебя?<|eot_id|><|start_header_id|>user<|end_header_id|>
Шикарно. Как пройти в библиотеку?<|eot_id|><|start_header_id|>assistant<|end_header_id|>
v2, v3: ChatML prompt format:
<|im_start|>system
Ты — Сайга, русскоязычный автоматический ассистент. Ты разговариваешь с людьми и помогаешь им.<|im_end|>
<|im_start|>user
Как дела?<|im_end|>
<|im_start|>assistant
Отлично, а у тебя?<|im_end|>
<|im_start|>user
Шикарно. Как пройти в библиотеку?<|im_end|>
<|im_start|>assistant
Code example
# Исключительно ознакомительный пример.
# НЕ НАДО ТАК ИНФЕРИТЬ МОДЕЛЬ В ПРОДЕ.
# См. https://github.com/vllm-project/vllm или https://github.com/huggingface/text-generation-inference
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, GenerationConfig
MODEL_NAME = "IlyaGusev/saiga_llama3_8b"
DEFAULT_SYSTEM_PROMPT = "Ты — Сайга, русскоязычный автоматический ассистент. Ты разговариваешь с людьми и помогаешь им."
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
load_in_8bit=True,
torch_dtype=torch.bfloat16,
device_map="auto"
)
model.eval()
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME)
generation_config = GenerationConfig.from_pretrained(MODEL_NAME)
print(generation_config)
inputs = ["Почему трава зеленая?", "Сочини длинный рассказ, обязательно упоминая следующие объекты. Дано: Таня, мяч"]
for query in inputs:
prompt = tokenizer.apply_chat_template([{
"role": "system",
"content": DEFAULT_SYSTEM_PROMPT
}, {
"role": "user",
"content": query
}], tokenize=False, add_generation_prompt=True)
data = tokenizer(prompt, return_tensors="pt", add_special_tokens=False)
data = {k: v.to(model.device) for k, v in data.items()}
output_ids = model.generate(**data, generation_config=generation_config)[0]
output_ids = output_ids[len(data["input_ids"][0]):]
output = tokenizer.decode(output_ids, skip_special_tokens=True).strip()
print(query)
print(output)
print()
print("==============================")
print()
Output examples
User: Почему трава зеленая?
Saiga: Трава выглядит зеленым из-за наличия в ней хлорофилла – пигмента, который помогает растениям поглощать солнечную энергию для процесса фотосинтеза.
Хлорофилл поглощает световые лучи с длиной волны 400-500 нанометров (ближе к синему) и отражает лучи с длиной волны 600-700 нанометров (ближе к красному), что делает его видимым как зеленый цвет.
Таким образом, зеленый цвет является результатом того, как хлорофилл взаимодействует со светом, обеспечивая растения необходимой энергии для роста и развития.
User: Сочини длинный рассказ, обязательно упоминая следующие объекты. Дано: Таня, мяч
Saiga: В небольшой деревушке под открытым небом жила девочка по имени Таня. Она была очень активной и любящей играть в различные виды спорта. Однажды, когда она прогуливалась по полям, увидела на земле лежащий мяч. Это был старый, но все еще пригодный для игры мячик.
Таня сразу же решила взять его себе домой и показать своему другу Мише. Мишка тоже обожал футбол и всегда рад был бы провести время вместе со своими друзьями. Когда они вернулись домой, Таня показала ему найденный мячик и предложила сыграть в футбол.
Мишка был счастлив, что у них появился новый мяч, и они сразу же начали готовиться к матчу. Они построили две команды и начали игру. Играли они до вечера, а потом решили сделать перерыв и приготовить ужин.
После ужина они продолжили игру, теперь уже с большим энтузиазмом и страстью. В конце концов, победителем стала команда Тани, которая забила больше голов. Все закончилось веселым праздником и хорошими воспоминаниями о проведенном времени.
На следующий день Таня и Миша решили пригласить своих других друзей на игру. Они собрали всех в одном месте и провели ещё один захватывающий матч. Этот день также стал незабываемым благодаря новому мячу, который принес так много радости и улыбок.
Итак, этот маленький мяч, который Таня нашла на поле, стал не просто предметом для игр, но и символом дружбы и веселья между детьми. Он помог им создать незабываемые моменты и укрепил их отношения.
Versions
v7:
- 17e1bcc9c6d3e31852a95a168f7d3778f395cd2a
- Other name: saiga_llama3_8b_abliterated_sft_m11_d7_kto_m7_d7
- SFT dataset config: sft_d7.json
- SFT model config: saiga_llama3_8b_sft_m11.json
- KTO dataset config: pref_d7.json
- KTO model config: saiga_llama3_8b_kto_m7.json
- SFT wandb: link
- KTO wandb: link
v6:
- b662833f247ca04f1843b356e7ff3ee4aef8086a
- Other name: saiga_llama3_8b_sft_m10_d1_kto_m2_d2
- SFT dataset config: sft_d1.json
- SFT model config: saiga_llama3_8b_sft_m10.json
- KTO dataset config: pref_d2.json
- KTO model config: saiga_llama3_8b_kto_m2.json
- SFT wandb: link
- KTO wandb: link
v5:
- d947b00c56683cd4b2f7ce707edef89318027be4
- KTO-tune over v4, dataset: lmsys_clean_ru_preferences
- wandb link
v4:
- 1cc945d4ca2c7901cf989e7edaac52ab24f1a7dd
- dataset: saiga_scored, scores >= 8, c66032920556c0f21bbbed05e7e04433ec954c3d
- wandb link
v3:
- c588356cd60bdee54d52c2dd5a2445acca8aa5c3
- dataset: saiga_scored, scores >= 8, d51cf8060bdc90023da8cf1c3f113f9193d6569b
- wandb link
v2:
- ae61b4f9b34fac9856d361ea78c66284a00e4f0b
- dataset code revision d0d123dd221e10bb2a3383bcb1c6e4efe1b4a28a
- wandb link
- 5 datasets: ru_turbo_saiga, ru_sharegpt_cleaned, oasst1_ru_main_branch, gpt_roleplay_realm, ru_instruct_gpt4
- Datasets merging script: create_short_chat_set.py
Evaluation
- Dataset: https://github.com/IlyaGusev/rulm/blob/master/self_instruct/data/tasks.jsonl
- Framework: https://github.com/tatsu-lab/alpaca_eval
- Evaluator: alpaca_eval_cot_gpt4_turbo_fn
Pivot: chatgpt_3_5_turbo
model | length_controlled_winrate | win_rate | standard_error | avg_length |
---|---|---|---|---|
chatgpt_4_turbo | 76.04 | 90.00 | 1.46 | 1270 |
chatgpt_3_5_turbo | 50.00 | 50.00 | 0.00 | 536 |
saiga_llama3_8b, v6 | 49.33 | 68.31 | 2.26 | 1262 |
sfr-iter-dpo | 49.11 | 74.94 | 2.13 | 1215 |
suzume | 49.05 | 71.57 | 2.20 | 1325 |
saiga_llama3_8b, v7 | 48.95 | 69.40 | 2.25 | 1266 |
saiga_llama3_8b, v5 | 47.13 | 66.18 | 2.31 | 1194 |
saiga_llama3_8b, v4 | 43.64 | 65.90 | 2.31 | 1200 |
saiga_llama3_8b, v3 | 36.97 | 61.08 | 2.38 | 1162 |
saiga_llama3_8b, v2 | 33.07 | 48.19 | 2.45 | 1166 |
saiga_mistral_7b | 23.38 | 35.99 | 2.34 | 949 |
Pivot: sfr
model | length_controlled_winrate | win_rate | standard_error | avg_length |
---|---|---|---|---|
sfr | 50.00 | 50.00 | 0.00 | 1215 |
saiga_llama3_8b, v7 | 48.95 | 49.16 | 2.46 | 1266 |
saiga_llama3_8b, v6 | 46.91 | 47.23 | 2.45 | 1262 |
suzume_8b | 43.69 | 48.19 | 2.46 | 1325 |
Phi 2 GGUF
Other
Phi-2 is a small yet powerful language model developed by Microsoft, featuring 2.7 billion parameters, focusing on efficient inference and high-quality text generation.
Large Language Model Supports Multiple Languages
P
TheBloke
41.5M
205
Roberta Large
MIT
A large English language model pre-trained with masked language modeling objectives, using improved BERT training methods
Large Language Model English
R
FacebookAI
19.4M
212
Distilbert Base Uncased
Apache-2.0
DistilBERT is a distilled version of the BERT base model, maintaining similar performance while being more lightweight and efficient, suitable for natural language processing tasks such as sequence classification and token classification.
Large Language Model English
D
distilbert
11.1M
669
Llama 3.1 8B Instruct GGUF
Meta Llama 3.1 8B Instruct is a multilingual large language model optimized for multilingual dialogue use cases, excelling in common industry benchmarks.
Large Language Model English
L
modularai
9.7M
4
Xlm Roberta Base
MIT
XLM-RoBERTa is a multilingual model pretrained on 2.5TB of filtered CommonCrawl data across 100 languages, using masked language modeling as the training objective.
Large Language Model Supports Multiple Languages
X
FacebookAI
9.6M
664
Roberta Base
MIT
An English pre-trained model based on Transformer architecture, trained on massive text through masked language modeling objectives, supporting text feature extraction and downstream task fine-tuning
Large Language Model English
R
FacebookAI
9.3M
488
Opt 125m
Other
OPT is an open pre-trained Transformer language model suite released by Meta AI, with parameter sizes ranging from 125 million to 175 billion, designed to match the performance of the GPT-3 series while promoting open research in large-scale language models.
Large Language Model English
O
facebook
6.3M
198
1
A pretrained model based on the transformers library, suitable for various NLP tasks
Large Language Model
Transformers

1
unslothai
6.2M
1
Llama 3.1 8B Instruct
Llama 3.1 is Meta's multilingual large language model series, featuring 8B, 70B, and 405B parameter scales, supporting 8 languages and code generation, with optimized multilingual dialogue scenarios.
Large Language Model
Transformers Supports Multiple Languages

L
meta-llama
5.7M
3,898
T5 Base
Apache-2.0
The T5 Base Version is a text-to-text Transformer model developed by Google with 220 million parameters, supporting multilingual NLP tasks.
Large Language Model Supports Multiple Languages
T
google-t5
5.4M
702
Featured Recommended AI Models