🚀 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"])
✨ 主要特性
- 多語言支持:支持英語、葡萄牙語、西班牙語、法語、德語、荷蘭語、意大利語、韓語、中文和俄語。
- 多任務處理:能夠處理多種翻譯相關任務,如通用機器翻譯、自動後編輯、命名實體識別、語法錯誤糾正和釋義生成等。
📦 安裝指南
運行模型前,你需要安裝必要的庫:
pip install git+https://github.com/huggingface/transformers.git
pip install accelerate
📚 詳細文檔
模型詳情
模型描述
TowerInstruct-7B是在TowerBase模型基礎上,在TowerBlocks監督微調數據集上進行微調得到的語言模型。TowerInstruct-7B-v0.1是該系列的第一個模型。該模型經過訓練,可處理多種翻譯相關任務,如通用機器翻譯(如句子和段落級翻譯、術語感知翻譯、上下文感知翻譯)、自動後編輯、命名實體識別、語法錯誤糾正和釋義生成等。更多詳細信息將在後續的技術報告中發佈。
- 開發者:Unbabel、里斯本大學高等技術學院、巴黎薩克雷大學中央理工-高等電力學院
- 模型類型:一個70億參數的模型,在與翻譯相關任務的公開可用合成數據集、對話數據集和代碼指令的混合數據上進行微調。
- 支持語言(NLP):英語、葡萄牙語、西班牙語、法語、德語、荷蘭語、意大利語、韓語、中文、俄語
- 許可證:CC-BY-NC-4.0,Llama 2根據LLAMA 2社區許可證獲得許可,版權所有 © Meta Platforms, Inc. 保留所有權利。
- 微調基礎模型:TowerBase
預期用途和限制
該模型最初在經過過濾和預處理的監督微調數據集(TowerBlocks)上進行微調,該數據集包含多種數據源:
- 翻譯(句子和段落級)
- 自動後編輯
- 機器翻譯評估
- 上下文感知翻譯
- 術語感知翻譯
- 多參考翻譯
- 命名實體識別
- 釋義生成
- 合成聊天數據
- 代碼指令
你可以在這裡找到TowerBlocks數據集及其所有數據源。
超出範圍的使用
該模型不能保證對其支持的10種語言以外的語言有效。儘管我們在對話數據和代碼指令上訓練了該模型,但它並非旨在用作對話式聊天機器人或代碼助手。目前,我們正在努力提高文檔級翻譯的質量和一致性,該模型不適合用作文檔級翻譯工具。
偏差、風險和限制
TowerInstruct-v0.1尚未與人類偏好對齊,因此該模型可能會生成有問題的輸出(如幻覺、有害內容或虛假陳述)。
提示格式
TowerInstruct-v0.1使用ChatML提示模板進行訓練,無系統提示。示例如下:
<|im_start|>user
{用戶提示}<|im_end|>
<|im_start|>assistant
{模型響應}<|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社區許可證獲得許可。
📚 引用
@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}
}
