🚀 TowerInstruct-7B-v0.1
TowerInstruct-7B-v0.1は、翻訳関連のタスクを扱うために微調整された言語モデルです。TowerBaseをTowerBlocksデータセットで微調整して作成され、多様な翻訳タスクや関連作業に対応しています。
🚀 クイックスタート
🤗 Transformersのpipeline()
関数を使って、次のようにモデルを実行できます。
import torch
from transformers import pipeline
pipe = pipeline("text-generation", model="Unbabel/TowerInstruct-v0.1", torch_dtype=torch.bfloat16, device_map="auto")
messages = [
{"role": "user", "content": "Translate the following text from Portuguese into English.\nPortuguese: Um grupo de investigadores lançou um novo modelo para tarefas relacionadas com tradução.\nEnglish:"},
]
prompt = pipe.tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
outputs = pipe(prompt, max_new_tokens=256, do_sample=False)
print(outputs[0]["generated_text"])
✨ 主な機能
TowerInstruct-7B-v0.1は、以下のような翻訳関連のタスクを扱うことができます。
- 一般的な機械翻訳(文や段落レベルの翻訳、用語意識のある翻訳、文脈意識のある翻訳など)
- 自動ポストエディット
- 固有表現認識
- 文法エラー修正
- 言い換え生成
📚 ドキュメント
モデルの詳細
- 開発者: Unbabel、Instituto Superior Técnico、CentraleSupélec University of Paris-Saclay
- モデルのタイプ: 翻訳関連のタスクに関する公開データセット、会話データセット、コード命令の混合データで微調整された70億パラメータのモデル
- 言語: 英語、ポルトガル語、スペイン語、フランス語、ドイツ語、オランダ語、イタリア語、韓国語、中国語、ロシア語
- ライセンス: CC-BY-NC-4.0、Llama 2はLLAMA 2 Community Licenseの下でライセンスされています。Copyright © Meta Platforms, Inc. All Rights Reserved.
- 微調整元のモデル: TowerBase
想定される用途と制限
このモデルは、フィルタリングされ前処理された教師付き微調整データセット(TowerBlocks)で最初に微調整されました。このデータセットには、以下のような多様なデータソースが含まれています。
- 翻訳(文と段落レベル)
- 自動ポストエディット
- 機械翻訳評価
- 文脈意識のある翻訳
- 用語意識のある翻訳
- 複数参照翻訳
- 固有表現認識
- 言い換え生成
- 合成チャットデータ
- コード命令
想定外の用途
このモデルは、サポートする10言語以外の言語に対しては性能が保証されていません。会話データやコード命令で訓練されていますが、会話型チャットボットやコードアシスタントとしての使用を意図していません。現在、文書レベルの翻訳の品質と一貫性の向上に取り組んでいますが、このモデルは文書レベルの翻訳ツールとして使用することを意図していません。
バイアス、リスク、制限
TowerInstruct-v0.1は人間の嗜好にアライメントされていないため、問題のある出力(幻覚、有害な内容、誤った記述など)を生成する可能性があります。
プロンプト形式
TowerInstruct-v0.1は、システムプロンプトなしでChatMLプロンプトテンプレートを使用して訓練されました。以下に例を示します。
<|im_start|>user
{USER PROMPT}<|im_end|>
<|im_start|>assistant
{MODEL RESPONSE}<|im_end|>
<|im_start|>user
[...]
教師付きタスク
すべての教師付きタスクのプロンプトはTowerBlocksにあります。各タスクには複数のプロンプトテンプレートを使用しています。異なるプロンプトでは異なる出力が得られる場合がありますが、下流の性能の差は非常に小さいはずです。
訓練の詳細
訓練データ
TowerBlocksへのリンクです。
訓練ハイパーパラメータ
訓練中に使用されたハイパーパラメータは以下の通りです。
属性 |
詳情 |
合計訓練バッチサイズ |
256 |
学習率 |
7e-06 |
学習率スケジューラのタイプ |
cosine |
学習率スケジューラのウォームアップステップ |
500 |
重み減衰 |
0.01 |
オプティマイザ |
Adam (betas=(0.9,0.999), epsilon=1e-08) |
エポック数 |
4 |
最大シーケンス長 |
2048 |
📄 ライセンス
このモデルはCC-BY-NC-4.0ライセンスの下で提供されています。Llama 2はLLAMA 2 Community Licenseの下でライセンスされています。Copyright © Meta Platforms, Inc. All Rights Reserved.
📖 引用
@misc{tower_llm_2024,
title={Tower: An Open Multilingual Large Language Model for Translation-Related Tasks},
author={Duarte M. Alves and José Pombal and Nuno M. Guerreiro and Pedro H. Martins and João Alves and Amin Farajian and Ben Peters and Ricardo Rei and Patrick Fernandes and Sweta Agrawal and Pierre Colombo and José G. C. de Souza and André F. T. Martins},
year={2024},
eprint={2402.17733},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
