gptengineer 网站介绍
一、核心定位
gptengineer 是一个开源的CLI代码生成实验平台,由AntonOsika创建,是商业化项目gptengineer.app的前驱。它的核心目标是让用户通过自然语言描述软件需求,触发AI自动生成、执行代码,并支持后续的迭代改进,帮助开发者快速验证代码思路或完成简单功能的自动化实现。
二、主要功能
1. 自然语言定义软件:用户在项目文件夹中创建`prompt`文件(无扩展名),用日常语言写清软件需求(比如“写一个能生成随机密码的Python脚本”),运行工具后AI会直接生成对应的代码。
2. 改进现有代码:针对已有的代码文件夹,用户在`prompt`中写清改进需求(比如“优化这个排序算法的性能”),通过`i`参数让AI修改现有代码。
3. 基准测试自定义代理:提供`bench`二进制工具,支持将自定义的AI代理与公开数据集(如APPS、MBPP)对比,测试代码生成能力。
三、使用方式
1. 安装:
稳定版:直接用`python m pip install gptengineer`安装。
开发版:克隆仓库(`git clone https://github.com/gptengineerorg/gptengineer.git`),进入目录后用`poetry install`安装依赖,`poetry shell`激活虚拟环境。
支持Python 3.103.12,旧版本Python 3.83.9可使用v0.2.6版本。
2. 设置API密钥:
环境变量:`export OPENAI_API_KEY=[你的密钥]`(可写入`.bashrc`永久生效)。
`.env`文件:复制`.env.template`为`.env`,填入API密钥。
自定义模型:支持Azure OpenAI、Anthropic或本地开源模型(如WizardCoder,需参考文档配置)。
3. 运行命令:
新建项目:`gpte `,比如`gpte projects/mynewproject`(项目文件夹需提前创建,且包含`prompt`文件)。
改进项目:`gpte i`,比如`gpte projects/myoldproject i`(针对已有代码的改进)。
四、特色功能
1. 预提示(Pre Prompts):用户可通过`usecustompreprompts`参数自定义`preprompts`文件夹,修改AI的“身份设定”(比如让AI以“资深Python开发者”的身份工作),让AI记住跨项目的规则或偏好。
2. 视觉支持:结合视觉模型(如gpt4visionpreview),用`image_directory`指定图片文件夹(如UX设计图、架构图),让AI参考图像内容生成更贴合需求的代码。
3. 多模型兼容:默认支持OpenAI、Azure OpenAI、Anthropic模型,也可扩展使用开源模型(如WizardCoder),满足不同场景的需求。
五、社区与贡献
社区使命:维护代码代理工具,促进开源协作,目标是让开发者更高效地构建AI编码工具。
参与方式:
加入Discord社区(`https://discord.gg/8tcDQ89Ej2`)交流;
参考`ROADMAP.md`了解未来规划,通过`CONTRIBUTING.md`提交贡献;
显著贡献者包括ATheorell、similato87、TheoMcCabe等。
六、关联项目
gptengineer.app:是gptengineer的商业化演进,提供UI界面和托管代码库服务,面向非技术用户,同时支持开源社区的发展。
其他信息
许可证:MIT(允许自由使用、修改和分发);
主要语言:Python(占比98.8%);
社区热度:仓库获54.9k Star、7.3k Fork,被167个项目依赖,有105位贡献者。
gptengineer 是AI代码生成领域的早期实验工具,适合开发者探索AI辅助编码的边界,或快速验证简单功能的实现思路。
