我是小熊同学,一名正在学习AI产品与Agent开发的研究生。这份记录根据赛后的一次个人分享整理,回顾自己怎样选题、做调研、补技术、搭原型,以及在时间紧张时做取舍。
过程中有试错,也有一些后来才想明白的地方。把具体步骤写下来,供第一次参赛、正在边学边做的朋友参考。
这是一份公开整理版,省略了录音信息、私人沟通、个人身份细节和非公开业务信息。技术实现与指标以仓库当前README、源码和评测记录为准。
一、先选择一个自己能理解、也愿意继续学的场景
拿到不同赛道后,我先想了三个问题:自己已有的知识能帮助到哪一步?还需要补多少技术?能不能在有限时间里做出一条完整流程?
我过去接触过智能硬件业务和用户需求,对售后问题有一定理解。部分其他方向需要补充更多硬件或音视频工程知识,因此选择了智能客服。
这次选择给我的启发是:先找到已有经验与真实问题的交集,再把不熟悉的部分拆成可以学习和验证的小任务。
二、先体验产品,再整理需求
我亲自体验了公开可访问的客服入口,观察一段求助如何开始、需要提供哪些信息、什么时候会追问、什么时候进入人工处理。
也参考了几类成熟电商与支付平台的公开交互,记录它们在快捷提问、信息确认、多轮衔接和问题分流上的做法。对公开用户反馈,我把它当作寻找问题的线索,继续结合具体场景判断。
这些体验只是有限样本,不能据此概括某家企业全部渠道的能力。我更想从中提取可验证的问题:
| 观察方向 | 我转化出的产品问题 |
|---|---|
| 用户说不清产品和故障 | 能否用候选选项或图片线索帮助表达? |
| 用户记不住订单信息 | 能否在授权范围内主动查找,让用户确认候选? |
| 多轮对话反复收集信息 | 能否保留当前产品、已尝试步骤和反馈? |
| 回答看起来合理却缺少依据 | 能否展示知识来源,并限制不适用的建议? |
| 单个工单处理完就结束 | 能否将工单集合整理成团队可核查的经营线索? |
先写下具体问题,再决定加什么功能,比一开始就罗列很多技术名词更容易推进。
三、围绕问题补技术,而不是一次学完所有框架
在此前的一次行业交流中,我接触过用本体组织业务信息的思路。想到这个方向后,我回过头查阅公开技术资料,也结合自己学过的建模和图论知识理解实体、关系与规则。
决赛准备期间,我又补充学习了RAG、工作流、Agent编排和可观测性等概念,并通过小项目理解自然语言怎样连接数据读取和工具调用。
我当时还不能把每个框架都讲得很深入,于是先围绕几个具体问题学习:
- 产品、订单、知识、证据分别保存在哪里?
- 一次求助怎样关联到正确的产品?
- 哪些判断由模型提出,哪些必须由明确规则计算?
- 检索不到、信息冲突或接口失败时,系统下一步怎么办?
- 怎样让别人看见答案背后的来源?
AI工具帮我解释概念、梳理方案和指出可能的遗漏,我再回到资料、代码与小范围验证中检查。工具认可一个想法,并不能替代实际验证。
最后,我把项目的职责拆成两部分:Service Ontology组织对象和证据,Decision Ontology表达规则与动作边界。当前工程仍使用JSON关联和Python逻辑,部分业务变化也需要改代码;这是我在后续复盘中进一步厘清的边界。
四、先搭原型,让输入、处理和输出接上
早期先做HTML交互页面,对接模型接口,再用模拟资料验证流程。后续结合比赛提供的脱敏工单、订单和知识资料,继续调整关联与展示。
我逐渐意识到,“页面能打开”“接口有返回”和“用户能把问题推进下去”是不同的验收点。
| 原型阶段检查什么 | 为什么要检查 |
|---|---|
| 输入能否到达后端 | 避免页面只有预设播放效果 |
| 返回结果是否真实对应本轮输入 | 避免不同问题收到同一段演示话术 |
| 信息不足时是否能继续澄清 | 真实用户往往不会一次提供完整资料 |
| 能否看到来源与规则 | 让回答可以检查,而不只看语言是否流畅 |
| 失败时有没有明确状态 | 不能把接口失败包装成正常理解结果 |
这些检查也让我开始从“还能加什么”,转向“这一条链路有没有走通”。
五、把想法收敛成三个核心方向
我结合已有项目与业务经历,逐渐把功能整理成三个方向:
| 方向 | 当时想解决的问题 | 当前怎样理解它 |
|---|---|---|
| 双本体与业务约束 | 多产品、多证据、多规则容易混在一起 | 明确对象、来源、条件与允许动作,持续核查实现边界 |
| Bad Case驱动的改进闭环 | 遇到错误后,希望能够定位并修正 | 保存轨迹、分类排查、人工修复和回归验证 |
| 面向商家的经营归因 | 零散工单难以形成团队可用的信息 | 将集合统计、候选规则、源表行号与核查建议串起来 |
我过去的GTM经历让我会多想一步:消费者的问题得到回应之后,一线客服、运营和业务管理者还能从这些信息中得到什么帮助?
因此,用户端关注表达、消歧、排障和引用;商家端增加邮件草稿、经营看板与归因助手。当前邮件主要是待审核草稿,归因主要是核查线索;真实发送、退款换货和收益验证还需要外部系统与业务流程接入。
六、用具体案例检查,再回到相应模块修改
我采用Persona模拟不同诉求和沟通风格,观察客服在多轮对话中的表现,并结合规则断言与LLM Judge寻找问题。
后来更加明确:评测分数只说明某种条件下的结果,还要看输入、检索来源、规则状态和具体回复,才能知道哪里出了问题。
| 案例里发现的问题 | 我们回头检查的环节 |
|---|---|
| 同名产品回答混用 | 产品消歧、型号过滤与案件状态 |
| 已知产品后仍让用户自行找订单号 | 主动订单关联与候选卡片 |
| 通用排障也被订单核验阻塞 | 问题分流与通用支持工作流 |
| 上传成功但没有识别结果 | 多模态返回状态、文字证据和后续检索 |
| 中文表达搭配英文产品名后语言切换错误 | 语言判断、追问与推荐问题 |
| 建议缺少来源或超出业务边界 | 引用校验、规则条件和降级处理 |
修复时,我尝试把失败分清:是知识不适用、检索没有命中、规则条件不完整,还是回复表达出了问题。然后修改对应知识、策略或代码,再看回归样例。
这里的“自进化”是人工参与的持续改进。当前没有自动训练模型、自动调整向量权重,也不应把点赞或点踩直接当成知识正确性的证明。
公开写结果时,也要把口径说明白
赛后整理材料时,我们将历史结果和修复复测分开列示:
| 结果 | 正确的阅读方式 |
|---|---|
| 83.8%(62/74) | 历史在线核心任务首轮硬性断言通过率 |
| 98.6%(73/74) | 修复后核心任务单轮复测通过率 |
| P50约2.63秒 | 历史完整回答时延的中位水平,不是平均时延或首字时延 |
这些数字不能直接改写成“8轮问题解决率从83%提升到98%”,也不能仅凭它们证明生产收益。原始记录与限制见仓库README。
这是我很重要的一次学习:说清做了什么,还要说清是怎样验证、在哪些条件下成立。
七、工具没有立刻用顺时,先缩小任务
早期开发时,所用工具与我当时的任务组织方式磨合得不顺,我在这一环停留了较久。后来调整工具和沟通方式,才逐渐推进起来。
这段经历不能概括一个工具的普遍能力,但让我认识到:投入大量时间之前,先用一个小任务验证适配程度;卡住后也可以及时求助或调整。
另一个有用的做法是阶段性整理上下文。我会把已经确认的需求、架构选择、待解决问题和下一步任务总结下来,再继续开发。这样更容易发现:哪些只是讨论过的想法,哪些已经真正写进代码。
回头看,我希望自己更早做三件事:
- 先说明一个任务的输入、输出和验收方式。
- 保留已经确认的约束与未解决的问题。
- 将修改拆小,验证后再推进下一步。
八、开发之外,还要给部署和路演留时间
开发占用了大部分精力,留给演示材料和彩排的时间偏少。候场时,我看到其他团队的展示,也会紧张,意识到自己在时间分配上还有很多需要改进。
现场我选择引导评委直接打开可交互页面,让大家上手体验产品,再结合架构解释功能。这帮助我把已经完成的部分展示出来,也提醒我:下次应该更早准备好演示节奏和备用材料。
部署和交付同样需要检查。现在回头看,不能只以“发布成功”作为结束,还要从外部访问页面、检查接口状态、确认模型配置,试一下手机和文档链接。赛后整理仓库时,我们继续补做了这些检查。
答辩只有5分钟讲述和2分钟问答。我最后采用的讲解顺序是:
真实场景 → 可体验功能 → 三个核心设计 → 技术架构与边界。
我希望让评委能够顺着问题理解设计,并在追问时拿出具体来源。这个过程和科研中的问题定义、方法解释、证据展示有相通之处。
九、功能做得越来越多时,要回到核心需求
我一度想把聊天、邮件、看板、图谱、评测和更多辅助能力都做进去。临近提交时,才开始收起重复内容、删减展示和移除不稳定入口。
事后更愿意把目标写成:在有限时间里,把最有价值的服务流程做顺,并留出验证和表达的时间。
| 阶段 | 我下次会更早安排的事 |
|---|---|
| 开发前 | 选择核心场景,列出必须实现、暂缓实现的内容 |
| 开发中 | 用小案例检查输入、状态、检索和输出,不断累积Bad Case |
| 提交前 | 冻结功能、复测、检查部署与链接、彩排讲解 |
| 比赛后 | 整理代码和证据,公开能够确认的内容,继续修复不足 |
十、过去的经历,怎样在这次项目里接上了
| 过去的经历 | 这次派上用场的地方 |
|---|---|
| 智能硬件GTM相关实践 | 理解消费者、一线服务与经营管理的不同需求 |
| 数学建模 | 拆解变量、梳理关联、明确约束 |
| 科研训练 | 追问创新点与技术难点,重视验证口径 |
| 咨询与教学表达 | 整理复杂信息,尝试把问题讲清楚 |
| 项目路演 | 在有限时间内组织背景、方法和价值 |
| 出于好奇的阅读与交流 | 为新问题提供一些跨领域的联想 |
这些经历没有让我在一开始就知道所有答案。更多时候,是它们帮我找到一个切入点,再去查资料、试代码、请教和调整。
赛后也有继续交流和实习相关的机会,让我受到鼓励。我还在补技术基础,也希望继续练习把需求、实现和验证连接起来。
十一、我想继续保持的几个习惯
- 遇到不懂的概念,先写成具体问题。带着问题查公开资料,再用小范围实现检查理解。
- 先确认能观察到什么,再讨论效果。页面能打开、接口能返回、任务能推进,需要分别验证。
- 遇到失败先保留案例。记录输入和状态,定位问题后再修复,避免只改话术。
- 把来源、版本和口径记下来。方便自己复查,也方便别人审阅。
- 给交付留时间。代码、部署、文档和讲解都属于作品的一部分。
这篇复盘记录的是当时的选择和后来补上的理解。欢迎指出问题,也欢迎交流各自的学习方法和开发经历。