🚀 kazRush-ru-kk
kazRush-ru-kk 是一個用於將俄語翻譯成哈薩克語的翻譯模型。該模型基於 T5 配置,使用隨機初始化的權重,在可用的開源平行數據上進行訓練。
🚀 快速開始
使用該模型需要安裝 sentencepiece
庫。安裝必要的依賴項後,可以使用以下代碼運行模型:
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
import torch
device = 'cuda'
model = AutoModelForSeq2SeqLM.from_pretrained('deepvk/kazRush-ru-kk').to(device)
tokenizer = AutoTokenizer.from_pretrained('deepvk/kazRush-ru-kk')
@torch.inference_mode
def generate(text, **kwargs):
inputs = tokenizer(text, return_tensors='pt').to(device)
hypotheses = model.generate(**inputs, num_beams=5, **kwargs)
return tokenizer.decode(hypotheses[0], skip_special_tokens=True)
print(generate("Как Кока-Кола может помочь автомобилисту?"))
你還可以通過 pipeline 包裝器訪問該模型:
>>> from transformers import pipeline
>>> pipe = pipeline(model="deepvk/kazRush-ru-kk")
>>> pipe("Мама мыла раму")
[{'translation_text': 'Анам жақтауды сабындады'}]
✨ 主要特性
- 基於 T5 配置,使用隨機初始化的權重進行訓練。
- 可將俄語翻譯成哈薩克語。
📦 安裝指南
使用該模型需要安裝 sentencepiece
庫。安裝必要的依賴項後,即可使用模型。
💻 使用示例
基礎用法
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
import torch
device = 'cuda'
model = AutoModelForSeq2SeqLM.from_pretrained('deepvk/kazRush-ru-kk').to(device)
tokenizer = AutoTokenizer.from_pretrained('deepvk/kazRush-ru-kk')
@torch.inference_mode
def generate(text, **kwargs):
inputs = tokenizer(text, return_tensors='pt').to(device)
hypotheses = model.generate(**inputs, num_beams=5, **kwargs)
return tokenizer.decode(hypotheses[0], skip_special_tokens=True)
print(generate("Как Кока-Кола может помочь автомобилисту?"))
高級用法
>>> from transformers import pipeline
>>> pipe = pipeline(model="deepvk/kazRush-ru-kk")
>>> pipe("Мама мыла раму")
[{'translation_text': 'Анам жақтауды сабындады'}]
更多使用示例
>>> print(generate("Каждый охотник желает знать, где сидит фазан."))
Әрбір аңшы ғибадатхананың қайда отырғанын білгісі келеді.
>>> print(generate("Местным продуктом-специалитетом с защищённым географическим наименованием по происхождению считается люнебургский степной барашек."))
Шығу тегі бойынша қорғалған географиялық атауы бар жергілікті мамандандырылған өнім болып люнебургтік дала қошқар болып саналады.
>>> print(generate("Помогите мне удивить девушку"))
Қызды таң қалдыруға көмектесіңіз
📚 詳細文檔
數據與訓練
該模型在以下數據(俄語 - 哈薩克語語言對)上進行訓練:
數據預處理包括:
- 去重
- 從文本中去除垃圾符號、特殊標籤、多個空格等
- 去除非俄語或哈薩克語的文本(語言檢測通過 facebook/fasttext-language-identification 進行)
- 去除對齊分數較低的語言對(比較通過 sentence-transformers/LaBSE 進行)
- 使用 opusfilter 工具過濾數據
模型在 2 個 NVIDIA A100 80 Gb GPU 上訓練了 56 小時。
評估
將當前模型與另一個開源翻譯模型 NLLB 進行比較。由於 nllb-moe-54b 模型規模過大,因此排除該版本,將我們的模型與 NLLB 的其他版本進行比較。
在 FLORES+ 評估基準 的 devtest
部分計算了 BLEU、chrF 和 COMET 指標,FLORES+ 是最新的多語言機器翻譯評估基準。
BLEU 和 chrF 的計算遵循 sacreBLEU 的標準實現,COMET 使用 COMET 倉庫 中描述的默認模型進行計算。
📄 許可證
本模型使用的許可證為 apache - 2.0。
📚 引用
@misc{deepvk2024kazRushrukk,
title={kazRush-ru-kk: translation model from Russian to Kazakh},
author={Lebedeva, Anna and Sokolov, Andrey},
url={https://huggingface.co/deepvk/kazRush-ru-kk},
publisher={Hugging Face},
year={2024},
}