Archon:首款开源AI编程Harness构建器,让AI Coding变得确定性和可重复

AI编程工具越来越多,但大多数工具的输出充满随机性——同样的需求,两次运行可能得到完全不同的结果。Archon 试图解决这个问题,它的目标是让AI编程变得确定性和可重复,像编译运行传统程序一样可靠。

项目简介

Archon 是由开发者 coleam00 创建的开源工具,定位为”首款开源AI编程Harness构建器”。Harness(测试用例 harness的概念在这里被引申为AI编程的工作框架)让AI编程任务可以在预定义的结构下运行,确保每次执行结果一致、可审计、可复现。目前在GitHub上已获得近1.8万颗星标,增长势头强劲。

核心特色功能

1. Harness构建系统:Archon提供了一套标准化的AI编程工作框架,定义了输入、处理、输出的标准范式,AI在harness内运行减少了随机性。

2. 确定性执行:与传统AI编程工具不同,Archon的输出具有高度确定性。相同的任务配置,Archon每次都会产出结构相似的结果,方便后续自动化处理。

3. 可配置的工作流:支持定义多步骤的AI工作流,每个步骤的prompt、模型、超参数都可以精细配置。

4. 集成主流AI模型:支持OpenAI GPT系列、Anthropic Claude系列、Ollama本地模型等多种后端。

5. 代码质量保证:内置代码审查和测试验证机制,AI生成的代码会自动经过质量检查后才输出。

6. CLI优先设计:提供功能完整的命令行工具,方便集成到CI/CD流程中,也支持配置文件驱动的工作流。

7. 插件扩展:支持通过插件扩展功能,目前已有代码格式化、测试生成、文档生成等插件。

安装步骤

方式一:通过npm安装(需要Node.js环境):

npm install -g @archon/cli

方式二:通过源码安装:

git clone https://github.com/coleam00/Archon.git
cd Archon
npm install
npm link

方式三:使用Docker:

docker pull archon/archon
docker run -it archon/archon

验证安装:

archon –version

使用方法

第一步,初始化项目:

archon init my-project
cd my-project

第二步,配置Harness:

编辑 archon.config.json,配置AI模型、工作流步骤等:

{
“model”: “claude-3-5-sonnet”,
“steps”: [
{
“name”: “analyze”,
“prompt”: “分析以下需求:{{input}}”,
“output”: “analysis.md”
},
{
“name”: “generate”,
“prompt”: “基于分析结果生成代码:{{analysis}}”,
“output”: “src/output.ts”
}
]
}

第三步,运行Harness:

archon run –input “用户登录功能”

第四步,查看结果:

ls -la output/

CLI高级用法:

# 指定配置文件
archon run -c my-config.json –input “需求”

# 本地模型
archon run –model ollama/llama3 –input “需求”

# 查看详细日志
archon run –verbose –input “需求”

适用场景

1. 团队AI编程标准化:建立团队统一的AI编程工作流,减少个人使用差异。
2. CI/CD集成AI任务:将AI代码生成、测试生成等任务集成到自动化流水线中。
3. 可复现的AI研究:学术研究中需要可复现的AI实验结果,Archon的确定性执行尤为重要。
4. 批量代码生成:定义好harness后,批量处理相似的编程任务。
5. AI教学和演示:教师可以定义标准harness让学生在统一环境下体验AI编程。

开源协议

Archon的具体开源协议需参考项目仓库,基础使用免费。

总结

Archon提出了一个很有价值的问题:AI编程工具的随机性如何克服?通过Harness的概念,Archon试图为AI编程建立一个标准化、可预期的框架。虽然项目相对年轻,但方向很有前景。对于追求AI编程可控性的团队和个人开发者,Archon是一个值得关注的新选择。

项目地址:https://github.com/coleam00/Archon
官网体验:https://archon.diy

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容