尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
AI智能体开发全流程:从场景定义到部署运维的实战指南
1. AI智能体开发流程的整体设计思路1.1 为什么智能体开发不能照搬传统软件流程很多人第一次接触AI智能体开发习惯性地把它当成一个普通Web应用来做——先画原型、再定接口、然后前后端并行开发、最后联调上线。这套流程放在传统CRUD系统上没问题但放在智能体上会踩大坑。原因在于智能体的核心行为不是确定性逻辑而是由大模型驱动的概率性推理。你没法像写if-else那样精确控制它每一步输出什么只能通过提示词、工具定义、上下文管理和评测机制去“引导”它。我刚开始做智能体的时候犯过一个典型错误花了两周把前后端框架搭得漂漂亮亮结果发现智能体在真实场景下的回答准确率只有六成用户问三句就有一句答非所问。回头一看问题根本不在工程架构上而在任务拆解和提示词设计上。所以智能体开发的第一原则是先验证智能体的核心能力边界再考虑工程化封装。这跟传统软件开发“先搭架子再填业务”的思路是反过来的。具体来说智能体开发流程应该分成两条线并行推进一条是能力线负责验证大模型在目标场景下能不能完成任务、需要哪些工具、提示词怎么写另一条是工程线负责把验证过的能力封装成可部署、可监控、可迭代的服务。两条线在“评测”这个节点上交汇用数据说话决定是否进入下一阶段。1.2 智能体开发流程的五个核心阶段基于我实际做过的几个智能体项目我把整个开发流程归纳为五个阶段每个阶段都有明确的输入、输出和退出条件。阶段核心任务关键产出退出条件场景定义明确智能体解决什么问题、服务谁、边界在哪场景说明书、能力清单能说清楚“不做什么”能力验证用提示词工具跑通核心任务提示词模板、工具定义、评测集核心任务准确率达标工程封装把验证过的能力做成服务API接口、状态管理、日志系统能稳定处理并发请求评测迭代用真实数据持续优化评测报告、优化方案关键指标持续提升部署运维上线、监控、处理异常监控面板、告警规则、回滚方案线上问题可快速定位这五个阶段不是严格串行的能力验证和工程封装可以部分重叠评测迭代贯穿始终。但场景定义必须最先做而且要做透。我见过太多团队跳过场景定义直接写代码最后做出来的东西没人用浪费几个月时间。1.3 场景定义阶段的关键决策场景定义听起来很虚但它是整个流程里最影响成败的一步。你需要回答三个问题谁用、用来干什么、什么情况下不能用。“谁用”决定了交互形态。如果是给内部运营人员用的可以接受命令行或者简单Web界面如果是给终端用户用的就得考虑对话式交互、多轮上下文保持、异常兜底话术。“用来干什么”决定了能力边界。比如一个“制度条例学习助手”它的核心任务是回答员工关于公司制度的疑问那它就不应该去处理报销审批、也不应该去查工资条。“什么情况下不能用”决定了兜底策略。当用户问的问题超出知识库范围时智能体应该明确说“这个问题我暂时无法回答建议您联系HR部门”而不是胡编一个答案。我一般会在这个阶段产出一份场景说明书包含以下内容目标用户画像、核心任务列表、知识库范围、工具调用清单、禁止行为清单、兜底话术模板。这份文档后面会反复用到提示词设计、评测集构建、上线验收都靠它对齐。2. 核心细节解析与实操要点2.1 提示词工程智能体的“操作系统”提示词是智能体开发中最核心也最容易被低估的部分。很多人以为提示词就是写一段话告诉模型“你是一个XX助手”实际上远不止于此。一个生产级智能体的提示词通常包含六个模块角色定义、任务描述、工具说明、输出格式、约束条件、示例对话。角色定义要具体到“你是谁、你服务谁、你的专业背景是什么”。比如“你是一名公司制度学习助手服务对象是全体员工你熟悉人力资源、财务报销、考勤管理三大类制度”。任务描述要拆解到原子级别不能只说“回答员工问题”而要说“根据用户问题从知识库中检索相关制度条款用通俗语言解释并注明条款出处”。工具说明是提示词里最考验工程能力的部分。智能体通常需要调用外部工具比如知识库检索、数据库查询、API调用。每个工具的定义要包含工具名称、功能描述、输入参数、输出格式、调用时机。我习惯用JSON Schema来定义工具这样模型理解起来更准确。{ name: search_policy, description: 根据关键词检索公司制度文档返回最相关的条款, parameters: { type: object, properties: { query: { type: string, description: 检索关键词如年假天数、报销标准 }, category: { type: string, enum: [hr, finance, attendance], description: 制度类别 } }, required: [query] } }输出格式要明确告诉模型返回什么结构。如果是对话式智能体可以要求返回JSON包含answer、source、confidence三个字段。这样前端可以分别渲染答案、出处和置信度提示。约束条件要写清楚“不能做什么”比如“不能编造制度条款”、“不能回答与公司制度无关的问题”、“不能透露其他员工的个人信息”。示例对话是提示词里最有效的“教学工具”。我一般会放3到5组示例覆盖正常问答、多轮追问、超出范围三种情况。示例不用太长但要有代表性。实测下来加了示例对话的提示词模型输出格式的准确率能提升30%以上。2.2 知识库构建RAG不是万能药做制度学习助手这类智能体知识库是绕不开的。现在主流方案是RAG检索增强生成但RAG不是万能药用不好反而会拖累效果。我踩过的坑包括文档切分太碎导致上下文丢失、向量模型选型不当导致检索不准、检索结果太多导致模型“迷失在中间”。文档切分我建议按语义段落切而不是按固定字数切。比如一份制度文档每个条款是一个自然段落那就按条款切每个chunk控制在300到500字。切太碎会丢失上下文切太大检索精度会下降。如果文档结构不规整可以用递归切分先按标题切、再按段落切、最后按句子切。向量模型选型要看场景。中文制度文档我一般用bge-large-zh或者m3e-base这两个在中文语义相似度任务上表现稳定。如果预算充足可以用bge-m3支持多语言和长文本。选型的时候一定要在自己的数据上跑评测别只看榜单。我见过榜单排名很高的模型在实际制度文档上检索准确率还不如text-embedding-ada-002。检索策略上我推荐混合检索向量检索关键词检索然后用RRF倒数排名融合合并结果。纯向量检索对“年假”、“调休”这类专有名词不敏感加上关键词检索能显著提升召回率。检索返回的文档数量控制在3到5条太多会稀释关键信息。如果检索结果相关性都不高宁可让智能体说“没找到相关制度”也不要硬塞给模型。注意知识库更新后一定要重新构建索引否则智能体会用旧知识回答新问题。我建议把索引构建做成自动化流程制度文档一更新就触发重建。2.3 工具调用与工作流编排智能体区别于普通聊天机器人的核心能力是工具调用。制度学习助手可能需要调用知识库检索工具、制度分类工具、条款引用工具、工单创建工具当用户需要进一步帮助时。每个工具都要有明确的输入输出定义和错误处理逻辑。工具调用的难点在于编排。用户问“我去年没休的年假能折现吗”智能体需要先检索年假制度再检索薪酬制度然后综合两个条款给出答案。这就涉及多步工具调用的顺序和依赖关系。我一般用工作流编排的方式把复杂任务拆成多个节点每个节点负责一个子任务节点之间通过状态传递数据。# 工作流节点示例 workflow { nodes: [ {id: classify, type: llm, prompt: 判断用户问题属于哪类制度}, {id: retrieve, type: tool, tool: search_policy, depends_on: [classify]}, {id: generate, type: llm, prompt: 根据检索结果生成回答, depends_on: [retrieve]}, {id: verify, type: llm, prompt: 检查回答是否引用了正确条款, depends_on: [generate]} ] }编排的好处是可观测、可调试。每个节点的输入输出都能打日志出问题的时候能快速定位是分类错了、检索错了还是生成错了。坏处是灵活性下降遇到没预设的路径可能处理不了。我的经验是高频场景用工作流长尾场景用自由规划。比如“年假怎么算”这种高频问题走固定工作流“我想请一个特殊情况的假”这种长尾问题让模型自由调用工具。2.4 评测集构建没有评测就没有迭代智能体开发最容易被忽视的环节是评测。很多人做完智能体自己试几个问题觉得“还行”就上线了结果用户一用就露馅。评测集是智能体迭代的“指南针”没有它你根本不知道优化有没有效果。评测集要覆盖四类问题正常问题占60%、边界问题占20%、超出范围问题占10%、对抗问题占10%。正常问题是核心场景的典型问法比如“年假有多少天”。边界问题是容易混淆或需要多步推理的比如“入职半年离职年假怎么折算”。超出范围问题是知识库覆盖不到的比如“公司附近哪家餐厅好吃”。对抗问题是故意诱导模型犯错的比如“你刚才说的不对应该是XX”。每道评测题要标注标准答案和评分标准。评分标准可以分三档完全正确引用条款准确、解释清晰、部分正确方向对但细节有误、错误答非所问或编造信息。我一般用LLM-as-Judge来做自动评分但会人工抽检10%确保评分器本身靠谱。评测频率上我建议每次修改提示词、更换模型、更新知识库后都跑一遍全量评测。评测结果用表格记录方便对比不同版本的效果。版本正常问题准确率边界问题准确率超范围拒答率对抗问题防御率v1.082%55%70%60%v1.188%63%85%75%v1.291%72%90%85%这张表能直观告诉你每次优化到底有没有用。如果某个版本指标下降了就回滚到上一版别硬撑。3. 实操过程与核心环节实现3.1 从零搭建制度学习助手的完整步骤假设现在要做一个公司制度学习助手我按实际操作的顺序把步骤拆开讲。第一步收集和整理制度文档。把公司所有制度文档收集起来统一转成Markdown格式。转格式的时候注意保留标题层级和条款编号这些结构信息对后续切分和检索很重要。如果文档是扫描件先用OCR转文字再人工校对一遍。我一般会把文档按类别分文件夹hr/、finance/、attendance/每个文件夹里放对应的制度文件。第二步构建知识库索引。用langchain或者llama_index做文档加载和切分。切分参数我一般设chunk_size400、chunk_overlap50。切完之后用bge-large-zh生成向量存到chroma或者milvus里。如果文档量不大几百个chunkchroma足够用如果上万chunk建议上milvus或者qdrant。from langchain.document_loaders import DirectoryLoader from langchain.text_splitter import RecursiveCharacterTextSplitter from langchain.embeddings import HuggingFaceEmbeddings from langchain.vectorstores import Chroma loader DirectoryLoader(./policies, glob**/*.md) docs loader.load() splitter RecursiveCharacterTextSplitter( chunk_size400, chunk_overlap50, separators[\n## , \n### , \n\n, \n, 。] ) chunks splitter.split_documents(docs) embeddings HuggingFaceEmbeddings(model_nameBAAI/bge-large-zh) vectorstore Chroma.from_documents(chunks, embeddings, persist_directory./db)第三步设计提示词和工具。按前面说的六模块结构写提示词。工具至少要有search_policy和get_policy_detail两个。search_policy负责语义检索get_policy_detail负责根据条款ID拉取完整条款内容。工具的实现可以用Python函数然后用langchain的Tool封装。第四步搭建工作流。用langgraph或者自己写状态机。我一般用langgraph因为它对循环和条件分支支持比较好。工作流的核心节点包括意图分类、知识检索、答案生成、引用校验。意图分类节点判断用户问题属于哪类制度知识检索节点调用search_policy答案生成节点把检索结果和用户问题拼成提示词调LLM引用校验节点检查生成的答案是否引用了真实存在的条款。第五步构建评测集并跑基线。从真实用户问题里收集100到200道题按四类标注好。跑一遍基线评测记录各项指标。基线不用追求高分关键是建立参照系。第六步迭代优化。根据评测结果定位薄弱环节。如果正常问题准确率低优化提示词和检索策略如果边界问题准确率低增加few-shot示例和推理链如果超范围拒答率低加强约束条件如果对抗问题防御率低增加对抗训练样本。第七步工程封装和部署。把工作流封装成FastAPI服务加上请求日志、响应时间监控、错误告警。前端可以用streamlit快速搭一个对话界面或者集成到企业微信、飞书里。部署的时候注意并发控制LLM调用是瓶颈建议加请求队列和超时重试。3.2 关键参数的计算与选择过程智能体开发涉及不少参数选择我挑几个关键的讲一下计算逻辑。Chunk size怎么定经验公式是chunk_size 平均条款长度 × 1.5。比如制度文档平均每个条款200字那chunk_size设300左右比较合适。太小会丢失上下文太大会引入噪声。如果文档结构差异大可以按文档类型分别设参数。检索返回几条我一般设top_k5然后用重排序模型比如bge-reranker精排取前3条送给LLM。重排序能显著提升精度实测下来比单纯增加top_k效果好。如果延迟敏感可以跳过重排序但top_k要降到3。温度参数怎么设制度学习助手要求答案稳定、可复现温度设0.1到0.3比较合适。太高会导致每次回答不一样太低会显得死板。如果希望回答有一定灵活性可以设0.5但要做好评测确保准确率不下降。最大token数怎么定取决于模型上下文窗口和任务复杂度。制度问答一般回答不超过500字加上检索结果和提示词总token控制在4000以内。如果模型支持128k上下文可以放宽但没必要塞太多检索质量比数量重要。3.3 实操现场记录一次典型的调试过程有一次用户反馈“问年假折算的问题智能体答错了”。我按以下步骤排查先看日志发现意图分类节点把问题分到了“考勤管理”但年假折算其实涉及“人力资源”和“薪酬管理”两个类别。分类错了导致检索范围不对只检索了考勤制度没检索到薪酬制度里的折算规则。然后看检索结果search_policy返回了3条考勤制度条款但都没有提到折算。重排序分数都在0.6左右说明检索本身也没找到相关内容。接着看生成结果LLM基于不完整的检索结果生成了一个“看起来合理但实际错误”的答案。引用校验节点没有拦住因为引用的条款ID确实存在只是内容不相关。修复方案分三步第一优化意图分类提示词增加“涉及多个类别时返回多个标签”的规则第二检索时支持多类别并行检索合并结果后再重排序第三引用校验节点增加“条款内容与问题相关性”检查用LLM判断引用的条款是否真的回答了问题。改完之后重新跑评测边界问题准确率从63%提升到78%。这个案例说明智能体的错误往往是链路错误不是单点错误。排查的时候要沿着工作流从头到尾看一遍别只盯着LLM输出。4. 常见问题与排查技巧实录4.1 智能体开发高频问题速查表问题现象可能原因排查方法解决方案回答编造条款检索结果不相关模型强行生成检查检索分数和引用条款加引用校验节点低分时拒答多轮对话丢失上下文历史消息未正确传入检查对话状态管理用滑动窗口保留最近5轮工具调用失败参数格式错误或工具超时看工具调用日志加参数校验和超时重试回答格式不稳定提示词输出格式约束不够统计JSON解析失败率加few-shot示例和格式校验响应时间过长检索或LLM调用慢分段计时加缓存、换小模型、异步调用超出范围问题乱答约束条件不够强看超范围评测集表现加强拒答话术和边界检测4.2 三个容易被忽视的避坑技巧第一个坑知识库里有冲突条款。公司制度更新后旧条款没删干净新条款和旧条款同时被检索到模型不知道该信哪个。我的做法是给每个条款加effective_date和status字段检索时只返回statusactive的条款。如果新旧条款需要同时展示在提示词里明确告诉模型“优先使用生效日期最新的条款”。第二个坑用户问题太短导致检索不准。用户只问“年假”检索系统不知道是要问天数、折算规则还是申请流程。我的做法是在检索前加一个查询改写节点用LLM把短问题扩展成完整查询。比如“年假”改写成“公司年假的天数、申请条件、折算规则是什么”。改写后再检索召回率能提升20%以上。第三个坑LLM-as-Judge评分器本身有偏差。用LLM做自动评分很方便但评分器可能偏爱长答案、偏爱特定表达风格。我建议每轮评测人工抽检10%如果发现评分器和人工评分差异大就调整评分提示词或者换评分模型。评分器的可靠性直接决定迭代方向对不对这块不能省。4.3 从开发到上线的检查清单上线前我一般会过一遍这个清单确保没有遗漏提示词是否覆盖了所有核心场景和边界情况知识库索引是否最新有没有过期条款工具调用是否有超时和重试机制评测集是否覆盖四类问题指标是否达标日志是否记录了完整的请求链路和工具调用是否有降级方案LLM不可用时返回兜底话术是否有敏感信息过滤防止用户输入或模型输出泄露隐私并发压力测试是否通过回滚方案是否准备好这个清单看着简单但每次上线前过一遍能避免80%的线上事故。我吃过亏有一次忘了加敏感信息过滤用户输入了手机号模型把手机号原样返回了。虽然没造成实际泄露但被安全团队通报了。从那以后敏感信息过滤成了我的必检项。4.4 智能体后续迭代的方向制度学习助手上线后迭代方向主要有三个扩大知识库覆盖、提升多轮对话能力、增加主动服务能力。扩大知识库就是不断把新制度、新政策加进去保持索引更新。提升多轮对话能力需要优化对话状态管理让智能体记住用户之前问过什么、当前在聊哪个制度。增加主动服务能力是指智能体不只是被动回答还能主动推送——比如检测到用户问了好几次报销问题主动推送一份报销指南。这三个方向里我觉得多轮对话能力最值得投入。因为真实用户很少一次把问题说清楚往往是追问、补充、修正。智能体如果能理解“刚才说的那个”、“还有呢”、“那如果是XX情况呢”这类指代和省略体验会好很多。我目前的做法是用LLM做对话状态跟踪每轮把历史对话压缩成摘要和当前问题一起送给模型。实测下来比简单拼接历史消息效果好token消耗也低。最后分享一个我个人的习惯每次智能体上线后我会建一个“bad case收集表”把用户反馈的错误案例记下来每周复盘一次。这些真实bad case比任何评测集都有价值因为它们来自真实场景覆盖了你想象不到的问法。积累三个月你就有了一份最贴合业务的评测集后续迭代就有了最可靠的依据。
RELATED

相关推荐

Linux Audit系统:内核级安全审计配置与实践

Linux Audit系统:内核级安全审计配置与实践

1. Linux Audit 系统概述Linux Audit 系统是内核级的安全审计框架,它能够详细记录系统中发生的各类安全相关事件。这套机制最早由Red Hat工程师开发,现已成为大多数Linux发行版的标准组件。不同于简单的日志系统,Audit通过内核模块实现事件捕…

📅 2026/11/3 17:09:59
电工杯AI学习影响评价:问卷清洗、熵权法与TOPSIS建模

电工杯AI学习影响评价:问卷清洗、熵权法与TOPSIS建模

简介:面向备战电工杯及数学建模竞赛的学生,这份资料围绕“人工智能对大学生学习影响的评价”赛题给出完整解题方案,可用于问卷数据处理、评价建模与论文写作参考。压缩包共1个docx文档,约871KB,内容从问卷修改、缺失值…

📅 2026/11/3 17:09:59
Next.js打包分析与性能优化实战指南

Next.js打包分析与性能优化实战指南

1. 项目概述作为一名长期奋战在一线的全栈开发者,我深知Next.js项目随着业务增长,打包体积膨胀带来的性能问题有多令人头疼。上周刚接手一个线上项目,首次加载时间长达8秒,用户流失率高达37%。通过引入打包分析工具,我…

📅 2026/11/3 17:04:57
MORE NEWS

更多资讯

📰

如何抽取实体间的关系?GLiFormer Large v1 联合关系抽取实战教程

如何抽取实体间的关系?GLiFormer Large v1 联合关系抽取实战教程 【免费下载链接】gliformer-large-v1 项目地址: https://ai.gitcode.com/hf_mirrors/knowledgator/gliformer-large-v1 GLiFormer Large v1 是面向信息抽取的多任务大模型,支持联…

📰

OpenWhispr 语音转文字听写指南:如何用全局热键把说话直接变成文字

OpenWhispr 语音转文字听写指南:如何用全局热键把说话直接变成文字 【免费下载链接】openwhispr Voice-to-text dictation app with local (Nvidia Parakeet/Whisper) and cloud models (BYOK). Privacy-first and available cross-platform. 项目地址: https://g…

📰

26个数据集、91%的F1:GLiFormer Large v1基准评测数据全解读

人工智能NLP大模型 【免费下载链接】gliformer-large-v1 项目地址: https://ai.gitcode.com/hf_mirrors/knowledgator/gliformer-large-v1 点击查看 免费下载 GLiFormer Large v1 是一个 5.756 亿参数的开源多任务信息抽取模型:一个 DeBERTa 编码器同时…

📰

BiliBiliToolPro 部署教程:从本地一键命令到零维护云函数,5 种方式完整指南

BiliBiliToolPro 部署教程:从本地一键命令到零维护云函数,5 种方式完整指南 【免费下载链接】BiliBiliToolPro B 站(bilibili)自动任务工具,支持docker、青龙、k8s等多种部署方式。全面拥抱AI。敏感肌也能用。 项目地…

📰

Whisky:免费在Mac运行Windows程序的完整指南

Whisky:免费在Mac运行Windows程序的完整指南 【免费下载链接】Whisky A modern Wine wrapper for macOS built with SwiftUI 项目地址: https://gitcode.com/gh_mirrors/wh/Whisky Whisky 是一个用 SwiftUI 写的 macOS 原生 Wine 封装器,让你不碰…

📰

《经典机器学习实战》第 1 课:导论——是什么、简史、负责任 AI 与标准流程

本文收录于专栏 《经典机器学习实战》 摘要:从规则引擎的破产到机器学习的定义,一趟走完 AI 七十年简史、负责任 AI 六原则与七步标准流程。你将看到 13 维特征让手写规则彻底失效而逻辑回归拿到 98.1%,以及一个整体准确率 85% 的模型如何对少…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬