新闻详情

新闻详情

首页 / 资讯中心 / 详情

DeepSeek-V4-Flash-Vision-Exp 提示词编码完全指南:基于 encoding_dsv4.py 的多模态消息、工具调用与思考模式解析

发布时间:2026/9/30 13:10:07来源:尧图网络
DeepSeek-V4-Flash-Vision-Exp 提示词编码完全指南:基于 encoding_dsv4.py 的多模态消息、工具调用与思考模式解析
大模型基础模型多模态计算机视觉DeepSeek【免费下载链接】DeepSeek-V4-Flash-Vision-Exp项目地址https://ai.gitcode.com/hf_mirrors/deepseek-ai/DeepSeek-V4-Flash-Vision-Exp点击查看免费下载encoding/encoding_dsv4.py是本仓库中独立自包含的提示词格式参考实现它完整覆盖 DeepSeek-V4 的文本与视觉编码能力多轮对话、工具调用DSML、思考模式chat/thinking以及图文交错的内容块。本文以 encoding/README.md 为主体骨架结合源码与测试用例系统讲解如何把 OpenAI 风格的消息列表编码为模型真正消费的提示词字符串与媒体数据并给出可直接运行的最小示例与验证方法。读完本文你将能够独立构造 DeepSeek-V4 的多模态提示词、正确使用思考强度参数、理解工具调用与图片占位符的底层编码规则。一、encoding_dsv4.py不依赖推理实现的独立编码参考encoding_dsv4.py 被定位为“standalone prompt-format reference”——即独立的提示词格式参考。它的关键特性是不导入任何推理实现编码逻辑与inference/目录下的模型加载、生成流程完全解耦可以单独被测试、被引用、被复用支持多轮对话multi-turn系统、开发者developer、用户、助手、latest_reminder 等多种角色消息支持工具调用tool calls将 OpenAI 格式的 function 定义与调用转换为 DeepSeek-V4 的 DSML 标记语言支持思考模式thinking modes区分chat与thinking两种模式并可配置推理强度reasoning effort支持图文交错内容块interleaved image content blocks图片以内容块形式混排在文本之间编码后以deepseek_image占位符呈现在提示词中图片的像素加载与模型图像 token 展开则由 inference/image_processor.py 负责。从源码结构看该文件组织为几个清晰的层次特殊 Token 定义第 13-38 行、模板定义第 40-109 行、消息渲染核心render_message第 237-411 行、预处理merge_tool_messages、sort_tool_results_by_call_order、统一入口encode_messages以及解码侧的parse_message_from_completion_text。1.1 特殊 Token 一览源码开头定义了全部特殊标记encoding_dsv4.py常量取值用途bos_tokenbegin▁of▁sentence对话起始标记BOSeos_tokenend▁of▁sentence对话结束标记EOSthinking_start_tokenthink思考开始标记thinking_end_token/think思考结束标记dsml_tokenDSML工具调用标记前缀USER_SP_TOKENUser用户消息标记ASSISTANT_SP_TOKENAssistant助手消息标记LATEST_REMINDER_SP_TOKENlatest_reminder实时提醒消息标记IMAGE_PLACEHOLDERdeepseek_image图像占位符二、OpenAI 风格消息编码入门encode_messages 最小示例README 给出了最直接的入门用法将 OpenAI 风格的多模态消息文本 image_url内容块编码为提示词字符串与媒体数据。以下代码完整保留自 encoding/README.mdfrom encoding_dsv4 import encode_messages messages [{ role: user, content: [ {type: text, text: 第一张图}, { type: image_url, image_url: {url: examples/images/carrots.jpeg}, }, {type: text, text: 有什么内容}, ], }] # non-thinking prompt, media encode_messages( messages, thinking_modechat, return_multi_modal_dataTrue, )生成的prompt为begin▁of▁sentenceUser第一张图\n\ndeepseek_image\n\n有什么内容Assistant/think可观察到几个关键编码特征BOS 标记在最前用户消息以User开头image_url内容块被替换为deepseek_image占位符并在其后附加空行最后以Assistant/think收尾提示模型开始生成chat 模式默认追加/think。2.1 encode_messages 完整参数说明从 encoding_dsv4.py 的签名可以看出encode_messages是文本与多模态统一编码的唯一公共入口参数取值默认值说明messages消息字典列表必填OpenAI 风格对话消息thinking_modechat/thinking必填思考模式chat不输出思考过程thinking启用think块context消息列表None前置上下文消息已编码前缀用于延续生成drop_thinkingboolTrue是否丢弃早期助手轮次的reasoning_content只保留最后一个用户消息之后的思考add_default_bos_tokenboolTrue是否在对话开始时追加 BOS 标记reasoning_effortlow/high/maxNone等价low思考模式下的推理强度仅对 thinking 模式生效return_multi_modal_databoolFalse为True时返回(prompt, media_data)二元组否则仅返回提示词字符串值得注意的细节encode_messages内部先调用process_image_messages规范化图片内容块并收集媒体记录再调用_encode_messages_text完成文本拼接。纯文本调用保持原有“仅返回字符串”的 API 兼容行为只有return_multi_modal_dataTrue时返回(prompt, {images: [...]})。三、思考模式与推理强度thinking_mode 与 reasoning_effort3.1 两种思考模式thinking_mode决定模型是否在提示词中出现think.../think块chat非思考提示词以Assistant/think结束模型直接输出最终回答不经过显式思考阶段thinking思考提示词以Assistantthink结束模型先输出推理内容再给出总结。3.2 推理强度 reasoning_effort源码 encoding_dsv4.py 定义了REASONING_EFFORT_PROMPTS三个级别思考模式下所选级别的提示语会被预置在整段对话的最开头仅在索引 0 处注入见render_message第 279-280 行级别是否追加提示语说明low否追加空字符串默认级别不增加任何前缀high是要求“绝对最大、不允许捷径、彻底分解问题”max是要求“超越最大——穷尽、执着、毫不妥协”深入分解因果链并多角度验证README 中给出了max级别的完整示例执行prompt, media encode_messages( messages, thinking_modethinking, reasoning_effortmax, return_multi_modal_dataTrue, )生成的prompt为begin▁of▁sentenceReasoning Effort: Beyond maximum — exhaustive, relentless, and uncompromising.\nYou MUST reason with the utmost depth and rigor, leaving absolutely nothing to chance: exhaustively decompose the problem into its most fundamental components, trace every causal chain to its root, and resolve the underlying cause rather than any surface symptom.\nDo not stop reasoning until you have independently verified the solution from multiple angles and are certain that no assumption remains unchecked and no error remains undiscovered.\n\nUser第一张图\n\ndeepseek_image\n\n有什么内容Assistantthink可以看到推理强度前缀位于 BOS 之后、User之前消息以Assistantthink结尾等待模型输出思考内容。3.3 drop_thinking 的自动调整_encode_messages_text中有一个自动规则encoding_dsv4.py只要任意消息携带tools定义effective_drop_thinking就会被强制设为False——即涉及工具调用时不会丢弃思考内容保证模型在调用工具前的推理过程完整保留。_drop_thinking_messages第 589-613 行还会在最后一个用户消息之前删除 developer 消息、并剥离早期助手轮次的reasoning_content。四、图像内容块占位符、媒体记录与底层实现4.1 占位符与媒体数据一一对应README 明确说明图片在提示词中以deepseek_image表示media[images]按完全相同的顺序存放对应的图片记录。编码器执行一条“顺序不变”约束prompt.count(IMAGE_PLACEHOLDER)必须等于len(media[images])且第 n 个占位符对应第 n 张图片记录。这一点被 encoding/test_encoding_dsv4.py 中的test_top_level_image_block_returns_matching_placeholder_and_record直接验证。4.2 实现路径process_image_messages → _process_image_blocks图片处理的主流程在 encoding_dsv4.pyprocess_image_messages深拷贝每条消息先调用_validate_no_image_sp_tokens拒绝用户在content/reasoning_content文本字段中手工写入deepseek_image防止伪造占位符对应测试test_user_supplied_placeholder_is_rejected将content列表迁移为content_blocks_process_image_blocks单次遍历内容块image/image_url块被替换为文本占位符块同时调用_extract_image规范化出内部图片记录支持url、source、data三种来源tool_result块中嵌套的图片列表会被递归处理其占位符保留在tool_result.../tool_result内部对应测试test_nested_tool_result_preserves_image_placeholder与test_tool_role_with_image_blocks_preserves_placeholder若图片块缺少有效来源抛出ValueError(Image block does not contain a valid source)测试test_image_block_without_source_is_rejected覆盖。4.3 与 inference/image_processor.py 的分工编码器只负责“格式层”把图片块变成占位符 媒体记录而像素加载与展开为模型图像 token由 inference/image_processor.py 完成。README 明确指出了这一分工——media[images]提供的是图片的引用记录如文件路径 URL真正的图像预处理缩放、归一化、token 化发生在推理侧。4.4 context 图片不会进入当前媒体数据当使用context参数携带历史图片时process_image_messages(context)处理后的图片记录被丢弃只有当前轮次的图片会出现在media[images]中对应测试test_context_images_are_not_returned_as_current_media。五、紧凑 TXT 记号parse_tagged_text 输入便捷层对于快速手写提示词的场景README 提供了parse_tagged_text()它把形如第一张图imageexamples/images/carrots.jpeg/image有什么内容的紧凑文本转换为与 OpenAI 风格等价的标准内容块from encoding_dsv4 import parse_tagged_text, encode_messages content parse_tagged_text( 第一张图imageexamples/images/carrots.jpeg/image有什么内容 ) prompt, media encode_messages( [{role: user, content: content}], thinking_modechat, return_multi_modal_dataTrue, )5.1 实现要点parse_tagged_textencoding_dsv4.py基于正则IMAGE_TAG_PATTERN re.compile(rimage(.*?)/image, re.DOTALL)完成解析在图片标签之前、之间、之后的文本分别转换为{type: text, ...}块保持原有顺序图片路径转换为{type: image_url, image_url: {url: path}}块空图片路径抛出ValueError(Image path must not be empty)若残留未闭合的image或/image标记抛出ValueError(Malformed imagepath/image tag)对应测试test_malformed_tagged_text_is_rejected。README 特别强调这是一个输入便捷层input convenience layer不是第二套编码实现——无论你用 JSON 内容块还是 TXT 标记书写最终都会走同一个encode_messages编码路径。六、工具调用DSML 标记与消息合并预处理DeepSeek-V4 没有独立的tool角色。源码merge_tool_messagesencoding_dsv4.py的 docstring 明确说明工具结果以tool_result块的形式合并进用户消息。整个工具调用链路如下工具定义注入系统提示render_tools用TOOLS_TEMPLATE把 OpenAI 格式的 function schemaname/description/parameters逐条渲染为 JSON拼接到系统消息之后并以## Tools段落呈现模板见 encoding_dsv4.py工具调用编码助手消息中的tool_calls被转换为 赞分享大模型基础模型多模态计算机视觉DeepSeek【免费下载链接】DeepSeek-V4-Flash-Vision-Exp项目地址https://ai.gitcode.com/hf_mirrors/deepseek-ai/DeepSeek-V4-Flash-Vision-Exp点击查看免费下载相关推荐DeepSeek-V4-Flash-Vision-Exp 提示词编码完全指南特殊 Token、思考模式与工具调用模板逐行拆解DeepSeek V4 Flash Vision Exp 提示词编码完全指南特殊 Token、思考模式与工具调用模板逐行拆解 本指南带你逐行拆解 DeepSe大模型基础模型多模态计算机视觉DeepSeekDeepSeek-V4.1-Flash Prompt 编码全指南解读 encoding.py 的消息格式、工具调用与多模态输入DeepSeek V4.1 Flash Prompt 编码全指南解读 encoding.py 的消息格式、工具调用与多模态输入 导读 encoding/enc人工智能大模型多模态如何玩转Edge0-35B-A3B对话模板思考模式、工具调用与多模态提示词完整指南如何玩转Edge0 35B A3B对话模板思考模式、工具调用与多模态提示词完整指南 本文带你完整解析 Edge0 35B A3B 的对话模板chat tem人工智能大模型模型量化LoRA本地部署创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

GPT-6 Luna (Batch) 批量处理性能与质量深度评测 2026/9/30 16:50:14

GPT-6 Luna (Batch) 批量处理性能与质量深度评测

处理几十条指令时,一个循环往往就能完成任务。但当数据量增加到几千条、几万条,接口限流、长文本超时、结果错位和失败重跑的问题就会逐渐显现:任务看似一直在执行,真正完成并通过校验的结果却没有同步增加。 串行处理容易把时间…

阅读更多 →
第316篇_手机回收平台比价 2026/9/30 16:49:48

第316篇_手机回收平台比价

【Python爬虫实战】第316篇:手机回收平台比价爬虫:爱回收与转转回收估价对比——实战项目 所属专栏:【Python爬虫实战】从零到企业级爬虫工程师(CSDN 付费专栏) 本篇篇目:第 316 篇(垂直行业爬虫 二手回收估价专题) 难度等级:中级,有 requests 基础即可上手 阅读时长…

阅读更多 →
重磅收官!中钰沐森高值浴室柜 2027 品牌战略暨新品发布会成功举办 2026/9/30 16:49:41

重磅收官!中钰沐森高值浴室柜 2027 品牌战略暨新品发布会成功举办

秋风送爽,聚力启新。9月27日—28日,"利刃秋闱,放榜市场"中钰沐森高值浴室柜2027年品牌战略暨新品发布会隆重召开,来自全国各地的中钰沐森经销商家人、行业商会领导、供应链伙伴、行业实战专家齐聚一堂,围绕行…

阅读更多 →
HarmonyOS 7 + Request Kit + Background Tasks Kit 实战:多附件上传中心的断点续传、失败重试与队列调度【鸿蒙心迹】 2026/9/30 16:49:41

HarmonyOS 7 + Request Kit + Background Tasks Kit 实战:多附件上传中心的断点续传、失败重试与队列调度【鸿蒙心迹】

这篇文章,我不想只讲“上传功能怎么做出来”,而是把我这次做多附件上传中心时,真正踩到的工程边界梳理清楚:为什么单个上传接口一旦遇到后台切换、网络抖动、超大文件,就会很快失控;以及我最后是怎么把断点…

阅读更多 →
【计算机毕业设计】基于Springboot的“智慧食堂”设计与实现+LW 2026/9/30 16:49:35

【计算机毕业设计】基于Springboot的“智慧食堂”设计与实现+LW

博主介绍:✌全网粉丝3W,csdn特邀作者、CSDN新星计划导师、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌ 技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、…

阅读更多 →
2026 企业 AI 办公平台选型指南:如何匹配组织知识与业务流程 2026/9/30 16:49:22

2026 企业 AI 办公平台选型指南:如何匹配组织知识与业务流程

企业在调研AI办公工具的过程中,很容易陷入几个典型的认知误区。不少团队拿到产品介绍页的功能列表就直接开始比价,把支持多少种生成能力、覆盖多少个办公场景作为核心判断标准,也有部分决策者直接参考消费级产品的使用体验,直接采…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉