语言:
- 英语
- 德语
- 法语
- 意大利语
- 葡萄牙语
- 印地语
- 西班牙语
- 泰语
任务标签: 文本生成
标签:
- llama-3.1
- 对话系统
- 指令跟随
- 推理
- 函数调用
许可证: llama3.1
基础模型: akjindal53244/Llama-3.1-Storm-8B

作者:
Ashvini Kumar Jindal,
Pawan Kumar Rajpoot,
Ankur Parikh,
Akshita Sukhlecha
Hugging Face公告博客: https://huggingface.co/blog/akjindal53244/llama31-storm8b
Ollama: ollama run ajindal/llama3.1-storm:8b
Llama-3.1-Storm-8B-GGUF
这是Llama-3.1-Storm-8B的GGUF量化版本,适用于llama.cpp。BF16模型在此
简介

我们推出的Llama-3.1-Storm-8B模型在多项基准测试中显著超越了Meta AI的Llama-3.1-8B-Instruct和Hermes-3-Llama-3.1-8B模型。我们的方法包含三个关键步骤:
- 自筛选: 我们从约280万开源样本中筛选出约100万高质量样本,筛选标准聚焦教育价值和难度级别,使用相同的小型语言模型(SLM)进行标注而非大型模型(如70B、405B)。
- 定向微调: 我们在Llama-3.1-8B-Instruct模型上应用基于Spectrum的定向微调。Spectrum方法通过根据信噪比(SNR)选择性训练层模块来加速训练,其余模块保持冻结。在我们的工作中,50%的层被冻结。
- 模型融合: 我们使用SLERP方法将微调后的模型与Llama-Spark模型融合。融合方法产生的混合模型平滑继承了双亲模型的特性,确保最终模型兼具两者的精髓。Llama-3.1-Storm-8B在10个多样化基准测试中全面超越Llama-3.1-8B-Instruct,涵盖指令跟随、知识问答、推理、真实答案生成和函数调用等领域。
Llama-3.1-Storm-8B介绍
Llama-3.1-Storm-8B基于Llama-3.1-8B-Instruct构建,旨在提升8B参数模型类别的对话和函数调用能力。
如上图左侧子图所示,Llama-3.1-Storm-8B在多个基准测试中超越Meta-Llama-3.1-8B-Instruct - 指令跟随(IFEval)、知识驱动QA基准(GPQA、MMLU-Pro)、推理(ARC-C、MuSR、BBH)、减少幻觉(TruthfulQA)和函数调用(BFCL)。这一提升对计算资源有限的AI开发者和爱好者尤为重要。
我们还与最新发布的Hermes-3-Llama-3.1-8B模型进行了对比。如上图右侧子图所示,Llama-3.1-Storm-8B在9个基准中的7个上超越Hermes-3-Llama-3.1-8B,仅在MuSR基准上稍逊,在BBH基准上表现相当。
Llama-3.1-Storm-8B模型优势
Llama-3.1-Storm-8B是强大的通用模型,适用于多样化应用。我们邀请AI社区探索Llama-3.1-Storm-8B,期待看到它在各类项目中的应用。
模型优势 |
相关基准 |
改进指令跟随 |
IFEval严格模式(+3.93%) |
增强知识驱动问答 |
GPQA(+7.21%)、MMLU-Pro(+0.55%)、AGIEval(+3.77%) |
更好推理能力 |
ARC-C(+3.92%)、MuSR(+2.77%)、BBH(+1.67%)、AGIEval(+3.77%) |
更优代理能力 |
BFCL:总体准确率(+7.92%)、BFCL:AST摘要(+12.32%) |
减少幻觉 |
TruthfulQA(+9%) |
注: 所有改进均为相对于Meta-Llama-3.1-8B-Instruct的绝对提升。
Llama-3.1-Storm-8B模型列表
BF16
: Llama-3.1-Storm-8B
FP8
: Llama-3.1-Storm-8B-FP8-Dynamic
GGUF
: Llama-3.1-Storm-8B-GGUF
- Ollama:
ollama run ajindal/llama3.1-storm:8b
如何使用GGUF模型
pip install llama-cpp-python
from huggingface_hub import hf_hub_download
from llama_cpp import Llama
model_name = "akjindal53244/Llama-3.1-Storm-8B-GGUF"
model_file = "Llama-3.1-Storm-8B.Q8_0.gguf"
model_path = hf_hub_download(model_name, filename=model_file)
llm = Llama(
model_path=model_path,
n_ctx=16000,
n_threads=32,
n_gpu_layers=0
)
generation_kwargs = {
"max_tokens":200,
"stop":["<|eot_id|>"],
"echo":False,
"top_k":1
}
prompt = "2+2等于多少?"
res = llm(prompt, **generation_kwargs)
print(res["choices"][0]["text"])
import ollama
tools = [{
'type': 'function',
'function': {
'name': 'get_current_weather',
'description': '获取城市当前天气',
'parameters': {
'type': 'object',
'properties': {
'city': {
'type': 'string',
'description': '城市名称',
},
},
'required': ['city'],
},
},
},
{
'type': 'function',
'function': {
'name': 'get_places_to_vist',
'description': '获取城市旅游景点',
'parameters': {
'type': 'object',
'properties': {
'city': {
'type': 'string',
'description': '城市名称',
},
},
'required': ['city'],
},
},
},
]
response = ollama.chat(
model='ajindal/llama3.1-storm:8b',
messages=[
{'role': 'system', 'content': '不回答任何低俗问题。'},
{'role': 'user', 'content': '多伦多和旧金山的天气如何?'}
],
tools=tools
)
print(response['message'])
对齐说明
虽然Llama-3.1-Storm-8B未经过显式的模型对齐过程,但仍可能保留来自Meta-Llama-3.1-8B-Instruct模型的部分对齐特性。
引用我们的工作
@misc {ashvini_kumar_jindal_2024,
author = { {Ashvini Kumar Jindal, Pawan Kumar Rajpoot, Ankur Parikh, Akshita Sukhlecha} },
title = { Llama-3.1-Storm-8B },
year = 2024,
url = { https://huggingface.co/akjindal53244/Llama-3.1-Storm-8B },
doi = { 10.57967/hf/2902 },
publisher = { Hugging Face }
}
支持我们
团队成员分布在三个不同时区,我们赢得了NeurIPS LLM Efficiency Challenge 2023和金融、阿拉伯语LLM领域的其他四项竞赛。我们还发布了数学推理SOTA模型。
Llama-3.1-Storm-8B是我们对开源社区最有价值的贡献。我们致力于开发高效的通用LLM。我们正在寻求计算资源和创新合作者共同推进这一计划。