OpenLLM-France/Luciole-23B-Instruct-1.1(Apache 2.0许可,另有8B和1B版本可用)
摘要
OpenLLM-France发布了Luciole-23B-Instruct-1.1,这是一个基于Apache 2.0许可的开源多语言指令调优语言模型,同时提供较小的8B和1B变体。
查看缓存全文
缓存时间: 2026/07/16 18:13
OpenLLM-France/Luciole-23B-Instruct-1.1 · Hugging Face
来源: https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1 luciole_logo.png (https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1/blob/main/luciole_logo.png)
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#model-card-for-luciole-23b-instruct-11Luciole-23B-Instruct-1.1 模型卡
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#model-description模型描述
Luciole-23B-Instruct-1.1 是 Luciole-23B-Base 的微调和对齐版本,后者是由 OpenLLM-France 创建的开源多语言因果语言模型。Luciole-23B-Instruct-1.1 由 LINAGORA 和 OpenLLM-France 联盟在 OpenLLM France 项目框架内开发,该项目由 BPI France 通过 France 2030 计划资助。
Luciole-23B-Instruct-1.1 的训练在 Jean Zay 上分三个阶段进行:(i) 基于含思考痕迹的指令数据进行监督微调(SFT);(ii) 基于不含思考痕迹的指令数据进行 SFT;(iii) 最后使用直接偏好优化(DPO)进行偏好对齐。训练数据涵盖数学、科学、编程、通用对话、RAG 和翻译等主题。
请注意,Luciole-23B-Instruct-1.1 只是基于 Luciole-23B-Base 的后训练模型的第一个迭代。Luciole 模型的开发是一个活跃的持续项目,未来计划包括基于更高比例法语数据训练的模型。本着开源精神,我们共享模型权重和训练方案,以促进研究并为其他训练项目提供开源构建模块。
如果您有兴趣为 Luciole 项目做出贡献,请通过 [email protected] 联系我们。
- 许可证:Apache 2.0
- 训练仓库:Luciole-Training
- 训练数据:即将发布。
- 技术报告:即将发布。
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#bias-risks-and-limitations偏差、风险与局限性
Luciole-23B-Instruct-1.1 是第一轮微调和对齐人类偏好的结果。当前正在积极持续改进模型,在将其集成到工业流程之前,应针对目标用例进行充分测试。训练主要集中在指令遵循上,对于专门针对代码生成或数学问题解决的任务,需要额外的训练。该模型也容易产生幻觉,即由于在大规模多样化文本上训练而产生错误答案。
Luciole-23B-Instruct-1.1 的后训练几乎全部基于英语数据(与其基础模型 OpenLLM-France/Luciole-23B-Base 不同,该基础模型约 30% 数据为法语)。未来的后训练阶段将专门增加法语数据比例,并测试其对模型性能的影响。
由于规模限制,Luciole-23B-Instruct-1.1 记忆信息的能力有限;通过将该模型集成到检索增强生成流水线中,可以提高其生成正确回答的能力。
最后,Luciole-23B-Instruct-1.1 是基于 16,384 个 token 的序列训练的(而它的基础模型上下文窗口已扩展到 131,000 个 token)。
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#recommendations建议
- 针对特定用例进一步训练 Luciole-23B-Instruct-1.1。
- 将模型集成到 RAG 流水线中以增强其知识库。
- 使用更长的序列进行扩展训练以增加上下文长度。
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#training-details训练详情
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#training-data训练数据
后训练数据和数据集描述即将发布。
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#instruction-template指令模板
Luciole-23B-Instruct-1.1 基于受 Qwen3-1.7B 启发的聊天模板进行训练。在我们的聊天模板中,我们还使用了一个默认系统提示。
示例:
from transformers import AutoTokenizer tokenizer = AutoTokenizer.from_pretrained("OpenLLM-France/Luciole-23B-Instruct-1.1") chat = [ { "content": "Who was Molière?", "role": "user" }, { "content": "Molière was a 17th-century French playwright, actor, and comedian.", "role": "assistant" }, { "content": "What are his best-known works?", "role": "user" } ] print(tokenizer.apply_chat_template(chat, tokenize=False, add_generation_prompt=True))
输出结果为:
<|im_start|>system You are a helpful AI assistant named Luciole, trained by LINAGORA and OpenLLM France.<|im_end|> <|im_start|>user Who was Molière?<|im_end|> <|im_start|>assistant Molière was a 17th-century French playwright, actor, and comedian.<|im_end|> <|im_start|>user What are his best-known works?<|im_end|> <|im_start|>assistant
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#training-procedure训练过程
Luciole-23B-Instruct-1.1 分三个阶段进行训练。模型首先在思考数据上进行微调,然后在不含思考痕迹的数据上微调。最后通过 DPO 微调阶段对得到的指令模型进行对齐。
| 含思考的 SFT | 不含思考的 SFT | 不含思考的 DPO | |
|---|---|---|---|
| 训练样本数 | 260 万 | 210 万 | 28.4 万 |
| 训练轮次 | 4 | 4 | 1 |
| 最大学习率 | 2.0e-5 | 2.0e-5 | 3.0e-7 |
| 最小学习率 | 2.0e-6 | 2.0e-6 | 0 |
| 学习率调度器 | cosine | cosine | linear |
| 最大序列长度 | 16384 | 16384 | 16384 |
| 批次大小 | 2048 | 2048 | 128 |
| DPO β | 不适用 | 不适用 | 5 |
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#evaluation评估
总体而言,Luciole-23B-Instruct-1.1 的性能与其他相同规模的开源指令模型相当。该模型在指令遵循基准测试上表现尤为出色。其在法语指令遵循(ifeval-fr)上的表现引人注目,因为 Luciole-23B-Instruct-1.1 是基于绝大部分英语数据进行微调的。这可能是由于预训练期间接触了更大比例的法语数据所致。
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#testing-the-model测试模型
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#test-with-ollama使用 ollama 测试
注意:为获得最佳性能,请使用 OpenLLM 官方发布的 GGUF 文件。
- 下载并安装 Ollama
- 下载 GGUF 模型
- 复制
Modelfile,如有必要调整 GGUF 文件的路径(以FROM开头的行)。 - 在 shell 中运行:
ollama create -f Modelfile Lucioleollama run Luciole
- 当出现“>>>”后,输入提示并按 Enter 键。
- 可选:输入“
/clear”重新开始对话。 - 输入“
/bye”结束会话。
调试实用信息:
- 如何在 Ollama 服务器中打印输入请求和输出响应?(https://stackoverflow.com/a/78831840)
- Modelfile 文档:(https://github.com/ollama/ollama/blob/main/docs/modelfile.mdx#parameter)
- 示例:Ollama 模型库 (https://github.com/ollama/ollama#model-library)
- Llama 3 示例:https://ollama.com/library/llama3.1
- 添加 GUI:https://docs.openwebui.com/
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#test-with-vllm使用 vLLM 测试
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#1-run-vllm-docker-container1. 运行 vLLM Docker 容器
使用以下命令部署模型,将 INSERT\_YOUR\_HF\_TOKEN 替换为您的 Hugging Face Hub 令牌。
docker run --runtime nvidia --gpus=all \ --env "HUGGING_FACE_HUB_TOKEN=INSERT_YOUR_HF_TOKEN" \ -p 8000:8000 \ --ipc=host \ vllm/vllm-openai:latest \ --model OpenLLM-France/Luciole-23B-Instruct-1.1
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#2-test-using-openai-client-in-python2. 使用 Python 的 OpenAI 客户端测试
要测试已部署的模型,请按如下方式使用 OpenAI Python 客户端:
`` from openai import OpenAI
初始化客户端
client = OpenAI(base_url=‘http://localhost:8000/v1’, api_key=‘empty’)
定义输入内容
content = “Hello Luciole”
生成响应
chat_response = client.chat.completions.create( model=“OpenLLM-France/Luciole-23B-Instruct-1.1”, messages=[ {“role”: “user”, “content”: content} ], ) print(chat_response.choices[0].message.content) ``
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#citation引用
✍ 论文即将发布!
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#acknowledgements致谢
我们衷心感谢 BPI France 在“数字公共领域用于生成式人工智能”(Communs numériques pour l’intelligence artificielle générative)征集计划下对 OpenLLM France 项目的资助,该计划是 France 2030 计划的一部分。
Luciole-23B-Instruct-1.1 的训练得益于 GENCI 在 IDRIS 提供的计算 AI 和存储资源,感谢项目编号 A0181016189 在超级计算机 Jean Zay 的 H100 分区上的支持。我们衷心感谢他们的支持。
Luciole-23B-Instruct-1.1 由 LINAGORA 成员和 OpenLLM-France 社区成员共同创建,按字母顺序排列如下:
Akshay Chaturvedi (LINAGORA) Liam Duignan (CEA List) Olivier Ferret (CEA List) Olivier Gouvert (LINAGORA) Émile Hazard (Opsci) Julie Hunter (LINAGORA) Jean-Pierre Lorré (LINAGORA) Jérôme Louradour (LINAGORA) Michel-Marie Maudet (LINAGORA) Kate Thompson (LINAGORA) Matteo Van Ypersele de Strihou (LINAGORA)
特别感谢以下 OpenLLM France 成员提供的宝贵意见:Clément Bénesse (Opsci)、Christophe Cerisara (LORIA) 和 Gabriel Lauzzana (LORIA)。
我们感谢 IDRIS 和 NVIDIA 的支持团队在整个项目中提供的技术指导。
我们还要感谢 Gaperon 和 Salamandra 项目的成员与我们分享他们的见解。同时,我们也感谢众多开源参与者,他们的资源在整个训练过程中为我们提供了指导,特别感谢 Nvidia、HuggingFace 和 Allen AI。
最后,我们感谢整个 OpenLLM-France 社区,其成员以各种方式提供了帮助。
https://huggingface.co/OpenLLM-France/Luciole-23B-Instruct-1.1#contact联系方式
相似文章
Index SLM 技术报告
Bilibili 发布了 Index-1.9B 系列开源小语言模型,该系列在 2.8 万亿 token 上进行了预训练,在基准测试中取得有竞争力的性能。四个模型包括基础版、纯净版(无指令数据)、聊天版以及带有检索增强生成用于角色扮演的角色版。
LiquidAI/LFM2.5-ColBERT-350M
LiquidAI 发布 LFM2.5-ColBERT-350M,这是一种后期交互多语言检索模型,同时还有一个密集双编码器变体,两者均基于 LFM2.5-350M-Base,支持 11 种语言,并设计为 RAG 管道的即插即用替代品。
葡萄牙刚刚发布了他们自己的大语言模型 Amalia(9B)!
葡萄牙发布了 Amalia,一个拥有 90 亿参数的大语言模型。
llm 0.32a3
llm 0.32a3版本发布,这是Simon Willison的命令行工具的一个alpha版本,用于与大语言模型交互。
llm 0.31.1
Simon Willison 发布的 llm 0.31.1,这是一个用于与大语言模型交互的命令行工具。