选择金融领域的专业文档作为源文件
这里选择 《博金大模型挑战赛-金融千问14b数据集》,这个数据集包含若干公司的年报,我们将利用这个年报搭建金融问答机器人。
具体下载地址 这里
git clone https://www.modelscope.cn/datasets/BJQW14B/bs_challenge_financial_14b_dataset.git
具体目录如下:
这里直接使用已经识别的纯文本数据,即pdf_txt_file目录下的文件。
选择词向量模型
这里选用m3e-base。M3E是专注于中文文本处理,具有强大的文本处理能力和灵活的部署选项,适合资源受限或需要私有化的应用场景
git clone https://www.modelscope.cn/Jerry0/m3e-base.git
读取与清洗数据
1, 读取文件列表
import os
dir_path = "bs_challenge_financial_14b_dataset/pdf_txt_file"
all_files = os.listdir(dir_path)
print(all_files)
2,清洗数据
从结果我们可以观察到文件名都是乱码,我们需要把文件名改成公司名,可以一看就看出是哪个公司的年报,并且在后续处理的时候把公司名加入到每个chuck中,在后续检索的时候对应指定公司的query就能匹配这个公司相关的一系列信息。
(1),读取数据
import re
for file in all_files:
with open(os.path.join(dir_path, file), "r",encoding = "utf-8") as f:
lst = f.readlines()
pattern = ".*发行人.*股份有限公司\n"
name = ""
for