trae本地部署大模型并接入deepseek harness,全程托管trae。

发布时间:2026/9/26 15:41:55
trae本地部署大模型并接入deepseek harness,全程托管trae。 8GB 显存跑通 MiniCPM5-2B DeepSeek Harness一次几乎全由 AI 完成的本地部署硬件RTX 50508GB 显存| 系统Windows | 成本0 元 | 全程用时一个下午最重要的前提我没有动手写一行部署代码——这些活儿全部交给了 TraeAI IDE 的编程智能体我只负责回答它的问题、确认方案、复制粘贴报错。一、我做了什么为什么值得写2026 年 9 月初面壁智能OpenBMB开源了 MiniCPM5-2B约 25 亿参数、Apache 2.0 协议、支持 128K 上下文和混合思考模式官方直接放出了 BF16 / GGUF / MLX / GPTQ 全套格式。与此同时DeepSeek 开源了它的 Agent 框架 DeepSeek Harness基于 Cordis 插件体系可以接任意大模型跑完整的 Agent 工作流。我想做的事很简单在一张入门级显卡上让一个开源 2B 模型既当聊天助手又当 Agent 框架的大脑全程离线、零 API 费用。最后达成的效果项目结果模型运行MiniCPM5-2B Q4_K_M1.56GB100% 卸载到 GPU显存占用约 4.7GB含 32K 上下文 KV CacheAPI 服务OllamaOpenAI 兼容接口http://localhost:11434/v1Agent 接入DeepSeek Harness Web UI端口 3080默认模型即本地 2B端到端跑通工具调用循环运维一键启停脚本 图形启动器状态机 后台监控线程视觉能力同系列 MiniCPM-V 4.6 备用需要看图时切换而整个过程本身比结果更有意思——这是一次把部署工作交给 AI 编程智能体的完整实践。二、为什么是这套组合为什么 MiniCPM5-2B8GB 显存是个尴尬的档位——7B 模型量化的勉强装下但上下文开不大1B 太弱。2B 是甜点位Q4 量化后权重仅 1.56GB剩下大量显存给 KV Cache32K 上下文绰绰有余。且它是标准 Llama 架构 ChatML 模板Ollama / llama.cpp / vLLM 全都原生支持。为什么 Ollama 而不是 llama.cpp 直接跑对个人部署Ollama 的模型管理、自动 GPU 卸载、OpenAI 兼容接口开箱即用。缺点模板不支持工具调用、上下文默认 8K都有明确绕法后文讲。为什么 DeepSeek Harness它是我试过的开源 Agent 框架里对自定义 OpenAI 兼容后端最友好的之一——一个 YAML 补丁文件就能接入本地模型Web UI 和 headless 命令行双模式。三、开始前的准备工作如果你要复刻先准备好这些信息这也是你给 Trae 的第一批输入硬件显卡型号和显存nvidia-smi、内存大小、C 盘剩余空间。本文场景RTX 5050 / 8GB / 87GB。网络能否访问 huggingface.co。不能的话比如国内网络用魔搭 ModelScope 的官方镜像模型和 GGUF 都有。软件Windows 10/11Ollama后面会装Node.js npm跑 Harness 需要。我的环境就卡在第 2 条huggingface.co 完全不可达。后来所有模型文件都从 ModelScope 下载速度反而更好。四、部署流程Trae 实际执行的三段第一段模型上线Trae 从 ModelScope 拉取官方MiniCPM5-2B-GGUF的 Q4_K_M 版本1.56GB然后写了这样一个 Modelfile 导入 OllamaFROM ./MiniCPM5-2B-Q4_K_M.gguf TEMPLATE {{- if or .System .Tools }}|im_start|system {{ .System }}{{ end }}...ChatML 模板略 PARAMETER stop |im_end| PARAMETER temperature 1.0 PARAMETER top_p 0.95 PARAMETER min_p 0.0 PARAMETER num_ctx 32768两个值得注意的参数temperature 1.0 / top_p 0.95 / min_p 0.0是官方推荐的采样配置num_ctx 32768是后来补的原因见踩坑清单第 6 条。导入后验证ollama run minicpm5-2b对话正常ollama ps确认 100% GPU 卸载。Trae 还现场写了一个零依赖的 PowerShell 测试脚本把 OpenAI 兼容接口、多轮上下文、流式输出、关闭思考模式、视觉接口全部测了一遍8 项全过。第二段接入 DeepSeek HarnessHarness 通过配置补丁接入自定义模型。在%USERPROFILE%\.dsh\profiles\web\cordis.patch.ymlheadless 模式同理另一份同内容文件写入-id:agent-default-modelconfig:provider:ollamamodel:minicpm5-2b# 新会话默认用本地模型-id:llm-pi-aiconfig:providers:ollama:apiKeyEnv:OLLAMA_API_KEY# 启动前设任意值即可api:openai-completionsbaseURL:http://localhost:11434/v1compat:supportsDeveloperRole:false# Ollama 不支持 developer 角色maxTokensField:max_tokens# Ollama 不识别 max_completion_tokensmodels:-id:minicpm5-2bcontextWindow:32768maxTokens:8192-id:minicpm-v4.6# 视觉模型可接收图片contextWindow:8192maxTokens:4096input:[text,image]compat下那两行是关键——很多接不上 OpenAI 兼容接口的问题都出在这类协议细节上。之后用 Harness 的 headless 模式跑了一条真实任务验证“11等于几”——它完整走了一遍 Agent 循环取默认模型 → 发请求 → 收回答模型回复正确链路闭环。第三段运维脚本和图形启动器每天手动敲命令太烦我让 Trae 做了两层封装命令行版ai-stack.ps1start / stop / status / restart四个动作。start 会按序拉起 Ollama → 发一条最小请求预热模型进显存 → 启动 Harness Web UI并从日志里自动提取带 token 的访问地址打印出来。图形启动器ai-launcher.ps1Windows 自带 WinForms 写的窗口零依赖双击.cmd就能用。三盏状态灯Ollama / 模型 / Harness、四个按钮启动全部、关闭全部、打开 Web 界面、查看日志、实时滚动日志。并且明确做了状态机状态启动关闭打开Web未启动 / 关闭完成✅❌❌启动中❌✅点击中断❌运行中❌✅✅关闭中❌❌❌这两个脚本加起来五六百行都是 Trae 现场生成、现场测试、现场修 bug。我没有看过完整代码只审过它给我的行为描述。五、踩坑清单最值钱的部分整个过程撞了 9 个坑每一个都值得单独记一笔旧终端不认识 ollama 命令。安装器写的是用户 PATH已开着的终端不会自动刷新。刷新变量或重开终端即可。http://localhost:11434/v1在浏览器里打开是 404。这是正常的——根路径本来没有页面Agent 会自动拼接/chat/completions等端点。想验证服务访问/v1/models。发截图就 500 报错image input is not supported。MiniCPM5-2B 是纯文本模型。解法Agent 主模型用它视觉模型单独配 MiniCPM-V 4.6官方同系列Ollama 直接可拉。pnpm 报no pnpm/exe.win32-x64 native binary was found。npm 新版的安装脚本保护拦截了 pnpm 的二进制下载。全局修复npm i -g pnpm/exe.win32-x64 --allow-scripts项目内package.json 锁了 11.7.0用npx -y pnpm11.7.0绕过版本托管。Harness 报MISSING_CREDENTIAL: deepseek-official。默认模型是 DeepSeek 官方路由。用配置补丁把agent-default-model覆盖成本地 ollama 模型启动前设$env:OLLAMA_API_KEYollama满足凭据检查值任意。CONTEXT_WINDOW_EXCEEDED: 8520 tokens 8192。Harness 的系统提示工具目录本身就吃 8.5K tokensOllama 模型默认 8K 上下文根本不够。重建模型把num_ctx提到 32768显存代价约 3.1GB → 4.7GB配置里contextWindow同步改大。Ollama 关不掉杀掉又复活。ollama.exe serve是托盘程序ollama app.exe的子进程先杀 serve 托盘会立刻重新拉起。必须先杀托盘进程树taskkill /T /F再清残余。图形界面卡死。第一版启动器把端口探测、HTTP 查询、日志扫描全跑在 UI 线程上服务半死状态时一次查询挂几秒窗口就未响应。重构所有探测移到后台线程主线程只读同步结果——UI 物理上不可能再卡。PowerShell 5.1 的中文和 JSON 转义。给 curl 传 JSON 双引号会被转义搞坏假成功含中文的.ps1文件必须存成 UTF-8 with BOM。这两个坑 AI 也会踩但提醒一句它就能自己修。六、细节交给 Trae工作法如果这篇博客只让你记住一件事就是这段。整个过程我的实际角色是决策者 测试员 报错搬运工。Trae 的角色是架构建议、写配置、写代码、跑测试、修 bug、写文档。要让 AI 编程智能体把活干好我总结四条经验1. 先把环境事实一次性交代清楚。显卡、显存、内存、磁盘、网络可达性第一句话就说。我开局就说了5050 / 8GB / C 盘 87GB / 无法访问 huggingface所以 Trae 从第一步就走了 ModelScope 镜像没有浪费任何一次重试。2. 让它写测试而不是你人肉测。“写个脚本验证 API 的多轮对话、流式输出和关思考模式”——这类测试代码让 AI 写比自己快得多而且测试脚本会留下来以后每次改动都能重跑。3. 报错原样贴回去不要自己翻译。CONTEXT_WINDOW_EXCEEDED、no pnpm/exe.win32-x64这种错我看到的第一反应是完了但原样丢给 Trae它定位根因一般不超过两轮。你自己的直觉修复反而容易带偏。4. 每完成一个阶段顺手让它沉淀文档和脚本。部署完当天我让它写了使用说明文档第二天的启停脚本、第三天的图形启动器都是在能不能更省事的抱怨中让它现做的。这些产物最后成了这篇博客的全部素材。一个诚实的说明Trae 不是永远一次做对。图形启动器改了三版按钮没绑事件、Start-Job 在 GUI 里状态不回传、UI 线程阻塞每次都是我实际点了一下发现问题、贴报错、它修。AI 负责从 0 到 90 分人负责最后 10 分的验收——这个分工在部署类任务上非常划算。七、你的复刻清单想自己跑一遍两条路。路线 A把这篇博客直接丢给 Trae推荐新建一个会话粘贴本文附上你的硬件信息和网络状况第三节那三条然后说按这篇博客帮我在本机完成部署细节你来处理。坑都替你踩过了理论上一次通过率很高。路线 B手动执行核心步骤浓缩版# 1. 安装 Ollama官网或 winget install Ollama.Ollama# 2. 从魔搭下载 openbmb/MiniCPM5-2B-GGUF 的 Q4_K_M 文件# 3. 按第四节写 Modelfile导入并验证ollama create minicpm5-2b-f Modelfile ollama run minicpm5-2b你好# 4. 克隆并构建 DeepSeek Harnessgit clone https://github.com/deepseek-ai/deepseek-harness cd deepseek-harness npx-y pnpm11.7.0 install npx-y pnpm11.7.0 run build# 5. 按第四节写 cordis.patch.ymlweb 和 headless 两份# 6. 启动并验证$env:OLLAMA_API_KEY ollamanpx-y pnpm11.7.0 dsh web# 浏览器打开控制台输出的带 token 地址模型选择器里确认 minicpm5-2b八、结语这套东西现在的日常状态是开机后 Ollama 托盘自启我双击启动器30 秒后 Web 界面就绪一个跑在本地显卡上的 Agent 等着派活。不花钱、不上传任何数据、断网可用。而对我来说更有价值的收获是方法本身部署、测试、写文档、做工具——这些杂活正在变成一种可以说清楚需求就能获得的东西。人的精力应该花在要不要 32K 上下文状态机按钮怎么设计这类决策上而不是去记 pnpm 的版本托管怎么绕。把细节交给 AI把判断留给自己。这篇博客本身也是按这个分工写完的。环境信息Windows 11RTX 5050 8GBOllama 0.34.3DeepSeek HarnessCordisMiniCPM5-2B Q4_K_M num_ctx 32768。文中所有配置文件与脚本均由 Trae 生成并实测通过。