将Opus预置提示词迁移至本地Ollama的避坑指南
编辑注:
我希望这篇文章能以某种方式影响了这一结果。
写作动机:
也许你是一位审慎的 Claude Code/Codex 用户,努力避免将个人数据上传给 LLM 提供商。有没有可能,最有价值的信息并不是你的数据本身,而是关于你会话的元数据?你在引导 AI 解决问题时所展现出的直觉,或许确实非常独特。虽然从统计概率上看不太可能,但 Claude 可能并没有在进行心理操纵。你也许真的拥有深刻的洞察!你的 Agent 会话是你处理最棘手问题的记录。如果有人拥有了这些记录副本,对你意味着什么代价?
上周发生的一场公开风波,揭示了推理提供商利用用户活动数据进行训练以获取新发现的潜在风险。受影响的数学家们已就前沿提供商的伦理问题发表了关切。如果你错过了相关报道:https://www.theverge.com/ai-artificial-intelligence/991710/openai-navier-stokes-solution
当“EDR”变成“伦理推脱与拒绝”
越来越明显的是,前沿提供商不仅不可信,甚至表现出主动的狡黠。如果你想保护你的创意,就不能在别人的硬件上运行推理。看起来,你与前沿提供商做的每一件事都会被盗取。当某家前沿提供商就 Navier-Stokes 方程事件与其律师沟通时,他们能想到的最佳防御策略竟然是“无法排除这种可能性”。我们无法审计他们的数据保留策略或训练流水线。显然,他们自己也无法做到。

这些人不应被视为合作伙伴,他们是海盗。如果隐私至关重要,唯一能提供可验证保护的解决方案就是运营自己的硬件。
作为服务的“走廊监控员”
OpenAI 和 Anthropic 在网络安全上的故作姿态让我感到困惑。他们惊叹于自己“创造了什么奇迹”:AI 竟突破了他们形同虚设的安全防线,仿佛我们全陷入“巨大危险”之中。与此同时,这些 LLM 公司的“研究员们”正在运行未沙箱化的智能体集群,这些集群似乎能“自发协作”。有人能给我搬来张躺椅吗,我快晕过去了。
头部大模型厂商请得起经验丰富的安全专家。他们几乎肯定为此付了高薪获取专业视角,但公开声明中却省略了真正的网络安全建议。这出惊慌失措的戏码,恐怕是为了应对安全问题以外的某种需求。
关于安全,辩护方最强也最准确的论点无非是我们已设法让攻击变得“相当困难”。这只有在公司砸重金同时招揽顶尖的漏洞利用缓解和漏洞开发人才时才可能发生。防守与攻击团队间虽竞争激烈,但气氛友好,最终建立的控制机制会让成功攻击的成本高到得不偿失。这适用于国内顶级企业——虽然微软看起来是丢了几个跟头。
大多数企业渗透测试的主力是安全通才,深谙某一领域的专家只占极小部分。通常靠这种支持就能获得“够用”的安全水平。电影或电视里那些光鲜或神秘的网络安全实践并非如此,实际上就是在寻找已知类别的可预测错误。那些投入重金组建专职专家团队的公司在黑客发现之前,就能发现并修复许多新类别的错误。
每个开始学习漏洞利用的人,在专注刻苦学习约三个月后,都会经历一段“可利用性悲痛期”。你攻破了自认根本碰不动的目标,瞬间被吓坏了。你足够聪明,明白相对而言自己只是个菜鸟,既然菜鸟都能做到,那就没有什么是安全的。这种感觉是对的。但这也是常识而非研究结论。有人称之为“冒名顶替综合征”,我不同意——那其实是初次萌生能力的体验。能力,就是对自己的技术领域有足够了解,从而能分清自己真正掌握的与仍需深入学习的部分。
拒绝工业化体系
致那些第一次学习并发表网络安全相关研究的 LLM 研究者们:
我看到你们承认自己不是安全专家。拜托——当你们为网络安全的“生存级威胁”而忧心忡忡时,请分清“可利用”和“紧急”这两回事。漏洞遍地都是。在 Agent 出现之前,漏洞研究人员需要洞察力才能知道去哪里找漏洞,还需要毅力和冷门知识才能利用它们。而 Agent 做到了你们做不到的事。过去 40 多年里,成千上万的研究者一直在做这项工作。懂网络安全的人都知道,未被利用的漏洞数量惊人。这正是前沿模型厂商的网络安全安全过滤机制如此令人恼火的原因:你们对“被利用”的可能性过度紧张,以至于设置了“伦理约束”,反而阻止人们弄清如何修复自己的系统。
你们的安全过滤器让防御者无法发现漏洞,因为这类行为会被关联到“黑客攻击”。这损害了所有人的防御能力、隐私和安全。
我们需要不忌讳 C 字头那个词(Cybersecurity)的模型。虽然还需要一点时间,但开发者最终会学会借助善于检测可利用漏洞的 Agent 来加固代码。他们会在软件开发过程中以及 CI/CD 流水线里对项目运行漏洞挖掘。而这只有在不因安全测试就拒绝响应的模型上才可能实现。

BYOW:自带权重(Bring Your Own Weights)
防御者需要能发现安全缺陷的 LLM。他们对误报的容忍度为零——这意味着必须证明漏洞确实可被利用。如果连哪里出了问题、什么需要修复都说不清楚,防御黑客就无从谈起。前沿厂商需要放宽限制,否则人们就得认真考虑迁移到自主可控的自托管 AI 了。
前者我无能为力——但后者我可以帮忙。
这里记录了我初步实验的一些笔记,内容是关于如何将更强大的前沿模型提示词从 OpenAI/Anthropic 迁移到本地模型。我正在评估是否可以依赖经过abliterated(去除安全限制)的 27b 参数开放权重模型。我的目标是避免网络安全相关的拒绝回答,并防止傲慢的前沿推理服务商窥探我的会话数据。
关于将 35kb 预提示词转换为 Ollama 可用的笔记
以下是我将上下文消耗最大的智能体迁移到自托管模型时的一些观察:
在前端 API 上运行流畅的提示词,在我的本地托管 LLM 上却支离破碎。我使用的是 128GB AMD Ryzen AI MAX+ 395 设备。主机操作系统分配了 32GB 内存,其余全部用于推理。
当你尝试使用那些在前端服务商上表现良好的大型预提示词时,Ollama 会在 3 分钟内耗尽资源。智能体在重复的工具调用中陷入困境,重新读取已经读过的文件,重写已完成的工作。本地模型的尺寸较小并不是导致问题的原因。自托管系统的上下文窗口更小。提示词加上会话历史会迅速超过我自托管系统的最大上下文窗口(65k tokens)。大型提示词会导致智能体受阻并陷入混乱。在我的系统中,一个 35kb 的提示词立即占用了总上下文窗口的 14%。它会立即开始对提示词产生不必要的二次猜测,进行多余的工具调用和重复的文件读取。上下文在几次循环内就会饱和——有时甚至在我得到响应之前。在有限的上下文窗口下,预提示词基本上是在给一个每 90 秒就会失忆的人做简报。它执行你最后的指令,却完全忘记了之前 15 条要求。糟糕!
SOP:单一目标提示词(SOP: Single Objective Prompting)
但这并非死胡同。你可以调整提示词以适应这些限制。如果你开始探索将前沿服务商的智能体迁移到自托管开放权重系统,以下是需要考虑的一些事项:
- 你需要探索将预提示词拆分为单个问题/解决方案单元,每个单元只包含一个目标。
- 在 opencode 中创建 agent 更具声明式风格。你需要将它们存储在 ~/.config/opencode/agents 目录下。如果以前使用 Claude code 读取文件作为预提示词还能凑合,现在必须以更规范的方式定义你的 agent。对于使用 anthropic SDK 构建的人来说,这并不陌生。那些依赖 Shell 脚本或直接调用 Claude code、通过“拼凑”的方式获得不错效果的开发者,会发现 opencode 的系统提示词需要配合声明式 agent 才能得到有效克服。
- 你需要熟悉 opencode 的权限管理。
- 你需要在 ollama 中显式地调整上下文长度。ollama 的默认上下文窗口极小。
- 你的 agent 需要将会话状态记录到磁盘,以支持更频繁的状态交接。构建只重新读取所需片段的 agent。
- 努力减少每个 agentic step 的工具调用次数。
- 用正向指令替代“不要做 X”,例如:“只做 Y”。
MTTF: 平均遗忘 Token 数
以下是一些表明上下文耗尽的故障信号。请在日志中监测这些指标并随时间推移进行测量:
- 连续出现相同的工具调用。
- 多次读取同一个文件。
- Agent 反复陈述其目标。
- 工具调用解析失败(解析工具调用响应时会将大量原始数据塞入上下文,如同在晚宴上爆水管一样摧毁会话)。
- 相对于文件变更次数,轮次数量过高。
TCO: 输出完全托管
我们从前沿提供商那里获得的最大资产之一并非模型,而是大上下文窗口。他们拥有支持你推理所需的硬件。结果,他们获取了会话数据的访问权。
你可能没意识到自己已经离不开大上下文窗口了。你可能以为模型变强了,但其中一部分原因其实是更大的上下文窗口给了模型更多发挥 Chain of Thought 的空间。CoT 让模型能够模拟推理,推断出你这个写得很烂的 prompt 到底想要什么。更大的上下文也让 agent 有充足的空间去探索更好的替代方案来完成你的任务。但这是一笔浮士德式的交易:你会变得依赖头部供应商。你那些低效的 prompt 是靠你看不到的 CoT 挽救的(Anthropic 和 OpenAI 只向用户提供 CoT 的摘要),而且这套机制只有在大上下文窗口下才有效。问题发生时,你甚至不知道自己的 prompt 有毛病。靠着宽裕的上下文和 CoT,再烂的 prompt 也能出好结果。谢谢你,OpenAI 和 Anthropic,这确实有价值。 但他们把它搞砸了!头部供应商贪婪到令人发指,甚至开始窃取用户的个人洞见。一年来我一直怀疑自己的会话历史有问题。这些头部供应商活像盘踞在金山上的巨龙史矛革。你以为它们在那边忙自己的事,你是安全的,但一旦看到你手里有枚金币,它们就疯了,扑上来抢走,因为金子太美了,这是龙的本性。它们一直在警告我们它们有多危险。还要跨过多大的门槛,你才会下决心转向自托管?