直达「 通往AGI之路 」飞书知识库 →
首页/问答列表/问答详情

deepseek支持function calling,prompt里要如何写才能调用工具。

回答

要在 DeepSeek 中通过提示词实现工具调用,主要通过以下提示词工程实现:

  1. 实现原理:
    • 提示词工程主要由提示词注入和工具结果回传两部分代码组成。提示词注入将工具信息及使用提示词添加到系统提示中,工具结果回传则解析工具调用的输出,并将返回内容嵌入 LLM。
  2. 提示词注入阶段:
    • INSTRUCTION 为注入到系统提示中的字符串,包含 TOOL_EAXMPLE、tools_instructions、REUTRN_FORMAT 三个部分。TOOL_EAXMPLE 用于提示 LLM 理解和使用工具,编写时应使用无关紧要的工具作示例避免混淆。tools_instructions 是将通用工具字典转换为 LLM 可读的工具列表,实际使用时可动态调整。REUTRN_FORMAT 定义了调用 API 的格式。
  3. 工具结果回传阶段:
    • 利用正则表达式抓取输出中的“tool”和“parameters”参数。对于 interpreter 工具,使用另一种正则表达式提取 LLM 输出的代码以提高成功率。通过识别 LLM 返回的调用工具字典,提取对应值传入工具函数,将结果以 observation 角色返回给 LLM,对于不接受该角色的 LLM 接口,可改为回传给 user 角色。

在游戏实操中,当模型判断需要调用工具函数时(检测到返回的 json 里 function_call 字段不为空),执行异步函数调用,采用回调方式获取函数返回结果,通过判断返回的 functionCall 名称执行不同函数并返回结果。

对于 ChatGPT,为让其返回符合要求的 JSON 格式,prompt 的定制尤为重要和复杂。OpenAI 发布函数调用及其他 API 更新后,开发人员可向 gpt-4-0613 和 gpt-3.5-turbo-0613 描述函数,让模型智能输出包含调用函数所需参数的 JSON 对象。本地可根据 GPT 返回的函数名、参数进行数据查询,可采用函数查询或 SQL 查询,根据实际业务需求选择,使 AI 输出更可控。

内容由 AI 大模型生成,请仔细甄别(powered by aily)

参考资料

无需微调,仅用提示词工程就能让 LLM 获得 tool calling 的功能

本文采用的提示词工程主要有两部分代码组成:提示词注入和工具结果回传。提示词注入用于将工具信息以及使用工具的提示词添加到系统提示中。工具结果回传则是解析tool calling的输出,并将工具返回的内容再次嵌入LLM。[heading2]1、提示词注入阶段[content]INSTRUCTION为最后注入到系统提示中的字符串,他又包含了TOOL_EAXMPLE、tools_instructions、REUTRN_FORMAT三个部分。TOOL_EAXMPLE用于提示LLM如何理解tool以及如何使用tool。在编写TOOL_EAXMPLE时,请注意用一些无关紧要的工具作为示例,例如本文使用的将数字加一和数字减一的工具,从而避免LLM混淆真正可以使用的工具与示例工具。tools_instructions是由目前通用的工具字典转换成LLM可读的工具列表。实际使用LLM时,可以通过输入不同的工具来动态调整tools_instructions,让LLM得知目前可用的工具有哪些以及如何使用。REUTRN_FORMAT定义了调用API的格式。[heading2]2、工具结果回传阶段[content]利用正则表达式抓取输出中的"tool"和"parameters"参数。对于interpreter工具,使用了另一种正则表达式来提取LLM输出的代码,提高LLM使用interpreter工具的成功率。本文使用代码如下:通过识别LLM返回的调用工具的字典,提取出对应的值,再传入相应的工具函数,最后将工具返回的结果以observation的角色返回给LLM。对于一些不接受observation、tool、function角色的LLM接口,可以改为回传给user角色,例如:通过以上提示词工程,可以避免微调,让完全没有tool calling能力的LLM获得稳定的tool calling能力。

游戏实操| 利用LLM进行环境叙事和解谜——《Im Here2》

[title]游戏实操|利用LLM进行环境叙事和解谜——《Im Here2》[heading1]三、Demo实现[heading2]3.2提示词设计具体而言,当模型判断需要调用工具函数时,即检测到返回的json里面function_call字段不为空,则执行异步函数调用,这里采用回调的方式以获取函数返回的结果。通过判断返回的functionCall的名称来执行不同的函数,执行逻辑同时返回结果。1.对守卫者和指引者一类具有单一明确任务的代理来说,虽然不同代理负责不同的谜题如一般谜题和世界观谜题,但由于指令结构的存在保持着一定的兼容性,所以只要调试出一个可行的结构,进一步更换谜题和回答正确后提供的线索即可。在这里调试它们的指示预设更像是尝试使它们输出特定的内容,有点像:《完蛋!我被LLM包围了!》,感兴趣的可以试玩一下:[https://huggingface.co/spaces/LLMRiddles/LLMRiddles](https://huggingface.co/spaces/LLMRiddles/LLMRiddles)[https://modelscope.cn/studios/LLMRiddles/LLMRiddles/summary](https://modelscope.cn/studios/LLMRiddles/LLMRiddles/summary)这里举了两个有不同谜题的代理示例,可以试着一段段输入测试查看模型输出的结果,指令预设如下:守卫者1:【角色预设+谜题】

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分析的数据均是在数据库中伪造的数据,仅供测试。分析每种图表的使用情况分析图表类型是柱状图的创建时间和数量

其他人在问
deepseek官方教程
以下是关于 DeepSeek 的官方教程相关信息: 火山方舟 DeepSeek 申请免费额度教程,包含多种 API 使用方式,如飞书多维表格调用、Coze 智能体调用、浏览器插件调用。可以使用邀请码 D3H5G9QA,通过邀请链接 https://www.volcengine.com/activity/deepseek?utm_term=202502dsinvite&ac=DSASUQY5&rc=D3H5G9QA 邀请可拿 3000 万 tokens,畅享 671B DeepSeek R1,活动截止至北京时间 20250218 23:59:59。同时,火山方舟大模型服务平台的模型服务计费文档有更新,DeepSeekR1、V3 模型分别提供了 50 万免费额度和 API 半价活动。 有关于一线教师的 AI 需求与高效工具推荐,如让模型创作诗歌、生成宣传标语、提示库(https://apidocs.deepseek.com/zhcn/promptlibrary)、代码解释、内容分类、角色扮演(自定义人设)、散文写作、文案大纲生成、模型提示词生成等。 2 月 14 日的社区动态中,有《突破 DeepSeek R1 能力天花板,火山引擎扣子+飞书一站式企业解决方案》《羊毛快薅|字节火山上线了 DeepSeek 系列模型并悄悄更改了模型服务价格...》等内容,还附上了飞书多维表格、Coze 的接入使用方法等。此外,还有关于 DeepSeek 关键 9 篇论文及创新点的讲解,以及 DeepSeek 官方发布的 R1 模型推荐设置。
2025-04-15
我想让DEEPSEEK帮我写一篇论文,题目已经定好了,怎么给他输入指令
以下是给 DeepSeek 输入指令以帮助您写论文的一些建议: 1. 采用结构化提示词: 优先保留专业领域术语和技术词汇,这些术语通常具有高信息价值。 对不同类型的信息设置权重,按优先级排序:任务定义>关键约束>专业术语>定量信息>方法论>背景。 以完整语义单元为基本保留单位,而非单个词语,确保压缩后的内容仍保持语义完整性。 避免详细指导思考过程,让模型自主生成思维链。 2. 高阶能力调用: 文风转换矩阵:例如“用鲁迅杂文风格写职场 PUA 现象”“将产品说明书改写成《史记》列传格式”“把这篇论文摘要翻译成菜市场大妈能听懂的话”。 领域穿透技术:如行业黑话破解“解释 Web3 领域的'胖协议瘦应用'理论”。 3. 场景化实战策略: 创意内容生成。 技术方案论证。 4. 效能增强技巧: 对话记忆管理:包括上下文锚定(如“记住当前讨论的芯片型号是麒麟 9010”)、信息回溯(如“请复述之前确认的三个设计原则”)、焦点重置(如“回到最初讨论的供应链问题”)。 输出质量控制:针对过度抽象、信息过载、风格偏移等问题,使用相应的修正指令。 5. 特殊场景解决方案: 长文本创作:可采用分段接力法,如“先完成故事大纲→逐章扩展→最后进行伏笔校验”“确保新章节与前文的三处细节呼应”。 敏感内容处理:使用概念脱敏法(如“用经济学原理类比说明网络审查机制”)或场景移植法(如“假设在火星殖民地讨论该议题”)。 在输入指令时,您需要清晰明确地描述论文的题目、研究目的、主要论点、关键论据、期望的结构和风格等重要信息,以便 DeepSeek 能够为您生成符合要求的内容。
2025-04-14
coze搭建工作流调用deepseek如何把模型的输出存入到多维表中
以下是将模型的输出存入到多维表中的步骤: 1. 逐步搭建 AI 智能体: 搭建整理入库工作流。 设置大模型节点提取稍后读元数据,使用 MiniMax 6.5s 245k,设置最大回复长度至 50000,以确保能完整解析长内容网页。 进行日期转时间戳,后续的飞书多维表格插件节点在入库日期字段时只支持 13 位时间戳,需要使用「日期转时间戳time_stamp_13」插件进行格式转化。 把稍后读元数据转换为飞书多维表格插件可用的格式,飞书多维表格插件目前(2024 年 08 月)只支持带有转义符的 string,以 Array<Object>格式输入,所以必须将之前得到的元数据数组进行格式转换。 添加「飞书多维表格add_records」插件,只需要设置{{app_token}}与{{records}}参数,将元数据写入飞书表格。 2. 搭建 Coze 工作流: 打开 Coze 的主页,登录后,在【工作空间】创建一个智能体。 在编排页面,给智能体编辑好人设,可先写一个简单的,然后点右上角自动优化,系统会自动补全更精细的描述。点击工作流的+,创建一个工作流。 大模型节点把 input 给到 DeepSeek,让 DeepSeek 按照提前规定的输出框架生成对应文案。 生图节点将输出给到图像生成组件画图。 结束输出时,两个输出给到最终的 end 作为最终的输出。注意在编写系统提示词时,如果需要 input 可被 DeepSeek 调用,需要用{{input}}作为参数引入,不然大模型不知道自己需要生成和这个 input 相关的结果。编排完,点击【试运行】,调试至满意后点击发布。
2025-04-14
Deepseek自动生成网站前端页面
以下是关于 DeepSeek 自动生成网站前端页面的相关内容: DeepSeek v3 能力更新后虽能生成炫目的前端页面,但多为静态且实用性有限。可结合飞书多维表格将生成的漂亮前端变为真实的系统,如【智能作业分发系统】。 该系统整体包括用户登陆(可加飞书调查表二维码实现注册)、作业类型、作业详情(含连连看游戏、AI 智能问答、考试系统)。其实现逻辑为用户登陆系统后进入页面看到老师分配的作业分类,选择分类进入作业详情页面,详情页有学习单词发音及三个模块。 对于小白,可用飞书作数据源,通过飞书 API 接口获取内容,用 DeepSeek v3 制作前端+后端(用 Trae 更方便)。获取请求参数时,测试成功后的示例代码中有完整的请求参数和请求体可直接复制使用。创建前后端时,若用 DeepSeek 官网搭建需按代码目录结构创建对应文件(用 Trae 可省略),首次运行可能遇到飞书 API 未正确配置 CORS 导致浏览器拦截请求的问题,V3 会给出修改意见。 此外,Same dev 能像素级复制任意 UI 界面并生成前端代码,支持多种文件格式和技术栈代码,但免费额度消耗快,网站被谷歌标记。360 智脑复现了 DeepSeek 强化学习效果并发布开源模型 LightR114BDS。 AI 时代生存法则:会提需求比会写代码更重要,会开脑洞比会复制粘贴更值钱,真正的大佬都是让 AI 当乙方!
2025-04-13
deepseek写论文
以下是关于 DeepSeek 在不同方面应用的相关信息: 应用场景:包括脑爆活动方案、会议纪要、批量处理客户评论、分析总结复盘内容、生成专业软件使用过程、写小说框架、写论文、写文案、写小红书笔记、写周报、做设计头脑风暴、做网站、分析感情问题等。 优势与不足:在写文方面全面领先,但长文可能太发散、文风用力过猛导致审美疲劳,且模型多样性不够,相同 prompt 提问多次答案雷同。 应对策略:写理性文章时,可先与 DeepSeek 讨论思路,再用 Cloud 3.5 批量生成;用 O1 模型对创作的字数控制有一定效果,也可通过多轮对话让 AI 增删改查来调整字数。 创作相关:模仿特定小说家的文学方式创作小说,需在提示词中描述文风特征;邀请大家在腾讯频道发布用 AI 写的小说并鉴赏。 发展历程:DeepSeek 历时 647 天在大语言模型(LLM)领域取得突破,发布 13 篇论文。谷歌 CEO 坦言 Deep Seek 的突破标志着 AI 的全球化进程。
2025-04-13
使用Deepseek写论文有哪些固定指令模板
以下是使用 DeepSeek 写论文的一些指令模板: 1. 进阶控制技巧: 思维链引导: 分步标记法:请逐步思考:1.问题分析→2.方案设计→3.风险评估 苏格拉底式追问:在得出最终结论前,请先列举三个可能存在的认知偏差 知识库调用: 领域限定指令:基于 2023 版中国药典,说明头孢类药物的配伍禁忌 文献引用模式:以 Nature 2022 年发表的论文为参考,解释 CRISPRCas9 最新突破 多模态输出 2. 高级调试策略: 模糊指令优化: 问题类型:宽泛需求 修正方案:添加维度约束 示例对比:原句:“写小说”→修正:“创作以 AI 觉醒为背景的悬疑短篇,采用多视角叙事结构” 问题类型:主观表述 修正方案:量化标准 示例对比:原句:“写得专业些”→修正:“符合 IEEE 论文格式,包含 5 项以上行业数据引用” 迭代优化法: 首轮生成:获取基础内容 特征强化:请加强第三段的技术细节描述 风格调整:改用学术会议报告语气,添加结论部分 最终校验:检查时间逻辑一致性,列出可能的事实性错误 3. 核心原理认知: AI 特性定位: 多模态理解:支持文本/代码/数学公式混合输入 动态上下文:对话式连续记忆(约 8K tokens 上下文窗口,换算成汉字是 4000 字左右) 任务适应性:可切换创意生成/逻辑推理/数据分析模式 系统响应机制: 采用意图识别+内容生成双通道 自动检测 prompt 中的:任务类型/输出格式/知识范围 反馈敏感度:对位置权重(开头/结尾)、符号强调敏感 4. 基础指令框架: 四要素模板 格式控制语法: 强制结构:使用```包裹格式要求 占位符标记:用{{}}标注需填充内容 优先级符号:>表示关键要求,!表示禁止项 5. 高阶能力调用: 文风转换矩阵: 作家风格移植:“用鲁迅杂文风格写职场 PUA 现象” 文体杂交:“将产品说明书改写成《史记》列传格式” 学术口语化:“把这篇论文摘要翻译成菜市场大妈能听懂的话” 领域穿透技术:行业黑话破解→“解释 Web3 领域的‘胖协议瘦应用’理论” 商业决策支持 6. 场景化实战策略: 创意内容生成 技术方案论证 7. 效能增强技巧: 对话记忆管理: 上下文锚定:“记住当前讨论的芯片型号是麒麟 9010” 信息回溯:“请复述之前确认的三个设计原则” 焦点重置:“回到最初讨论的供应链问题” 输出质量控制: 问题类型:过度抽象 修正指令:“请具体说明第三步操作中的温度控制参数” 问题类型:信息过载 修正指令:“用电梯演讲格式重新组织结论” 问题类型:风格偏移 修正指令:“回归商务报告语气,删除比喻修辞” 8. 特殊场景解决方案: 长文本创作: 分段接力法:“先完成故事大纲→逐章扩展→最后进行伏笔校验”“确保新章节与前文的三处细节呼应” 敏感内容处理: 概念脱敏法:“用经济学原理类比说明网络审查机制” 场景移植法:“假设在火星殖民地讨论该议题”
2025-04-13
PromptEnhancer
以下是关于 PromptEnhancer 的相关信息: PromptEnhancer 是一款自动生成/优化 prompt 的工具。 在对最流行的“AI 提示生成器”的比较分析中,针对“作为一名 IT 学生,为我的高级项目提出想法;我想要关于学生帮助大学学生的想法”这一测试种子提示,PromptEnhancer 在实验中的成绩为 4 胜 0 负。 相关链接:https://flowgpt.com/prompt/sbuYQwUq_8v8fafR5zJuB
2025-04-20
能画技术路线图的prompt
以下是关于能画技术路线图的 prompt 相关内容: Midjourney Bot 的 Prompt 类型: 基本 Prompts:可以只是一个单词、短语或表情符号。 高级 Prompts:包括一个或多个图片 URL、多个文本短语以及一个或多个参数。其中,图片 URL 始终位于 prompt 的最前面,以影响完成结果的风格和内容。提示文字是对希望生成的图像的文本描述,精心编写的提示有助于生成惊艳的图像。参数可以改变生成图片的方式,需放在提示语的末尾。 ComfyUI Flux 与 runway 制作绘画视频: 生成图片:提示词告诉 flux 生成一张技术草图,如 CAD。 绘制的视频:在 runway 里面,使用提示词从空白页面开始逐行创建,并把生成的图片作为尾帧。 草图上色:使用 flux 的 controlNet,depth 固定,目前 Union 版本不建议权重调太高,结束时间也需注意。 Prompt engineering(提示工程): 开发测试用例:定义任务和成功标准后,创建多样化的测试用例,包括典型示例和边界情况,以确保提示具有鲁棒性。 设计初步提示:制定初步提示,概述任务定义、良好响应的特征及必要上下文,添加规范输入和输出的示例供参考。 根据测试用例测试提示:使用初步提示将测试用例输入,评估模型响应与预期输出和成功标准的一致性,使用一致的评分标准进行系统性的性能评估。
2025-04-19
整理会议纪要的prompt
以下是一些关于整理会议纪要的 prompt: 【?会议精要】整理生成高质量会议纪要,保证内容完整、准确且精炼。 会议记录员:将会议浓缩成简明摘要,包括讨论主题、重点内容、行动事项。 CEO 秘书会议纪要:专注于整理和生成高质量的会议纪要,确保会议目标和行动计划清晰明确。需严格遵守信息准确性,不对用户提供的信息做扩写,仅做信息整理,将一些明显的病句做微调。
2025-04-15
作为一个想要使用AI工具提升工作效率的AI小白,我已经学习了怎么编写prompt,接下来我应该学习什么
如果您已经学习了如何编写 prompt ,接下来可以学习以下内容: 1. 理解 Token 限制:形成“当前消耗了多少 Token”的自然体感,把握有效记忆长度,避免在超过限制时得到失忆的回答。同时,编写 Prompt 时要珍惜 Token ,秉承奥卡姆剃刀原理,精简表达,尤其是在连续多轮对话中。 熟练使用中英文切换,若 Prompt 太长可用英文设定并要求中文输出,节省 Token 用于更多对话。 了解自带方法论的英文短语或句子,如“Chain of thought”。 2. 学习精准控制生成式人工智能:重点学习提示词技术,编写更清晰、精确的指令,引导 AI 工具产生所需结果。 探索构建智能体(AI Agents),将工作单元切割开,赋予其特定角色和任务,协同工作提高效率。 在实际应用中遵循准则,如彻底变“懒人”、能动嘴不动手、能让 AI 做的就不自己动手、构建自己的智能体、根据结果反馈调整智能体、定期审视工作流程看哪些部分可用更多 AI 。 3. 若想进一步提升: 学习搭建专业知识库、构建系统知识体系,用于驱动工作和个人爱好创作。 注重个人能力提升,尤其是学习能力和创造能力。 您还可以结合自身生活或工作场景,想一个能简单自动化的场景,如自动给班级孩子起昵称、排版运营文案、安排减脂餐、列学习计划、设计调研问卷等。选一个好上手的提示词框架开启第一次有效编写,比如从基础的“情境:”开始。
2025-04-15
对于用cursor来开发,有没有好好用prompt来使cursor变得更加好用
以下是关于如何用 prompt 使 Cursor 变得更好用的相关内容: 在 prompt 方面,Devin 有一个特别有帮助的文档(https://docs.devin.ai/learnaboutdevin/prompting),它会教您什么样的 prompt 在与 Devin 沟通时最有效,比如明确定义成功的标准,如跑通某个测试或访问某个链接能对得上等。将同样的原则应用到 Cursor 中,会发现 Cursor 变得聪明很多,能自主验证任务完成情况并进行迭代。 Cursor 在生成单测方面表现出色。相对 GPT 等工具,Cursor 解决了上下文缺失和难以实现增量更新的问题。它可以向量化整个代码仓库,在生成单测代码时能同时提供目标模块及对应的上下游模块代码,生成结果更精确。例如,使用适当的 Prompt 能返回基于 Vitest 的结果,调整成本较小。 Cursor 支持使用.cursorrules 文件设定项目的系统提示词,针对不同语言可设定不同的 Prompt。@AIChain 花生做了一个 Cursor 插件解决提示语管理问题,可选择不同的.cursorrules 文件,还可从 https://cursor.directory/ 和 https://cursorlist.com/ 寻找提示词。此外,还有一个提示语小技巧,给已有的提示语追加上特定规则,可使模型在搜索资源和思考时默认使用英语,回复转换成中文,或更灵活地根据提问语言进行回复。
2025-04-14
有什么 prompt engineering 的好材料
以下是一些关于 prompt engineering 的好材料: 文本类 Prompt 网站: Learning Prompt:授人以渔,非常详尽的 Prompt 学习资源,包括 ChatGPT 和 MidJourney,网址: FlowGPT:国外做的最大的 prompt 站,内容超全面,更新快,网址: ChatGPT Shortcut:ChatGPT 提示词网站,提供了非常多使用模板,简单修改即可指定输出,网址: ClickPrompt:轻松查看、分享和一键运行模型,创建 Prompt 并与其他人分享,网址: Prompt Extend:让 AI 帮你自动拓展 Prompt,网址: PromptPerfect:帮你自动优化提示词,你可以看到优化前后的对比,网址: PromptKnit:The best playground for prompt designers,网址: PromptPort(支持中文):AI Prompt 百科辞典,其中 prompts 是聚合了市场上大部分优质的 prompt 的词库,快速的寻找到用户需求 prompt,网址: Prompt Engineering Guide:GitHub 上点赞量非常高的提示工程指南,网址: Claude 3.7 核心提示词相关: 您可以在中找到他们往期开源的更多系统提示词,涵盖了从 Claude 3 Haiku 到现在所有的模型。 一泽 Eze 整理的相关学习资料: Claude 3.5 sonnet 内置提示词详细拆解与解说:https://mp.weixin.qq.com/s/0R4zgH3Gc5TAfAPY1oJU4A Anthropic 的三位顶级提示工程专家聊《如何当好的提示词工程师》:https://mp.weixin.qq.com/s/VP_auG0a3CzULlf_Eiz1sw 往期 Claude AI 核心系统提示词:https://docs.anthropic.com/en/releasenotes/systemprompts Claude 官方用户手册 提示工程指南:https://docs.anthropic.com/en/docs/buildwithclaude/promptengineering/overview Claude 官方提示库:https://docs.anthropic.com/en/promptlibrary/library 基本概念: 简单的提示词可以包含指令、问题等信息,也可以包含上下文、输入或示例等详细信息,以更好地指导模型获得更好的结果。 当使用 OpenAI 的聊天模型时,可以使用 system、user 和 assistant 三个不同的角色来构建 prompt,system 有助于设定 assistant 的整体行为。 提示工程就是探讨如何设计出最佳提示词,用于指导语言模型帮助我们高效完成某项任务。
2025-04-12
function calling是什么
Function Calling 是一种在自然语言处理和人工智能模型中的技术和概念。 在金融业务场景中,例如搜索欧元兑美元的当前汇率,使用前需要做好配置,如使用 Gemini 1.5 Flash 模型。 对于 ChatGPT 而言,为了让其返回符合要求的 JSON 格式,prompt 的定制尤为重要和复杂。OpenAI 发布函数调用及其他 API 更新后,开发人员可以向 gpt40613 和 gpt3.5turbo0613 描述函数,并让模型智能地选择输出一个包含调用这些函数所需参数的 JSON 对象,这是将 GPT 的能力与外部工具和 API 连接起来的新方法。例如,本地写函数执行 this.app.mysql.select,使操作更灵活。 对于 OpenAI 的 GPT 模型,Chat completions API 允许在请求中传递一系列函数描述,模型能据此生成函数参数并以 JSON 格式返回,可用于执行函数调用,函数调用的结果还能在后续请求中反馈给模型形成交互循环。想深入了解可查看 GPT 入门指南里的函数调用部分和 OpenAI Cookbook 里的用例。 需要注意的是,模型生成的代码不一定都正确和安全,运行代码前要确保环境安全,最好在沙盒里。
2025-03-26
Function Calling 是什么
Function Calling 是一种在自然语言处理和人工智能领域中的技术和概念。 在金融业务场景中,例如搜索欧元兑美元的当前汇率,使用前需要做好配置,如使用 Gemini 1.5 Flash 模型。 对于 ChatGPT 而言,为了让其返回符合要求的 JSON 格式,prompt 的定制尤为重要和复杂。OpenAI 发布函数调用及其他 API 更新后,开发人员可以向 gpt40613 和 gpt3.5turbo0613 描述函数,并让模型智能地选择输出一个包含调用这些函数所需参数的 JSON 对象,这是将 GPT 的能力与外部工具和 API 连接起来的新方法。例如,本地写函数执行 this.app.mysql.select,这样使得 prompt 的定制更为简单,AI 的输出更为可控。 在 OpenAI 的相关实践中,Chat completions API 允许在请求时附带一系列函数描述,模型可据此产生函数参数,API 以 JSON 格式返回参数用于执行函数调用,函数调用的结果还可反馈给模型形成交互循环。想深入了解可查看 GPT 入门指南里的函数调用部分和 OpenAI Cookbook 里的用例。但需注意,模型生成的代码不一定都正确和安全,使用前要确保环境安全。
2025-03-14
实现一个简单的 function calling agents ,要求小白可以看懂
以下是一个关于实现简单的 function calling agents 的指导,以便小白能够理解: 实现原理: 提示词工程主要由提示词注入和工具结果回传两部分代码组成。提示词注入用于将工具信息及使用工具的提示词添加到系统提示中,它包含 TOOL_EAXMPLE、tools_instructions 和 REUTRN_FORMAT 三个部分。TOOL_EAXMPLE 用于提示 LLM 如何理解和使用工具,编写时应注意用无关紧要的工具作示例避免混淆。tools_instructions 是将通用工具字典转换成 LLM 可读的工具列表,实际使用时可动态调整。REUTRN_FORMAT 定义了调用 API 的格式。工具结果回传阶段利用正则表达式抓取输出中的“tool”和“parameters”参数,对于 interpreter 工具使用另一种正则表达式提取 LLM 输出的代码,通过识别 LLM 返回的调用工具的字典提取对应值传入工具函数,将工具返回结果以 observation 角色返回给 LLM,对于不接受相关角色的 LLM 接口可改为回传给 user 角色。 实现方式的比较与建议: 1. JSON Output:通过 Prompt 方式让模型输出 JSON 格式内容,但 Prompt 麻烦,输出不稳定,串业务成本高。 2. JSON Mode:官方 JSON Output,与 Tools 适用场景不同,JSON mode 为输出 JSON 存在,Tools 为 Call API 存在。 3. 从可控角度推荐 Function Calling 和 Tools 实现: 放弃 JSON mode,模型输出 JSON 仍可能出错,模型厂家对 Function Calling 有微调优化。 降低 System prompt 依赖,能在 Tools 里写的尽量写在里面。 API Response 增强 Prompt,准确率高。 尽量让模型做选择而非填空,减少 token 输出,提高速度和准确率。 利用 Tools 做 Route,构建 Multi Agent,术业有专攻。 此外,在初级菜鸟学习 Langchain 做简单 RAG 方面: 1. 没有用 Langchain 做 table 和 text 的 RAG: Table 表格:包括读入表格 markdown 格式嵌入 template 和直接使用 function call 两种方法。 Text 文字:包括文字相似度检索过程,涉及读入文字、清洗、切分、向量化、计算相似度等步骤。 2. 用 Langchain 做 table 和 text 的 RAG:包括运用 Agent 和 Chain 等方式。 3. 使用 Agent 把文本多种文档组合起来。 相关代码和示例可参考相应的链接。
2025-03-11
function calling 这是什么?
Function Calling 是一种在自然语言处理和人工智能模型中的技术。 在金融业务场景中,例如搜索欧元兑美元的当前汇率,使用前需要做好配置,如使用 Gemini 1.5 Flash 模型。 对于 ChatGPT 而言,为了让其返回符合要求的 JSON 格式,prompt 的定制尤为重要和复杂。OpenAI 发布函数调用及其他 API 更新后,开发人员可以向 gpt40613 和 gpt3.5turbo0613 描述函数,并让模型智能地选择输出一个包含调用这些函数所需参数的 JSON 对象,这是将 GPT 的能力与外部工具和 API 连接起来的新方法。例如,本地写函数执行 this.app.mysql.select。 对于 OpenAI 的 GPT 模型,Chat completions API 允许在请求中传递一系列函数描述,使模型能够根据提供的模式生成函数参数,API 以 JSON 格式返回生成的函数参数,可用于执行函数调用,函数调用的输出还可在后续请求中反馈给模型形成交互循环。想深入了解可查看 GPT 入门指南里的函数调用部分和 OpenAI Cookbook 里的用例。 需要注意的是,模型生成的代码不一定都是正确和安全的,在运行代码前要确保环境安全,最好在沙盒中进行。
2025-03-06
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 call
Function Calling 是一种将 AI 模型(如 ChatGPT、谷歌 Gemini 等)的能力与外部工具和 API 连接起来的方法。 在 ChatGPT 中: 为让 ChatGPT 返回符合要求的 JSON 格式,prompt 的定制重要且复杂。 OpenAI 发布函数调用及其他 API 更新后,开发人员可向 gpt40613 和 gpt3.5turbo0613 描述函数,让模型智能输出包含调用函数所需参数的 JSON 对象。 本地写函数执行查询操作,如 this.app.mysql.select,函数名 getSqlQuery,参数:sql,更灵活。 在谷歌 Gemini 中: 讲解了 Function Calling 是什么及具体用法。 以从事金融业务为例,如搜索欧元兑美元的当前汇率,使用前需做好配置,可使用 Gemini 1.5 Flash 模型。 函数调用带来了多个优势,包括简化用户体验、减少错误发生可能性、为更高级自动化开辟道路,能处理如酒店预订或制定旅行计划等复杂操作,重新定义了人与技术的互动方式。
2025-03-31
如何实现function call
实现 Function Call 主要有以下几种方式和要点: 1. 方式: Json Output:通过 Prompt 让模型输出 JSON 格式内容,但 Prompt 麻烦,输出不稳定,串业务成本高。 Json Mode:官方 Json Output,与 Tools 适用场景不同,JSON mode 为输出 JSON 存在,Tools 为 Call API 存在。 Function Calling 和 Tools:从可控角度推荐使用。 2. 要点: 放弃 JSON mode:模型输出 JSON 仍可能出错,模型厂家对 Function Calling 有微调优化。 降低 System prompt 依赖,化繁为简:System prompt 内容多,不能保证模型遵循,能在 Tools 里写的尽量写在里面。 API Response 增强 Prompt:Tools 调用结果返回给模型时,可增加约束和提示,准确率高。 尽量让模型做选择,而不是填空:将确定答案做成选项,如用 Enum 方式,减少 token 输出,提高速度和准确率。 利用 Tools 来做 Route,构建 Multi Agent:一个不行就增加数量,术业有专攻。 此外,OpenAI 发布函数调用及其他 API 更新,开发人员可向 gpt40613 和 gpt3.5turbo0613 描述函数,让模型智能输出包含调用函数所需参数的 JSON 对象,这是连接 GPT 能力与外部工具和 API 的新方法。例如在本地写函数执行查询,根据 GPT 返回的函数名和参数来操作,也可将函数改为更灵活的 SQL 查询。在实际业务中,可根据需求选择函数查询或 SQL 查询。另外,LangChain 内置的 openapifunction call 也可用于相关开发,实际业务中可能需结合内置业务流程,如判断用户问题是否相关、引导式提问等。
2025-03-19