微信扫码
与创始人交个朋友
我要投稿
SFT与合成数据生成:若仅采用包含短上下文数据的现有SFT方案进行简单应用,则会导致预训练阶段所具备的长上下文能力出现显著退化,这凸显了在我们SFT数据组合中融入长上下文数据的必要性。然而,在实际操作中,由于阅读长篇幅上下文既繁琐又耗时,因此让人类去标注此类示例在很大程度上并不切实际。因此,我们主要依赖合成数据来填补这一空白。我们利用Llama 3的早期版本,基于关键的长上下文用例生成合成数据,这些用例包括(可能包含多轮对话的)问答、长文档摘要以及对代码仓库的推理,下文将对这些用例进行更详细的描述。
教授大型语言模型(LLMs)使用搜索引擎或代码解释器等工具,能够极大地扩展它们能够解决的任务范围,使它们从纯粹的聊天模型转变为更通用的助手(Nakano等人,2021;Thoppilan等人,2022;Parisi等人,2022;Gao等人,2023;Mialon等人,2023a;Schick等人,2024)。我们训练Llama 3与以下工具进行交互:
1)单步工具使用:我们首先从少量示例生成合成用户提示,这些提示本质上需要调用我们的核心工具之一(例如,超出我们知识截止日期的问题)。接着,仍然依赖少量示例生成,我们为这些提示生成适当的工具调用,执行它们,并将输出添加到模型的上下文中。最后,我们再次提示模型,基于工具输出生成对用户查询的最终答案。我们得到的轨迹形式如下:系统提示、用户提示、工具调用、工具输出、最终答案。我们还筛选了大约30%的数据集,以移除无法执行的工具调用或其他格式问题。
2)多步工具使用:我们遵循类似的协议,并首先生成合成数据,以教授模型基本的多步工具使用能力。为此,我们首先提示Llama 3生成用户提示,这些提示需要至少两次工具调用,这些调用可以是来自我们核心集的相同或不同工具。然后,基于这些提示,我们使用少量示例提示Llama 3生成一个由交替的推理步骤和工具调用组成的解决方案,类似于ReAct(Yao等人,2022)。请参见图10,了解Llama 3执行涉及多步工具使用任务的示例。
3)文件上传:我们为以下文件类型进行标注:.txt、.docx、.pdf、.pptx、.xlsx、.csv、.tsv、.py、.json、.jsonl、.html、.xml。我们的提示基于提供的文件,要求总结文件内容、查找并修复错误、优化代码片段、进行数据分析或可视化。请参见图11,了解Llama 3执行涉及文件上传任务的示例。
在针对这些合成数据进行微调后,我们收集了在不同且具挑战性的场景下的人工标注,这些场景包括多轮交互、超过三步的工具使用,以及工具调用未能给出满意答案的实例。我们通过向合成数据中增加不同的系统提示来增强数据集,以教导模型仅在激活时才使用工具。为了训练模型避免对简单查询调用工具,我们还添加了来自简单数学或问答数据集(Berant等人,2013;Koncel-Kedziorski等人,2016;Joshi等人,2017;Amini等人,2019)的查询及其无需工具即可获得的响应,但在系统提示中仍激活工具。
零样本工具使用数据:我们通过在一个庞大且多样化的部分合成数据集(包含函数定义、用户查询及相应调用)上进行微调,提升了Llama 3的零样本工具使用能力(也称为函数调用)。我们在一组未见过的工具上评估了我们的模型。
1)单一、嵌套及并行函数调用:调用可以是简单的,也可以是嵌套的,即我们将一个函数调用作为另一个函数的参数传递;或者并行的,即模型返回一个独立函数调用的列表。生成一系列多样化的函数、查询和基准真值可能具有挑战性(Mekala等人,2024),因此我们借助挖掘Stack(Kocetkov等人,2022)的方法,将我们的合成用户查询与真实函数相关联。更具体地说,我们提取函数调用及其定义,进行清理和过滤(例如,针对缺少文档字符串或不可执行的函数),并使用Llama 3为函数调用生成对应的自然语言查询。
2)多轮函数调用:我们还为多轮对话中的函数调用生成了合成数据,遵循了与Li等人(2023b)提出的协议类似的方法。我们使用多个代理来生成领域、API、用户查询、API调用和响应,同时确保生成的数据覆盖多样化的领域和现实的API。所有代理都是Llama 3的不同变体,根据它们的角色以不同的方式被提示,并以逐步协作的方式工作。
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-12-26
开发者的选择越来越多了,又一个AI智能体框架玩家:PydanticAI
2024-12-25
2025年,拥抱AI Agent!
2024-12-25
基于LangChain构建安全Agent应用实践(含代码)
2024-12-22
ANTHROPIC:高端的食材往往需要最朴素的烹饪方法: prompt, workflow, agent
2024-12-21
用LangChain教AI模仿你的写作风格:详细教程
2024-12-18
一站式 LLM 工程观测平台:Langfuse,让所有操作可观测
2024-12-17
LLMs开发者必看!Pydantic AI代理框架震撼登场!
2024-12-16
用LangChain实现一个Agent
2024-04-08
2024-08-18
2024-10-10
2024-06-03
2024-04-08
2024-04-17
2024-06-24
2024-09-04
2024-07-13
2024-04-11
2024-12-02
2024-11-25
2024-10-30
2024-10-11
2024-08-18
2024-08-16
2024-08-04
2024-07-29