news 2026/5/7 17:05:17

Ollamavllm中部署模型think模式开启关闭

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Ollamavllm中部署模型think模式开启关闭

(一)Ollama中think模式开启关闭

在 Ollama 中部署 Qwen3 模型时,关闭其“思考模式”(即不显示推理过程 ``)有以下几种常用方法。

1. 在提示词中添加指令

最简单的方式是在你的提问末尾加上/no_think指令。这会让模型在当前轮次直接输出最终答案,而不展示思考过程。

你好,请介绍一下自己/no_think

2. 通过命令行参数设置

在启动模型时,可以使用--think=false--hidethinking参数来全局关闭思考模式。

ollama run qwen3:4b --think=false# 或ollama run qwen3:4b --hidethinking

3. 在交互式会话中使用命令

如果你已经通过ollama run进入了交互式对话,可以在会话中输入命令来关闭思考模式。

/set nothink

输入/?可以查看当前会话支持的所有命令。

4. 通过 API 调用控制

在使用 Ollama 的 API 进行聊天请求时,可以在请求体中设置"think": false来关闭思考。

{"model":"qwen3","messages":[{"role":"user","content":"你的问题"}],"think":false}

5. 使用非思考版本的模型

有些 Qwen3 模型变体(如qwen3:235b-a22b-instruct-2507-q4_K_M)本身就不是“思考模型”,直接使用它们就不会有思考过程。

重要说明

  • 指令优先级:在对话中,模型会遵循最新的指令。如果你之前开启了思考,在最新的消息中加上/no_think即可关闭。
  • 模型限制:部分专门为深度推理设计的模型(如qwen3-30b-a3b-thinking-2507)可能无法完全关闭思考模式。
  • 参数差异:某些教程中提到的enable_thinking参数通常是在直接使用模型库(如 Transformers 或 SGLang)时设置,在 Ollama 的上下文中,更推荐使用上述几种方法。

你可以根据自己使用 Ollama 的方式(命令行交互、API 调用等)选择最方便的方法来关闭思考模式。

(二)Vllm中think模型开启关闭

在 vLLM 中部署 Qwen3-32B 模型时,可以通过API 请求参数启动配置来控制其“思考模式”(即是否输出推理过程 ``)的开启与关闭。

一、如何设置思考模式的开启与关闭

1.通过 API 请求参数控制(推荐)

这是最灵活的方式,可以在每次请求时动态控制。关键参数是chat_template_kwargs中的enable_thinking

  • 关闭思考模式:将enable_thinking设为False
  • 开启思考模式:将enable_thinking设为True(默认行为)。
2.通过启动参数控制(全局设置)

在启动 vLLM 服务时,可以通过指定自定义聊天模板来全局禁用思考模式,即使用户在提示中要求思考也会被阻止[。

vllm serve Qwen/Qwen3-32B --chat-template ./qwen3_nonthinking.jinja

注意:此方法需要你准备一个禁用了思考功能的 Jinja 模板文件。

3.软开关:在用户消息中指令

模型本身也支持通过特定的指令来切换模式,这是一种“软开关”。

  • 关闭思考:在用户消息末尾添加/no_think指令[[3]]。
  • 开启思考:在用户消息末尾添加/think指令。

二、调用 vLLM API 的 Python 代码示例

以下示例使用openaiPython 包(需安装openai>=1.0.0)调用本地 vLLM 服务,并演示如何开关思考模式。

fromopenaiimportOpenAI# 1. 初始化客户端,连接到本地 vLLM 服务client=OpenAI(api_key="EMPTY",# vLLM 服务不需要密钥base_url="http://localhost:8000/v1",# vLLM 服务的默认地址)# 2. 准备对话消息messages=[{"role":"user","content":"请解释一下引力波是如何被探测到的。"}]# 3. 发起 API 请求,并控制思考模式try:response=client.chat.completions.create(model="Qwen/Qwen3-32B",# 模型名称需与启动服务时的 `--served-model-name` 一致messages=messages,max_tokens=1024,temperature=0.7,top_p=0.8,# 关键:通过 extra_body 传递 enable_thinking 参数来控制思考模式extra_body={"top_k":20,"chat_template_kwargs":{"enable_thinking":False# 关闭思考模式。改为 True 则开启。}})# 4. 打印模型的回复print("模型回复:")print(response.choices[0].message.content)exceptExceptionase:print(f"请求发生错误:{e}")

三、重要注意事项

  1. 参数位置enable_thinking参数并非 OpenAI 官方 API 标准,因此必须放在extra_body字段中传递。
  2. 与思考内容解析的兼容性:如果你在启动 vLLM 时使用了--reasoning-parser参数来解析思考内容,在 vLLM 0.8.5 版本中,这与enable_thinking=False不兼容。此问题在 vLLM 0.9.0 及更高版本中已得到解决[[5]]。
  3. 模型版本:确保你部署的Qwen3-32B是支持思考能力的版本(通常是InstructThinking后缀的模型)。基础预训练模型可能不具备此功能。

总结:最常用的方法是在 API 调用时,通过extra_body中的chat_template_kwargs: {"enable_thinking": True/False}来精确控制每次请求的思考模式。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/5 22:18:18

FLUX.1 Kontext:120亿参数开源模型如何重塑数字创意工作流

FLUX.1 Kontext:120亿参数开源模型如何重塑数字创意工作流 【免费下载链接】FLUX.1-Kontext-dev 项目地址: https://ai.gitcode.com/hf_mirrors/black-forest-labs/FLUX.1-Kontext-dev 开篇思考:当AI遇见精准图像编辑 在数字内容创作爆发式增长…

作者头像 李华
网站建设 2026/5/5 22:18:18

Kerl终极指南:快速掌握Erlang版本管理全流程

Kerl终极指南:快速掌握Erlang版本管理全流程 【免费下载链接】kerl Easy building and installing of Erlang/OTP instances 项目地址: https://gitcode.com/gh_mirrors/ke/kerl 还在为不同Erlang项目需要不同版本而烦恼?手动编译时遭遇依赖问题&…

作者头像 李华
网站建设 2026/5/6 23:03:32

Share.js 终极指南:5分钟实现网站社交分享功能

Share.js 终极指南:5分钟实现网站社交分享功能 【免费下载链接】share.js overtrue/share.js 是一个用于实现网站内分享的 JavaScript 库。适合在网站开发中使用,提供多种分享方式和自定义选项。特点是提供了简洁的 API、丰富的分享平台和良好的兼容性。…

作者头像 李华
网站建设 2026/5/2 4:08:57

51CTO-OpenGL渲染引擎-设计与实践

在现代图形渲染引擎的开发中,OpenGL 作为一种广泛应用的图形渲染接口,提供了强大的功能和灵活性。然而,如何在复杂的场景中实现高效且精准的渲染效果,始终是图形开发人员面临的一项挑战。深度测试(Depth Testing&#…

作者头像 李华
网站建设 2026/5/3 9:24:17

使用Monkey命令做简单的安卓APP稳定性测试

Monkey是Android SDK提供的一个命令行工具,可以简单方便的发送伪随机的用户事件流,对Android APP做压力(稳定性)测试。主要是为了测试app是否存在无响应和崩溃的情况。 Monkey 是SDK中附带的一个工具,所有的事件都是随…

作者头像 李华
网站建设 2026/5/8 2:07:37

突破单机局限:Universal Split Screen打造多人游戏新体验

突破单机局限:Universal Split Screen打造多人游戏新体验 【免费下载链接】UniversalSplitScreen Split screen multiplayer for any game with multiple keyboards, mice and controllers. 项目地址: https://gitcode.com/gh_mirrors/un/UniversalSplitScreen …

作者头像 李华