当前位置: 首页 > news >正文

【LLM】什么是Function Calling以及实现原理

背景

大模型诞生之初的的缺陷:

  1. 时效性局限:由于大模型训练需要耗费大量计算资源和时间,其知识库通常基于特定时间节点前的数据。以GPT-3.5和GPT-4为例,它们的知识仅更新至2021年9月。

  2. 逻辑性缺陷:大模型的文本生成主要依赖训练数据的统计规律,而非真正的逻辑推理或形式化证明过程。
    在这里插入图片描述

比如之前大模型分不清9.9和9.11谁大的问题,如果大模型具备调用计算器的能力,此问题也将避免。

为了解决该问题,我们可以让大模型具备调用函数工具的能力,比如查询网页,查询数据库,查询天气等,Function Calling也就诞生了。

Function Calling

函数调用(Function Calling):函数调用使用户能够更可靠地从模型中获取结构化数据。

UserChat AppLLM API"纽约的天气怎么样?"提示:"纽约的天气怎么样?"可用函数:- get_weather(地点)- get_forecast(地点, 天数)选择调用 get_weather("纽约")(应用执行函数调用)结果:"降雨,湿度90%,气温57华氏度"响应:"纽约正在降雨,湿度为90%,气温为57华氏度""纽约正在降雨,湿度为90%,气温为57华氏度"UserChat AppLLM API
  • User :用户
  • Chat App :大模型聊天应用,工程层面
  • LLM API:大语言模型本身,算法层面

大模型本身不具备直接调用工具的能力,而是通过生成一个调用函数的指令(通常为JSON格式)让一个固定程序调用工具,固定程序将调用结果返回给大模型,大模型将结构化的数据转换为自然语言的形式返回给用户。

  1. 用户提问 → 用户向应用发送自然语言查询:“纽约的天气怎么样?”
  2. Chat App构造提示词:向LLM发送用户问题+可用函数声明(get_weather/get_forecast)
  3. 模型决策:LLM分析后选择调用get_weather函数并生成参数{“location”:“纽约”}
  4. 执行函数:Chat App获取到LLM的调用函数指令,执行get_weather(“纽约”)获取真实天气数据
  5. 返回结果 → Chat App将函数执行结果"降雨,湿度90%,气温57华氏度"返回给LLM
  6. 生成回答 → LLM将原始数据转换为用户易于理解的自然语言进行响应
  7. 最终回复 → 应用将生成的"纽约正在降雨…"返回给用户

💡 核心流程:用户提问 → 大模型选函数 → App帮大模型调用函数 → 大模型将结果转人话 → 给用户最终答案

http://www.dtcms.com/a/324410.html

相关文章:

  • Day41--动态规划--121. 买卖股票的最佳时机,122. 买卖股票的最佳时机 II,123. 买卖股票的最佳时机 III
  • 工业相机选择规则
  • 如何将PDF文档进行高效编辑处理!
  • Rust 实战四 | Traui2+Vue3+Rspack 开发桌面应用:通配符掩码计算器
  • Virtio 驱动初始化数据收发流程详解
  • 如何解决线上gc频繁的问题?
  • 《C语言》结构体和联合体练习题--2
  • Excel合并同步工具V1.0
  • 比特币现货和比特币合约的区别与联系
  • 数据结构——哈希表、树、gdb调试、时间复杂度
  • 【走进Docker的世界】Docker环境搭建
  • 自动驾驶控制算法——Stanley 控制器
  • 构建健壮的商品数据采集服务:处理京东 API 限流与错误
  • python洛谷做题27:P5724 【深基4.习5】求极差 / 最大跨度值 / 最大值和最小值的差
  • mcp-go v0.37.0 版本发布:重大变更与新特性解析
  • 利用容器编排完成haproxy和nginx负载均衡架构实施
  • GitLab 零基础入门指南:从安装到项目管理全流程
  • Elasticsearch QueryDSL 教程
  • 应对高并发 - TCP/IP网络栈核心参数调优
  • 【递归、搜索与回溯算法】递归算法
  • 【代码随想录day 16】 力扣 513.找树左下角的值
  • 米哈游笔试——求强势顶点的个数
  • [python] typing 中的overload
  • Android视图回调机制:从post到ViewTreeObserver,从源码分析到最佳实践
  • MariaDB 数据库管理
  • 基于PyTorch一文讲清楚损失函数与激活函数并配上详细的图文讲解
  • Pytorch深度学习框架实战教程12:Pytorch混合精度推理,性能加速147%的技术实现
  • MPLS对LSP连通性的检测
  • 使用Blender可视化多传感器坐标系转换
  • 移动端常见的8大css兼容性问题和处理方法