
AI编码正在飞速发展,每周都有能让我感到吃惊的AI编码工具出现。
还记得上次给大家分享了AI编程的工作流吗?最近我又找到了一个更好的工具,可以更好的生成初创项目的代码实现,那就是9月份 github 开源的 spec-kit。今天,我们就来一起盘一盘它到底有多神。
“某某驱动开发”这个词,在软件开发行业都快听出茧子了,从 TDD (测试驱动开发) 到 BDD (行为驱动开发),核心目标都是为了提升效率和质量。
那么现在这个 Spec-Driven Development 又是什么新花样呢?
Spec-Driven Development 的核心思想是,让规范变得可执行,直接生成企业级的代码实现。换句话说,规范本身就应该是能跑起来、能直接生成代码的“活”蓝图。

朋友们!想不想试试给AI当老板,让它当你的“产品总监”与“首席工程师”,在短短3天内从零交付一个MVP产品?
今天,我们就来深入聊聊一个新的话题:可控AI软件工程。
近一年,AI编程工具层出不穷,从 Cursor、Qoder、Trea 到基于命令行的 Claude Code,简直让人眼花缭乱。作为一名老程序员,AI日渐成熟引发的生产力暴涨让我兴奋,担忧自我成长追不上AI发展的步伐又让我焦虑。
正如许多前辈指出的,AI已是大势所趋。与其焦虑恐慌、被动接受,不如主动拥抱变化、提高工作效率。这也是我决心深入大模型领域,并与大家分享过程、交流经验,共同成长的初衷。
今天这篇文章将为大家呈现从产品定义、技术选型到编码测试的全过程,通过上述流程向大家展示如何高效利用现有AI工具,实现“可控AI编程”。
工欲善其事,必先利其器。我们首先来看下,在AI软件工程中,目前适合AI

今天继续讨论 LangGraph 的实践,这次我们来聊聊 human-in-the-loop。毕竟智能体再智能,也难免会出 “骚操作”—— 比如瞎编数据、做超出权限的决策,而 human-in-the-loop 就是给智能体装个 “刹车”,关键时刻让人类接手决策。
这篇文章里,我们会从基础概念聊起,搞清楚它和多轮对话到底有啥区别,然后通过 LangGraph 实现这个功能,看看它在咱们 TinyCodeBase 项目里的实战用法。
Human-in-the-Loop(后面我们统一用 人类在环 这个术语)的核心思想,就是让机器在执行任务的过程中,主动与人类协作,而不是一条道走到黑。
它不是等 AI 跑完所有流程我们再给个“好评”或“差评”,而是在高风险、易出错的关键节点主动暂停,由人类来确认决策。只
聊到大模型框架,你是不是也和我曾经一样,觉得 LangChain 这类东西有点‘多此一举’?总感觉自己写几行 Python 代码就能搞定一切。
我之前就是这么想的,直到我遇到了 LangGraph... 妈耶,真香!它解决工具调用问题的丝滑程度,让我这个‘手搓党’都直呼好家伙。今天,我就带大家一起体验下这种快乐,顺便聊聊我踩过的坑。
官方的教程分了6步,今天我们先拿下前三步。可以说,会了前三个,就可以解决 80% 的 Agent 开发问题了。
那我们就开始吧!🚀
如果说 LangChain 是一种大模型的开发“套件”,那么
Gemini CLI 是 Google 推出的一个命令行工具,可以让你通过命令行与 Gemini 模型进行交互。
现在,我的很多编程场景都在使用 Gemini CLI 来完成。用 Gemini CLI 的时候总觉得有点束缚,每个项目只能配一个 gemini.md,想换个场景还得改来改去,太麻烦了!
不像 Cursor 可以配置多条 cursor rule,Gemini CLI 在一个工程中只能配置一条系统提示词,想设定多种场景的话只能都写到一个提示词中。这会导致提示词效果变差。
功夫不负有心人,在我翻遍了 Gemini CLI 的官方文档后,终于让我找到了一个完美的解决方案——自定义命令!💡
Gemini CLI 提供一系列内置命令,帮助用户管理会话、自定义界面以及控制行为。这些命令以斜杠 / 开头。
Gemini CLI 内置了一系列命令,如/help、 /clear、 /copy 等。
官方文档是这么说的 📝: 自定义命令允许用户在 Gemini CLI 中将最常用的提示保存并重复
在 AI 圈,大语言模型测评堪称「玄学现场」:某国产模型在 C-Eval 榜单力压 GPT-4 登顶,却在真实金融咨询中频繁输出过时政策;GPT-4 能考过律师资格考试,却在小学数学题的数字微调后正确率暴跌 10%。当模型从「专项选手」进化成「全能 Agent」,传统测评体系正在经历前所未有的颠覆。
在传统测评体系中,我们所进行的任务都是标准化的,比如图片分类、文本抽取、情感判断等。这些任务都有固定的框架和标准输出结果。我们可以通过一些指标来评估模型的性能,比如准确率、召回率、F1 分数等。
但是,当大语言模型的到来,模型的能力不再是标准化的,而是不断在扩展,从AI写作、图像生成到AI编程,模型可以完成各种各样的任务。同时,这些任务的输出结果好坏也是多层次的,很多时候也是因人而异的。这就导致,传统的测评体系已经无法满足需求。
大语言模型 Agent 作为连接技术与场景的桥梁,通过集成LLM的理解、推理与决策能力,已在客服、医疗、金融等领域实现**自
今天,我们将系统性地从零构建一个定制化Agent。接续上期对Agent原理的探讨,本节以ReAct范式为基础(相关背景请参阅往期文章),逐步实现一个轻量级大模型Agent的完整工作流。
ReAct 范式中,Agent 依赖外部工具执行任务。以下以 tools.py 中的实现为例。其中包含了谷歌搜索的工具函数。
{
'name_for_human': '谷歌搜索',
'name_for_model': 'google_search',
'description_for_model': '谷歌搜索是一个通用搜索引擎,可用于访问互联网、查询百科知识、了解时事新闻等。',
'parameters': [
{
'name': 'search_query',
'description': '搜索关键词或短语',
'required': True,
'schema': {'typ
接下来我准备继续学习TinyAgent项目,并将其集成到之前的项目TinyCodeRAG中,后面我计划集中精力打造一个适用于个人可以简单部署的代码知识库项目,因此将其仓库名修改为了 TinyCodeBase(https://github.com/codemilestones/TinyCodeBase)。 欢迎大家给个 star 持续关注。
在开始进行Agent能力搭建之前,我们先来聊聊什么是Agent。
AI Agent 被定义为在限定的数字环境中执行目标导向任务的自主软件实体。它们通过感知结构化或非结构化的输入、对上下文信息进行推理,并采取行动以实现特定目标。与传统自动化脚本不同,AI Agent展现出反应式智能和有限的适应性,能够根据动态输入调整输出[1]。
“传统的”大模型存在一些局限性,比如:
而 AI Agent 的
在上一篇文章中,我们拆解了RAG系统的核心组件。今天,我们来点更酷的——亲自构建一个专为代码优化的TinyCodeRAG!
💡 快速科普:RAG(Retrieval-Augmented Generation,检索增强生成)技术通过结合外部知识库和AI生成能力,有效缓解大模型的"幻觉"问题。
你可能会好奇:"已有TinyRAG珠玉在前,为何再造轮子?" 原因有二:
首先,造轮子是最扎实的学习路径。
其次,在造轮子的过程中,可以想办法把它造得更好看一点,这是一个创造的过程,也令人心旷神怡。
于是,TinyCodeRAG诞生了!它带来四大核心升级:
✅ 代码智能分块:专门解析代码数据结构,构建精准向量集
✅ 开箱即用:提供测试API key(用完我会定期续费)
✅ 模块化测试:每个组件都有独立测试用例
✅ 对话体验优化:完整支持多轮上下文对话
话不多说,让我们一起动起来!
先快速过一遍项目结构(完整代码已开源):
(h
嘿,现在大家可都在积极投身大模型转型浪潮呢!从公司领导想用它提效,到老师用它搞科研,再到普通人抓机会追财富自由——我也是其中之一,正从传统开发往大模型转型。毕竟,传统软件正式微,大模型开发正崛起!
所以啊,我想把自己学习过程中的思考和经验分享出来,希望能帮到大伙儿。今天第一篇,咱们聊聊RAG系统的拆解。
眼下,典型产品比如Cursor的RAG系统:用户上传文件后,它会自动向量化并存入向量数据库;提问时,Cursor直接从库中检索相关信息返回。
<p align=center>cursor codebase Index界面</p>

另一款腾讯出品的ima也类似:你能把微信公众号文章整理成知识库,提问时iMA自动检索回答。
<p align=center>腾讯ima</p>
: 我参加了2021年的研究生入学考试,并在同年9月正式开启了硕士生涯,在导师的指导下学习。
积累期(2021-2023): 这两年里,我系统学习了人工智能与大数据分析相关的多门核心课程,打下了坚实基础,同时也顺利完成了学校要求的实践环节。
探索与聚焦(2023): 从2023年起,我开始构思并着手准备自己的研究课题以及最终的毕业论文。一次聆听张洪宇教授《代码智能:挑战与进展》报告分享的经历,像一束光,点亮了我的研究方向,也坚定了我未来的目标路径——这也是我博客取名“代码里程碑”的灵感来源之一。
冲刺与收获(2023-2025): 围绕着“代码智能”方向,我全身心投入课题研究和大论文撰写。历经一年半的潜心准备,终于在2