大模型开发 - 一文搞懂 Function Calling(函数调用)
创作时间:
作者:
@小白创作中心
大模型开发 - 一文搞懂 Function Calling(函数调用)
引用
CSDN
1.
https://blog.csdn.net/weixin_42029738/article/details/136638373
函数调用(Function Calling)是大模型开发中的一个重要技术,它使得模型能够更可靠地获取结构化数据。本文将从函数调用的本质、原理到具体应用场景,为您全面解析这一技术。
一、函数调用的本质
自然语言接口(NLI)允许用户通过日常语言与软件和设备交互,无需特定命令或语法。为使多个软件和设备能协同工作,用户界面和API均需支持自然语言交互,简化复杂指令的执行。
实现NLI的两种思路:
- 强大入口AI:依赖高度智能的AI拆解和分发用户任务。
- 广播式指令:AI将指令广播给所有软件,由它们自主决策是否及如何响应。
大模型的两大缺陷:
- 没有最新信息:大模型的训练需要大量的计算资源和时间,因此它们的知识库通常是在某个时间点之前的数据集上训练的。例如,GPT-3.5和GPT-4的知识截至2021年9月。这意味着它们无法提供此后的新信息或事件。为保持时效性,需定期重训模型,但成本高昂且耗时,导致大模型难以及时跟上信息更新。
- 没有真逻辑:大模型生成的文本和回答主要基于训练数据的统计规律,而非严格的逻辑推理或形式化证明。因此,在处理复杂或需深入逻辑推理的问题时,它们可能产生看似合理但实际不准确的回答。此外,大模型通过预测给定上下文中的下一个词来生成文本,可能受训练数据中的偏见和错误影响,从而削弱逻辑严谨性。
二、函数调用的原理
函数调用使您能够更可靠地从模型中获取结构化数据。
函数调用机制
函数调用的机制在大语言模型中,通常涉及将用户的自然语言请求转换为可执行的函数调用,并生成符合预定义函数签名的结构化输出,如JSON对象。
函数调用机制的主要步骤:
- 用户输入:用户通过自然语言向模型提出问题或请求。这些问题或请求可能需要调用外部函数来获取答案或执行某些操作。
- 模型解析:模型接收到用户输入后,会解析并理解输入内容。模型会根据其训练数据和算法判断是否需要调用函数,并确定要调用的函数及其参数。
- 生成函数调用:如果模型确定需要调用函数,它会生成一个包含函数调用所需参数的结构化输出。这通常是一个JSON对象,其中包含函数名、参数列表等信息。这个JSON对象是以字符串形式存在的,需要在实际调用函数之前进行解析。
- 函数调用执行:在您的代码中,您需要解析这个字符串化的JSON对象,将其转换为有效的数据结构(如字典或对象),并使用这些参数调用相应的函数。这个过程是在您的代码环境中完成的,而不是在模型内部。模型只是提供了调用函数所需的参数和信息。
- 处理函数结果:函数调用执行完成后,您需要将函数的结果返回给模型。这通常通过将结果附加到模型中再次调用模型来实现。模型会接收并处理这些结果,然后生成一个自然语言回复给用户,总结或解释函数调用的结果。
三、函数调用的想象空间
微信给女性朋友拜年
步骤:
- 了解微信API或第三方库
- 登录微信
- 获取好友列表
- 筛选女性好友
- 编写拜年信息
- 发送消息
- 退出登录
富途牛牛查询人工智能相关股票
步骤:
- 准备API接口和认证信息
- 定义函数以获取市盈率最低的人工智能股票
- 定义函数以获取股票的最近交易量
- 定义函数以获取股票的机构持有者信息
- 调用函数并处理结果
热门推荐
肥企建厂忙:产能过剩困局下的新动向
如何克服打针恐惧?这些实用技巧帮你轻松应对
「好久不见」的温暖问候:重温旧情,延续人际温度
河北省省考是联考吗?深入解析来揭晓答案!
古老的方山与年轻的温黄平原
低压电器和低压元器件强制性产品认证实施规则
如何合理规划外汇兑换?这些规划如何影响资金流动?
经济困境中的选择:生二胎是否明智?
深度学习算法是如何取出一张图片的风格
关羽过哪五关,斩了哪六将?行军图是否存在错误?应是明初的国道
潮汕旅游攻略自由行景点游玩推荐,看完就够;2025去广东潮汕旅游
Win10命令提示符cmd的查找与应用指南
差距明显!美国F35推力可达22吨,再看歼20发动机
热门恐怖侦探游戏:《烟火》与《Valheim》带你探索未知世界
HTML标签中插入文字的多种方法
Re:ZERO 第三季第四集回顾:昴的队伍发起反击,艾米莉亚的命运揭晓
化妆美学基础知识:从理论到实践的全面指南
华南理工大学怎么样 好不好
解码历史传奇——关羽"过五关斩六将"背后的真相与神话
硅片在半导体产业中的关键作用
自律的塑造:引导孩子建立并维持良好的生活习惯
AI来袭,酒店用工真的“消费降级”了?
明年状元预订中!深入剖析库珀·弗拉格的篮球潜力与未来前景
全国省市人均职工养老金情况:北京上海前列,江苏浙江为何偏低?
计算机编程中的领域特定语言(DSL)设计与应用实例
你事业和职场成败的隐形舵手:性格!看心理学家如何解读
自然语言处理常用算法有哪些?
技术前沿 |【探索多模态大模型的奥秘:开启智能时代的新篇章】
乙木在辰月是否得令 辰月乙木的运势解析
如何轻松启用Android手机失窃防护?