2025-12-13 23:19:07 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:19:07 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00
2025-12-13 23:00:09 +08:00

智慧评标-主观分助手 (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 (可选,用于部署依赖服务)

本地开发

  1. 克隆项目

    git clone <repository-url>
    cd gdyd_zhpb_zgf
    
  2. 配置环境 修改 src/main/resources/application.yml (或创建 application-dev.yml),配置以下关键信息:

    • MySQL & PostgreSQL 连接信息
    • Redis 连接信息
    • DeepSeek API Key (deepseek.api-key)
  3. 启动依赖服务 (Docker) 如果本地没有安装数据库,可以使用 Docker Compose 快速启动:

    docker-compose up -d
    
  4. 运行项目

    ./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
广东移动主观分评标工具
Readme 6.8 MiB
Languages
Java 75.9%
HTML 20%
Python 2.9%
Shell 0.8%
PLpgSQL 0.3%
Other 0.1%