Downloads · 30 days
0
jasonxu11/yunhebisai
yunhebisai is a machine learning model from jasonxu11. Use it for the machine learning task on the model card, and read the license before you ship it in a product.
这是一个基于检索增强生成(RAG)的政务领域智能问答系统,结合了向量检索和大语言模型微调技术。
Downloads · 30 days
0
Access
Public
Updated Nov 17, 2025
Repo size
31.2 GB
Likes
0
Public
Click a slice to open those files.
.safetensors30.7 GB · 98%
From the Hugging Face model README
这是一个基于检索增强生成(RAG)的政务领域智能问答系统,结合了向量检索和大语言模型微调技术。
7/
├── solver.py # 主推理脚本(RAG问答)
├── train.py # LoRA微调训练脚本
├── vllm_service.sh # vLLM服务启动脚本
├── data/ # 数据目录
│ ├── data/ # 检索语料库
│ ├── test.xlsx # 测试集
│ └── train.parquet # 训练数据
└── models/ # 模型目录
├── Qwen3-Embedding-0.6B/ # 向量嵌入模型
└── trained_llm/ # 微调后的LLM
文档检索系统
大模型推理
模型训练
pip install torch vllm openai pandas openpyxl docx textract
pip install transformers peft datasets langchain-text-splitters tqdm
准备检索语料库
data/data/ 目录.pdf, .docx, .txt 等准备测试集
data/test.xlsxID, question(可选)准备训练数据
data/train.parquetsystem, instruction, output如果需要对模型进行微调:
python train.py \
--dataset data/train.parquet \
--base-model models/trained_llm \
--output models/output/checkpoints \
--max-samples 90000 \
--max-length 2200 \
--batch 2 \
--grad-accum 3 \
--lr 2.1e-4 \
--steps 1000 \
--seed 5150
参数说明:
--dataset: 训练数据路径--base-model: 基础模型路径--output: 输出检查点目录--max-samples: 最大训练样本数--max-length: 最大序列长度--batch: 每设备批次大小--grad-accum: 梯度累积步数--lr: 学习率--steps: 训练步数LoRA配置:
在运行推理之前,需要先启动vLLM服务:
bash vllm_service.sh
服务配置:
../models/trained_llmtrainedhttp://localhost:8000/v1注意:确保端口 8000 未被占用
启动vLLM服务后,在另一个终端运行:
python solver.py --task_type 政务
推理流程:
result.csv核心参数:
推理完成后,结果保存在:
result.csv
输出格式:
| ID | answer |
|---|---|
| 1 | 答案内容 |
| 2 | 答案内容 |
在 solver.py 中修改全局常量:
DEFAULT_CHUNK_LENGTH = 2304 # 文本块大小
DEFAULT_OVERLAP_SIZE = 512 # 重叠大小
TOP_K_DOCS = 3 # 检索文档数量
THREAD_POOL_SIZE = 12 # 并发线程数
修改 ConfigManager 中的提示词格式:
self._prompt_fmt = "问题:\n{question}\n\n参考以下文档来回答:\n{docs}"
编辑 vllm_service.sh 调整:
--tensor-parallel-size: 张量并行度--max-model-len: 最大上下文长度--gpu-memory-utilization: GPU内存使用率graph LR
A[用户问题] --> B[向量化查询]
B --> C[检索Top-K文档]
C --> D[构建提示词]
D --> E[LLM生成答案]
E --> F[后处理输出]
并行处理
内存管理
推理加速
data/ 和 models/ 路径是否正确THREAD_POOL_SIZE 和 max_workers--tensor-parallel-sizeTOP_K_DOCS 数量DEFAULT_CHUNK_LENGTH--gpu-memory-utilization本项目仅供研究和学习使用。
作者: 政务问答团队
联系: 如有问题请查阅日志文件或联系维护人员