调用配置:包括端点、输入、输出等。 大语言模型友好的输入和输出: 基本类型(如字符串/布尔值/数字) 风格的输入和输出 业务逻辑:用于在大语言模型友好的与实际 之间进行映射。
是个编程术语
成模式,拿表作类比,表头是) 这样的技能 贷款数据库 使大语言模型能够执行与我们的产品相关的各种任务,如查看个人资料、搜索文章/人员/职位/公司,甚至查询内部分析系统。同样的技术也用于调用非 ,如搜索和新闻。 智能体产品案例深度思考和分享(全球顶级公司实践细节,做智能体必读) 图:使用技能调用内部 我们编写了提示词,要求大语言模型()决定使用哪种技能来解决特定任务(通过规划来完成技能选择),然后输出调用该技能所需的参数(函数调用)。由于调用参数必须与输入匹配,我们要求以结构化的方式输出它们。大多数都经过和的结构化输出训练。
我们选择是因为它更简洁
因此消耗的比少。 我们遇到的一个挑战是,虽然大约%的时间里,的响应包含了正确格式的参数,但有大约%的时间,会出错(注:经常说的幻觉),并且经常输出不符合要求的数据,或者更糟糕的是,甚至不是有效的。虽然这些错误对人类来说微不足道,但会导 snapchat 入门包:如何利用 2016 年最大胆的社交网络 致解析它们的代码出错。由于%的比例足够高,我们不能忽视这些微不足道的错误,因此我们着手解决这个问题。 解决这个问题的标准方法是检测到错误,然后重新发提示词给大语言模型,要求它在这些额外指示下纠正错误。虽然这种方法有效,但它增加了不小的延迟,并且由于额外的调用而消耗了宝贵的算力。
为了绕过这些限制
我们最终编写了一个内部防御性解析器。 通过对各种调用参数()的分析,我们确定了常犯的错误,并编写了代码来在解析之前检测和适当修补这些错误。我们 1000个手机号码 还修改了提示词,以便在这些常见错误周围注入提示词,以提高我们修补的准确性。最终,我们将这些错误的发生率降低到了约.%。(注:这其实是用规则补足模型的不足,降低成本) 还在死磕的事是:构建一个统一的技能注册机制,以便在我们的生成式产品中动态发现和调用封装为友好技能的/智能体。