Aider

image

1- Aider 教程

Aider 是一个强大的 AI 编程助手,能够通过终端命令集成到任何支持终端的 IDE 中,帮助开发者与大型语言模型(LLMs)协作编程

1.1- 安装 Aider

网址:aider

1.1.1- 安装 Python 和 pip

首先,确保你的系统上已经安装了 Python 和 pip。如果没有,请先安装 Python。可以从 Python 官方网站 下载并安装。

[!tip]
建议使用虚拟环境:

# 创建虚拟环境
python -m venv aider-env

# 激活虚拟环境
# Windows:
aider-env\Scripts\activate
# macOS/Linux:
source aider-env/bin/activate

1.1.2- 安装 Aider

打开终端或命令提示符,输入以下命令来安装 Aider:

pip install aider-chat

1.1.3- 进入 Git 仓库

安装完成后,进入你需要编辑的 Git 仓库。例如:

# Windows
cd C:\path\to\your\git\repo

# macOS/Linux
cd /path/to/your/git/repo

[!note]
在 Windows 系统中使用 PowerShell 时,路径自动补全会使用正斜杠/,需要手动改为反斜杠\

1.1.4- 配置 API 密钥

根据你使用的 LLM,配置相应的 API 密钥:

1.1.4.1- 使用 Claude 3.5 Sonnet

export ANTHROPIC_API_KEY=your-key-goes-here
aider

1.1.4.2- 使用 GPT-4o

export OPENAI_API_KEY=your-key-goes-here
aider

1.1.4.3- 在用户根目录创建.env 文件

[!note]
在.env 文件中进行配置 API

目前 Aider 还不支持语音输入功能,/voice 命令暂不可用

1.2- 基本使用方法

1.2.1- 启动 Aider

在终端中输入 aider 命令启动 Aider。启动后,你可以与 Aider 进行交互,编辑代码。

1.2.2- 在浏览器中打开

aider --browser

[!tip]
可通过 --port 参数指定端口号:

aider --browser --port 8080

1.2.3- 添加文件到会话

使用 /add <file> 命令将文件添加到会话中。例如:

/add example.py

1.2.4- 移除文件

使用 /drop <file> 命令从会话中移除文件。例如:

/drop example.py

1.2.5- 撤销提交

如果上一个提交是由 Aider 完成的,可以使用 /undo 命令撤销该提交:

/undo

1.2.6- 显示差异

使用 /diff 命令显示上一个 Aider 提交的差异:

/diff

1.2.7- 运行 Shell 命令

使用 /run <command> 命令运行一个 Shell 命令,并可选择将输出添加到聊天中。例如:

/run ls -la

1.2.8- 语音请求

使用 /voice 命令通过语音向 Aider 请求代码更改。

1.2.9- 帮助信息

使用 /help 命令显示所有命令的帮助信息:

/help

1.3- 高级功能

1.3.1- 生成项目结构

Aider 可以生成初始项目结构。例如,生成一个 Java Spring Boot 项目:

aider create spring-boot

1.3.2- 实现 REST API 端点

Aider 可以逐步实现 REST API 端点,从创建任务开始,然后获取所有任务,最后实现剩余端点,如通过 ID 获取任务、更新和删除任务。

1.3.3- 生成单元测试

Aider 可以自动生成单元测试。例如,生成任务服务中的 updateTask 方法的测试。

1.3.4- 生成 OpenAPI 文档

Aider 可以为 REST API 生成 OpenAPI 文档,稍后用于构建前端用户界面。

1.3.5- 构建前端用户界面

Aider 可以利用其 “web” 命令来抓取和理解 API 文档,以实现上下文感知的 UI 生成。例如,生成一个 Next.js 项目,并提供依赖项安装和运行应用程序的说明。

1.3.6- 代码审查功能

Aider 可以自动分析代码质量并提出改进建议:

aider --review

[!warning]
该功能需要项目根目录包含 .pylintrc 或其他代码规范配置文件

1.4- 示例项目:创建一个简单的 Flask 应用

1.4.1- 创建 Flask 应用

在终端中输入以下命令,创建一个简单的 Flask 应用:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello_world():
   return 'Hello, World!'

if __name__ == '__main__':
   app.run(debug=True)

1.4.2- 运行 Flask 应用

保存上述代码到一个名为 app.py 的文件中,然后在终端中运行:

python app.py

1.4.3- 与 Aider 交互

启动 Aider 并添加 app.py 文件到会话中:

aider
/add app.py

1.4.4- 请求代码更改

例如,向 Aider 请求添加一个新的路由:

/voice

然后说:" 请添加一个新的路由 /goodbye,返回 Goodbye, World!"

[!example]
完整交互示例:

  1. 启动 Aider
  2. 执行 /add app.py
  3. 输入自然语言指令:
    " 请添加一个带参数的路由,接收用户名参数并返回个性化问候 "

1.5- 总结

Aider 是一个功能强大的 AI 编程助手,能够极大地提高开发效率。通过与 LLMs 的无缝协作,Aider 可以帮助开发者快速生成代码、实现功能、编写测试和生成文档。无论是新项目的启动,还是现有代码库的编辑,Aider 都能提供强大的支持。

1.6- 常见问题

1.6.1- Q: 如何更新 Aider 到最新版本?

A: 使用以下命令更新:

pip install --upgrade aider-chat

1.6.2- Q: Aider 支持哪些编程语言?

A: 支持所有主流编程语言,包括 Python、JavaScript、Java、C++ 等

希望这篇详细教程能帮助你更好地使用 Aider。如果有任何问题或需要进一步的帮助,请参考 Aider 的官方文档或使用 /help 命令获取更多信息。