From 8e618bb0f29c83c547a53f9bb8c477b8854833ce Mon Sep 17 00:00:00 2001 From: zy123 <646228430@qq.com> Date: Fri, 30 Aug 2024 10:17:57 +0800 Subject: [PATCH] 8.30 --- .../extract_procurement_requirements.py | 23 ++++-- flask_app/货物标/提示词/prompt1.txt | 80 +++++++++++++++++++ 2 files changed, 98 insertions(+), 5 deletions(-) create mode 100644 flask_app/货物标/提示词/prompt1.txt diff --git a/flask_app/货物标/extract_procurement_requirements.py b/flask_app/货物标/extract_procurement_requirements.py index 855aff9..b0a1dd8 100644 --- a/flask_app/货物标/extract_procurement_requirements.py +++ b/flask_app/货物标/extract_procurement_requirements.py @@ -24,13 +24,26 @@ def fetch_purchasing_list(file_path): output_folder="C:\\Users\\Administrator\\Desktop\\货物标\\output" file_path = docx2pdf(file_path) truncate_path=truncate_pdf_main(file_path,output_folder,1) - user_query="这是一份货物标中采购要求部分的内容,你需要摘取出需要采购的系统(货物),一个大系统(大项)中可能包含多个小系统(小项),你需要保留这种层次关系,给出货物名称,请以json格式返回,外层键名为\"采购需求\",嵌套键名为对应的系统名称或货物名称,无需给出采购数量和单位,如有未知内容,在对应键值处填\"未知\"。" + user_query1="这是一份货物标中采购要求部分的内容,你需要摘取出需要采购的系统(货物),一个大系统(大项)中可能包含多个小系统(小项),你需要保留这种层次关系,给出货物名称,请以json格式返回,外层键名为\"采购需求\",嵌套键名为对应的系统名称或货物名称,无需给出采购数量和单位,如有未知内容,在对应键值处填\"未知\"。" file_id=upload_file(truncate_path[0]) - res=qianwen_long(file_id,user_query) + res=qianwen_long(file_id,user_query1) cleaned_res=clean_json_string(res) - keys_list=generate_key_paths(cleaned_res['采购需求']) - print(keys_list) - + keys_list=generate_key_paths(cleaned_res['采购需求']) #提取需要采购的货物清单 + user_query_template = "这是一份货物标中采购要求部分的内容,请你给出\"{}\"的具体型号参数要求,请以json格式返回结果,外层键名为\"{}\", 键值对中的键是你对该要求的总结,而值需要完全与原文保持一致,不可擅自总结删减。" + queries=[] + for key in keys_list: + # 替换 user_query2 中的 "网络硬盘录像机" 为当前 key + new_query = user_query_template.format(key, key) + queries.append(new_query) + results=multi_threading(queries,"",file_id,2) + if not results: + print("errror!") + else: + # 打印结果 + for question, response in results: + print(f"Question: {question}") + print(f"Response: {response}") if __name__ == "__main__": file_path="C:\\Users\\Administrator\\Desktop\\货物标\\output1\\磋商文件.doc" fetch_purchasing_list(file_path) + diff --git a/flask_app/货物标/提示词/prompt1.txt b/flask_app/货物标/提示词/prompt1.txt new file mode 100644 index 0000000..b5f8b4a --- /dev/null +++ b/flask_app/货物标/提示词/prompt1.txt @@ -0,0 +1,80 @@ +#这是一份货物标中采购要求部分的内容,你需要摘取出采购清单,一个大系统(大项)中可能包含多个小系统(小项),你需要保留这种层次关系,给出名称和数量和单位,请以json格式返回,外层键名为"采购需求",如有未知内容,在对应键值处填"未知"。 + +这是一份货物标中采购要求部分的内容,你需要摘取出需要采购的系统(货物),一个大系统(大项)中可能包含多个小系统(小项),小系统中也可能包含多个货物,你需要保留这种层次关系,给出货物名称,请以json格式返回,外层键名为"采购需求",嵌套键名为对应的系统名称或货物名称,无需给出采购数量和单位,如有未知内容,在对应键值处填"未知"。 + +#这是一份货物标中采购要求部分的内容,请你给出所需的设备名称以及设备的具体型号参数要求,请以json格式返回结果,外层键名为采购要求。 + +这是一份货物标中采购要求部分的内容,请你给出"网络硬盘录像机"的具体型号参数要求,请以json格式返回结果,外层键名为"网络硬盘录像机",键值对中的键是你对该要求的总结,而值需要完全与原文保持一致,不可擅自总结删减。 + +{ + "采购需求": { + "硬盘录像机 A": {}, + "硬盘录像机 B": {}, + "高清摄像机枪机": {}, + "支架、防水盒": {}, + "交换机": {}, + "光模块": {}, + "光纤尾纤": {}, + "安装辅材": {}, + "视频监控组网专线电路租赁": {} + } +} + +{ + "采购需求": { + "多媒体会议厅设备": { + "LED屏显示设备": { + "LED显示屏系统": "未知", + "户内全彩 LED屏": "未知", + "发送盒": "未知", + "LED显示屏控制系统": "未知", + "视频处理器": "未知", + "智能配电柜": "未知", + "台式电脑": "未知", + "控制桌": "未知", + "LED显示屏施工材料、技术服务费、包装费": { + "结构边框": "未知", + "线材": "未知", + "包装材料": "未知" + } + }, + "扩声系统": { + "主扩全频专业音箱": "未知", + "专业功放": "未知", + "辅助专业音箱": "未知", + "壁挂支架": "未知", + "返听专业音箱": "未知", + "返听专业功放": "未知", + "超低频专业音箱": "未知", + "音箱地插": "未知", + "调音台": "未知", + "音频处理器": "未知", + "抑制器": "未知", + "无线话筒": "未知", + "话筒呼叫控制嵌入软件": "未知", + "天线分配器": "未知", + "有源监听音箱": "未知", + "电源时序器": "未知", + "辅助材料": { + "机柜": "未知", + "音频连接线": "未知", + "其它辅材": "未知" + } + }, + "会议座椅": "未知", + "电动窗帘": "未知" + }, + "云平台及备课电脑": { + "备课一体机电脑": "未知", + "云平台管理软件": "未知", + "教学互动应用软件": "未知" + }, + "办公桌椅": "未知", + "文件柜": "未知", + "体育运动器材": { + "移动式标准篮球架": "未知" + } + } +} + +