49 lines
2.4 KiB
Python
49 lines
2.4 KiB
Python
|
import json
|
|||
|
import random
|
|||
|
from http import HTTPStatus
|
|||
|
from dashscope import Generation
|
|||
|
|
|||
|
def call_with_messages(messages):
|
|||
|
response = Generation.call(model="qwen-max",
|
|||
|
messages=messages,
|
|||
|
seed=random.randint(1, 10000),
|
|||
|
temperature=0.5,
|
|||
|
top_p=0.5,
|
|||
|
top_k=50,
|
|||
|
result_format='message')
|
|||
|
if response.status_code == HTTPStatus.OK:
|
|||
|
content = response.output['choices'][0]['message']['content']
|
|||
|
return content
|
|||
|
else:
|
|||
|
raise Exception(f'Request id: {response.request_id}, Status code: {response.status_code}, error code: {response.code}, error message: {response.message}')
|
|||
|
|
|||
|
def prepare_question_from_json(json_path, prompt):
|
|||
|
with open(json_path, 'r', encoding='utf-8') as file:
|
|||
|
json_data = json.load(file)
|
|||
|
question = json.dumps(json_data, ensure_ascii=False) + prompt
|
|||
|
return question
|
|||
|
|
|||
|
#专用于判断是否
|
|||
|
def qianwen_ask(json_path, prompt):
|
|||
|
messages = []
|
|||
|
question = prepare_question_from_json(json_path, prompt)
|
|||
|
messages.append({'role': 'system', 'content': 'You are a helpful assistant.'})
|
|||
|
messages.append({'role': 'user', 'content': question})
|
|||
|
return call_with_messages(messages)
|
|||
|
|
|||
|
#通用问题
|
|||
|
def qianwen_ask2(questions):
|
|||
|
messages = []
|
|||
|
messages.append({'role': 'system', 'content': 'You are a helpful assistant.'})
|
|||
|
messages.append({'role': 'user', 'content': questions})
|
|||
|
return call_with_messages(messages)
|
|||
|
|
|||
|
if __name__ == '__main__':
|
|||
|
json_path = 'judge_exist.json'
|
|||
|
prompt = "请你依据以上信息回答,是否组织踏勘现场?是否召开投标预备会?是否允许偏离?是否退还投标文件?是否允许分包? 是否需要递交投标保证金?是否有履约保证金(履约担保)?是否有招标代理服务费?请按json格式给我提供信息,键名分别为'是否组织踏勘现场','是否召开投标预备会','是否允许偏离','是否退还投标文件',是否允许分包','是否需要递交投标保证金','是否有履约保证金','是否有招标代理服务费',键值仅限于'是','否','未知',若存在未知或者矛盾信息,请回答'未知'。"
|
|||
|
try:
|
|||
|
content = qianwen_ask(json_path, prompt)
|
|||
|
print(content)
|
|||
|
except Exception as e:
|
|||
|
print(f"An error occurred: {e}")
|