项目介绍
Baichuan 2 大语言模型
Baichuan 2 是百川智能推出的一个全新开源大语言模型,经过了2.6万亿个高质量语料训练。这款模型在多种权威的中文、英文及多语言的通用、专业领域的基准测试中,展现出了同尺寸模型中的最佳效果。此次发布的版本包括7B和13B的基础(Base)和聊天(Chat)版本,并提供了Chat版本的4bits量化。Baichuan 2 可免费用于学术研究,并允许在获得官方商用许可后进行商业使用。
推理和部署
Baichuan 2 模型的推理所需的所有资源都在Hugging Face上开放,用户可以使用Python代码、命令行工具和网页demo等多种方式进行模型推理和测试。
Python 代码示例
-
Chat 模型
import torch from transformers import AutoModelForCausalLM, AutoTokenizer from transformers.generation.utils import GenerationConfig tokenizer = AutoTokenizer.from_pretrained("baichuan-inc/Baichuan2-13B-Chat") model = AutoModelForCausalLM.from_pretrained("baichuan-inc/Baichuan2-13B-Chat", device_map="auto") messages = [{"role": "user", "content": "解释一下“温故而知新”"}] response = model.chat(tokenizer, messages) print(response)
-
Base 模型
from transformers import AutoModelForCausalLM, AutoTokenizer tokenizer = AutoTokenizer.from_pretrained("baichuan-inc/Baichuan2-13B-Base") model = AutoModelForCausalLM.from_pretrained("baichuan-inc/Baichuan2-13B-Base", device_map="auto") inputs = tokenizer('登鹳雀楼->王之涣\n夜雨寄北->', return_tensors='pt') pred = model.generate(**inputs, max_new_tokens=64) print(tokenizer.decode(pred[0], skip_special_tokens=True))
Benchmarks 测试结果
Baichuan 2 在多语种、法律、医疗、数学、代码、通用及翻译领域进行了全面的基准测试:
- 通用领域:在多个数据集上,如C-Eval、MMLU、CMMLU等,分别进行了5-shot测试。
- 法律及医疗领域:使用如JEC-QA、MedQA等数据集进行了5-shot测试。
- 数学及代码领域:在如GSM8K、MATH、HumanEval等数据集进行了测试。
- 多语言翻译能力:在Flores-101数据集的七个子任务中进行了8-shot测试。
社区与生态
Baichuan 2 开源模型受到了广泛的关注,支持多种形式的开发者参与。用户可以通过多种平台,如Hugging Face、ModelScope等,获取最新的模型版本及资源。
声明及引用
Baichuan 2 模型拥有完整的使用协议,并提供详细的技术报告和文档,供研究和商用方参考。用户可根据具体需求在相应平台申请并遵循相关协议。
总结
Baichuan 2 通过多语言和多领域的测试验证,其在大规模语言模型中表现出了出色的性能和广泛的应用潜力,为开发者与研究人员提供了强大的工具支持。