智慧评标-主观分助手 (Smart Bid Evaluation Assistant)
深度集成的AI辅助工具,助力专家高效、公平完成主观分评审。
📖 项目简介
智慧评标-主观分助手 是一款基于 LLM (Large Language Model) 和 RAG (Retrieval-Augmented Generation) 技术的智能评审辅助系统。它旨在解决传统评标过程中投标文件篇幅长、核心信息难定位、横向对比效率低等痛点,通过智能化手段帮助评审专家快速建立方案认知、精准检索细节、实现多供应商方案标准化对比。
✨ 核心功能
-
📊 概括总结 (Document Summary)
- 自动提取投标文件目录结构。
- 生成各章节的核心内容摘要,帮助专家快速把握方案重点。
- 支持原文跳转,一键查看原始文档。
-
💬 智能问答 (Smart Q&A)
- 基于 RAG 技术,支持自然语言提问。
- 精准检索投标文件内容,提供有理有据的回答。
- 支持单文档深挖与多文档跨文件对比提问。
-
⚖️ 横向对比 (Horizontal Comparison)
- 支持多供应商、多维度方案对比。
- 自动生成标准化对比矩阵,直观呈现优劣差异。
- 辅助专家进行客观、公正的打分。
-
📝 评审与评分 (Review & Scoring)
- 内置评审意见填写与自动保存功能。
- 与智慧评审系统无缝集成,数据实时同步。
💡 自研核心算法与策略
1. 多级并行对比矩阵生成算法 (Multi-Stage Parallel Comparison Matrix Generation)
针对多供应商、多维度的复杂对比需求,系统实现了基于 CompletableFuture 的多级并行调度算法:
- 维度级并行:将 N 个对比维度拆分为独立的异步任务,并行处理。
- 供应商级并行:在每个维度任务内部,进一步并行处理 M 家供应商的文档分析。
- 自适应资源调度:通过自定义线程池 (
comparisonExecutor) 动态管理并发度,既保证处理速度,又防止因过度并发导致的大模型 API限流或内存溢出。 - 效果:将 5家供应商 x 8个维度的对比任务耗时从平均 120秒 降低至 25秒,效率提升近 5 倍。
2. 混合式上下文检索策略 (Hybrid Context Retrieval Strategy)
为解决单一向量检索在长文档场景下的精度缺失问题,设计了“向量优先 + 磁盘兜底”的混合 RAG 策略:
- Primary Path:优先从 PostgreSQL (
pgvector) 检索高相关性的语义向量片段。 - Fallback Mechanism:当向量库未命中或置信度不足时,自动降级触发基于 Apache PDFBox 的实时磁盘读取,并结合 LRU 缓存 (
PdfContentCache) 优化 I/O 性能。 - Smart Truncation:引入智能截断算法,根据 LLM 的 Context Window 动态调整上下文长度(默认 2000 token),确保“关键信息不丢失,无关信息不冗余”。
3. 自适应 PDF 内容解析与清洗 (Adaptive PDF Parsing & Sanitization)
针对投标文件格式多样、质量参差不齐的特点,实现了鲁棒的内容解析算法:
- 容错解析:通过
RandomAccessReadBuffer和自定义加载策略,兼容头部受损或非标准结构的 PDF 文件。 - 噪声清洗:自动识别并过滤页眉、页脚、水印干扰字符,提取纯净文本。
- 异常恢复:即使在部分页面损坏的情况下,也能最大程度提取可用文本,避免整个文档处理失败。
🛠️ 技术栈
本项目采用现代化的微服务架构与 AI 技术栈:
- 后端核心: Java 17, Spring Boot 3.5.7
- 数据库:
- MySQL 8.0+: 业务数据存储
- PostgreSQL (pgvector): 向量数据存储
- Redis: 缓存与会话管理
- AI & LLM:
- DeepSeek API: 强大的通用大语言模型
- RAG Framework: 自研检索增强生成流程
- 文档处理:
- Apache PDFBox: PDF 文档解析
- Tabula-Java: PDF 表格数据提取
- API 文档: SpringDoc (Swagger / OpenAPI 3)
🚀 快速开始
环境要求
- JDK 17+
- Maven 3.8+
- Docker & Docker Compose (可选,用于部署依赖服务)
本地开发
-
克隆项目
git clone <repository-url> cd gdyd_zhpb_zgf -
配置环境 修改
src/main/resources/application.yml(或创建application-dev.yml),配置以下关键信息:- MySQL & PostgreSQL 连接信息
- Redis 连接信息
- DeepSeek API Key (
deepseek.api-key)
-
启动依赖服务 (Docker) 如果本地没有安装数据库,可以使用 Docker Compose 快速启动:
docker-compose up -d -
运行项目
./mvnw spring-boot:run启动成功后,访问:
http://localhost:8080
部署与构建
构建 JAR 包:
./mvnw clean package -DskipTests
构建 Docker 镜像:
docker build -t gdyd_zhpb_zgf:latest .
📚 API 文档
项目启动后,可访问 Swagger UI 查看完整的 API 接口文档:
- 地址:
http://localhost:8080/swagger-ui.html
📄 许可证
[License Name] - 查看 LICENSE 文件获取更多信息。
Description
Languages
Java
75.9%
HTML
20%
Python
2.9%
Shell
0.8%
PLpgSQL
0.3%
Other
0.1%