ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

转AI应用开发前,先打好这五个基础,少走三个月弯路

转AI应用开发前,先打好这五个基础,少走三个月弯路

经常有人来问我:想转 AI 应用开发,是不是直接找个项目练手就行?我的回答通常会让对方愣一下——先别急着做项目。这不是劝退,而是我见过太多人在这条路上翻车,翻的原因出奇一致:底子没打好,一上来就扑向项目,结果项目没起来,基础也没补上,时间还搭进去几个月。

“转 AI 应用开发”这件事,关键词不是“AI”,而是“应用开发”。模型固然重要,但真正决定你能不能稳定交付的,是对输入输出、数据流、评测反馈、成本控制这一整套工程环节的理解。这跟传统后端开发很像,只是多了一层概率性的模型调用。如果你从项目出发,大概率会淹没在提示词调优和框架报错里,搞不清自己到底在学什么。

所以这篇文章,我想认真聊一聊:转 AI 应用开发之前,你最该做好的几件事。包括思路怎么切换、技术栈怎么搭、评测怎么建、从哪些练手方向起步,以及我踩过的一些坑。全文不涉及具体厂商和产品,用通用的工程视角来拆解,希望能帮你省下至少三个月的弯路。

1. 先搞清楚:AI 应用开发和你熟悉的软件开发到底差在哪

1.1 从“确定性逻辑”到“概率输出”的思维切换

很多从传统后端转过来的开发者,第一个不适应的点就是:模型的输出是不确定的。你调用一个普通接口,传同样的参数,返回同样的结果,一切可预测、可调试;但调用大模型,同样的输入,哪怕温度参数设成 0,也可能在细节上有波动,更不用说你还经常调整提示词。

这个差异带来的连锁反应,其实是整个工程方法的改变。

以前的开发思维是先定义输入输出,再写逻辑,然后覆盖测试用例。到了 AI 应用开发这里,核心逻辑变成了模型替你完成的那一段,你没办法用断点一步步跟踪它内部的推理过程。你能做的,是在外层约束它:更精确的提示词、更合理的结构化输出要求、更可靠的上下文拼装,以及一个能评价“这回答到底好不好”的评测集。

用个生活化的例子:传统开发像做计算器,按钮按下去,数字一定对;AI 应用开发更像带一个实习生,他大部分时候靠谱,但你得给他清晰的工作手册,还得有人检查他的活。

理解了这一点,你才会明白为什么很多 AI 项目“看起来能跑,一上生产就废”:因为大家还拿传统开发的思路去验收——跑通一次就算成功。而真实场景里,模型可能输出错误格式、可能答非所问、可能编造内容,所以必须提前设计好校验、兜底和重试逻辑。

1.2 应用开发不等于“套 API”:真正的技术栈长什么样

很多人以为 AI 应用开发就是调接口、拼提示词,这是另一个大误解。完整的 AI 应用开发能力可以拆成五个层面:

  • 模型层:选哪种模型、用商业 API 还是开源自部署、上下文窗口多大、支持什么能力。
  • 应用编排层:怎么串联提示词、工具调用、多轮对话状态,也就是常说的 Agent 或多步流程。
  • 数据层:知识库怎么切块、怎么向量化、怎么检索,这是 RAG 应用的根基。
  • 工程层:接口封装、流式输出、鉴权、限流、缓存、日志,以及模型调用失败时的兜底。
  • 评测层:准备测试集、定义打分标准、跑基线、回归测试,用数据判断一次改动到底是变好还是变坏。

这五层里,很多“只做项目”的人只会在第二层打转,反复调整提示词和框架配置,其他层基本空白。真到了上线,数据层和工程层的问题会集中爆发:你要么发现知识库检索的是一堆垃圾,要么发现高峰期模型接口超时,连个降级方案都没有。

所以我的建议是:在开始项目前,先把每一层都摸一遍,不需要精通,但得知道每层大概有哪些问题、常规解法是什么。否则你不是在做项目,你只是在给框架调参。

2. 转行的第一课:不是写代码,而是建立评测与基线意识

2.1 没有评测体系,你做的每一次优化都是自嗨

我见过不少这样的场景:同学兴冲冲地说“我换了提示词,效果好多了”。我问怎么判断效果好多了,他说“我试了几个问题,感觉回答变专业了”。这就是典型的没有评测意识。

AI 应用开发和传统开发有一个很大的不同:传统开发有明确的测试用例,逻辑对不对一跑就知道。AI 应用的输出没有标准答案,同一个问题可能有多种合理回答。如果没有评测体系,你就无法判断一次改动到底改好了没有,更别说比较不同模型、不同参数的效果。

建立最基础的评测体系其实不复杂,就三步:

  1. 准备一份评测集,里面是你这个业务场景里真实会出现的问题,最好覆盖正常情况、边界情况和异常情况。
  2. 为每个问题定义一个可判定的标准。比如抽取类任务,可以对比抽取结果是否与答案完全匹配;问答类任务,可以人工打分 1 到 5 分。
  3. 每次调整后,用同一份评测集跑一遍,记录得分变化。

我举一个实际场景:假设你在做一个“从客服工单中提取紧急程度”的小工具。评测集就放五十条真实工单,每条标注好期望抽取出的紧急程度。每次改提示词、换模型,都拿这五十条跑一遍,算一下准确率。改一次,跑一次,准确率从 82% 到 85%,这才是可积累的进步。

这就像改卷子,你得先有卷子,才能知道学生到底进步了没有。没有评测体系的 AI 开发,本质上是凭感觉写代码。

2.2 先跑通最小闭环,再谈产品化

当你有了评测意识,下一步就是跑通一个最小闭环。什么是最小闭环?一个输入,一次模型调用,一个输出验证。仅此而已。

别一上来就上向量库、Agent、多轮记忆,而是先选一个最简单的业务场景,用最朴素的方式实现它。比如上面说的工单紧急程度抽取,用模型 API 直接传提示词和文本,要求它输出 JSON,这就已经是一个闭环了。

这个阶段的全部目标不是交付,而是理解模型行为。你得亲手试出来:

  • 同一个问题,温度参数从 0 调到 0.7,输出有多大差别。
  • 模型返回的 JSON 格式,什么时候会出错,出错后怎么解析兜底。
  • 长文本输入会不会超上下文窗口,超了怎么截断或摘要。
  • 模型有时会一本正经地胡编,哪些业务场景里这个风险完全不能接受。

这些认知是任何项目实战都教不了你的,因为它们隐藏在具体细节里,而且只有反复踩过、试过,才会变成你的本能反应。

2.3 常见误区盘点:为什么说“急着做项目”会踩坑

结合我带人的经验和自己的经历,总结一下急着做项目的典型症状,你可以对照着看看有没有中招:

  • 误区一:一上来就搭全套架构。检索、缓存、消息队列都堆上,看起来像个大项目,结果连最基本的提示词都没调明白。项目推进不下去,信心也崩了。
  • 误区二:把 Demo 当项目。演示的时候跑通一次,截图发朋友圈,之后就不管了。真实场景里遇到格式错误、接口超时、输入刁钻,直接傻眼。
  • 误区三:根本不看成本。调大模型是有成本的,有人做知识库问答,把整本书都塞进提示词,每次请求烧掉好几万 token,账单出来才发现比云服务器还贵。
  • 误区四:忽视数据与知识边界。以为把公司文档丢给模型就行,结果模型根本没见过那些文档,只能乱编。其实你需要的是检索增强,不是让模型“死记硬背”。
  • 误区五:追热点框架。今天听说这个框架好用,明天又换那个,光环境配置就折腾了两周,最后哪个都不精,也没时间接触真正的核心链路。

这些误区的共同根源,都是把“项目”当成了学习路径的起点,而不是检验学习成果的手段。项目应该是在你具备一定基础后,用来验证、巩固、暴露问题的方式。

3. 真想做项目?先从这三个方向练手

3.1 方向一:给现有系统加一个 AI 辅助功能

这是我认为最稳妥的练手方式,尤其适合在职转行的读者。你不必从零做一个产品,而是在你已有的业务流程上,找一个人工成本高、重复性强的环节,尝试用 AI 辅助完成一部分。

举几个例子:把客服工单自动分类,辅助生成周报摘要,从合同里抽取关键条款,把会议录音转成结构化纪要和待办事项。这类场景有几个共同特点:边界清晰,输出明确,而且即使 AI 没做好,人工还能兜底,不会造成灾难性后果。

具体实现路径大概是:

  1. 定义输入和输出。比如输入是工单标题加描述,输出是分类标签加紧急程度。
  2. 设计提示词,要求模型输出结构化 JSON,字段名和值域都在提示词里明确给出。
  3. 写一个调用函数,解析 JSON,解析失败就走兜底逻辑,比如默认分类为“待人工确认”。
  4. 准备三十到五十条历史数据作为评测集,跑出基线。
  5. 迭代优化:先看哪类错误最多,再做针对性调整,一次只改一个变量。

这个方向练完,你就掌握了 AI 应用开发最核心的能力:需求拆分、提示词设计、结构化输出、评测迭代。这些能力可以迁移到任何 AI 项目上。

3.2 方向二:做一个个人知识库问答工具

个人知识库问答是练 RAG(检索增强生成)的经典场景。为什么好?因为你手上的数据很容易获取,场景真实,模型不会回答的内容你一眼就能看出来,非常适合观察整条链路的效果。

一条完整的 RAG 链路包括:文档解析、分块、向量化、检索、拼接上下文、生成答案。很多人一上来就纠结分块策略和向量库选型,我的建议是先用最朴素的方式把链路跑通:文档解析后,按固定长度分块,相邻块之间留一些重叠,向量化后存入一个本地向量库,检索时取最相似的几个块,拼进提示词,最后让模型基于这些内容作答。

这里有一个非常容易踩的坑:分块大小。块太小,单个块包含的信息不够,检索答案不完整;块太大,上下文塞得太多,既费 token 又容易引入无关信息。我的经验是一般先按四五百字左右的块来切,重叠五六十字,然后根据检索效果再调整。这只是起点,不是标准答案,具体还得看你的文档类型。

还要强调一点:检索质量和生成质量是两回事。有些项目检索出来的内容根本不对,再怎么调提示词也没用。所以你得先单独检查检索结果:问题对应的正确内容有没有被召回?如果这一步就有问题,优先调分块和检索方式。

这个方向练完之后,你对数据层面会形成完整的手感,这在后面的任何企业级 AI 应用里都是硬通货。

3.3 方向三:做一个 Agent 工具的简单编排

Agent 是目前热度最高的方向,也是三个方向里难度最大的。它和普通对话式应用的核心区别在于:模型不只是回答问题,而是可以根据你的指令,调用一个或多个外部工具,完成多步任务。

举个例子,做一个“信息调研助手”:你让它整理某个主题的近期动态。它可以先调用搜索工具查资料,再调用网页抓取工具获取详情,最后把内容汇总成一份结构化报告。每一步怎么做,模型自己决定,你只负责提供工具和设定边界。

最小实现路径是这样的:

  1. 定义几个工具函数,比如搜索、抓取网页、计算、查数据库。
  2. 把工具的功能和参数格式声明给模型。
  3. 用户提问后,模型如果决定用工具,会返回一个工具调用请求。
  4. 你在外层执行这个工具,把结果再传回给模型。
  5. 模型根据工具结果继续分析或再次调用工具,循环直到它认为任务完成。

这个方向真正需要关注的不是“模型多聪明”,而是工程可控性。你要处理状态怎么保存、工具调用失败怎么办、死循环怎么打断、最终结果怎么校验。很多初学 Agent 的人翻车,就是因为没有日志和超时中断机制,结果模型像脱缰野马一样反复调用工具。

我不建议一上来就奔着 Agent 去。先把前两个方向练扎实,再进入这里,你会更容易体会到编排框架的设计逻辑,而不是被它绕晕。

4. 学习路线的务实建议:按这个顺序来,少走三个月弯路

4.1 阶段一:语言与基础补强

先说一个很多人纠结的问题:转 AI 应用开发,是不是必须学 Python?不一定。如果你本身是 Java 或 Go 背景,主流云厂商的模型 API 都有对应 SDK,主流编排框架也有 Java 生态的对应实现,你完全可以在自己的技术栈内起步。

但如果你是从零开始,或者你现在用的语言在 AI 开源生态里支持特别少,那补一下 Python 是值得的,因为大部分 AI 示例、评测工具、数据处理脚本都默认用 Python。

比语言学更重要的其实是几项通用基本功:HTTP 与 API 调用、JSON 解析与容错、异步处理与流式读取、异常处理与重试策略。这几项才是 AI 应用开发的底座。你想想,你每天要做的事,无非是发请求给模型,拿回 JSON,解析,出错处理,这不就是这些基本功的组合吗?

这个阶段建议两周到三周,目标不是精通,而是能熟练完成“发起一个带鉴权的 HTTP 请求、处理流式返回、把 JSON 解析成目标数据结构”。

4.2 阶段二:一个模型,打透一条链路

接下来一个月,不要同时试用好几个模型,就固定用一个你最顺手的,把一条链路打透。哪条链路?就是最基础的:输入提示词、调用模型、拿到输出、解析结果、处理异常。

在这个阶段里,建议认真做这几件事:

  • 理解上下文窗口的含义:输入 token、输出 token 分别怎么算,超了会发生什么,怎么截断或压缩。
  • 理解温度参数的影响。我习惯把温度理解成“抽奖转盘”:低温度,每次出的结果更接近固定选项,适合抽取、分类、改写等确定性任务;高温度,每次差异更大、更有创造性,适合写作和头脑风暴。但这只是直觉,具体还得实测。
  • 练习结构化输出。指示模型返回 JSON,并设一个解析失败后的兜底逻辑,这是生产级应用的基础。
  • 体验流式输出。很多业务场景里,用户看到“逐字蹦出来”的响应会觉得快很多,但你要处理中断和超时。

这段时间的目标,是把“调模型”变成像“调普通接口”一样自然的事,闭上眼都知道大概率会返回什么、常见报错有哪些。

在这个阶段,请逼自己认真读一遍模型文档里的参数说明和限制。很多人觉得文档太长不看,结果遇到“为什么输出被截断了”“为什么 JSON 解析失败”这种问题,只能瞎猜。文档看起来不起眼,但里面经常埋着最关键的答案。

4.3 阶段三:智能体与评测进阶

基础链路熟了以后,再进入 Agent 和评测的进阶阶段。

Agent 方向,我的建议是先手动实现一个最小带工具调用的流程,不急着上框架。理由很简单:手写一遍,你能清晰看到“模型决定调工具–你执行工具–结果回传给模型”这个循环的每个环节。等你理解了原理,再去用编排框架,你会知道框架替你解决了什么、它内部是怎么工作的、出了问题往哪查。

评测进阶方面,把评测集从几十条扩展到上百条,并尝试建立自动化评测脚本。可以先用基于规则的判定,比如字段是否完整、抽取结果是否精确匹配;复杂一点的,可以再用模型当裁判,给回答打分。注意,用模型当裁判也有偏差,最好结合人工抽检。

到这个阶段,你已经有足够能力去应付一个真实的项目了。此时再去做项目,你会发现自己的动作完全不一样:你不慌,知道先搭评测、先跑基线、再迭代;你也不会被框架热搜带着走,因为你清楚底层链路是什么样。

5. 避坑清单:来自一线的真实教训

5.1 关于模型选型:别追新,要看场景

模型的迭代速度很快,几乎每个月都有新版本发布,但你的业务不会因为模型换新就自动变好。选模型的正确姿势,是拿你的评测集去跑一轮对比,用数据说话,而不是听宣传。

这里有两类场景需要区分。如果你的业务数据涉及内部敏感信息,或者有明确的私有化部署要求,优先考虑开源基座模型自部署。自部署的痛点是硬件成本和运维复杂度,但数据不出内网,可控性强。如果你的业务追求快速上线、综合能力优先,那商业模型 API 会更省心,按量付费、开箱即用、效果通常也更好。

我的习惯是先固定一个商业模型 API 跑通业务流程,等验证了可行性,再评估是否有必要换成开源模型自部署。这样前期投入最低,风险也最小。

5.2 关于成本与限流:不设防的项目会失控

AI 应用开发和传统后端一个很大的差异,是每一笔请求都有真实的费用在烧。如果不设防,一个测试 bug 都可能造成巨额账单。我来给你算一笔简单的账:

假设你的应用每次请求消耗五千个 token,一千个 token 按主流商业模型的中等价格算,单次请求成本大约几分钱。听起来不贵是吧?但如果每天的请求量是一万次,一天就是几百块,一个月就上万。这还不包括你调试时的反复调用、用户恶意刷接口、上下文越塞越长导致 token 膨胀等隐性消耗。

控制成本我有四个习惯,分享给你:

  • 设请求上限。在代码里给每个用户、每个 IP 设置调用频率限制,防止被刷。
  • 加缓存。相同的输入,短时间内直接返回缓存结果,不重复调用模型。
  • 控上下文。不相关的历史记录不要全塞进去,该清理就清理,该摘要就摘要。
  • 监控和告警。把每日 token 消耗、请求量、错误率做成面板,设好阈值,超出就报警。

大模型调用不像普通存储服务那么便宜,也不像普通接口那么稳定。把成本和限流当成功能来做,是一个 AI 应用能长期活下去的基本前提。

5.3 关于“人”的协作:转行不是一个人闭门造车

最后聊点技术之外的。很多人转 AI 应用开发,习惯一个人闷头学,我觉得这是个隐患。原因是 AI 应用开发最大的难点往往不是技术,而是需求理解和业务场景建模。

比如你要做一个客服助手,你不去跟一线客服聊,你根本不知道他们每天处理的工单长什么样、哪些环节最耗时、哪些错误是绝对不能犯的。你基于想象做的产品,大概率不符合真实需求。

我建议你找一个真实的业务方伙伴,哪怕是模拟的,也要养成“先聊需求再写代码”的习惯。你会发现,很多需求聊完以后,根本不需要多复杂的 AI 技术,一个普通的分类加一个知识库检索就解决了。AI 应用开发最容易走进的误区之一,就是用复杂技术解决简单问题,还引以为傲。

还可以尝试输出倒逼输入:学一个东西,就写一篇笔记或者做一个小的演示。写不出来、讲不清楚,说明你还没真懂。这个过程很痛苦,但效果奇好。

我个人在实际操作中的体会是,AI 应用开发和其他方向的转行本质一样:别让“做项目”的焦虑,代替“打基础”的耐心。我见过不少基础扎实、从最小闭环一步步走过来的开发者,接手正式项目时上手飞快;也见过不少一上来就扑大项目的人,折腾几个月后回头补基础。转 AI 应用开发这件事,慢,真的就是快。

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进