我们现在做AI应用开发,不就是调用一下大模型的API?好多人都带着这个疑问
这么说,也确实不错,核心能力确实是这样的,调用一下大模型的API。
但是当我通过开源平台搭建过几款基础的AI应用之后,我就不这样想了。
添加图片注释,不超过 140 字(可选)
先说结论:核心是调用API,但是只调用API,没有一点用,那样你的能力和大模型一模一样。
一、AI应用到底是什么
“AI 应用指的是将人工智能(AI)技术与具体场景结合,解决实际问题、提升效率或创造新价值的各类产品与服务,简单说就是 “AI 技术落地干活的具体形式”。”
这是AI给出的回答。
我的回答就很简单了,AI应用就是帮你解决具体问题的人。
打个比方:大模型是一个懂得基础生活常识的人,而AI应用就是把这个人变成某个行业的专家。
添加图片注释,不超过 140 字(可选)
一个人变成一个专家都需要很长一段时间,更何况开发一款AI应用。从这点看,绝不仅仅是调用一个api那样简单,单纯的调用api只能得到基本的回答,没有深入的回答,甚至会存在AI幻觉。
二、真正的 AI 应用开发,是“驯兽师”工作
AI应用开发是一个很麻烦的事情,涉及到以下几个方面。
添加图片注释,不超过 140 字(可选)
上下文工程:教 AI “说人话”
大模型的生成结果,很大程度上都是依赖上下文的内容,如果上下文传输的不合理,那么最终的结果也不会理想。比如说:你要开发一个法律相关的AI应用,你直接调用API,那只会给你一个冷冰冰的法律条文,但是我们大概率是不懂的。
真正的做法是:在上下文里面控制好设计模版、指令和实例,让大模型知道该怎么回答。
不是单纯的写prompt,是设计出一套适配业务的,并且让AI稳定输出的规则。
检索增强生成(RAG)
让 AI 知道“最新发生了什么” 大模型的知识是固定的,基于现实世界已经存在的数据进行训练的。但是它不知道你公司报销政策、工作流程、采购数据。怎么办?
不能靠它按照经验来,需要让它先知道这些数据,再回答。
这就是 检索增强生成(RAG):
用户问:“上季度销售数据是多少?” 系统先去数据库查报表 把数据塞给模型:“根据这份数据,总结一下”
整个流程就和人一样,老板问你:上个月的销售数据怎么样?你得先去查一下数据,再去做总结吧?
实现 RAG?那么就需要搞:文档切片、向量化、检索排序、结果融合……
这是一门系统性的工程学,和“调api”半毛钱关系没有。
系统集成
让 AI 应用能够“活下去” AI应用模型能跑,不代表能够存活下来,真实场景比我们所知道的复杂很多,比如:接口崩了怎么办?用户同时问1000个问题?被恶意刷请求?输出太慢?出了错怎么查?
需要去考虑系统整体的稳定性、响应时间、并发、安全性、日志记录。当然,这些目前也有很多开发框架支持了。
成本控制
别让 AI 吃垮你 调一次 AI大模型,几毛钱甚至只有几分钱。看起来确实不多,但是当AI应用推广出去的时候,如果每天有10W用户,每个人访问10次,一天就是100W次的访问,那一天的成本就是好几万,好几十万!
那就需要怎么做呢?这也是要考虑的事情! 比如:缓存常见问题答案、模型选取考虑、压缩prompt……
这些,API 接口没有,也没有人会告诉你,但是都是切切实实要去做的事情。
三、开发AI应用的工具:简化AI应用开发
“不是有 LangChain 、springAI吗?它能解决这些问题。”
没错,LangChain、SpringAI 这些框架确实帮了大忙。解决了很多问题,能帮忙快速搭出 RAG、流程链、多模态处理。
但是,它们终究是没有办法帮我们一键生成AI应用,需要通过这些工具一步步的写代码生成,需要懂它怎么拼接组件、怎么调试链路、怎么优化性能。
开发门槛降低了,但是难度依然存在。给你一辆法拉利,也不见得你敢飚到200码。
四、总结:AI 应用开发的真相
| 你以为的 AI 开发 | 实际上的 AI 开发 |
|---|---|
| 调个 API,写个 prompt | 设计上下文,控输出质量 |
| 模型输出即产品 | 输出要过业务、安全、体验三关 |
| 一个人,几小时搞定 | 团队协作,持续迭代 |
| 成本可以忽略 | 按调用次数烧钱,必须优化 |
| 工具能全自动 | 工具是辅助,工程才是核心 |
写在最后
目前我也在学习AI应用开发的过程中,各位看官,志同道合的话,可以点点关注,一起共勉!
后期会分享整理出自己的学习路线。
——励志通过AI独立开发变现的小码农