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