项目简介
本项目是基于Python的Doc2Dial对话系统,借助检索、重排序和生成三个模块实现高效对话生成。项目涵盖从模型训练到推理的完整流程,适用于处理大规模文档并生成相关对话的场景。
项目的主要特性和功能
- 检索模块:利用
inference_retrieval.py
初步检索文档,筛选出与输入相关的文档。 - 重排序模块:通过
inference_rerank.py
对检索结果重排序,提升相关文档优先级。 - 生成模块:使用
inference_generation.py
生成最终对话内容。 - 模型训练:支持检索、重排序和生成模块的独立训练,可按需调整模型参数。
- 一键推理:通过
run_infer.sh
脚本实现一键推理,快速生成对话结果。
安装使用步骤
假设用户已下载本项目的源码文件。
1. 下载模型文件
由于模型文件较大(约40G),需通过百度网盘下载:
1. 安装bypy
工具:
shell
pip install bypy
2. 授权bypy
访问百度网盘:
shell
bypy info
按提示完成授权。
3. 下载模型文件:
shell
cd doc2dial-acl-workshop-2023
bypy downfile model
2. 安装依赖
安装项目所需的Python依赖:
shell
pip install -r requirements.txt
3. 运行推理
一键推理
运行以下脚本进行一键推理:
shell
bash run_infer.sh
推理结果将保存在./model_outputStandardFileBaseline.json
中。
分步推理
- 检索:
shell python inference_retrieval.py
- 重排序:
shell python inference_rerank.py
生成的重排序结果将保存在rerank_output.jsonl
中。 - 生成:
shell python inference_generation.py
生成的对话结果将保存在outputStandardFile.json
中。
4. 模型训练
- 检索模块训练:
shell python init_model.py python train_retrieval.py
- 重排序模块训练:
shell python train_rerank.py
- 生成模块训练:
shell python train_generation.py
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】