- 本项目的检索部分提供了两种检索方式(您可以选择其中实现)
a. 使用 PyLucene 实现,其安装步骤请参考官方说明。 Pylucene 安装过程较为繁琐,我们提供了 Pylucene 的 Singularity 环境镜像,您可以参考 Singularity 安装文档 安装 Singularity 并下载镜像(提取码:jhhl)。然后运行以下代码即可完成部署
cd "/src/pylucene_task1" && singularity exec -B "/src/pylucene_task1":/mnt "/xxx/pylucene_singularity.sif" python /mnt/api.py --port "port"
请将"/src/pylucene_task1"
换成自己实际的目录,"/xxx/pylucene_singularity.sif"
是下载得到镜像。
b. 我们还提供了 Elasticsearch 的检索部署代码,需要提前安装好 ES
- 夫子•明察的部署与 ChatGLM 相同,在命令行下执行
pip install -r requirements.txt
即可
我们提供了两种检索系统部署方式 pylucene 和 Elasticsearch
-
pylucene 的部署方式。
如果您安装好 pylucene 的环境,您可以直接运行以下代码进行部署。或者您可以用上面“依赖库安装”中的部署方式。
python ./pylucene_task1/api.py --port "端口" python ./pylucene_task2/api.py --port "端口"
-
ES 部署方式
python ./es_task1/api.py --port "端口" python ./es_task2/api.py --port "端口"
注:
如果想更换检索数据集,可以参考我们的检索数据库格式自行进行修改: ./pylucene_task/csv_files/data_task.csv
。
您也可以简单的修改 ./pylucene_task/csv_files/api.py
中的代码支持更多的数据类型。
-
task1 的数据库 (法律法规数据集) 来自于 LawRefBook
-
task2 的数据库 (案例判决数据集) 主要来自于 CAIL,LeCaRD 以及我们的预训练数据。由于数据库规模较大,我们选取了 1k 条案例作为示例。
运行仓库中 cli_demo.py:
python cli_demo.py --url_lucene_task1 "法条检索对应部署的 pylucene 地址" --url_lucene_task2 "类案检索对应部署的 pylucene 地址"