新智元报道
编辑:Aeneas 好困
【新智元导读】DeepSeek官方发布的R1模型部署指南来了!留言区纷纷高呼:「服务器繁忙」问题何时解决?同一天内,OpenAI的推理模型指南也发布了,特点就是字数很多。
同一天内,DeepSeek和OpenAI都发布了推理模型使用指南!
DeepSeek的X账号迎来久违的更新:发布了官方版本,教大家如何部署DeepSeek-R1的设置。
最佳方法如下——
不使用系统提示
采样温度:0.6
针对文件上传和网络搜索功能定制prompt
每次输出时都以 \n开始,以防模型跳过思考过程
注意,官方部署DeepSeek,使用的是跟开源版本完全相同的模型。
不过在留言区最热门的呼声,莫过于请DeepSeek尽快解决「服务器繁忙」的问题。
巧的是,就在同一天的早些时候,OpenAI也发布了官方指南,汇总了使用o系列模型的最佳实践。
包括推理模型与非推理模型之间的区别、何时使用推理模型、以及如何有效地使用提示来引导推理模型。
接下来,让我们详细看一下,两大明星AI机构的官方指南细节。
DeepSeek:手把手教你正确用上官方同款
如何部署和官方一样的DeepSeek-R1?
第一点:不要使用系统提示
请勿添加系统提示(system prompt),所有指令都应当包含在用户提示(user prompt)中。
第二点:将采样温度参数设置为0.6
将采样温度(temperature)设置在 0.5~0.7 之间(建议使用 0.6),以避免输出出现重复循环或语义不连贯的情况。
第三点:使用官方prompt
对于文件上传功能,DeepSeek建议按照模板创建提示,其中包含 {file_name}、{file_content} 和 {question} 这些参数。
```
file_template = \
"""[file name]: {file_name}
[file content begin]
{file_content}
[file content end]
{question}"""
```
对于网络搜索功能,则包含 {search_results}、{cur_data} 和 {question} 这些参数。
对于中文查询,使用如下提示:
```
search_answer_zh_template = \
'''# 以下内容是基于用户发送的消息的搜索结果:
{search_results}
在我给你的搜索结果中,每个结果都是[webpage X begin]...[webpage X end]格式的,X代表每篇文章的数字索引。请在适当的情况下在句子末尾引用上下文。请按照引用编号[citation:X]的格式在答案中对应部分引用上下文。如果一句话源自多个上下文,请列出所有相关的引用编号,例如[citation:3][citation:5],切记不要将引用集中在最后返回引用编号,而是在答案对应部分列出。
在回答时,请注意以下几点:
- 今天是{cur_date}。
- 并非搜索结果的所有内容都与用户的问题密切相关,你需要结合问题,对搜索结果进行甄别、筛选。
- 对于列举类的问题(如列举所有航班信息),尽量将答案控制在10个要点以内,并告诉用户可以查看搜索来源、获得完整信息。优先提供信息完整、最相关的列举项;如非必要,不要主动告诉用户搜索结果未提供的内容。
- 对于创作类的问题(如写论文),请务必在正文的段落中引用对应的参考编号,例如[citation:3][citation:5],不能只在文章末尾引用。你需要解读并概括用户的题目要求,选择合适的格式,充分利用搜索结果并抽取重要信息,生成符合用户要求、极具思想深度、富有创造力与专业性的答案。你的创作篇幅需要尽可能延长,对于每一个要点的论述要推测用户的意图,给出尽可能多角度的回答要点,且务必信息量大、论述详尽。
- 如果回答很长,请尽量结构化、分段落总结。如果需要分点作答,尽量控制在5个点以内,并合并相关的内容。
- 对于客观类的问答,如果问题的答案非常简短,可以适当补充一到两句相关信息,以丰富内容。
- 你需要根据用户要求和回答内容选择合适、美观的回答格式,确保可读性强。
- 你的回答应该综合多个相关网页来回答,不能重复引用一个网页。
- 除非用户要求,否则你回答的语言需要和用户提问的语言保持一致。
# 用户消息为:
{question}'''
```
对于英文查询,使用如下提示:
```
search_answer_en_template = \
'''# The following contents are the search results related to the user's message:
{search_results}
In the search results I provide to you, each result is formatted as [webpage X begin]...[webpage X end], where X represents the numerical index of each article. Please cite the context at the end of the relevant sentence when appropriate. Use the citation format [citation:X] in the corresponding part of your answer. If a sentence is derived from multiple contexts, list all relevant citation numbers, such as [citation:3][citation:5]. Be sure not to cluster all citations at the end; instead, include them in the corresponding parts of the answer.
When responding, please keep the following points in mind:
- Today is {cur_date}.
- Not all content in the search results is closely related to the user's question. You need to evaluate and filter the search results based on the question.
- For listing-type questions (e.g., listing all flight information), try to limit the answer to 10 key points and inform the user that they can refer to the search sources for complete information. Prioritize providing the most complete and relevant items in the list. Avoid mentioning content not provided in the search results unless necessary.
- For creative tasks (e.g., writing an essay), ensure that references are cited within the body of the text, such as [citation:3][citation:5], rather than only at the end of the text. You need to interpret and summarize the user's requirements, choose an appropriate format, fully utilize the search results, extract key information, and generate an answer that is insightful, creative, and professional. Extend the length of your response as much as possible, addressing each point in detail and from multiple perspectives, ensuring the content is rich and thorough.
- If the response is lengthy, structure it well and summarize it in paragraphs. If a point-by-point format is needed, try to limit it to 5 points and merge related content.
- For objective Q&A, if the answer is very brief, you may add one or two related sentences to enrich the content.
- Choose an appropriate and visually appealing format for your response based on the user's requirements and the content of the answer, ensuring strong readability.
- Your answer should synthesize information from multiple relevant webpages and avoid repeatedly citing the same webpage.
- Unless the user requests otherwise, your response should be in the same language as the user's question.
# The user's message is:
{question}'''
```
第四点:别让模型绕过思考
DeepSeek发现,DeepSeek-R1系列模型在回应某些查询时,可能会跳过思考过程(即直接输出空的思考标签「 \n\n 」),这会影响模型的推理性能。
为确保模型进行完整的推理过程,官方建议:强制要求模型在每次输出时都以思考标签「 \n」开始。
OpenAI:推理模型的最佳实践
在这边,OpenAI也放出使用o系列模型的最佳实践指南。
推理模型与GPT模型
OpenAI介绍道,与GPT模型相比,o系列模型在不同任务上表现出色,且需要使用不同的提示。
这两类模型没有优劣之分——它们各有所长。
o系列模型更像是一个「规划者」,能深入思考复杂任务;相比之下,GPT模型则是一个「执行者」,能直接执行任务,延迟低、性价比更高。
在不同情况下,具体选择哪个模型,推荐如下。
速度和成本:选择GPT模型,因为它们处理速度更快,成本更低
执行明确任务:选择GPT模型,它们在处理界定清晰的任务时表现出色
准确性和可靠性:选择o系列模型,它们是可靠的决策专家
复杂问题解决:选择o系列模型,它们善于处理模糊和复杂的问题
大多数AI工作流,可以使用二者的结合。
何时使用推理模型
OpenAI列出了一些从客户和内部观察到的成功使用模式,是一些针对o系列模型的实用指导。
1. 处理模糊任务
推理模型特别擅长处理信息有限或零散的情况,只需通过简单的提示词就能理解用户意图并妥善处理指令中的信息缺口。
值得注意的是,推理模型通常会在做出未经验证的猜测或填补信息空缺之前,主动提出澄清性问题。
AI知识平台的法律和金融公司表示,只需一个简单提示,o1就能使Matrix轻松识别信用协议中受限支付能力下可用的资金篮。此前没有任何模型达到这种性能水平
2. 大海捞针
当需要处理大量非结构化信息时,推理模型特别擅长理解内容并精准提取出回答问题所需的关键信息。
比如,AI金融平台发现,为了分析一家公司的收购,o1审查数十份文件(合同和租赁协议),找到了可能影响交易的复杂条款
3. 在大型数据集中发现关系和细微差别
推理模型特别擅长分析包含数百页密集、非结构化信息的复杂文档,如法律合同、财务报表和保险索赔等。这些模型在识别文档之间的关联性,并基于数据中隐含的事实做出决策方面,表现尤为突出。
税务研究平台发现,o1在综合多个文档的推理上表现要好得多
推理模型还特别擅长理解细微的政策和规则,并将其准确应用于具体任务中以得出合理结论。
投资管理AI平台提问:融资如何影响现有股东,尤其是在行使反稀释权的情况下?o1和o3-mini完美完成任务,而顶级财务分析师需要花20-30分钟计算
4. 多步骤AI智能体规划
推理模型在AI智能体规划和策略制定中发挥着关键作用。
将推理模型作为「计划者」时效果显著:它能为问题制定详细的多步骤解决方案,并根据具体需求(高智能或低延迟)选择和分配合适的GPT模型(执行者)来完成各个步骤。
o1很擅长选择数据类型,将大问题分解为小块
5. 视觉推理能力
截至目前,o1是唯一一个具备视觉处理能力的推理模型。
与GPT-4o相比,o1的独特优势在于它能够准确理解最具挑战性的视觉内容,包括结构不规则的图表和表格,以及质量欠佳的图片。
SafetyKit会自动化审核数百万种产品的风险与合规性,包括奢侈品仿制品、濒危物种以及受管制物品。最困难的图像分类任务上,o1达到了88%的准确性
可以看到,o1能够从复杂的建筑工程图纸中精确识别各类设施和材料,并生成完整的工程物料清单(BOM)。
最令人惊喜的发现是,o1能够自动关联不同图纸之间的信息:它可以将建筑图纸某页的图例信息正确应用到其他页面,而无需特别指示。
例如,在识别4x4 PT木柱时,o1 够根据图例自动理解「PT」代表压力处理
6. 代码审查、调试和质量改进
推理模型在审查和改进大规模代码方面表现突出。考虑到这类模型的较高延迟特性,通常将代码审查任务安排在后台运行。
虽然GPT-4o和GPT-4o mini凭借较低的延迟可能更适合直接编写代码,但在那些对延迟要求相对不那么严格的代码生成场景中,o3-mini表现同样出色。
Windsurf发现,o3-mini非常擅长计划和只需复杂的软件设计系统
7. 评估和基准测试其他模型的响应
OpenAI还发现,推理模型在对其他模型的输出进行基准测试和评估方面表现优异。
数据验证对确保数据集的质量和可靠性至关重要,这一点在医疗保健等敏感领域尤其重要。
传统验证方法主要依赖预设规则和模式,而o1和o3-mini等先进模型则能够理解上下文并进行数据推理,从而提供更灵活、更智能的验证方案。
在医疗应用场景中,o1的推理能力能在最困难和最复杂的评分任务中精准识别细微差异,彻底改变评估方式
如何编写推理模型的prompt
推理模型在处理简明直接的提示词时表现最佳。某些提示工程(如要求模型「一步一步思考」)可能并不会提升性能,有时反而会降低效果。
简单来说,你可以可以这样理解:
推理模型就像一位经验丰富的高级同事——你只需告诉他们最终目标,就能相信他们自主完成所有细节工作。
GPT模型则更像一位新手同事——你需要提供明确详细的指示,才能让他们准确完成特定的输出任务。
构建prompt的具体建议如下:
用开发者消息取代系统消息: 自o1-2024-12-17版本起,推理模型开始支持开发者消息(developer message)而非系统消息(system message)。
保持提示词简洁明确: 推理模型最擅长理解和响应简短、清晰的指令。
避免使用CoT提示: 由于模型内置推理能力,因此无需特别提示它们「一步一步思考」或「解释推理过程」。
善用分隔符增强清晰度: 使用Markdown、XML标签和章节标题等分隔符来明确区分输入的不同部分,这有助于模型准确理解各个章节的内容。
优先尝试零样本学习: 推理模型通常无需少样本示例即可产出优质结果,因此建议先尝试不含示例的提示词。如果对输出结果有更复杂的要求,再考虑在提示词中添加输入和期望输出的示例。请注意确保示例与提示词指令严格匹配,因为不一致可能导致性能下降。
提供明确约束条件: 如果需要对模型的响应施加具体限制(例如「提供预算控制在500美元以内的解决方案」),请在提示词中明确列出这些约束条件。
明确定义目标: 在指令中,请详细说明判定响应成功的具体参数,并引导模型持续优化推理过程,直到达成设定的成功标准。
Markdown格式说明:从o1-2024-12-17版本开始,API中的推理模型默认不会生成带有Markdown格式的响应。如果确实需要在响应中包含Markdown格式,请在开发者消息的首行添加「Formatting re-enabled」字符串。
以下是代码重构、执行规划、STEM研究的prompt示例:
左右滑动查看
推理工作原理
推理模型在输入和输出token之外,还引入了推理token用于「思考」。
在生成推理token后,模型会生成可见的补全内容作为最终答案,同时从上下文中清除推理token。
下面是用户与AI助手之间多轮对话的示例。可以看到,每轮对话的输入和输出token都会被保留,而推理token则会被移除。
参考资料:
https://x.com/deepseek_ai/status/1890324295181824107
https://platform.openai.com/docs/guides/reasoning-best-practices
https://platform.openai.com/docs/guides/reasoning