- 负责 Agent 核心流程设计与开发、知识检索链路建设与评测,以及 Tool Layer 与执行边界设计。
- Multi-Agent · LangGraph · RAG · Tool Calling
- 0.60 Hit@1 · 1.00 Hit@3 · 0.77 MRR · 7 项测试通过
问题
Overview
一个多阶段 AI 系统:检索施工规范、生成方案,由确定性工具完成成本 / 工期估算,并在输出前审核结果。
系统用于辅助施工方案的编制与审核,而不是替代工程师的专业判断。
Context
针对建筑施工方案编制过程中规范查询、方案生成、成本 / 工期估算与结果审核分散在不同环节的问题,构建一个融合 RAG、Tool Calling 与多阶段 Agent Workflow 的施工方案 AI 生成与审核系统。
Problem
规范查询、方案生成、成本 / 工期估算与结果审核分散在不同环节,彼此缺少衔接。
如果把整个任务交给单次 LLM 调用,方案依据难以追溯;成本、工期这类需要稳定结果的计算,也不应由模型直接生成。
My Role
负责 Agent 核心流程设计与开发、知识检索链路建设与评测,以及 Tool Layer 与执行边界设计。
Agent workflow design and implementation, retrieval pipeline and evaluation, plus deterministic tool-layer and execution-boundary design.
构建
Solution
系统基于 LangGraph StateGraph 将复杂任务拆分为意图识别、知识检索、方案生成、工具执行与结果审核等阶段,避免将完整任务依赖于单次 LLM 调用。
与施工规范相关的内容先从知识库检索:PDF / DOCX 文档经解析与分块后,使用 BGE-M3 生成 1024 维向量,由 FAISS 完成检索,为方案生成提供上下文。
针对成本、工期等需要确定性结果的任务,由 Agent 判断业务意图并组织参数,再由注册表中的确定性 Tool 执行实际计算。
通过权限校验、结构化输出和 fail-closed 控制执行边界,避免模型判断直接绕过确定性业务规则。
Architecture
- User Request
- Intent Recognition
- LangGraph StateGraph
- Knowledge Retrieval (RAG)
- Plan Generation
- Tool Decision
- Registry-based Tool Layer
- Deterministic Calculation
- Result Review
- Structured Output
LLM 不负责所有任务:检索提供依据,模型负责理解与生成,确定性计算交给 Tool,结果在输出前经过审核。
检索链路:PDF / DOCX 解析 → 分块 → BGE-M3 Embedding(1024 维)→ FAISS 检索,并通过离线样本评测检索质量。
- Intent
- StateGraph
- Retrieval
- Generation
- Review
- Output
- 03› BGE-M3 + FAISS 检索相关施工规范
- 04› 基于检索上下文生成方案
- 05› 输出前审核结果
- 06› 结构化输出
Intent
意图识别:施工方案生成
StateGraph
StateGraph 进入对应阶段
Retrieval
BGE-M3 + FAISS 检索相关施工规范
Generation
基于检索上下文生成方案
Review
输出前审核结果
Output
结构化输出
Key Decisions
- 01
多阶段 Agent WorkflowMulti-stage Workflow
将检索、生成、Tool Execution 和审核拆分为不同阶段,而不是让单次 LLM 完成全部任务。
- 02
生成前检索Retrieval Before Generation
与施工规范相关的回答优先从知识库中检索相关内容,为生成提供上下文。
- 03
确定性任务交给 ToolTools for Deterministic Tasks
成本、工期等需要稳定计算结果的任务不直接依赖模型生成,而通过 Tool Layer 执行。
- 04
受控执行边界Controlled Execution Boundary
Permission Validation、Structured Output 与 fail-closed 用于限制 Agent 的业务执行范围。
工程
Engineering
- LangGraph StateGraph 状态编排
- 多阶段 Agent Workflow
- RAG 检索增强生成
- PDF / DOCX 文档解析与分块
- BGE-M3 Embedding(1024 维)
- FAISS 向量检索
- 检索评测:Hit@K / MRR
- Registry-based Tool Layer 注册表式工具层
- Tool Calling
- Permission Validation 权限校验
- Structured Output 结构化输出
- fail-closed 异常处理
- Gradio 交互界面
Results
- Hit@1 · 10 条离线样本
- 0.60
- Hit@3 · 10 条离线样本
- 1.00
- MRR · 10 条离线样本
- 0.77
- 项测试通过 · pytest
- 7
检索评测基于 10 条离线评测样本:Hit@1 = 0.60,Hit@3 = 1.00,MRR = 0.77。
pytest 7 项测试通过;通过 Gradio 界面完成端到端验证。
笔记
What I Learned
把任务拆成阶段之后,每一步都可以单独检查和测试,出了问题也更容易定位。
决定哪些事情不交给模型,和设计 Prompt 一样重要。
Tech Stack
- Python
- LangGraph
- LangChain
- DeepSeek-V3
- RAG
- BGE-M3
- FAISS
- Tool Calling
- Gradio