找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

3037

积分

0

好友

405

主题
发表于 14 小时前 | 查看: 6| 回复: 0

我盯着AI生成的代码,已经改到第三遍了。明明是一个简单的功能需求,执行逻辑刚写完,Mentor一审就挑出三个明显的“幻觉”——变量没定义,逻辑边界漏了,API调用顺序反了。我以前总觉得用AI写代码就是一个“快”字,结果速度是快了,自己却总在后面“擦屁股”,反复修复它埋下的坑。

直到我发现了GitHub上的这个开源项目 The Pair。下载运行了一下午,我算是看明白了它的核心思路:让两个AI代理互相监督,幻觉问题不是靠人盯着改,而是靠流程设计自己堵住了。对普通用户来说,这可能是“又一个AI工具”。但同行只要看一眼它的Mentor-Executor双代理闭环架构就知道,这套设计直接把单代理编程的随机性砍掉了一大半。

项目用Tauri 2.x打包,前端是React 19,后端是Rust,完全本地运行,无需云依赖,支持macOS、Windows和Linux。4月9日刚更新了v1.3.9版本,目前有300多星。作者在介绍里写的“grab a coffee while two AI agents cross-check each other’s work”真不是夸张——我确实泡了杯咖啡,回来就看到Git diff里代码已经稳稳落地了。

我之前一直以为AI编程的瓶颈在于模型本身的能力上限,后来才发现,一个更大的问题是缺乏“第二双眼睛”。The Pair把这个“第二双眼睛”直接做成了另一个独立的AI代理,硬生生把单线程的“生成-执行”变成了双线程的“规划-执行-审查-循环”。你可以想象成两个程序员在你的电脑上结对编程:一个负责出方案和审查,一个负责动手写代码和执行,写完立刻互相进行code review,错的当场打回重写。你只需要喝咖啡,或者偶尔点一下“暂停调整任务”。这已经不是科幻构想,而是已经能在本地跑起来、并通过Git自动追踪变更的真实工具。

为什么两个代理互查能把幻觉率压下来?

先说说最直观的感受。你点外卖下单,系统会先计算路线再派单,中间如果出错,司机还能打电话跟你确认。以前的AI写代码,就像“只派单不确认”——代码生成出来就直接扔给你跑,出了问题全靠你手动救火。The Pair把“确认”这个环节内置成了Mentor代理的专职工作。它不光看最终结果,还要审查证据:变量是否正确定义、边界条件是否完全覆盖、API调用顺序是否正确。Executor写完一段代码,Mentor会立刻进入“审查阶段”,如果失败就带着证据打回重写,只有成功才会允许合并到工作区。

结果就是效率的显著提升。以前我用单代理写一个小功能,平均要改2-3次bug;现在采用Mentor-Executor互查机制后,第一次生成的代码基本就能跑通。从理论上讲,单代理的幻觉是随机的、不可预测的,而双代理通过可验证的审查循环,将这种随机性大幅降低了。这个设计很巧妙,但也带来了一个需要注意的边界条件:如果两个模型都使用同一家供应商的API,互查效果可能会打折扣。因此,该项目支持配置多个AI供应商(如OpenAI、Claude、Gemini CLI等),建议混合使用不同的模型底座,以增强审查的独立性。

技术细节上,其工作流非常明确:
启动 → 初始化与基线 → 规划阶段(Mentor) → 执行阶段(Executor写代码、跑命令) → 审查阶段(Mentor带证据审查) → 如果未完成,则循环回规划阶段。

整个过程由Git自动追踪文件变更,界面实时显示CPU/内存占用、每轮token消耗和详细的活动日志。状态机由Rust后端的PairManager驱动,前端用Zustand管理状态,Framer Motion处理动画,Lucide React提供图标。资源监控每秒更新,还设置了迭代上限以防止无限循环。以前我踩过单代理无限生成垃圾代码的坑,现在Mentor一旦发现审查失败,就会直接把证据甩到界面上——“Review Result - Fail With Evidence”,白纸黑字,省掉了我自己猜测的功夫。

在高并发或大型代码重构场景下,这个设计的优势尤为明显。Executor写完后,Mentor不仅检查语法,还会审查整体的逻辑一致性。Git Tracker记录了每一步变更,Session Recovery功能还能从中断处继续运行。普通读者可能觉得这是“AI自己玩自己”,但同行一看就明白,这是把智能工作流的可靠性从“依赖精巧的提示词工程”升级到了“依靠稳定的双代理协议”。我跑了三个小项目测试,Mentor在审查阶段挑出的问题里,有两次是我自己都没注意到的边界情况——这时候你会突然明白,为什么以前总觉得AI“聪明但不靠谱”。

它如何将开发者从循环中解放出来?

面对复杂任务时,单代理容易因压力过大而“崩溃”或产生低质输出。The Pair将压力分配给两个角色:Mentor专注于脑力劳动(规划和审查),Executor专注于动手劳动(编写和执行)。你可以这样理解:就像高铁调度中心,一个调度员负责看全局路线图,一个执行员负责实际发车指令,两边实时同步,错一个环节就停下来重新计算,而不是等到列车出轨了再补救。

其重要性在于,它将“AI写代码”过程中的不确定性,从不可控变成了可监控、可干预的状态。应用界面左侧是会话控制台,实时滚动显示两个代理的对话;中间是文件变更列表(绿色表示新增,蓝色表示修改);右侧是系统资源和Token用量监控,每一轮的消耗都清清楚楚。开发者(Human Oversight)可以随时介入——点击暂停、调整任务描述、甚至将某个步骤重新分配给另一个代理。这不是一个黑箱系统,其透明度允许你在任何时候进行插手和引导。

在技术实现上,后端的ProcessSpawner负责启动配置好的AI供应商CLI,MessageBroker处理两个代理间的消息传递,Activity Tracker记录每一步操作。其技能系统还支持加载项目专属的skill文件,用于指导代理“在这个仓库里,优先使用我们自己的工具函数”。我曾将一个遗留的Bug修复任务扔给它,两个代理自己讨论了7轮,最后Mentor给出“审查通过”的证据里,甚至把我之前漏掉的日志记录也给补全了。我之前一直以为某个参数只影响写入速度,后来才发现它对读取性能的影响更大——The Pair把这种“事后才发现”的问题,直接提前到了代码审查阶段就识别出来。

当然,这里有一个前提——你需要至少安装并配置一个AI供应商的CLI工具(如opencode),并需要网络来调用API(使用本地模型如Ollama也可以)。它的权限是会话级别的,不会全局修改你的opencode设置,这一点处理得非常谨慎。

实际安装与运行指南

⚠️ 注意:请先确保电脑上已安装好Rust和Node.js开发环境,否则构建过程会卡住。

  1. 获取程序:前往项目的 GitHub Releases 页面,下载对应你操作系统的预编译包(macOS解压ZIP,Windows运行setup.exe,Linux使用AppImage)。或者,你也可以选择从源码克隆并构建:

    git clone https://github.com/timwuhaotian/the-pair.git
    cd the-pair
    npm install
    # 对于macOS用户,可以运行以下命令打包成DMG
    npm run build:mac
  2. 配置AI供应商:安装一个AI供应商的CLI(推荐先安装opencode),然后在配置文件(如~/.config/opencode/opencode.json)中填入各家的API Key。

    {
      "provider": {
        "openai": { "options": { "apiKey": "<YOUR_OPENAI_KEY>" } },
        "anthropic": { "options": { "apiKey": "<YOUR_ANTHROPIC_KEY>" } }
      }
    }
  3. 启动任务:打开The Pair应用,点击“New Pair”,填写任务描述、选择工作目录、并为Mentor和Executor分别选择模型(建议选择一个强推理模型和一个快速执行模型)。点击“Start”后,界面开始工作:左侧聊天框滚动,右侧资源监控跳动。这时你真的可以去泡杯咖啡,或者点击右上角的“Pause”随时介入调整。

运行结束后,你可以在“Session History”中查看保存的每一轮对话,Git变更列表也会同步更新。这一步最容易出错的地方是模型配置不正确——控制台会直接报错,根据提示修改配置后重新“Start”即可。我第一次运行花了约12分钟完成一个中等规模的重构,第二次因为启用了Session Recovery功能,直接接续了历史上下文,只用了7分半钟。

结语

我之前的判断是“AI编程终究还得靠人盯着”,现在的想法已经变成了“只要把审查环节也交给另一个AI,需要盯着的工作量就能减少一大半”。The Pair将这个思路做成了一个现成的、开源的、界面干净的工具。你的下一个小项目,是打算自己动手写,还是先让两个AI代理试试看?

如果你想了解更多关于Agent设计模式或开源AI工具的实战讨论,欢迎来云栈社区人工智能开源实战板块交流。你们团队目前在用什么样的方案来应对AI编程的“幻觉”问题?踩过类似的坑吗?




上一篇:Unsloth动态量化将MiniMax M2.7模型拉低至128GB Mac可本地运行
下一篇:量子储层计算如何在混沌边缘实现最优性能:SYK模型与NARMA任务分析
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-4-14 19:15 , Processed in 0.935023 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表