AI知识库集问答

框架图

架构图(模块视角)

当前真实生效路径(精简图)


"知识库"模块,当前实现可以概括为:文档管理 + 上下文拼接式问答(非RAG检索库),主问答链路是 单智能体调用 DeepSeek。

先说结论(你关心的点)

  • 用了哪个智能体

    • 问答时实际使用的是 AutoGen 的 AssistantAgent,名称是 knowledge_base_qa(在 backend/app/api/v1/endpoints/knowledge_base.py 里创建)。
    • 代码里虽然 import 了 RagRetrievalAgent、StreamResponseCollector、RagRetrievalRequest/Response,但当前文件内没有实际调用,属于"预留/未接入"。
  • 调用了哪些模块

    • 路由与业务:backend/app/api/v1/endpoints/knowledge_base.py
    • 文件解析:app.utils.file_parser(parse_pdf / parse_docx / parse_xmind / extract_text_from_xmind)
    • 数据库模型:KnowledgeBaseDocument、KnowledgeBaseQA、Requirement、TestCase
    • LLM客户端:app.core.llms.get_deepseek_model_client
    • 前端API层:frontend/src/api/knowledgeBase.ts
  • 用了什么大模型

    • 当前问答统一走 get_deepseek_model_client(timeout=20),底层模型是 deepseek-chat。
    • 应用层又包了一层 asyncio.wait_for(..., timeout=25),避免前端长时间"正在生成"。

运行机制(知识库问答)

POST /api/v1/knowledge-base/qa 的处理逻辑是:

  1. 从数据库取三类内容:
    • 已上传知识库文档(KnowledgeBaseDocument)
    • 已审批需求(Requirement)
    • 测试用例的源文件路径(TestCase.source_file_path)
  2. 解析/抽取文本后做上下文构建:
    • 关键词提取(中文词组、英文缩写、业务术语、数字)
    • 文档片段筛选与截断(总上下文预算 KB_QA_MAX_CONTEXT = 6000)
  3. 组装 system_message + user_message(context+问题)。
  4. 用 AssistantAgent(knowledge_base_qa) 调 DeepSeek。
  5. 返回答案,并将问答记录写入 KnowledgeBaseQA。
相关推荐
奕鼎竜瑆9 小时前
Solid 前端响应式开发从零到精通
前端·人工智能
YOLO数据集集合9 小时前
无人机桥梁损伤目标检测数据集 | 桥梁损伤 无人机巡检 结构健康监测 多类别检测9135期
人工智能·目标检测·无人机
动恰客流统计10 小时前
景区客流统计怎么做?兼顾管控与运营的实施方案解析
大数据·前端·人工智能
weixin_4438830110 小时前
合规整改倒计时:高等级签名证书的应用场景
大数据·人工智能·法大大·法大大电子签·电子合同
魔猴疯猿10 小时前
从0到1用Python开发第一个智能体
人工智能·python·深度学习·神经网络·机器学习
天一生水water10 小时前
变分模态分解(VMD)的教程
人工智能
荆棘鸟智能11 小时前
林业遥感长势评估怎么做?从NDVI时序分析到LiDAR蓄积量回归
人工智能·算法·智慧林业
代码方舟11 小时前
数据科学风控实战:基于天远全能消金报告构建自动化信用评估网关
运维·人工智能·自动化
Yan-英杰11 小时前
2026年数据采集服务怎么选?4大主流平台(亮数据 Bright Data、Apify、ScrapingBee、Zyte)深度对比
人工智能·神经网络·microsoft·机器学习·ai开发工具