🚀 Vikhr-YandexGPT-5-Lite-8B-it
基於YandexGPT-5-Lite-8B-pretrain的指令模型,使用SFT方法在俄語數據集GrandMaster-PRO-MAX和Grounded-RAG-RU-v2上進行訓練。
🚀 快速開始
你可以通過以下鏈接嘗試使用該模型:

✨ 主要特性
📦 安裝指南
暫未提供安裝步驟相關內容。
💻 使用示例
基礎用法
以下是一個使用該模型的代碼示例:
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "Vikhrmodels/Vikhr-YandexGPT-5-Lite-8B-it"
model = AutoModelForCausalLM.from_pretrained(model_name)
tokenizer = AutoTokenizer.from_pretrained(model_name)
input_text = "Напиши краткое описание фильма Назад в будущее."
messages = [
{"role": "user", "content": input_text},
]
input_ids = tokenizer.apply_chat_template(messages, truncation=True, add_generation_prompt=True, return_tensors="pt")
output = model.generate(
input_ids,
max_length=1512,
temperature=0.7,
)
generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
print(generated_text)
模型回覆:
"《回到未來》(英文:"Back to the Future")是一部於1985年上映的美國科幻電影。該電影由羅伯特·澤米吉斯執導,鮑勃·蓋爾編劇。邁克爾·J·福克斯、克里斯托弗·洛伊德和莉婭·湯普森主演。
電影講述了1985年的普通少年馬蒂·麥克弗萊的故事,他因朋友科學家埃米特·布朗博士的發明而意外回到了1955年。馬蒂發現自己身處過去,他必須幫助當時年輕天真的布朗博士發明時光機。
在冒險過程中,馬蒂遇到了年輕的布朗博士及其家人,還愛上了一個女孩,而這個女孩未來將成為他的母親。馬蒂不僅要糾正過去的錯誤,還要防止一場可能改變未來的災難。
這部電影獲得了眾多獎項,成為了經典之作,還衍生出了兩部續集以及許多至今仍廣受歡迎的梗和臺詞。"
高級用法
如何使用RAG
documents
是一個包含文檔內容描述的字典列表,使用 json.dumps(array, ensure_ascii=False)
進行處理(見下面的示例)。
文檔內容可以採用3種不同的格式:Markdown、HTML、純文本。每個文檔的內容可以是長度不超過4000個字符的文本塊。
[
{
"doc_id": (0..5),
"title": "(null or str)",
"content": "(html or markdown or plain text)"
}
]
正確使用OpenAI-like API的示例
啟動vLLM服務器:vllm serve --dtype half --max-model-len 32000 -tp 1 Vikhrmodels/Vikhr-YandexGPT-5-Lite-8B-it --api-key token-abc123
GROUNDED_SYSTEM_PROMPT = "Your task is to answer the user's questions using only the information from the provided documents. Give two answers to each question: one with a list of relevant document identifiers and the second with the answer to the question itself, using documents with these identifiers."
documents = [
{
"doc_id": 0,
"title": "全球變暖:冰川",
"content": "在過去的50年裡,全球冰川的體積減少了30%"
},
{
"doc_id": 1,
"title": "全球變暖:海平面",
"content": "自1880年以來,全球海平面上升了20釐米,並且每年繼續上升3.3毫米"
}
]
sample_history = [
{'role': 'system', 'content': GROUNDED_SYSTEM_PROMPT},
{'role': 'documents', 'content': json.dumps(documents, ensure_ascii=False)},
{'role': 'user', 'content': '全球變暖'}
]
relevant_indexes = llm_client.chat.completions.create(
model=llm_model,
messages=sample_history,
temperature=0.0,
max_tokens=2048
).choices[0].message.content
print('使用文檔: ' + relevant_indexes + '\n----')
final_answer = llm_client.chat.completions.create(
model=llm_model,
messages=sample_history + [{'role': 'assistant', 'content': relevant_indexes}],
temperature=0.3,
max_tokens=2048
).choices[0].message.content
print(final_answer)
代碼執行後的回覆大致如下:
使用文檔: {"relevant_doc_ids": [0, 1]}
全球變暖是指地球大氣和海洋的平均溫度長期上升的現象。這一現象對我們的星球產生了諸多影響,根據我所掌握的數據,其中有兩個關鍵方面值得關注:
-
冰川體積減少:在過去的50年裡,全球冰川的體積顯著減少。數據顯示,冰川體積減少了30%。這可能與冰川因溫度升高而融化有關,是全球變暖的一個跡象。
-
海平面上升:全球海平面也在上升,這與冰川和冰蓋的融化以及水溫升高導致的海水膨脹有關。自1880年以來,海平面上升了20釐米,並且每年以3.3毫米的速度繼續上升。
這些變化對生態系統、氣候和人類社會產生了嚴重影響。冰川融化導致海平面上升,可能會淹沒沿海地區和島嶼,還會改變水資源和氣候模式。
通過模型的第一個回覆 relevant_indexes
(JSON格式),可以判斷模型是否在文檔中找到了相關信息。如果沒有找到,模型會返回一個空數組,在生成第二個回覆時,它會表示在知識庫中未找到相關信息。
📚 詳細文檔
注意事項和限制
⚠️ 重要提示
該模型的回答安全級別較低,其設計目的是正確、完整地執行指令。在使用時請務必注意這一點,並自行進行測試。部分問題可以通過系統提示和在用戶提示中額外強調安全重要性來解決。
💡 使用建議
- 系統提示不用於描述角色,建議用於指定回答風格(例如“僅以JSON格式回答”)。此外,建議使用英語編寫系統提示,因為數據集中是這樣處理的,但使用英語編寫系統提示並不影響回答的語言。
- RAG模式必須使用 如何使用RAG 部分中描述的系統提示
GROUNDED_SYSTEM_PROMPT
。此外,模型有時可能會在回答中加入一些來自其自身知識的通用信息。
- 建議使用較低的溫度(0.1 - 0.5)和
top_k
(30 - 50)來使用該模型。當溫度為1.0時,可能會出現隨機的生成缺陷。
🔧 技術細節
Vikhr-YandexGPT-5-Lite-8B-it 是使用SFT(Supervised Fine-Tuning)方法創建的。
指令式SFT部分
在模型的SFT訓練階段,我們準備了一個大型(150k條指令)的指令式合成數據集 Vikhrmodels/GrandMaster-PRO-MAX。該數據集的特點是內置了CoT(Chain-Of-Thought),我們使用了經過修改的gpt-4-turbo提示來收集這些數據,詳細信息可在數據集卡片中查看。
此外,為了實現RAG Grounding,我們還準備了另一個合成數據集 - Vikhrmodels/Grounded-RAG-RU-v2(50k個對話),其收集流程較為複雜,無法在此簡要描述,你可以在其數據集卡片中瞭解更多詳細信息。
訓練配置
📄 許可證
該模型使用的許可證為 yandexgpt-5-lite-8b-pretrain。
👥 作者
引用
@inproceedings{nikolich2024vikhr,
title={Vikhr: Advancing Open-Source Bilingual Instruction-Following Large Language Models for Russian and English},
author={Aleksandr Nikolich and Konstantin Korolev and Sergei Bratchikov and Nikolay Kompanets and Igor Kiselev and Artem Shelmanov},
booktitle={Proceedings of the 4th Workshop on Multilingual Representation Learning (MRL) @ EMNLP-2024},
year={2024},
publisher={Association for Computational Linguistics},
url={https://arxiv.org/pdf/2405.13929}
}