RakutenAI-7B-chat项目介绍
项目概述
RakutenAI-7B-chat是一个由Rakuten集团推出的先进项目,旨在推动日语大型语言模型(LLMs)的技术发展。该项目的模型在日语语言理解基准测试中取得了最佳的成绩,同时在与OpenCalm、Elyza、Youri、Nekomata和Swallow等类似模型的英语测试中也表现出色。RakutenAI-7B-chat采用了Mistral模型架构,并基于Mistral-7B-v0.1预训练模型进行改进,成功实现了对模型权重的重新配置。此外,团队将Mistral的词汇量从32k扩展到48k,以提高日语的每字符-词元率,增强了日语处理能力。
特点与优势
RakutenAI-7B-chat不仅通过独立评估证明在类似大小的开放LLM中表现出色,而且通过提升的词汇量和调整的模型架构,更好地应对了双语需求,支持日语和英语。这使其成为一个功能强大且多才多艺的语言模型,能够更好地回答用户的问题。
使用方法
RakutenAI-7B-chat设计了可以自定义的聊天模板,方便用户进行交互。以下是使用示例代码:
from transformers import AutoModelForCausalLM, AutoTokenizer
model_path = "Rakuten/RakutenAI-7B-chat"
tokenizer = AutoTokenizer.from_pretrained(model_path)
model = AutoModelForCausalLM.from_pretrained(model_path, torch_dtype="auto", device_map="auto")
model.eval()
chat = [
{"role": "system", "content": "A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions."},
{"role": "user", "content": "How to make an authentic Spanish Omelette?"},
]
input_ids = tokenizer.apply_chat_template(chat, tokenize=True, add_generation_prompt=True, return_tensors="pt").to(device=model.device)
tokens = model.generate(
input_ids,
max_length=4096,
do_sample=False,
num_beams=1,
pad_token_id=tokenizer.eos_token_id,
)
out = tokenizer.decode(tokens[0][len(input_ids[0]):], skip_special_tokens=True)
print("ASSISTANT:\n" + out)
模型细节
- 开发方: Rakuten集团, Inc.
- 支持语言: 日语、英语
- 许可证: 采用 Apache License, Version 2.0 授权
- 数据集: 为了创建RakutenAI-7B-chat,模型使用了混合开源和内部定制的数据集进行微调,包括JSNLI、RTE、KUCI、BELEBELE等。
限制和偏见
尽管RakutenAI-7B系列模型能够生成多样化且具有人类风格的文本,但像所有LLM一样,可能会产生偏见、不准确或不安全的输出。在使用这些模型时,请谨慎对待输出结果。
引用
如果您需要引用RakutenAI-7B系列模型的相关研究工作,请参考以下信息:
@misc{rakutengroup2024rakutenai7b,
title={RakutenAI-7B: Extending Large Language Models for Japanese},
author={{Rakuten Group, Inc.} and Aaron Levine and others},
year={2024},
eprint={2403.15484},
archivePrefix={arXiv},
primaryClass={cs.CL}
}