解码 · 部署 · 应用模块七·八 · 综合项目项目约 24 分钟
阶段项目:量化部署 + RAG 问答系统
把「跑得下」和「用得好」合成一个应用
学完这节你能:
- 用量化模型 + vLLM 起服务
- 搭一个最小 RAG 问答
- 端到端交付可运行应用
Stage 4 收尾:把量化部署与 RAG 串成一个能用的知识库问答应用——小显卡也能跑,回答有据可查。
- 部署:选一个开源小模型,INT4 量化后用 vLLM 起 OpenAI 兼容服务(算一算量化后显存)。
- 知识库:把若干文档切块、用 embedding 模型编码、存进向量库(如 FAISS)。
- 检索:问题编码 → 余弦相似度取 Top-k 文档块。
- 生成:把 Top-k 文档 + 问题按提示模板拼好,调模型作答并附引用。
- 评估:对比「有 RAG」与「无 RAG」的准确性和幻觉,观察 RAG 的作用。
最小 RAG 主循环(示意)
q_vec = embed(question)
hits = index.search(q_vec, k=4) # 余弦相似度 Top-4
context = '\n'.join(docs[i] for i in hits)
prompt = f'根据资料回答,并注明依据。\n资料:\n{context}\n问题:{question}'
answer = llm.chat(prompt) # 指向 vLLM 服务💡 验收标准:模型量化后能在有限显存跑起来、检索能命中相关文档、回答明显比「无 RAG」更准更少幻觉、且能给出依据。这就交付了一个真实可用的大模型应用。
自测这个「量化部署 + RAG」应用中,RAG 主要解决的问题是:
// 带走一句话
端到端应用:INT4 量化+vLLM 部署 + 向量检索 RAG;小显卡可跑、回答有据、幻觉更少。
独立练习
做到这些,才算完成本节
- 把任务拆成可运行的最小步骤,每一步都保留输出证据。
- 提交 README、结果、失败分析和下一次改进计划。
学习记录
记录本节阅读进度
建议先独立回答自测。读完记录不等于已经掌握。