优化:使用模型提取后的用户输入,再输入到模型

This commit is contained in:
2025-01-03 14:43:05 +08:00
parent 1ff5de111b
commit ff06db7ec1

View File

@@ -240,35 +240,37 @@ def call_with_messages(message, gender):
# 如果模型选择的工具是internet_search
elif assistant_output.tool_calls[0]['function']['name'] == 'internet_search':
tool_info = {"name": "search_from_internet", "role": "tool"}
content = json.loads(assistant_output.tool_calls[0]['function']['arguments'])
message = [
{'role': 'assistant', 'content': user_input}
{'role': 'assistant', 'content': content['query']}
]
tool_info['content'] = search_from_internet(message)
flag = False
result_content = tool_info['content'].output.text
# 如果模型选择的工具是get_database_table
elif assistant_output.tool_calls[0]['function']['name'] == 'get_database_table':
tool_info = {"name": "get_database_table", "role": "tool", 'content': get_database_table()}
# 如果模型选择的工具是get_table_info
elif assistant_output.tool_calls[0]['function']['name'] == 'get_table_info':
tool_info = {"name": "get_table_info", "role": "tool"}
table_names = json.loads(assistant_output.tool_calls[0]['function']['arguments'])['table_names']
tool_info['content'] = get_table_info(table_names)
# 如果模型选择的工具是query_database
elif assistant_output.tool_calls[0]['function']['name'] == 'query_database':
tool_info = {"name": "query_database", "role": "tool"}
sql_string = json.loads(assistant_output.tool_calls[0]['function']['arguments'])['sql_string']
tool_info['content'] = query_database(sql_string)
flag = False
result_content = tool_info['content']
response_type = "image"
# elif assistant_output.tool_calls[0]['function']['name'] == 'get_database_table':
# tool_info = {"name": "get_database_table", "role": "tool", 'content': get_database_table()}
# # 如果模型选择的工具是get_table_info
# elif assistant_output.tool_calls[0]['function']['name'] == 'get_table_info':
# tool_info = {"name": "get_table_info", "role": "tool"}
# table_names = json.loads(assistant_output.tool_calls[0]['function']['arguments'])['table_names']
# tool_info['content'] = get_table_info(table_names)
# # 如果模型选择的工具是query_database
# elif assistant_output.tool_calls[0]['function']['name'] == 'query_database':
# tool_info = {"name": "query_database", "role": "tool"}
# sql_string = json.loads(assistant_output.tool_calls[0]['function']['arguments'])['sql_string']
# tool_info['content'] = query_database(sql_string)
# flag = False
# result_content = tool_info['content']
# response_type = "image"
elif assistant_output.tool_calls[0]['function']['name'] == 'tutorial_tool':
tool_info = {"name": "tutorial_tool", "role": "tool", 'content': tutorial_tool()}
flag = False
result_content = tool_info['content']
elif assistant_output.tool_calls[0]['function']['name'] == 'get_image_from_vector_db':
content = json.loads(assistant_output.tool_calls[0]['function']['arguments'])
tool_info = {"name": "get_image_from_vector_db", "role": "tool",
'content': get_image_from_vector_db(gender, user_input)}
'content': get_image_from_vector_db(gender, content['parameters']['content'])}
flag = False
result_content = tool_info['content']
response_type = "image"