import json import os from 投标人须知正文条款提取成json文件 import convert_clause_to_json from json_utils import nest_json_under_key, extract_content_from_json from 形式响应评审 import process_reviews from 资格评审 import process_qualification from 通义千问long import upload_file, qianwen_long def combine_review_standards(truncate1,truncate4,knowledge_name,truncate0_jsonpath,clause_path): #评标办法前附表 # 形式评审、响应评审:千问 print("starting形式响应评审...") file_id=upload_file(truncate1) #评标办法前附表 user_query_1 = "根据该文档中的评标办法前附表,请你列出该文件中的形式评审标准和响应性评审标准和资格评审标准,请以json格式返回,外层键名为'形式评审标准'和'响应性评审标准'和'资格评审标准',嵌套键名为'评审因素'中的内容,相应的键值为对应'评审标准'中的内容。" results = qianwen_long(file_id, user_query_1) original_dict_data = extract_content_from_json(results) qualification_review = original_dict_data.pop('资格评审标准', '默认值或None') final_qualify_json=process_qualification(qualification_review,truncate4,knowledge_name) form_response_dict=process_reviews(original_dict_data, knowledge_name, truncate0_jsonpath, clause_path) print("形式响应评审done") form_response_dict.update(final_qualify_json) return nest_json_under_key(form_response_dict,"资格审查") if __name__ == "__main__": output_folder = "C:\\Users\\Administrator\Desktop\\fsdownload\\temp1" truncate1 = os.path.join(output_folder, "ztbfile_tobidders_notice_table.pdf") knowledge_name="zbfile" truncate2=os.path.join(output_folder,"ztbfile_evaluation_method.pdf") truncate4=os.path.join(output_folder,"ztbfile_qualification.pdf") clause_path = convert_clause_to_json(truncate2, output_folder) truncate1_jsonpath = os.path.join(output_folder, "truncate_output.json") res=combine_review_standards(truncate2,truncate4, knowledge_name,truncate1_jsonpath,clause_path) print(res)