招标文件审查与智能评标 AI 评审系统面向商业化交付的 AI 招投标智能评审平台支持SaaS 多租户与私有化部署双模运行。 核心能力招标文件合规审查、围标串标检查、AI 智能辅助评标支持按模块授权售卖、 自定义规则库/知识库、异步任务队列与对外 API。本仓库为依据目录内设计文档搭建的项目框架骨架业务逻辑中标注TODO处为待实现项。技术栈《架构设计文档》2.4层级技术后端Spring Boot 3.5.8 Langchain4jJava 17认证鉴权Sa-Token JWTMyBatis-Plus 多租户插件业务库MySQL 8.0字段级多租户隔离 tenant_id向量库PostgreSQL pgvectorHNSW 索引RAG 检索缓存/队列Redis会话、缓存、任务队列实时通信WebSocket任务进度 SSEAI 流式输出前端Vue 3 TypeScript Vite Element PlusVben 风格部署Docker ComposeMySQL / pgvector / Redis / Ollama目录结构. ├── ai-bid-backend/ # 后端 Maven 多模块工程 │ ├── bid-common/ # 公共层实体类、统一响应、租户上下文、模块编码 │ ├── bid-core/ # 核心层业务服务、AI引擎(Langchain4j/RAG/pgvector)、 │ │ # 文档解析、任务队列、Mapper、多租户配置 │ ├── bid-gateway/ # 网关层登录鉴权、License模块授权、接口限流拦截器 │ ├── bid-admin/ # 启动模块REST控制器、SSE端点、全局异常、应用配置 │ └── pom.xml ├── ai-bid-frontend/ # 前端工程Vue 3 Vite Element Plus │ ├── src/api | views | router # 接口定义 / 页面视图 / 路由配置 │ └── ... ├── deploy/ # 部署目录《打包部署文档》3.3 │ ├── docker-compose.yml # MySQL / pgvector / Redis / Ollama / 应用 / 前端 │ ├── .env.example # 环境变量模板 │ ├── nginx/nginx.conf # 反向代理 WebSocket SSE │ ├── deploy.sh # 一键部署脚本 │ └── init-sql/ # 数据库初始化建表 向量扩展 初始数据 ├── *.pdf / *.png # 原始设计文档与架构图 └── README.md核心框架能力多租户字段隔离MybatisPlusConfig中TenantLineInnerInterceptor自动注入/过滤tenant_id租户上下文由登录拦截器写入TenantContextThreadLocal。模块授权RequireModule注解 ModuleAuthInterceptor校验 License 模块编码BID_REVIEW/COLLUSION_CHECK/BID_EVAL。AI 引擎Langchain4jChatLanguageModel/EmbeddingModel抽象云端 DashScope/OpenAI与本地Ollama 兼容端点通过配置切换RagService向量检索上下文组装PgVectorStoreServicepgvector 读写。异步任务提交任务即入 Redis 队列TaskProcessor定时消费按类型分发到 审查/评标/围串标检测服务。实时通信/api/ws/taskWebSocket 端点 /api/stream/chatSSE 流式端点。统一规范统一响应{code, message, data}、分页pageNum/pageSize/total、 全局异常处理、操作审计表、接口限流对外接口 60 次/分钟/租户。快速开始开发环境《打包部署文档》5.4准备 MySQL 8.0、PostgreSQL 15安装 pgvector 扩展、Redis依次执行deploy/init-sql/mysql/*.sql与deploy/init-sql/pg/*.sql。后端cd ai-bid-backend mvn spring-boot:run -pl bid-admin # 或 IDEA 启动 BidAdminApplication首次启动自动创建默认租户与管理员admin / admin123。前端cd ai-bid-frontend pnpm install pnpm dev # http://localhost:5173配置 AI 模型设置环境变量DASHSCOPE_API_KEY或修改bid-admin/src/main/resources/application.yml中langchain4j配置。Docker 一键部署《打包部署文档》5.1cd deploy cp .env.example .env # 填写密码与 API Key ./deploy.sh # 本地 Ollama 需加 --profile gpu部署验证清单《打包部署文档》9.2GET /actuator/health、/api/system/db-check、/api/system/ai-checkSwagger 接口文档http://host:8080/swagger-ui.html第三方系统对接开放 API对外开放接口前缀/api/open/v1/**支持单点登录POST /api/open/v1/auth/tokenSSO Token 交换新建项目POST /api/open/v1/projects上传招投标文件POST /api/open/v1/documents/tender/upload、/bid/upload招标文件审查POST /api/open/v1/review/tender-check围标串标检查POST /api/open/v1/collusion/checkAI 智能评标POST /api/open/v1/review/bid-eval鉴权方式X-Api-Key或 SSO 交换后的AuthorizationToken。完整对接说明、请求示例与错误码见docs/OPEN_API.md。环境变量OPEN_API_KEY、OPEN_API_TENANT_ID、OPEN_SSO_CLIENT_ID、OPEN_SSO_CLIENT_SECRET见deploy/.env.example。数据库《数据库设计文档》MySQLai_bid24 张表系统表sys_*租户/用户/角色/权限/模块授权/许可证/日志 业务表biz_*项目/招标投标文件/评审任务与结果/规则/知识库/围串标。PostgreSQLai_bid_vectorknowledge_base_vector向量表 HNSW 索引。规范utf8mb4 / utf8mb4_general_ci主键雪花算法金额DECIMAL(18,2)。注原《数据库设计文档》PDF 末页截断登录日志表不完整sys_login_log等 少量字段按框架惯例补充并在 SQL 中标注另补充了sys_user_role、sys_role_permission关联表以支撑权限模型。Prompt 工程与审查结果结构化含source_location原文定位约定长文档切片chunking、BM25向量混合召回与 RerankWord/Excel/OCR 解析器扩展围标串标硬件指纹提取、文本两两相似度、报价规律分析、风险加权评分AI 评标评标模板建模、分项打分、专家评分对比License 数字签名解析与定时校验、规则版本管理、审计日志切面
