首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >AI落地实战:30行代码跑通RAG问答,但真正的工作在代码之外

AI落地实战:30行代码跑通RAG问答,但真正的工作在代码之外

原创
作者头像
资源shanxueit.com
发布于 2026-10-12 11:29:03
发布于 2026-10-12 11:29:03
40
举报

很多团队做AI落地,一上来就想微调模型、做多Agent、上多模态,结果卡在数据、评估和业务闭环上。 更现实的路径是:找一个高频、低风险、有标准答案的场景,用“API模型 + 检索增强生成(RAG)”先跑通最小闭环。核心代码可能只有几十行,但决定成败的,是代码之外的数据、评估和迭代。

下面是一篇实战向文章,代码很少,重点讲怎么落地。


一、先选对场景:高频、低风险、有答案

AI落地第一步不是选模型,而是选问题。适合先做的场景通常满足三个条件:

  1. 高频:客服、销售、运营每天反复问。
  2. 低风险:答错不会造成资金损失或法律风险。
  3. 有答案:答案存在于文档、工单、知识库里。

比如:内部制度问答、产品退货政策、工单总结、合同要素提取。 不要一上来做“通用助手”,那会同时遇到意图识别、工具调用、权限、幻觉、评估五座大山。


二、最小闭环:RAG + API 模型

最小可行架构就四步:

  1. 把业务文档切成小段。
  2. 用户提问时,检索最相关的几段。
  3. 把“资料 + 问题”交给大模型。
  4. 要求模型“只根据资料回答,不知道就说不知道”。

这能显著降低幻觉,也方便更新知识:改文档,不用重新训练模型。


三、核心代码:30行跑通一个问答接口

下面是一个最小示例,用 FastAPI 包一层接口,检索先用 TF-IDF 演示。生产环境建议换成 Embedding + 向量库,但思路一致。

代码语言:javascript
复制
from fastapi import FastAPI
from pydantic import BaseModel
from openai import OpenAI
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity

docs = [
    "退货政策:签收后7天内可无理由退货,商品需不影响二次销售。",
    "发货时间:付款后48小时内发出,节假日顺延。",
    "发票说明:支持电子发票,订单完成后在订单页申请。",
]
vec = TfidfVectorizer().fit(docs)
doc_vec = vec.transform(docs)
client = OpenAI(base_url="https://你的兼容接口/v1", api_key="sk-xxx")

app = FastAPI()
class Q(BaseModel):
    q: str

@app.post("/ask")
def ask(item: Q):
    sim = cosine_similarity(vec.transform([item.q]), doc_vec)[0]
    ctx = "\n".join(docs[i] for i in sim.argsort()[-3:][::-1])
    prompt = f"只根据资料回答,资料没有就说不知道。\n资料:{ctx}\n问题:{item.q}"
    r = client.chat.completions.create(
        model="gpt-4o-mini",
        messages=[{"role": "user", "content": prompt}],
        temperature=0,
    )
    return {"answer": r.choices[0].message.content}

这段代码能跑,但它只是 Demo。真正上线还要加:日志、超时、重试、缓存、权限过滤、敏感词检查、人工反馈入口。


四、上线前,评估集比代码更重要

没有评估,AI落地就是玄学。建议准备 50~100 条真实问题,人工标注期望答案。每次改动后看几个指标:

  • 命中率:检索是否找到正确资料。
  • 幻觉率:模型是否编造资料外内容。
  • 拒答率:不知道时是否老实说不知道。
  • 响应时间:P95 是否可接受。
  • 单次成本:Token 消耗是否在预算内。

评估集不需要大,但要真实。很多团队失败,不是模型不行,而是根本不知道改完是变好还是变坏。


五、监控与迭代:做 bad case 归因

上线后每天看 bad case,按四类归因:

  1. 检索不到:切块太大、关键词不匹配、向量模型不适合。
  2. 排序错了:相关资料没排进 Top3,加 rerank。
  3. 模型不遵循:Prompt 不够硬,或资料太长,改指令、压缩上下文。
  4. 知识过期:文档没更新,建立知识库同步机制。

每类问题对应不同解法。不要一遇到问题就想着微调模型,大多数时候是检索和 Prompt 的问题。


六、成本与安全:能缓存就缓存,能脱敏就脱敏

落地时三个实用技巧:

  • 缓存:高频问题答案缓存,省 Token 又提速。
  • 小模型:简单分类、改写、摘要用小模型,复杂问答再上大模型。
  • 权限与脱敏:检索前按用户权限过滤文档,输入输出做敏感信息检查。

AI 应用不是纯技术问题,它和业务权限、数据安全、合规强相关。


七、总结

AI落地实战,不是比谁代码多,而是比谁闭环快、迭代稳。 先用少量代码跑通“检索 + 生成 + 反馈”,再逐步替换组件、优化评估、加强监控。 记住:模型是发动机,但数据是油,评估是方向盘,业务闭环才是目的地。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 一、先选对场景:高频、低风险、有答案
  • 二、最小闭环:RAG + API 模型
  • 三、核心代码:30行跑通一个问答接口
  • 四、上线前,评估集比代码更重要
  • 五、监控与迭代:做 bad case 归因
  • 六、成本与安全:能缓存就缓存,能脱敏就脱敏
  • 七、总结
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档