|
|
1 долоо хоног өмнө | |
|---|---|---|
| .idea | 1 долоо хоног өмнө | |
| .vscode | 1 долоо хоног өмнө | |
| bdirag | 1 долоо хоног өмнө | |
| examples | 1 долоо хоног өмнө | |
| parser | 1 долоо хоног өмнө | |
| 1.4.1 | 1 долоо хоног өмнө | |
| BIDIRAG_USAGE.md | 1 долоо хоног өмнө | |
| BidiRAG.iml | 1 долоо хоног өмнө | |
| RAG_METHODS_TEST_REPORT.md | 1 долоо хоног өмнө | |
| README.md | 1 долоо хоног өмнө | |
| convert_unicode_to_chinese.py | 1 долоо хоног өмнө | |
| doubao-page.png | 1 долоо хоног өмнө | |
| fix_fstrings.py | 1 долоо хоног өмнө | |
| requirements.txt | 1 долоо хоног өмнө |
基于多种RAG(Retrieval-Augmented Generation)方法的招投标公告和附件信息检索与字段提取系统。
本项目专注于招投标领域的智能化信息处理,核心功能包括:
| 方法 | 描述 | 特点 |
|---|---|---|
| BM25RAG | BM25关键词检索 | 纯BM25概率模型,不依赖向量嵌入 |
| TFIDFRAG | TF-IDF检索 | 纯TF-IDF余弦相似度,不依赖向量嵌入 |
| NaiveRAG | 最基础的RAG实现 | 向量语义检索 + LLM生成 |
| RerankRAG | 带重排序的RAG | 初始检索后使用重排模型精排 |
| HybridSearchRAG | 混合搜索RAG | 语义检索 + BM25关键词检索融合 |
| 方法 | 描述 | 特点 |
|---|---|---|
| MultiQueryRAG | 多查询扩展RAG | 将原问题扩展为多个角度查询 |
| HyDERAG | 假设文档嵌入RAG | 先生成假设文档再检索 |
| SelfRAG | 自我反思RAG | 检索前判断是否需要检索,检索后评估相关性 |
| CorrectiveRAG | 纠正性RAG | 评估文档正确性,不足时补充外部搜索 |
| FLARERAG | 主动检索生成RAG | 迭代式检索与生成 |
| RAPTORRAG | 递归摘要树RAG | 构建多层级摘要树进行检索 |
| StepBackRAG | 抽象回退RAG | 将具体问题抽象为高层问题检索背景知识 |
| ContextualCompressionRAG | 上下文压缩RAG | 压缩检索结果仅保留相关信息 |
| EnsembleRAG | 集成检索RAG | 多种检索策略结果融合 |
| 方法 | 描述 | 特点 |
|---|---|---|
| BidFieldExtractionRAG | 招投标字段提取RAG | 针对招投标字段优化检索与提取 |
| TableAwareRAG | 表格感知RAG | 专门处理表格和结构化数据 |
| GraphRAG | 图谱增强RAG | 结合实体关系图谱进行检索 |
BidiRAG/
├── bdirag/
│ ├── __init__.py
│ ├── config.py # 配置文件
│ ├── document_processor.py # 文档处理(PDF/Word/Excel/TXT)
│ ├── embedding_models.py # 嵌入模型(SentenceTransformers/OpenAI/DashScope/Zhipu)
│ ├── vector_stores.py # 向量存储(FAISS/Chroma)
│ ├── rag_methods.py # 所有RAG方法实现
│ └── benchmark.py # 基准测试模块
├── examples/
│ ├── sample_data.py # 示例招投标数据
│ ├── quick_demo.py # 快速演示
│ ├── benchmark_all_methods.py # 全方法基准测试
│ ├── benchmark_retrieval_speed.py # 检索速度测试
│ └── bid_field_extraction_demo.py # 字段提取演示
├── data/
│ ├── documents/ # 放置待处理的招投标文档
│ ├── indexes/ # 向量索引存储
│ └── cache/ # 缓存目录
├── output/ # 输出目录(基准测试结果等)
├── requirements.txt
└── README.md
pip install -r requirements.txt
# OpenAI API配置(或兼容的API)
export OPENAI_API_KEY="your-api-key"
export OPENAI_BASE_URL="https://api.openai.com/v1" # 或其他兼容API地址
export LLM_MODEL="gpt-4o"
# 嵌入模型配置
export EMBEDDING_MODEL="BAAI/bge-large-zh-v1.5"
# 快速演示
python examples/quick_demo.py
# 检索速度测试(无需LLM)
python examples/benchmark_retrieval_speed.py
# 完整基准测试
python examples/benchmark_all_methods.py
# 字段提取演示
python examples/bid_field_extraction_demo.py
系统支持提取以下招投标关键字段:
系统会输出以下对比指标:
MIT