DeepSeek Function Calling怎么使用

穿越時空

穿越時空

2026-07-24

594人浏览

原创

必须走function calling流程:模型先生成结构化调用指令,开发者截获后执行函数并回传结果。需定义含type、name、description、parameters的标准工具字典,parameters中required须显式声明;调用api时base_url设为https://api.deepseek.com,model用deepseek-chat,并传入tools参数;响应中需检查tool_calls,拼接完整arguments后解析执行;最后以role="tool"消息回传结果并发起第二轮请求获取最终回答。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

deepseek function calling怎么使用

要用DeepSeek实现让大模型自动调用外部工具(比如查天气、查股价、搜网页),必须走Function Calling流程——它不是直接发请求就能出结果,而是模型先生成结构化调用指令,你截获后执行函数,再把结果喂回去让它续写回答。

定义可调用的函数工具

第一步是把你要接入的业务逻辑包装成标准格式的字典,放进tools列表里。每个工具必须包含type、function.name、function.description和function.parameters三部分。

例如查询杭州天气,要写清楚参数location是字符串类型且必填:

【parameters中required字段必须显式声明,漏掉会导致模型不触发调用】

function.description不能写“获取天气”,得写“获取指定城市的实时天气状况,包括温度和天气现象”,越具体模型识别越准。

发送带tools的消息给DeepSeek API

初始化OpenAI客户端时,base_url必须设为https://api.deepseek.com,model固定用deepseek-chat。

调用client.chat.completions.create时,除了messages,必须传入tools参数,否则模型根本看不到你提供了哪些工具。

这一步操作起来很简单,直接把tools列表塞进参数就行。

php获得文件的mime type类
php获得文件的mime type类

php获得文件的mime type类

下载

捕获并解析模型返回的tool_calls

第一步:检查response.choices[0].message.tool_calls是否存在。如果为空,说明模型没决定调用函数,直接取.content即可。

第二步:若存在tool_calls,遍历每个调用项,提取id、function.name和function.arguments。

注意:arguments是字符串格式的JSON片段,不是完整JSON对象——流式响应中参数可能被分段返回,必须拼接完整后再json.loads(),否则会报JSONDecodeError。

第三步:根据name匹配你预先定义的函数,用json.loads(arguments)后的字典作为参数执行本地函数。

把函数执行结果回传给模型

方法一:构造role为tool的新消息,包含tool_call_id(必须与原调用id完全一致)和content(函数返回值字符串)。

方法二:把这条tool消息追加到原始messages末尾,再次调用API发起第二轮请求。

这轮请求不再传tools参数——因为任务已执行完毕,模型只需基于结果生成自然语言回复。

最终response.choices[0].message.content就是用户看到的答案。

相关文章

AI工具
AI工具

AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型,支持联网搜索。

下载

相关标签:

deepseek

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
DeepSeek官方入口
DeepSeek官方入口

DeepSeek,一个综合性的搜索引擎,提供来自学术数据库、新闻网站和社交媒体的广泛结果。访问 DeepSeek 的官方网站。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2025.02.17

32988

6

deepseek在线提问
deepseek在线提问

本合集汇总了DeepSeek在线提问技巧与免登录使用入口,助你快速上手AI对话、写作、分析等功能。阅读专题下面的文章了解更多详细内容。

2026.02.27

750

50

DeepSeek 入门与快速上手指南
DeepSeek 入门与快速上手指南

面向 AI 工具新手,从 DeepSeek 的账号注册、网页端与客户端使用讲起,介绍 DeepSeek-V3、DeepSeek-R1 等模型的能力定位与选择建议、对话提示词(Prompt)编写技巧、深度思考模式与联网搜索功能的使用场景、API Key 申请与首次接口调用流程,帮助用户快速上手 DeepSeek 并将其融入日常工作与学习。

2026.05.12

1643

18

DeepSeek API开发与应用集成教程合集
DeepSeek API开发与应用集成教程合集

系统讲解 DeepSeek 开放平台 API 的开发与集成方法,涵盖 API Key 鉴权与请求签名、Chat Completions 接口参数详解(temperature/top_p/max_tokens)、多轮对话上下文管理、流式输出(SSE Streaming)的前后端实现、Function Call 函数调用与外部工具对接、Embeddings 文本向量接口的使用、Python requests / openai SDK / J

2026.05.12

128

19

DeepSeek 提示词工程与高效使用教程合集
DeepSeek 提示词工程与高效使用教程合集

聚焦如何通过提示词工程充分发挥 DeepSeek 的能力上限,涵盖基础 Prompt 结构(角色/任务/格式/约束)设计、System Prompt 系统指令的最佳实践、Few-shot 示例引导与 Zero-shot 直接提问的场景选择、思维链(Chain of Thought)逐步推理引导、复杂任务的分步拆解策略、输出格式控制(JSON/Markdown/表格)、避免幻觉与提升准确率的约束技巧、DeepSeek-R1 深度推理模式的

2026.05.12

162

26

DeepSeek本地部署与私有化方案
DeepSeek本地部署与私有化方案

面向有数据隐私需求的开发者与企业,讲解 DeepSeek 开源模型的本地化部署方案,涵盖 DeepSeek-R1 各蒸馏版本(1.5B/7B/8B/14B/32B/70B)的硬件需求与能力对比、Ollama 一键本地运行与模型管理、vLLM 高性能推理服务部署、llama.cpp 量化推理(GGUF 格式/Q4/Q8 量化)在消费级显卡上的实践、Hugging Face Transformers 加载与微调、Docker 容器化部署、多

2026.05.12

140

21

DeepSeek行业应用场景实战
DeepSeek行业应用场景实战

以实际业务场景为导向,展示 DeepSeek 在不同行业中的落地应用方案,涵盖代码开发辅助(代码生成/审查/重构/单元测试编写)、长文写作与内容创作(报告/文案/论文大纲)、Excel 数据分析与可视化建议、智能客服机器人搭建(意图识别/多轮对话/知识库检索)、RAG 检索增强生成实现企业知识库问答、合同与法律文本审查、教育领域个性化辅导,帮助用户将 DeepSeek 转化为切实的生产力工具。

2026.05.12

306

17

DeepSeek 与主流 AI 大模型对比评测
DeepSeek 与主流 AI 大模型对比评测

从多个维度对 DeepSeek 与市场主流大语言模型进行客观对比,涵盖模型参数规模与架构差异(MoE 混合专家架构)、中文理解与生成能力对比、英文与多语言表现、数学推理与代码能力基准评测(MMLU/HumanEval/GSM8K)、长文本处理与上下文窗口对比、API 定价与性价比分析、响应速度与并发能力、开源生态与私有化部署灵活性,帮助用户根据自身需求在 DeepSeek、ChatGPT、Claude、Gemini、Llama 等模型中

2026.05.12

141

12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
腾讯元宝使用手册
腾讯元宝使用手册

共0课时 | 0人学习

DeepSeek手册
DeepSeek手册

共0课时 | 0人学习