Navigate to WaytoAGI Wiki →
Home/Question List/Question Detail

function calling 这是什么?

Answer

Function Calling 是一种在自然语言处理和人工智能模型中的技术。

在金融业务场景中,例如搜索欧元兑美元的当前汇率,使用前需要做好配置,如使用 Gemini 1.5 Flash 模型。

对于 ChatGPT 而言,为了让其返回符合要求的 JSON 格式,prompt 的定制尤为重要和复杂。OpenAI 发布函数调用及其他 API 更新后,开发人员可以向 gpt-4-0613 和 gpt-3.5-turbo-0613 描述函数,并让模型智能地选择输出一个包含调用这些函数所需参数的 JSON 对象,这是将 GPT 的能力与外部工具和 API 连接起来的新方法。例如,本地写函数执行 this.app.mysql.select(table,condition),或根据实际需求改为 SQL 查询 this.app.mysql.query(sql)。

对于 OpenAI 的 GPT 模型,Chat completions API 允许在请求中传递一系列函数描述,使模型能够根据提供的模式生成函数参数,API 以 JSON 格式返回生成的函数参数,可用于执行函数调用,函数调用的输出还可在后续请求中反馈给模型形成交互循环。想深入了解可查看 GPT 入门指南里的函数调用部分和 OpenAI Cookbook 里的用例。

需要注意的是,模型生成的代码不一定都是正确和安全的,在运行代码前要确保环境安全,最好在沙盒中进行。

Content generated by AI large model, please carefully verify (powered by aily)

References

谷歌Gemini多模态提示词培训课——Part3

这个部分我们来讲解什么是Function Calling,以及Funcation Calling的具体用法。在这个用例中,假设你是一个从事金融方面业务的用户,你想通过模型搜索欧元兑美元的当前汇率。但在一切开始前,我们还是需要做好配置,不过这次我们使用Gemini 1.5 Flash模型。

ChatGPT 助力数据分析:实际案例与技巧

可以发现为了让ChatGPT返回符合要求的JSON格式,prompt的定制就尤为重要和复杂。好消息是,在当地时间6月13日,OpenAI发布函数调用及其他API更新。现在开发人员可以向gpt-4-0613和gpt-3.5-turbo-0613描述函数,并让模型智能地选择输出一个包含调用这些函数所需参数的JSON对象。这是一种更可靠地将GPT的能力与外部工具和API连接起来的新方法。传送门:[Function calling and other API updates](https://openai.com/blog/function-calling-and-other-api-updates)官网有很详细的例子,这里就不再描述代码了。我用本文案例总结大致流程:有个好处是不需要让ChatGPT生成SQL了,减少SQL注入的风险。本地写一个函数执行this.app.mysql.select(table,condition),根据GPT返回的函数名、参数(字段和where)来查询数据,更为安全。但这个方法又有局限性,事先定义函数查询不如SQL查询来的灵活,所以这里也可以让函数改为SQL查询this.app.mysql.query(sql),GPT的函数调用改为:getSqlQuery(sql:string),函数名getSqlQuery,参数:sql,更为灵活。总结:让GPT与函数调用结合,本地控制返回JSON格式,prompt的定制更为简单,AI的输出更为可控。根据实际业务需求采用函数查询或SQL查询,值得一试![heading2]SQL分析示例[content]注:以下SQL分析的数据均是在数据库中伪造的数据,仅供测试。分析每种图表的使用情况分析图表类型是柱状图的创建时间和数量

OpenAI:GPT_最佳实践中文大白话版本_未来力场编译.pdf

附录OpenAI Playground是什么,怎么用?[heading2]六个能提高输出质量的核心提示词策略[hemessage.write(to="John",message="Hey,want tomeetup a erwork?")```最后要提请注意:模型写的代码不见得都是对的,都安全。跑代码之前要确保环境安全,最好在沙盒里。5.3使用function-calling,函数调用Give themodel access to specific functions.TheChat completions API allows passing a list of function descriptions in requests.This enablesmodels to generate function arguments according to the provided schemas.Generated function arguments are returned by the API in JSON format and can be used to execute function calls.Output provided by function calls can then be fed back into a model in the following request to close the loop.This is the recommended way of using GPTmodels to call external functions.To learn more see the function calling section in our introductoryGPTguide andmore function calling examples in theOpenAI Cookbook.(这段没有逐字翻译)API允许你在请求时附带一系列函数描述。这样,模型就可以按照你给的格式产生函数的参数了。API会用JSON形式把这些参数传回来,你就可以用它来调用函数了。函数跑完后的结果,你还可以继续拿给模型,形成一个完整的交互循环。想让GPT帮你调外部函数,这方法相对最靠谱。想深入了解的话,可以看GPT入门指南里的函数调用部分,还有OpenAI Cookbook里的用例。六大策略06:系统地测试

Others are asking
Function Calling
Function Calling 是一种将 AI 模型(如 ChatGPT、谷歌 Gemini 等)的能力与外部工具和 API 连接起来的方法。 对于 ChatGPT: 为让其返回符合要求的 JSON 格式,prompt 的定制重要且复杂。 OpenAI 发布函数调用及其他 API 更新,开发人员可向 gpt40613 和 gpt3.5turbo0613 描述函数,让模型智能输出包含调用函数所需参数的 JSON 对象。 好处是减少 SQL 注入风险,可本地写函数执行查询,也可让函数改为 SQL 查询,使 GPT 与函数调用结合,本地控制返回 JSON 格式,prompt 定制更简单,AI 输出更可控。 对于谷歌 Gemini: 在金融业务用例中,可用于搜索欧元兑美元的当前汇率,使用前需做好配置,如使用 Gemini 1.5 Flash 模型。 函数调用带来多个优势,包括简化用户体验、减少错误发生可能性、为更高级自动化开辟道路,能处理如酒店预订或制定旅行计划等复杂操作,重新定义了人与技术的互动方式。
2025-03-05
Function Calling 是什么
Function Calling 是一种将模型的能力与外部工具和 API 连接起来的方法。 在金融业务场景中,例如搜索欧元兑美元的当前汇率,需要先做好配置,可使用 Gemini 1.5 Flash 模型。 对于 ChatGPT 而言,为了让其返回符合要求的 JSON 格式,prompt 的定制尤为重要和复杂。OpenAI 发布函数调用及其他 API 更新后,开发人员可以向 gpt40613 和 gpt3.5turbo0613 描述函数,并让模型智能地选择输出一个包含调用这些函数所需参数的 JSON 对象。 使用 Function Calling 有好处,如不需要让 ChatGPT 生成 SQL,减少 SQL 注入的风险,本地写函数执行查询数据更为安全。但也有局限性,事先定义函数查询不如 SQL 查询灵活,也可让函数改为 SQL 查询以增加灵活性。 对于 OpenAI 的 GPT 模型,Chat completions API 允许在请求时附带一系列函数描述,使模型能按照提供的格式产生函数参数,API 以 JSON 格式返回参数用于执行函数调用,函数调用的结果还可反馈给模型形成交互循环。想深入了解可查看 GPT 入门指南里的函数调用部分和 OpenAI Cookbook 里的用例。同时要注意模型写的代码不一定都正确和安全,运行前要确保环境安全。
2025-02-23
function calling的资料
以下是关于 Function Calling 的相关资料: 函数调用为 AI 系统带来了诸多优势,包括简化用户体验、减少错误发生可能性以及为更高级的自动化开辟道路。例如在处理金融信息时,它能使整个过程更加流畅、准确,并能实现如酒店预订或制定旅行计划等复杂操作。 OpenAI 的 Chat completions API 允许在请求中附带一系列函数描述,使模型能够根据提供的模式生成函数参数,API 会以 JSON 格式返回生成的参数,可用于执行函数调用,函数调用的结果还能在后续请求中反馈给模型形成交互循环。想深入了解可查看 GPT 入门指南里的函数调用部分和 OpenAI Cookbook 里的用例。 对于让 ChatGPT 返回符合要求的 JSON 格式,prompt 的定制至关重要且较为复杂。OpenAI 发布函数调用及其他 API 更新后,开发人员可向 gpt40613 和 gpt3.5turbo0613 描述函数,让模型智能选择输出包含调用函数所需参数的 JSON 对象,这是将 GPT 能力与外部工具和 API 连接的新方法。将 GPT 与函数调用结合,本地控制返回 JSON 格式,能使 prompt 的定制更简单,AI 的输出更可控,可根据实际业务需求选择函数查询或 SQL 查询。
2025-02-21
Function Calling in AI
以下是关于“Function Calling in AI”的相关内容: 函数调用为 AI 系统带来了诸多重要优势。以谷歌 Gemini 为例,它简化了用户体验,使用户无需在模型和应用程序间繁琐地复制粘贴信息,过程更流畅直观;显著减少错误发生的可能性,降低输入不正确信息的风险,提高准确性;为更高级的自动化开辟道路,能处理如酒店预订或制定旅行计划等复杂操作,用户通过简单语音命令即可完成一系列复杂任务,重新定义了人与技术的互动方式。 对于 ChatGPT,为让其返回符合要求的 JSON 格式,prompt 的定制尤为重要和复杂。OpenAI 于当地时间 6 月 13 日发布函数调用及其他 API 更新,开发人员可向 gpt40613 和 gpt3.5turbo0613 描述函数,让模型智能输出包含调用函数所需参数的 JSON 对象,这是连接 GPT 能力与外部工具和 API 的新方法。结合函数调用,本地控制返回 JSON 格式,prompt 定制更简单,AI 输出更可控,可根据实际业务需求选择函数查询或 SQL 查询。 在 AI 智能体方面,工具使用或函数调用通常被视为从 RAG 到主动行为的第一个半步,为现代人工智能栈增加新层。工具本质是预先编写的代码组件,执行特定操作,如网页浏览、代码解释和授权认证等。系统向 LLM 呈现可用工具,LLM 选择并构建必要的结构化 JSON 输入触发 API 执行产生最终操作。例如 Omni 的“计算 AI”功能,利用 LLM 直接输出适当的 Excel 函数到电子表格中执行计算并生成复杂查询。但工具使用仅凭自身不能视为“主动性”,逻辑控制流程仍由应用程序预先定义。
2024-11-22
Function Calling in AI
以下是关于“Function Calling in AI”的相关内容: 函数调用为 AI 系统带来了诸多重要优势,包括简化用户体验,使用户无需在模型和应用程序间繁琐地复制粘贴信息,过程更流畅直观;显著减少错误发生的可能性,降低输入不正确信息的风险,提高准确性;为更高级的自动化开辟道路,能够处理如酒店预订或制定旅行计划等复杂操作,用户通过简单的语音命令就能完成一系列复杂任务,重新定义了人与技术的互动方式。 在 ChatGPT 中,为让其返回符合要求的 JSON 格式,prompt 的定制尤为重要和复杂。OpenAI 于当地时间 6 月 13 日发布函数调用及其他 API 更新,开发人员可向 gpt40613 和 gpt3.5turbo0613 描述函数,让模型智能地选择输出包含调用函数所需参数的 JSON 对象,这是将 GPT 能力与外部工具和 API 连接的新方法。结合函数调用,本地控制返回 JSON 格式,prompt 定制更简单,AI 输出更可控,可根据实际业务需求选择函数查询或 SQL 查询。 在 AI 智能体方面,工具使用或函数调用通常被视为从 RAG 到主动行为的第一个半步,为现代人工智能栈增加新层。工具本质上是预先编写的代码组件,执行特定操作,如网页浏览、代码解释和授权认证等。系统向 LLM 呈现可用工具,LLM 选择工具、构建必要的结构化 JSON 输入并触发 API 执行以产生最终操作。例如 Omni 的“计算 AI”功能,利用 LLM 直接输出适当的 Excel 函数到电子表格中,然后执行计算并自动生成复杂查询供用户使用。但工具使用仅凭自身不能视为“主动性”,逻辑控制流程仍由应用程序预先定义。
2024-11-06
deepseek支持function calling,在dify的agent的prompt里要如何写才能调用工具。我说的是如何写提示词,才能让deepseek通过Function Calling调用工具。
要在 Dify 的 agent 的 prompt 里让 DeepSeek 通过 Function Calling 调用工具,您可以参考以下内容: 1. 提示词工程主要由提示词注入和工具结果回传两部分代码组成。 提示词注入:将工具信息及使用工具的提示词添加到系统提示中。INSTRUCTION 包含 TOOL_EAXMPLE、tools_instructions、REUTRN_FORMAT 三个部分。TOOL_EAXMPLE 用于提示 LLM 如何理解和使用工具,编写时注意用无关紧要的工具作示例避免混淆。tools_instructions 是将通用工具字典转换成 LLM 可读的工具列表,可动态调整。REUTRN_FORMAT 定义调用 API 的格式。 工具结果回传:利用正则表达式抓取输出中的“tool”和“parameters”参数。对于 interpreter 工具,使用另一种正则表达式提取 LLM 输出的代码。通过识别 LLM 返回的调用工具的字典,提取对应值传入工具函数,将结果以 observation 角色返回给 LLM,对于不接受该角色的 LLM 接口,可改为回传给 user 角色。 2. 当模型判断需要调用工具函数时,检测到返回的 json 里 function_call 字段不为空,则执行异步函数调用,采用回调方式获取函数返回结果。通过判断返回的 functionCall 的名称执行不同函数并返回结果。 3. 在大模型请求中,最大的两个变量是 Messages 和 Tools。Messages 里放 sys prompt、memory、user query;Tools 里放能力的 Json Scheme,两者组合形成整个完全的 Prompt。Agent 应用开发的本质是动态 Prompt 拼接,通过工程化手段将业务需求转述成新的 prompt。短期记忆在 messages 里的历史 QA 对,长期记忆是 summary 之后的文本再塞回 system prompt。RAG 是向量相似性检索,可放在 system prompt 里或通过 tools 触发检索。Action 是触发 tool_calls 标记进入请求循环,拿模型生成的请求参数进行 API request,再把结果返回给大模型交互,没有 tool_calls 标记则循环结束。Multi Agents 是更换 system prompt 和 tools。
2024-10-24
functioncall
Function Calling 是一种在 AI 领域中重要的技术和应用方式: 在 ChatGPT 中:为让 ChatGPT 返回符合要求的 JSON 格式,prompt 的定制尤为重要和复杂。OpenAI 发布函数调用及其他 API 更新,开发人员可向 gpt40613 和 gpt3.5turbo0613 描述函数,让模型智能选择输出包含调用函数所需参数的 JSON 对象,这是将 GPT 能力与外部工具和 API 连接的新方法。好处是减少 SQL 注入风险,可本地写函数执行查询,也可让函数改为 SQL 查询,根据实际业务需求选择函数查询或 SQL 查询,使 AI 输出更可控。 在谷歌 Gemini 中:在金融业务用例中,如搜索欧元兑美元的当前汇率,需做好配置,使用 Gemini 1.5 Flash 模型。函数调用为 AI 系统带来多个优势,包括简化用户体验、减少错误发生可能性、为更高级自动化开辟道路,能处理如酒店预订或制定旅行计划等复杂操作,重新定义了人与技术的互动方式。
2025-02-14
如何借鉴“决战拜年之巅”:这是一款基于 GLM 大模型开发的微信小程序游戏,玩家在 10 个 AI 角色组成的家人群里,面对“七大姑八大姨”的连环拷问,自由对话打出属于自己的结局。实现一个工作场合的游戏
以下是借鉴“决战拜年之巅”实现一个工作场合游戏的相关要点: 1. 开发背景:“决战拜年之巅”是参加 Globalgamejam 游戏比赛时,在 48 小时内开发的,主题源于“make me laugh”,产品负责人谐音想到江浙沪孝子排行榜的“孝”,结合春节想到做类似拜年的东西。 2. 火爆情况:在参赛群发布半成品后,在 QQ、微信迅速火爆,两天内有 200 万用户,最高峰同时在线 6 万人,服务器一度支持不了,凌晨才做好调整,后续有厂商赞助服务器,上线约一周。 3. 游戏特点:基于 GLM 大模型开发,又称过年模拟器,玩家在 10 个 AI 角色组成的家人群里,面对“七大姑八大姨”的连环拷问自由对话打出结局。 4. 借鉴要点: 明确创新主题和玩法,结合特定场景和需求。 注重用户体验,及时应对服务器等技术支持问题。 利用 AI 技术实现角色互动和自由对话。 需要注意的是,“决战拜年之巅”被认为可能是一个 chatbot 而非严格意义上的游戏。在设计工作场合的游戏时,要明确以下三个点:(具体要点未在提供的内容中明确)
2024-11-02
ai现在拍摄一本书的图片能够识别到这是什么书么
目前的 AI 技术在拍摄一本书的图片并识别其是什么书方面已经取得了一定的进展。 在图像识别领域,神经网络发挥着重要作用。例如,对于识别印刷体图片,通常会先将图片转换为黑白,调整至固定尺寸,然后与数据库中的内容进行对比以得出结论。但实际情况较为复杂,存在多种字体、不同拍摄角度等多种例外情况,单纯依靠添加规则的方法不可行,而神经网络专门处理这类未知规则的情况。 不过,要准确识别一本书,还面临一些挑战,如书籍的版本、封面设计的多样性等。但随着技术的不断发展和数据的积累,未来 AI 识别一本书的准确性有望不断提高。 同时,也有一些相关的实验和研究,比如通过设计工作流让 AI 自举式地进行创造,从作家的作品中提取名场面并转译成绘画指令等。
2024-10-17