模型简介
模型特点
模型能力
使用案例
🚀 OPENCHAT 3.5
OPENCHAT 3.5是一款强大的开源语言模型,通过混合质量数据提升性能,在编码、数学推理等多领域表现出色,还具备实验性评估和反馈能力。
🚀 快速开始
要使用此模型,强烈建议按照安装指南安装OpenChat包,并通过运行以下表格中的服务命令来使用与OpenAI兼容的OpenChat API服务器。该服务器使用vLLM进行了高吞吐量部署优化,可在具有24GB RAM的消费级GPU上运行。若要启用张量并行,可在服务命令后追加--tensor-parallel-size N
。
服务器启动后,将在localhost:18888
监听请求,并且与OpenAI ChatCompletion API规范兼容。请参考以下示例请求。此外,你还可以使用OpenChat Web UI以获得更友好的用户体验。
如果你想将服务器部署为在线服务,可以使用--api-keys sk-KEY1 sk-KEY2 ...
指定允许的API密钥,并使用--disable-log-requests --disable-log-stats --log-file openchat.log
仅将日志记录到文件中。出于安全考虑,建议在服务器前使用HTTPS网关。
模型 | 大小 | 上下文 | 权重 | 服务命令 |
---|---|---|---|---|
OpenChat 3.5 1210 | 7B | 8192 | Huggingface | python -m ochat.serving.openai_api_server --model openchat/openchat-3.5-1210 --engine-use-ray --worker-use-ray |
示例请求(点击展开)
✨ 默认模式(GPT4 Correct):最适合编码、聊天和常规任务
curl http://localhost:18888/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "openchat_3.5",
"messages": [{"role": "user", "content": "You are a large language model named OpenChat. Write a poem to describe yourself"}]
}'
🧮 数学推理模式:专为解决数学问题而设计
curl http://localhost:18888/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "openchat_3.5",
"condition": "Math Correct",
"messages": [{"role": "user", "content": "10.3 ‚àí 7988.8133 = "}]
}'
对话模板
✨ 默认模式(GPT4 Correct):最适合编码、聊天和常规任务
GPT4 Correct User: Hello<|end_of_turn|>GPT4 Correct Assistant: Hi<|end_of_turn|>GPT4 Correct User: How are you today?<|end_of_turn|>GPT4 Correct Assistant:
🧮 数学推理模式:专为解决数学问题而设计
Math Correct User: 10.3 ‚àí 7988.8133=<|end_of_turn|>Math Correct Assistant:
⚠️ 重要提示
请记得将
<|end_of_turn|>
设置为生成结束标记。
默认(GPT4 Correct)模板也可以作为集成的tokenizer.chat_template
使用,这样就无需手动指定模板:
messages = [
{"role": "user", "content": "Hello"},
{"role": "assistant", "content": "Hi"},
{"role": "user", "content": "How are you today?"}
]
tokens = tokenizer.apply_chat_template(messages, add_generation_prompt=True)
assert tokens == [1, 420, 6316, 28781, 3198, 3123, 1247, 28747, 22557, 32000, 420, 6316, 28781, 3198, 3123, 21631, 28747, 15359, 32000, 420, 6316, 28781, 3198, 3123, 1247, 28747, 1602, 460, 368, 3154, 28804, 32000, 420, 6316, 28781, 3198, 3123, 21631, 28747]
✨ 主要特性
(实验性)评估器/反馈能力
本次版本加入了评估器功能,以推动开源模型作为评估器的发展。你可以使用默认模式(GPT4 Correct)
和以下提示(与Prometheus相同)来评估响应:
###任务描述:
给定一个指令(可能包含输入)、一个待评估的响应、一个得分为5的参考答案,以及一个代表评估标准的评分规则。
1. 严格根据给定的评分规则撰写详细的反馈,评估响应的质量,而非进行一般性评估。
2. 撰写反馈后,给出一个1到5之间的整数分数。请参考评分规则。
3. 输出格式应如下所示:"反馈: (为标准撰写的反馈) [结果] (1到5之间的整数)"
4. 请不要生成任何其他开头、结尾和解释内容。
###待评估的指令:
{orig_instruction}
###待评估的响应:
{orig_response}
###参考答案(得分5):
{orig_reference_answer}
###评分规则:
[{orig_criteria}]
得分1: {orig_score1_description}
得分2: {orig_score2_description}
得分3: {orig_score3_description}
得分4: {orig_score4_description}
得分5: {orig_score5_description}
###反馈:
📊 基准测试
模型 | 参数数量 | 平均分 | MT-Bench | HumanEval | BBH MC | AGIEval | TruthfulQA | MMLU | GSM8K | BBH CoT |
---|---|---|---|---|---|---|---|---|---|---|
OpenChat-3.5-1210 | 7B | 63.8 | 7.76 | 68.9 | 49.5 | 48.0 | 61.8 | 65.3 | 77.3 | 61.8 |
OpenChat-3.5 | 7B | 61.6 | 7.81 | 55.5 | 47.6 | 47.4 | 59.1 | 64.3 | 77.3 | 63.5 |
ChatGPT (March)* | ? | 61.5 | 7.94 | 48.1 | 47.6 | 47.1 | 57.7 | 67.3 | 74.9 | 70.1 |
OpenHermes 2.5 | 7B | 59.3 | 7.54 | 48.2 | 49.4 | 46.5 | 57.5 | 63.8 | 73.5 | 59.9 |
OpenOrca Mistral | 7B | 52.7 | 6.86 | 38.4 | 49.4 | 42.9 | 45.9 | 59.3 | 59.1 | 58.1 |
Zephyr-β^ | 7B | 34.6 | 7.34 | 22.0 | 40.6 | 39.0 | 40.8 | 39.8 | 5.1 | 16.0 |
Mistral | 7B | - | 6.84 | 30.5 | 39.0 | 38.0 | - | 60.1 | 52.2 | - |
评估详情(点击展开)
*: ChatGPT (March)的结果来自[GPT-4技术报告](https://arxiv.org/abs/2303.08774)、[思维链中心](https://github.com/FranxYao/chain-of-thought-hub)和我们的评估。请注意,ChatGPT不是固定的基线,其性能会随时间快速变化。^: Zephyr-Œ≤经常无法遵循少样本思维链指令,可能是因为它仅使用聊天数据进行对齐,而未在少样本数据上进行训练。
**: Mistral和开源最优结果取自指令微调模型论文和官方仓库中报告的结果。
所有模型均在聊天模式下进行评估(例如,应用相应的对话模板)。所有零样本基准测试遵循与AGIEval论文和Orca论文相同的设置。思维链任务使用与思维链中心相同的配置,HumanEval使用EvalPlus进行评估,MT-bench使用FastChat运行。若要复现我们的结果,请遵循我们的仓库中的说明。
HumanEval+
模型 | 大小 | HumanEval+通过率@1 |
---|---|---|
ChatGPT (2023年12月12日) | - | 64.6 |
WizardCoder-Python-34B-V1.0 | 34B | 64.6 |
OpenChat 3.5 (12月10日) | 7B | 63.4 |
OpenHermes 2.5 | 7B | 41.5 |
OpenChat-3.5-1210与Grok对比
许可证 | 参数数量 | 平均分 | MMLU | HumanEval | 数学 | GSM8k | |
---|---|---|---|---|---|---|---|
OpenChat 3.5 1210 | Apache-2.0 | 7B | 60.1 | 65.3 | 68.9 | 28.9 | 77.3 |
OpenChat 3.5 | Apache-2.0 | 7B | 56.4 | 64.3 | 55.5 | 28.6 | 77.3 |
Grok-0 | 专有 | 33B | 44.5 | 65.7 | 39.7 | 15.7 | 56.8 |
Grok-1 | 专有 | ???B | 55.8 | 73 | 63.2 | 23.9 | 62.9 |
*: Grok的结果由X.AI报告。
中文评估
⚠️ 重要提示
请注意,该模型未明确针对中文进行训练(只有不到0.1%的数据是中文)。
多级多学科中文评估套件(CEVAL)
模型 | 平均分 | STEM | 社会科学 | 人文学科 | 其他 |
---|---|---|---|---|---|
ChatGPT | 54.4 | 52.9 | 61.8 | 50.9 | 53.6 |
OpenChat | 47.29 | 45.22 | 52.49 | 48.52 | 45.08 |
中文大规模多任务语言理解(CMMLU,5-shot)
模型 | STEM | 人文学科 | 社会科学 | 其他 | 中国特定 | 平均分 |
---|---|---|---|---|---|---|
ChatGPT | 47.81 | 55.68 | 56.5 | 62.66 | 50.69 | 55.51 |
OpenChat | 38.7 | 45.99 | 48.32 | 50.23 | 43.27 | 45.85 |
📄 局限性
基础模型局限性
尽管OpenChat具有先进的能力,但它仍然受到其基础模型固有的局限性影响。这些局限性可能会影响模型在以下领域的性能:
- 复杂推理
- 数学和算术任务
- 编程和编码挑战
生成不存在信息(幻觉)
OpenChat有时可能会生成不存在或不准确的信息,即所谓的“幻觉”。用户应意识到这种可能性,并对从模型获取的任何关键信息进行验证。
安全性
OpenChat有时可能会生成有害、仇恨言论、有偏见的响应,或回答不安全的问题。在需要安全和适度响应的用例中,应用额外的AI安全措施至关重要。
📄 许可证
我们的OpenChat 3.5代码和模型根据Apache许可证2.0进行分发。
📚 数据集详情
OpenChat 3.5使用C - RLFT在一组公开可用的高质量指令数据上进行训练,并采用了自定义处理流程。以下是一些值得注意的子集:
- OpenChat ShareGPT
- 带有FLAN答案的Open - Orca
- 反馈收集
- Capybara(针对MT - bench进行去污染处理)
- GOAT
- Glaive
- MetaMathQA
- MathInstruct
- OpenAssistant
📚 引用
@article{wang2023openchat,
title={OpenChat: Advancing Open-source Language Models with Mixed-Quality Data},
author={Wang, Guan and Cheng, Sijie and Zhan, Xianyuan and Li, Xiangang and Song, Sen and Liu, Yang},
journal={arXiv preprint arXiv:2309.11235},
year={2023}
}
📇 联系我们
我们期待听到你的声音,并在这个激动人心的项目上进行合作!
项目负责人:
- 王观 [imonenext at gmail dot com]
- Alpay Ariyak [aariyak at wpi dot edu]



