WorkBuddy 执行任务消耗积分,而 Ollama 本地模型零成本、离线可用、数据不出本机。WorkBuddy 官方支持在「设置 → 模型」中添加自定义模型(内置 Ollama 提供商),对接本身非常顺畅——真正的坑都在后面。
winget install Ollama.Ollama(装完自动启动,监听 11434 端口)ollama pull qwen3:8b(5.2GB,8GB 显存的最佳选择)http://localhost:11434/v1qwen3:8bollama 即可(坑 0:表单不允许留空)验证:ollama ps 显示 100% GPU 即模型完整加载进显存,8B Q4 实测可达 60~70 tok/s。
现象:模型连通、显示"已完成",但没有任何输出。
排查:查看 Ollama 日志(%LOCALAPPDATA%\Ollama\server.log),发现关键一行:
根因:WorkBuddy 每轮对话会附带约 3.1 万 token 的系统提示词(内置工具说明、技能列表等),而 Ollama 默认上下文仅 4096。用户消息在截断中被丢弃,模型收到的是残缺指令,自然输出为空。
修复:设置环境变量后重启 Ollama(从托盘退出再打开,或重启电脑):
8GB 显存建议不要超过 8192,更大的上下文会把模型挤出一部分到内存,速度反而暴跌。
setx 写入的是注册表,只对之后新启动的进程生效。如果 Ollama 已经在运行,必须完全退出(注意系统托盘)再重新打开。判断是否生效:
CONTEXT 列显示 8192 即成功。
现象:ollama ps 显示 100% GPU,但生成速度只有原先的五分之一。
根因有两个,需要逐一排除:
OLLAMA_KV_CACHE_TYPE=q8_0 必须搭配 OLLAMA_FLASH_ATTENTION=1 才起作用,单独设置会被静默忽略。两者一起配置可将 8K 上下文的 KV 显存占用减半。ollama ps 依然显示 100% GPU,但实际带宽骤降。判断方法:nvidia-smi 看显存总占用,若"系统+其他应用占用 + 模型体积"明显超过显存总量,就是发生了回退。修复:关闭吃显存的后台应用(浏览器、微信等 GPU 加速大户),或重启电脑清空累积占用。彻底方案是在 NVIDIA 控制面板将「CUDA - 系统内存回退策略」改为「首选无系统内存回退」,让显存不足时显式报错。
多次强制结束 Ollama 后重启,显存仍显示占用 7GB+。检查发现多个 llama-server.exe 僵尸进程(Ollama 的推理子进程)残留并各自持有 CUDA 上下文。
修复:任务管理器结束所有 llama-server.exe,或在 PowerShell 执行:
清理后系统显存基线从 7.4GB 降到不足 1GB,模型完整进显存,速度恢复 69 tok/s。
教训:重启 Ollama 请务必从托盘图标正常退出,不要用任务管理器强杀。
配置全部调优后,最终实测:qwen3:8b / 100% GPU / 8192 上下文 / 69 tok/s,接口零成本、离线可用。
但仍要泼一盆冷水:WorkBuddy 的 Agent 系统提示词规模在 3 万 token 量级,8B 模型即使"装得下"也很难在这样的指令密度下可靠地执行多步骤任务——实测中模型会被截断的工具说明带偏,回答一些与用户问题无关的内容。
我的最终用法建议:
本地部署的最大意义不是替代云端,而是作为离线兜底和零成本聊天入口。想让它真正"干活",至少需要 30B 级别的 MoE 模型(如 qwen3:30b-a3b,32GB 内存的机器可以跑)。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。