Views
No views yet
1conda create -n mars python=3.10
2conda activate marspip install -r requirements.txttextract 可能需要安装系统级依赖,如 libmagicvllm 和 torch 建议根据 CUDA 版本安装对应版本.
├── models/
│ ├── Qwen3-zw/ # 政务任务模型
│ └── Qwen3-Embedding-0.6B/ # Embedding 模型
├── data/
│ ├── zw/ # 政务任务数据
│ │ ├── testa.xlsx 或 testa.csv
│ │ └── rag/ # RAG 文档目录
│ └── yj/ # 应急任务数据(可选)
│ ├── testa.xlsx 或 testa.csv
│ └── rag/
└── code/
├── main.py
├── llm.py
├── embedding.py
├── utils.py
└── serve.sh1cd code
2bash serve.sh../models/Qwen3-zw)serve.sh 中的模型路径为 ../models/Qwen3-yj(或其他应急模型路径)http://localhost:8000/v1CUDA_VISIBLE_DEVICES: 指定使用的 GPU 设备--tensor-parallel-size: 张量并行大小,根据 GPU 数量调整--gpu-memory-utilization: GPU 内存利用率--max-model-len: 最大模型长度python main.pyTASK = 'zw')main.py 中的全局变量 TASK = 'yj'1TASK = 'zw' # 任务类型:'zw'(政务)或 'yj'(应急)
2MAX_CHUNK_SIZE = 2048 # 文本分块大小
3CHUNK_OVERLAP = 256 # 分块重叠大小
4K_NUM = 3 # 检索 top-k 数量
5CONCURRENCY_LEVEL = 16 # 并发处理级别
6MODEL_NAME = "qwen" # 模型名称(需与 serve.sh 中的 --served-model-name 一致)../data/{TASK}/testa.xlsx 或 ../data/{TASK}/testa.csv../data/{TASK}/rag/../models/Qwen3-Embedding-0.6B../result.csvcode/
├── main.py # 主程序入口
├── llm.py # LLM 调用接口(基于 OpenAI API)
├── embedding.py # Embedding 检索器
├── utils.py # 工具函数(文件读取、数据处理等)
└── serve.sh # vLLM 服务启动脚本RecursiveCharacterTextSplitter 将文档分割成块llm.py 中的 base_url.wps 格式,其他常见格式均可处理CONCURRENCY_LEVELresult.csv 包含以下字段:ID: 问题 IDanswer: 生成的答案CONCURRENCY_LEVEL 和 K_NUM,或增加 GPU 数量。MAX_CHUNK_SIZE、CONCURRENCY_LEVEL 或 --gpu-memory-utilization。vllm: 高性能 LLM 推理引擎torch: PyTorch 深度学习框架openai: OpenAI API 客户端(用于调用本地 vLLM 服务)langchain-text-splitters: 文本分割工具pandas: 数据处理python-docx: Word 文档处理textract: 文档文本提取tqdm: 进度条显示