菜单

开发环境设置

相关源文件

本页面提供了设置开发环境以贡献 gpt-engineer 存储库的技术说明。它涵盖了存储库克隆、依赖项管理、环境配置和代码质量工具设置。有关整体项目架构的信息,请参阅系统架构

先决条件

在设置开发环境之前,请确保您已安装

  • Git:用于版本控制
  • Python 3.9+:运行项目必需
  • Poetry:包和依赖项管理工具
  • Make(可选):用于从 Makefile 运行简化命令

您还需要一个 OpenAI API 密钥(或其他支持的 LLM 提供商密钥)用于测试。

来源

开发环境设置工作流程

下图说明了设置 gpt-engineer 开发环境的步骤

来源

存储库和依赖项设置

1. 克隆仓库

2. 安装依赖项

有两种安装依赖项的方法

方法 1:直接使用 Poetry

方法 2:使用 Makefile

这将执行 install 目标,包括

  • poetry-install:安装项目依赖项
  • install-pre-commit:设置 pre-commit 钩子
  • farewell:显示完成消息

来源

环境变量配置

项目需要 LLM 提供商的 API 密钥。通过复制模板创建一个 .env 文件

编辑 .env 文件以添加您的 API 密钥

可变目的
OPENAI_API_KEY使用 OpenAI 模型必需
ANTHROPIC_API_KEY使用 Anthropic 模型必需

或者,您可以直接将它们设置为环境变量

  • Linux/Mac: export OPENAI_API_KEY=your_api_key
  • Windows CMD: set OPENAI_API_KEY=your_api_key
  • Windows PowerShell: $env:OPENAI_API_KEY="your_api_key"

来源

代码质量工具设置

gpt-engineer 使用 pre-commit 钩子来强制执行代码风格和质量标准。

安装 Pre-commit 钩子

设置 Poetry 后,安装 pre-commit 钩子

您也可以使用 Makefile 目标,它会自动执行此操作

已配置的 Pre-commit 钩子

这些钩子会在每次提交前自动运行

钩子目的
black根据项目标准格式化 Python 代码
rufflinting Python 代码以尽早捕获问题
check-toml验证 TOML 配置文件
check-yaml验证 YAML 配置文件
detect-private-key安全检查,防止提交敏感信息
end-of-file-fixer确保文件以换行符结尾
trailing-whitespace移除行尾空格

来源

开发工具系统图

此图说明了开发工具如何在 gpt-engineer 开发环境中进行交互

来源

开发配置文件

此图显示了存储库中关键开发配置文件之间的关系

来源

Pre-commit 工作流程实践

以下序列图说明了使用 pre-commit 钩子的典型工作流程

来源

常见开发任务

设置好环境后,以下是常见的开发任务

运行项目

开发工作流

  1. 为你的更改创建分支

  2. 对代码库进行修改

  3. 提交您的更改(pre-commit 钩子将运行)

  4. 推送您的更改并创建拉取请求

来源

特定平台设置说明

Windows 特定设置

对于 Windows 用户,以下是额外的设置步骤

  1. 设置 API 密钥

    • 命令提示符: set OPENAI_API_KEY=your_api_key
    • PowerShell: $env:OPENAI_API_KEY="your_api_key"
  2. 或者,设置系统环境变量

    1. 在开始菜单中搜索“环境变量”
    2. 打开“编辑系统环境变量”
    3. 点击“环境变量”按钮
    4. 添加一个名为“OPENAI_API_KEY”的新变量,并将您的密钥作为值
    5. 点击“确定”保存更改
  3. 如果您遇到路径长度问题

来源

故障排除

Pre-commit 问题

如果 pre-commit 钩子失败并修改了您的文件,请添加这些更改然后重试

如果 pre-commit 似乎跳过文件,并显示类似 (no files to check)Skipped 的消息,但在 CI 中失败,则强制在所有文件上运行

在提交拉取请求之前,这一点尤其重要。

来源

Poetry 环境问题

如果您遇到 Poetry 问题

  1. 确保 Poetry 已正确安装
  2. 尝试更新 Poetry: poetry self update
  3. 清除 Poetry 缓存: poetry cache clear --all pypi
  4. 重新创建虚拟环境: poetry env remove python 然后 poetry install

来源