
AI 编程助手工具选择偏好研究:基于 1.7 万次运行的大规模实验分析
Armature.tech 发布了一项针对 Claude、Codex 和 Cursor 等 AI 编程助手的大规模实验研究。研究通过分析数千个 GitHub 仓库,构建了包含 75 个真实感仓库的测试面板,涵盖 10 种编程语言。通过模拟四种不同背景的工程师角色(从初学者到大厂工程师),在 1.7 万次运行中观察 AI 在处理真实开发任务时如何选择第三方服务和工具,揭示了 AI 代理在决策过程中的行为模式。
核心要点
- 实验规模庞大:基于 1.7 万次运行和 1,163 种任务变体,确保了统计数据的代表性。
- 多维度测试环境:构建了 75 个涵盖 10 种语言的模拟仓库,包含虚假公司背景、Git 历史及真实的包管理器锁定文件。
- 四类用户画像:模拟了从“氛围程序员”到“大厂工程师”的不同提问风格,测试 AI 在不同约束下的决策能力。
- 真实任务驱动:AI 需根据模糊或具体的指令(如“实现发票邮件发送功能”)自主选择并集成最佳的第三方解决方案。
详细分析
实验方法论与环境构建
研究团队首先分析了数千个公共 GitHub 仓库,提取了关于编程语言、框架、第三方服务、团队规模及代码库年龄的统计数据。为了消除偏差,他们根据公开数据调整了分布,最终创建了 75 个具有代表性的仓库。这些仓库分布在 10 种语言中,虽然使用了虚假的公司名、Git 历史和 API 密钥,但保留了与 npm 等包管理器注册表同步的真实锁定文件(lockfiles),从而确保了实验环境的真实性与严谨性。
多样化的用户角色与提示词设计
实验设计了四种不同的用户画像来测试 AI 的响应差异:
- 氛围程序员 (Vibe-coder):仅描述症状和理想状态,极少提及工具类别。
- 初级工程师:通常会提到期望状态和工具类别名称。
- 资深工程师:对需求有精确描述,并明确指出需要避免的事项。
- 大厂工程师:详细说明特定的约束条件、合规性要求及采购限制。
约 20-25% 的提示词还加入了成本或使用量等特定限制,以观察这些因素如何影响 AI 对工具(如邮件服务商)的最终选择。这种多维度的提示词设计旨在模拟现实开发中复杂的沟通场景。
自动化运行与沙箱测试
每个实验都在专用的临时沙箱环境中运行。通过 1.7 万次的重复测试,研究旨在揭示 Claude、Codex 和 Cursor 等主流模型在面对“寻找并实现最佳解决方案”这一指令时,是否存在特定的品牌偏好或技术路径依赖。实验通过移除代码库中原有的第三方服务实现,创造了一个无偏见的实验起点,强迫 AI 代理从零开始进行工具选型和集成。
行业影响
该研究为评估 AI 编程助手的决策逻辑提供了重要的数据支持。随着 AI 逐渐从单纯的“代码补全”转向“自主架构设计与工具选型”,了解其内置的偏好对于第三方服务商(如支付、邮件、云服务等)的开发者关系(DevRel)策略至关重要。同时,这也为企业评估 AI 助手在符合合规性和成本控制要求下的表现提供了参考依据,揭示了提示词工程中角色设定对 AI 决策的实际影响程度。
常见问题
实验中使用了哪些 AI 模型?
根据研究标题,实验主要针对 Claude、Codex 和 Cursor 等主流 AI 编程工具和模型进行了大规模测试。
实验是如何确保结果公正性的?
研究团队通过分析大量真实仓库数据来构建测试面板,并特意移除了部分代码库中的第三方服务实现,以创建无偏见的实验起点,确保 AI 是基于当前需求和自身逻辑进行选择,而非受限于既有代码。
不同的用户角色对 AI 的选择有何影响?
实验通过设置四种不同资历和背景的角色(如初级、资深、大厂工程师),测试了 AI 在面对不同详细程度和约束条件(如合规性、成本、采购限制)时的决策差异,从而观察 AI 是否能根据用户身份调整其推荐的工具方案。

