当前位置: 首页 > article >正文

大模型应用开发实战(6)——做一个能上线的 AI 应用,最小技术栈到底需要哪些东西

‍♂️ 个人主页小李同学_LSH的主页✍ 作者简介LLM学习者 希望大家多多支持我们一起进步如果文章对你有帮助的话欢迎评论 点赞 收藏 加关注目录一、最小技术栈不是“越多越好”而是“刚好够上线”二、模型层次第一层模型层——你总得先有一个“会思考”的核心方案 A直接调用模型 API方案 B自托管推理服务第二层应用后端——没有这一层你的 AI 只是脚本不是产品这一层至少负责什么第三层数据与状态层——没有数据库很多 AI 应用都活不过第二周推荐 PostgreSQL 作为最小方案这层最少要建哪些表第四层检索层——不是每个应用都要 RAG但很多应用迟早会要为什么“最小技术栈”里建议优先考虑 pgvector一个最简单的 RAG 视图第五层观测与评测层——这是很多团队最晚补、但最不该晚补的一层这一层最少看哪些指标第六层部署与交付层——真正的“上线”从这里开始为什么 Docker 几乎是最小标配三、如果要做 Agent 或 MCP技术栈要不要立刻升级关于 Agent关于 MCP四、最小可上线不等于最小可运行这两年做 AI 应用的门槛确实比以前低了很多。你甚至可以只写几十行代码就调一个模型 API做出一个看起来还不错的 Demo。但真正的问题不在于“能不能跑”而在于它能不能上线。上线的意思不是把代码推到服务器就结束了而是至少要满足下面几件事用户真的能访问应用能稳定返回结果出错时你知道错在哪成本不会失控以后还能继续迭代如果从这个角度看很多“AI Demo”其实离“AI 应用”还差得很远。当前官方和工程实践的共识也越来越清晰模型调用只是其中一层。OpenAI 现在把 Responses API 定位成构建 agent-like 应用的统一接口内置工具、多轮交互、远程 MCP 和多模态能力Anthropic 也强调真正成功的实现通常不是最复杂的框架而是简单、可组合的模式。FastAPI 官方则把自己定位为高性能、基于类型提示、适合生产的 Python API 框架LangSmith 则把 tracing、monitoring、evaluation 放在从开发到生产的一体化流程里。(developers.openai.com, )所以这篇文章我想回答一个很实际的问题如果我现在就要做一个能上线的 AI 应用最小技术栈到底该配到什么程度我的结论是一个最小可上线的 AI 应用通常至少需要6 层模型层应用后端层数据与状态层知识检索层可选但很多场景很快会需要观测与评测层部署与交付层前端不一定是最先复杂化的部分。很多项目最开始就是一个很简单的聊天页面甚至只有 API。一、最小技术栈不是“越多越好”而是“刚好够上线”很多人问“最小技术栈”潜台词其实是我到底哪些东西不能省哪些东西可以后补我的判断标准很简单必须有没有它应用很难稳定上线建议有不做也能上线但很快会痛暂时可不做先别加复杂度结合当前官方文档和工程实践一个很稳的“最小可上线”组合通常长这样层级最小方案作用是否必须模型层一个稳定的模型 API 或自托管推理服务负责生成能力必须后端层FastAPI对外提供 API、鉴权、流式输出、编排业务逻辑必须数据层PostgreSQL存用户、会话、消息、配置、任务状态必须检索层pgvector 或先不做有知识库需求时接入向量检索视场景观测层日志 tracing 基本评测知道系统哪里坏了、贵不贵、慢不慢必须部署层Docker 一台可访问的服务环境真正上线交付必须这个表的依据并不是某个单一框架“规定你必须这样做”而是把当前官方能力和工程上最稳的最小集做了抽象OpenAI 的 Responses API 已经把模型、多轮、工具、MCP 放到统一接口FastAPI 提供高性能 API、自动文档和异步能力pgvector 让你能直接在 Postgres 里做向量搜索LangSmith 这类观测平台则把 tracing、monitoring、evaluation 拉到了生产工作流里。FastAPI 作为 API 层模型层负责推理Postgres 负责业务数据pgvector 在需要 RAG 时补上观测层保证你能调试与评估部署层负责交付。二、模型层次第一层模型层——你总得先有一个“会思考”的核心任何 AI 应用的起点都是模型层。这个层不一定意味着你要自己训模型绝大多数团队一开始都不会这么做。当前更实际的选择通常是两种方案 A直接调用模型 API这是最适合 MVP 和中小团队的方式。OpenAI 当前把Responses API定位成统一接口支持多轮交互、内置工具、远程 MCP 和多模态输入输出所以你不必再把“聊天、工具调用、多轮上下文、MCP”拆成一堆分散接口来拼。developers.openai.comhttps://developers.openai.com/api/docs/guides/migrate-to-responses?utm_sourcechatgpt.com方案 B自托管推理服务如果你对数据、延迟或成本更敏感后面可能会走自托管路线。但从“最小技术栈”出发这通常不是第一步。所以最小方案里模型层你只需要回答一个问题我是用外部 API还是后面再演进到自托管刚开始我更建议先用一个稳定模型 API把产品链路跑通再决定是不是有必要自托管第二层应用后端——没有这一层你的 AI 只是脚本不是产品很多人第一次做 AI 项目会直接在前端调用模型。短期看很快长期几乎一定会出问题API Key 暴露业务逻辑散落在客户端无法稳定做流式输出无法做鉴权、限流、审计很难接数据库、检索和工具所以后端层是必须的。在 Python 技术栈里FastAPI 是一个非常稳的最小选择。它是一个现代、高性能、基于标准 Python 类型提示的 Web 框架同时自带 OpenAPI、Swagger UI 和 ReDoc 文档这对 AI 应用的 API 开发特别友好。fastapi.tiangolo.comhttps://fastapi.tiangolo.com/?utm_sourcechatgpt.com这一层至少负责什么最小后端至少负责接收用户请求调模型管理 Prompt / 上下文存对话记录做鉴权返回标准 API记录日志在需要时接 RAG / 工具 / MCP也就是说后端不是“模型调用的搬运工”而是你的 AI 应用真正的业务中枢。如果你把这条链路都放在前端基本就没有什么“上线”可言了。FastAPI 之所以适合这层是因为它本身就适合做生产 API同时异步模型也很适合处理 AI 场景里的 I/O 密集请求。第三层数据与状态层——没有数据库很多 AI 应用都活不过第二周很多 Demo 最大的问题就是它没有状态。你问完一句它答完就结束了。但一旦上线你很快就会需要这些东西用户信息会话记录Prompt 版本系统配置任务状态反馈数据人工审核结果这时候你就需要数据库。推荐 PostgreSQL 作为最小方案因为 Postgres 最大的优势是通用成熟事务可靠后续还能直接接 pgvector也就是说它既能当普通业务数据库又能在你需要做 RAG 时继续往上长而不用马上拆第二套系统。pgvector 官方 README 也明确写了它让你在 Postgres 里做向量相似度搜索同时保留 ACID、JOIN、PITR 等数据库能力。这层最少要建哪些表你可以非常克制地只建这几类userssessionsmessagesapp_configsfeedback已经够很多单体 AI 应用了。第四层检索层——不是每个应用都要 RAG但很多应用迟早会要一个非常常见的误区是做 AI 应用就必须先上向量数据库、上 RAG、上复杂检索。如果你的应用只是改写总结头脑风暴结构化输出那可能一开始根本不需要 RAG。但如果你的应用开始回答这些问题公司内部知识问答产品手册问答法务/财务/医疗文档问答基于私有资料的客服那你基本很快就会需要一层检索系统。为什么“最小技术栈”里建议优先考虑 pgvector因为 pgvector 可以让你把业务数据文档元数据向量索引放在同一个 PostgreSQL 体系里先别急着上独立向量数据库。官方说明里写得很明确它支持 exact / approximate nearest neighbor search也支持 cosine、inner product、L2 等距离。这对“最小上线版本”特别重要少一套基础设施就少一套运维复杂度。一个最简单的 RAG 视图这两个式子都表达同一个意思先从文档集合 D 里找相关内容再让模型基于问题 q和文档 d 生成答案。如果你不做知识型应用这一层可以暂时先不加。但如果你做的是“企业 AI 应用”这层通常会很快成为刚需。pgvector 之所以适合做第一版是因为它把向量搜索放进了你本来就大概率会用的 Postgres 里。第五层观测与评测层——这是很多团队最晚补、但最不该晚补的一层很多 AI 应用上线以后最先崩的不是模型而是不知道为什么慢不知道为什么贵不知道哪一步出错不知道用户为什么不满意这时候普通 Web 应用那套“看看 Nginx 日志”就不够了因为 AI 应用天然多了Prompt上下文检索结果工具调用模型延迟Token 成本输出质量所以Tracing 和 Evaluation不再是高级功能而是最小可运营能力。LangSmith 官方文档把 observability、evaluation、deployment 直接放进了一条工作流里它对 tracing 的定义也很直白trace 是一次请求从输入到输出经过的完整步骤记录。这一层最少看哪些指标最小版我建议你至少跟 4 个成功率平均延迟单次请求成本人工抽样满意度这条式子非常适合你上线后排查“到底慢在哪”是后端接收慢、检索慢、模型推理慢还是后处理慢。第六层部署与交付层——真正的“上线”从这里开始当你说“我要上线”最后总要落到交付方式。FastAPI 官方的部署文档强调了你最终还是要面对进程、服务、容器、网络这些生产概念。对一个最小 AI 应用来说建议部署层尽量克制Docker统一运行环境一个可访问的服务环境云主机、容器平台都行HTTPS / 域名 / 反向代理按平台配环境变量管理API Key、数据库连接、开关配置为什么 Docker 几乎是最小标配因为 AI 应用里依赖很容易乱模型 SDK向量库驱动系统库Python 版本部署环境差异一旦不容器化开发环境能跑、线上不能跑会非常常见。“上线”这件事到这里才真正完整。前面五层决定你能不能做出一个像样的 AI 应用最后这一层决定别人到底能不能稳定用到它。FastAPI 的部署文档本身就是围绕这些概念组织的。三、如果要做 Agent 或 MCP技术栈要不要立刻升级这部分很多人容易加早了。关于 AgentAnthropic 的实践建议很值得记住最成功的 agentic systems 往往来自简单、可组合的模式不是一上来就上最复杂框架他们还明确区分了 workflow 和 agent。所以如果你的任务只是一次问答一次检索后回答固定的工作流那先别急着上 Agent。关于 MCPMCP 官方把自己定义成一种连接 AI 应用与外部系统的开放标准并把它类比成 AI 应用的 USB-COpenAI 当前也已经在 Responses API 里支持 MCP tools。‘所以 MCP 适合什么时候上你接的外部系统开始变多不想每个工具都手写一套接法想把工具、数据源、工作流统一暴露给模型应用也就是说Agent解决的是“怎么决策和执行”MCP解决的是“怎么标准化接外部世界”四、最小可上线不等于最小可运行级别组成特点最小可运行模型 API 简单前端能演示但不稳定、难维护最小可上线模型层 后端 数据库 观测 部署能交付、能排障、能继续迭代可扩展版本再加 RAG / Agent / MCP / 评测体系能走向更复杂业务场景

相关文章:

大模型应用开发实战(6)——做一个能上线的 AI 应用,最小技术栈到底需要哪些东西

🤵‍♂️ 个人主页:小李同学_LSH的主页 ✍🏻 作者简介:LLM学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…...

Matplotlib散点图高级玩法:如何用颜色条和随机数据提升可视化效果

Matplotlib散点图高级玩法:如何用颜色条和随机数据提升可视化效果 在数据可视化领域,散点图是最基础也是最强大的工具之一。但很多开发者仅仅停留在绘制简单点的阶段,忽略了Matplotlib提供的丰富功能。本文将带你探索如何通过颜色条(Colormap…...

Deebot智能扫地机如何无缝融入Home Assistant?3大核心价值解析

Deebot智能扫地机如何无缝融入Home Assistant?3大核心价值解析 【免费下载链接】Deebot-4-Home-Assistant Home Assistant integration for deebot vacuums 项目地址: https://gitcode.com/gh_mirrors/de/Deebot-4-Home-Assistant 还在为多个智能家居App切换…...

魔兽争霸III现代化改造:5大核心功能让你的经典游戏焕发新生

魔兽争霸III现代化改造:5大核心功能让你的经典游戏焕发新生 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 魔兽争霸III作为一代经典RTS游…...

轮足式机器人:从STM32到ROS,构建多传感器融合的智能运动控制核心

1. 轮足式机器人:当轮子遇上机械腿 第一次看到轮足式机器人时,我正调试着一台卡在碎石堆里的轮式机器人。当时就在想:要是它能像昆虫一样抬起轮子跨过去该多好。这种结合轮式高速移动和足式越障能力的混合体,正是现代机器人应对复…...

控制管理化技术过程控制与质量检查

控制管理化技术过程控制与质量检查是现代工业生产中不可或缺的核心环节。随着科技的进步和市场竞争的加剧,企业对产品质量和生产效率的要求越来越高。通过科学的过程控制和严格的质量检查,企业能够确保产品的一致性和可靠性,从而提升客户满意…...

别再只会用SPI了!手把手教你用STM32的QSPI驱动外部Flash(附完整代码)

突破SPI性能瓶颈:STM32 QSPI驱动外部Flash的实战优化指南 在嵌入式系统开发中,外部Flash存储器已成为存储固件、图形资源和日志数据的标配组件。许多开发者习惯使用传统的SPI接口与Flash通信,但当遇到高分辨率图形加载、实时数据记录或OTA升级…...

详细介绍有机化学里面的SN1和SN2的反应

下面为你系统介绍有机化学中两种最基本的亲核取代反应机理——SN1和SN2。理解这两种机理是掌握有机反应的基础。 一、基本概念 亲核取代反应:一个富电子的亲核试剂(Nu⁻ 或 Nu:)进攻缺电子的碳原子,取代原有的离去基团&#xff0…...

详细介绍标准摩尔生成焓和标准摩尔燃烧焓

这是一个非常核心的化学热力学问题。下面为你详细介绍标准摩尔生成焓和标准摩尔燃烧焓,包括它们的定义、要点、应用以及两者之间的重要联系。 一、标准摩尔生成焓 标准摩尔生成焓是衡量物质相对“能量水平”的基准,可以理解为从“零”开始构建一个化合物…...

CISSP 域5知识点 身份认证与授权

🔐 CISSP必修课⑤ | 身份认证与授权(官方核心考点完全拆解) 🌊 CISSP Domain 5 身份认证与授权 | 官方核心定位 📍 归属:Domain 5 身份与访问管理(Identity and Access Management, IAM&#x…...

CISSP 域5知识点 身份全生命周期管理

CISSP考点速记|Domain5 身份全生命周期管理 👤🔄 官方定位:Domain 5 身份与访问管理的核心模块,占Domain5权重40%以上;对应OSG第十版**第13章《Managing Identity and Access》**全部内容 Domain1合规要求…...

【电路设计】LDO旁路电容的选型误区与实战解析

1. 为什么你的LDO电路总是不稳定? 很多工程师在设计LDO电路时,经常会遇到这样的困惑:明明按照数据手册推荐值选择了电容,电路却总是出现振荡、噪声超标等问题。这往往是因为忽略了旁路电容的非理想特性。就像给汽车加油&#xff0…...

Mac上用Xcode学C语言

尽管多数大学教材以Windows系统为主进行讲解,但C语言的核心知识点在不同平台上差异不大。本文详细介绍如何利用Mac自带的开发工具Xcode进行C语言学习,为使用MacBook的学生提供了一种便捷高效的学习路径,具有较强的实用性和参考价值。 1、 前往…...

【硬件开发】自举电路设计实战:从原理到参数计算

1. 自举电路的核心作用 我第一次接触自举电路是在设计一个电机驱动项目时。当时遇到一个棘手问题:上桥臂MOSFET死活无法正常导通,测量栅极电压总是差那么一点。后来才发现是忽略了自举电路这个关键设计。 自举电路在半桥驱动中的核心作用可以用一个简单的…...

从印度神话到代码实现:用Python手把手带你玩转汉诺塔(附递归可视化)

从印度神话到代码实现:用Python手把手带你玩转汉诺塔(附递归可视化) 在印度北部的贝拿勒斯圣庙里,传说梵天创世时放置了64片黄金圆盘和三根宝石针。僧侣们预言,当最后一片金片移动到另一根针上时,世界将归于…...

别再只看像素了!工业相机镜头选型避坑指南:从像面规格到法兰距的实战解析

工业相机镜头选型实战指南:从参数匹配到系统兼容的深度解析 在工业视觉项目中,镜头选型往往成为最容易被低估的环节。许多工程师习惯性地将注意力集中在相机像素和价格上,却忽略了镜头参数与整体成像系统的匹配度。我曾参与过一个锂电池极片检…...

Fast_Lio系列(1)——从零搭建Livox Mid360与FAST_LIO的融合开发环境

1. 环境搭建前的准备工作 刚拿到Livox Mid360雷达时,我第一反应就是赶紧接上电脑跑个算法试试。但实际操作中发现,这套设备的环境搭建就像搭积木,底层没摆正,上层就会垮。这里先给大家梳理清楚三个核心组件的关系: Liv…...

技术支持的体系建设与服务水平管理

技术支持的体系建设与服务水平管理是现代企业数字化转型的核心竞争力之一。随着信息技术的快速发展,企业对技术支持的依赖程度越来越高,如何构建高效的技术支持体系并提升服务水平,成为企业亟待解决的问题。本文将从几个关键方面探讨技术支持…...

从半加器到全加器:计算机组成原理中的加法器设计与实现

1. 从半加器到全加器:计算机如何做加法 你有没有想过,计算机是怎么完成112这种简单运算的?这背后其实是一套精妙的电子电路在运作。今天我们就来聊聊计算机组成原理中最基础的运算单元——加法器。 我刚开始学计算机组成原理时,总…...

保姆级教程:手把手教你将YOLO/VOC数据集转成DETR能用的COCO格式(附完整Python脚本)

从零开始:YOLO/VOC数据集转COCO格式的完整实战指南 当你第一次尝试用DETR训练自己的目标检测模型时,十有八九会卡在数据准备阶段。不同于传统检测框架,DETR强制要求COCO格式的输入——这个看似简单的需求,往往让手头只有YOLO标注t…...

《苍穹外卖》实战:从零到一构建高并发外卖系统核心笔记

1. 公共字段自动填充的工程化实践 第一次看到《苍穹外卖》项目里那些重复出现的创建人、创建时间、修改人、修改时间字段时,我就意识到这绝对是个需要优化的地方。每个实体类都手动维护这些字段,不仅容易出错,后期维护更是噩梦。好在Spring A…...

别再只做图像识别了!真正赚钱的多模态边缘场景正在爆发——3个已规模化商用的工业质检/远程医疗/智能座舱案例深度解密

第一章:多模态大模型边缘智能应用的产业拐点与技术范式跃迁 2026奇点智能技术大会(https://ml-summit.org) 全球AI基础设施正经历从“云中心密集推理”向“端—边—云协同认知”的历史性位移。多模态大模型(如Llama-3-Vision、Qwen2-VL、Phi-4-Multimo…...

如何管理Oracle服务器的内核共享内存_shmmax与shmall计算

shmmax需≥SGA最大值(如sga_max_size)并留10%余量,shmall需≥所有实例SGA总和4096;RAC环境还需额外考虑GRD开销且各节点独立计算;修改后须sysctl -p生效、验证ipcs -lm、重启listener与数据库。shmmax 设置多少才够用&…...

Hermes Agent 集成实践:从协议到生产

Hermes Agent 集成实践:从协议到生产分享 HagiCode 集成 Hermes Agent 的完整实践,包括 ACP 协议适配、会话池管理、前后端契约同步等核心经验。背景在构建 AI 辅助编码平台 HagiCode 的过程中,团队需要集成一个既能在本地运行又能扩展到云端…...

Java的java.lang.ModuleLayer依赖分析

Java模块化系统自Java 9引入以来,为开发者提供了更强大的依赖管理能力。其中,java.lang.ModuleLayer作为模块化架构的核心组件,允许动态创建层次化的模块依赖关系,为复杂应用的分层部署和隔离提供了可能。本文将深入分析ModuleLay…...

ENSP模拟器外网访问全攻略:从环境搭建到成功ping通8.8.8.8

ENSP模拟器外网访问实战指南:从零搭建到稳定连通 网络工程师和IT技术人员经常需要在隔离环境中测试网络设备的连通性,华为ENSP模拟器提供了完美的解决方案。但让模拟器中的设备访问真实外网却是一个充满技术细节的过程。本文将带你一步步突破虚拟与现实的…...

Mac NTFS读写终极指南:免费开源工具Nigate让你的硬盘自由飞翔

Mac NTFS读写终极指南:免费开源工具Nigate让你的硬盘自由飞翔 【免费下载链接】Free-NTFS-for-Mac Nigate: An open-source NTFS utility for Mac. It supports all Mac models (Intel and Apple Silicon), providing full read-write access, mounting, and manage…...

技术问题的解决思路与创新方法应用

技术问题的解决思路与创新方法应用 在快速发展的科技领域,技术问题的解决不仅依赖于传统经验,更需要创新思维和方法的应用。无论是软件开发、硬件设计,还是跨学科的技术整合,高效的解决思路往往能事半功倍。本文将围绕技术问题的…...

终极指南:使用ncmdump轻松解密网易云音乐NCM文件

终极指南:使用ncmdump轻松解密网易云音乐NCM文件 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 你是否曾经下载了网易云音乐的NCM格式歌曲,却发现无法在其他播放器上播放?ncmdump就是你的救星&am…...

【多模态模型解释权威指南】:SITS2026核心演讲深度解码——3大不可忽视的认知盲区与5步可落地的XAI实践框架

第一章:SITS2026多模态模型解释演讲全景概览 2026奇点智能技术大会(https://ml-summit.org) SITS2026是面向下一代可信AI系统构建的旗舰级多模态模型解释框架,聚焦视觉-语言-时序信号三模态联合归因与可验证推理。该框架在2026奇点智能技术大会上首次完…...