AI在线 AI在线

如何用 Pydantic-AI自己写一个AI编程Agent

市面上已经有不少成熟的 AI 编程工具,它们确实很厉害,可以做很多事情。 但是在实际使用过程中,我发现一个问题:这些工具总是太通用,和我的工作流程并不完全匹配。 它们缺少针对我项目特性的“个性化”。

市面上已经有不少成熟的 AI 编程工具,它们确实很厉害,可以做很多事情。但是在实际使用过程中,我发现一个问题:这些工具总是太通用,和我的工作流程并不完全匹配。它们缺少针对我项目特性的“个性化”。于是,我萌生了一个想法:为什么不自己动手,做一个完全贴合我需求的 CLI 编程助手呢?

于是,我决定用 Pydantic-AI 搭建属于自己的 AI 编程Agent。现在,它不仅能帮我修复测试、查文档,甚至还能修改代码。下面,我就来分享整个过程,以及为什么我选择自己动手。

为什么要自己动手?

市面上的商业工具,比如 GitHub Copilot 或 Claude Code 确实很酷,但它们就像超市买来的饼干:方便快捷,但总是少了一点“专属感”。

我的项目有一些奇怪的配置,还有一些 AWS 的特性,让通用工具经常束手无策。自己动手的好处有三个:

  1. 1. 量身定制:你的助手会完全适应项目的复杂性和混乱。
  2. 2. 学习与掌控:自己搭建过程让你理解这些 AI 工具是怎么运作的,这种知识非常宝贵。
  3. 3. 决策自主:想先修复代码再看测试?没问题,你说了算。

打个比方:当然外卖披萨很快,但自己挑配料,总是更合心意。

我的 AI 助手结构

我的Agent并不是一个神秘黑盒,它由几个模块组合而成:

• 大脑:Claude Sonnet 4(通过 AWS Bedrock),理解代码就像长期 pair programming 的搭档。

• 胶水:Pydantic-AI,使搭建Agent像堆积乐高一样简单。

• 工具:MCP Servers,一些小插件,用于跑测试或查文档。

• 交互界面:纯 CLI,输入命令即可获取答案,无需华丽 GUI。

这里 MCP 是关键,它像一个通用连接器,你可以像插 USB 一样添加工具,无需复杂集成。

第一步:从最基础开始

我先用 Python 的快速包管理器 uv 搭建基础环境:

复制

这里只安装了两个包:pydantic-ai 用于搭建Agent,boto3 用于与 AWS 交互。接着在 main.py 里写了以下内容:

复制

运行:

复制

立刻就能进入 CLI。我输入:“写一个反转字符串的函数”,它就输出了干净的 Python 代码。简直太神奇了,但这只是开始。

第二步:让它帮我跑测试(我最讨厌手动跑)

每天频繁运行 pytest?太浪费时间了。我给Agent加了一个工具来处理:

复制

现在我只需输入:“测试挂了,帮我看看!” 它就能运行 pytest,分析错误,并给出修改建议。早期有一次,它试图去“修测试而不是修代码”,结果我立刻给它设定了规则。

第三步:给Agent一些开发规则

智能归智能,但还是得指导它。我写了一段开发说明,让它知道我的偏好:

复制

现在,它会遵循 TDD 和小修原则,不再轻易大改代码。

第四步:用 MCP 插件增强它

MCP 服务器就像小应用,为Agent添加新技能,本地运行保证数据安全。我用了几个:

• 安全 Python 沙箱:

复制

• 最新文档查询:

复制

• AWS 知识库:

复制

• 网络搜索:

复制

• 智能代码推理:

复制

• 桌面指挥官:

复制

这一套下来,它可以:

1. 跑测试。

2. 查文档。

3. 修改代码。

4. 再次验证测试。

就像和一个永远不偷零食的 AI 搭档 pair programming。

改变我的开发流程

自从有了这个Agent,我的工作方式彻底改变:

• 调试像团队协作:它能运行测试、给出修复建议,并解释原因。

• 学习更快:新库?它能演示例子、指出坑点。

• 不再切换标签:文档、搜索、AWS 全都在一个 CLI 里。

• 更聪明的问题解决:一步步推理,而不是简单输出代码。

• 内置代码审查:提交前发现潜在问题,就像有个随叫随到的资深开发。

我的总结与经验

1. MCP 是核心:不是单一工具,而是组合魔力。测试 + 文档 + 编辑 = 高效。

2. 实时信息胜过训练数据:实时搜索与最新文档总是比旧训练数据靠谱。

3. 思考比敲代码重要:智能Agent是合作伙伴,而不仅是自动补全。

4. 上下文很关键:Agent记住测试错误,修改代码时不用反复提醒。

5. 定制化是王道:通用工具也许能用,但自己的助手更懂你的代码库。

打造一个自己的 CLI 编程小助手,不仅提高了效率,也让整个开发过程变得更有趣、更可控。对我来说,这已经不只是一个工具,而是一位永不疲倦、懂我项目的“编程搭档”。

相关资讯

Pydantic AI与MCP相逢

作为一个AI应用开发者,必须为客户构建健壮且结构良好的AI Agent。 Pydantic AI 作为一个健壮的框架彻底改变了开发人员构建、验证和部署 AI 应用程序的方式。 无论创建复杂的AI Agent,还是与MCP集成,Pydantic AI 提供了一个全面的解决方案,将 Pydantic 的可靠性与强大的AI特性相结合。
8/21/2025 7:07:49 AM
曹洪伟

一步步教你用 Streamlit + Pydantic AI 搭建深度研究智能体应用

如果你曾经好奇如何通过结合智能的后端 Agent 和流畅的交互式前端来释放人工智能的真正力量,那你来对地方了! 今天,我们将把你的知识提升到一个新高度,通过将强大的 Pydantic AI 研究 Agent 作为后端,与动态的 Streamlit 界面作为前端进行整合。 AI 的世界发展得快如闪电。
9/4/2025 1:44:00 AM
AI研究生

基于 DSPy 与 Pydantic 的自然语言参数提取框架(含code)

一、参数提取的重要性在人工智能驱动的现代应用中,自然语言交互已成为用户与系统沟通的主要方式。 从智能助手执行日程安排到企业级工作流自动化系统处理复杂指令,将“星期二下午2点与萨拉创建关于预算的会议”这类对话式命令转化为可执行的结构化参数,是实现人机高效交互的关键环节。 然而,随着用户指令复杂度的提升,传统的正则表达式匹配或关键词提取方法暴露出明显局限性——规则维护成本呈指数级增长、语义理解能力不足、难以应对句式变化等问题,使得构建一个鲁棒性强、可扩展的参数提取框架成为学术界和工业界共同关注的焦点。
5/27/2025 3:23:00 AM
大模型之路
  • 1