|
@@ -9,7 +9,6 @@ import werkzeug.exceptions
|
|
from flask import Flask, request, jsonify
|
|
from flask import Flask, request, jsonify
|
|
from sqlalchemy.orm import sessionmaker
|
|
from sqlalchemy.orm import sessionmaker
|
|
|
|
|
|
-import pqai_agent_server
|
|
|
|
import pqai_agent_server.utils
|
|
import pqai_agent_server.utils
|
|
from pqai_agent import chat_service, prompt_templates
|
|
from pqai_agent import chat_service, prompt_templates
|
|
from pqai_agent import configs
|
|
from pqai_agent import configs
|
|
@@ -39,6 +38,7 @@ from pqai_agent_server.utils import wrap_response
|
|
app = Flask('agent_api_server')
|
|
app = Flask('agent_api_server')
|
|
const = AgentApiConst()
|
|
const = AgentApiConst()
|
|
|
|
|
|
|
|
+
|
|
@app.route('/api/listStaffs', methods=['GET'])
|
|
@app.route('/api/listStaffs', methods=['GET'])
|
|
def list_staffs():
|
|
def list_staffs():
|
|
staff_data = app.user_relation_manager.list_staffs()
|
|
staff_data = app.user_relation_manager.list_staffs()
|
|
@@ -175,6 +175,7 @@ def run_prompt():
|
|
logger.error(e)
|
|
logger.error(e)
|
|
return wrap_response(500, msg='Error: {}'.format(e))
|
|
return wrap_response(500, msg='Error: {}'.format(e))
|
|
|
|
|
|
|
|
+
|
|
@app.route('/api/formatForPrompt', methods=['POST'])
|
|
@app.route('/api/formatForPrompt', methods=['POST'])
|
|
def format_data_for_prompt():
|
|
def format_data_for_prompt():
|
|
try:
|
|
try:
|
|
@@ -327,6 +328,7 @@ def enter_human_intervention():
|
|
else:
|
|
else:
|
|
return wrap_response(500, msg="error")
|
|
return wrap_response(500, msg="error")
|
|
|
|
|
|
|
|
+
|
|
## Agent管理接口
|
|
## Agent管理接口
|
|
@app.route("/api/getNativeAgentList", methods=["GET"])
|
|
@app.route("/api/getNativeAgentList", methods=["GET"])
|
|
def get_native_agent_list():
|
|
def get_native_agent_list():
|
|
@@ -369,6 +371,7 @@ def get_native_agent_list():
|
|
}
|
|
}
|
|
return wrap_response(200, data=ret_data)
|
|
return wrap_response(200, data=ret_data)
|
|
|
|
|
|
|
|
+
|
|
@app.route("/api/getNativeAgentConfiguration", methods=["GET"])
|
|
@app.route("/api/getNativeAgentConfiguration", methods=["GET"])
|
|
def get_native_agent_configuration():
|
|
def get_native_agent_configuration():
|
|
"""
|
|
"""
|
|
@@ -400,6 +403,7 @@ def get_native_agent_configuration():
|
|
}
|
|
}
|
|
return wrap_response(200, data=data)
|
|
return wrap_response(200, data=data)
|
|
|
|
|
|
|
|
+
|
|
@app.route("/api/saveNativeAgentConfiguration", methods=["POST"])
|
|
@app.route("/api/saveNativeAgentConfiguration", methods=["POST"])
|
|
def save_native_agent_configuration():
|
|
def save_native_agent_configuration():
|
|
"""
|
|
"""
|
|
@@ -467,7 +471,6 @@ def save_native_agent_configuration():
|
|
return wrap_response(200, msg='Agent configuration saved successfully', data={'id': agent.id})
|
|
return wrap_response(200, msg='Agent configuration saved successfully', data={'id': agent.id})
|
|
|
|
|
|
|
|
|
|
-
|
|
|
|
@app.route("/api/deleteNativeAgentConfiguration", methods=["POST"])
|
|
@app.route("/api/deleteNativeAgentConfiguration", methods=["POST"])
|
|
def delete_native_agent_configuration():
|
|
def delete_native_agent_configuration():
|
|
"""
|
|
"""
|
|
@@ -495,6 +498,7 @@ def delete_native_agent_configuration():
|
|
return wrap_response(200, msg='Agent configuration deleted successfully')
|
|
return wrap_response(200, msg='Agent configuration deleted successfully')
|
|
|
|
|
|
|
|
|
|
|
|
+
|
|
@app.route("/api/getModuleList", methods=["GET"])
|
|
@app.route("/api/getModuleList", methods=["GET"])
|
|
def get_module_list():
|
|
def get_module_list():
|
|
"""
|
|
"""
|
|
@@ -538,6 +542,7 @@ def get_module_list():
|
|
}
|
|
}
|
|
return wrap_response(200, data=ret_data)
|
|
return wrap_response(200, data=ret_data)
|
|
|
|
|
|
|
|
+
|
|
@app.route("/api/getModuleConfiguration", methods=["GET"])
|
|
@app.route("/api/getModuleConfiguration", methods=["GET"])
|
|
def get_module_configuration():
|
|
def get_module_configuration():
|
|
"""
|
|
"""
|
|
@@ -560,10 +565,11 @@ def get_module_configuration():
|
|
'default_agent_type': module.default_agent_type,
|
|
'default_agent_type': module.default_agent_type,
|
|
'default_agent_id': module.default_agent_id,
|
|
'default_agent_id': module.default_agent_id,
|
|
'create_time': module.create_time.strftime('%Y-%m-%d %H:%M:%S'),
|
|
'create_time': module.create_time.strftime('%Y-%m-%d %H:%M:%S'),
|
|
- 'updated_time': module.updated_time.strftime('%Y-%m-%d %H:%M:%S')
|
|
|
|
|
|
+ 'update_time': module.update_time.strftime('%Y-%m-%d %H:%M:%S')
|
|
}
|
|
}
|
|
return wrap_response(200, data=data)
|
|
return wrap_response(200, data=data)
|
|
|
|
|
|
|
|
+
|
|
@app.route("/api/saveModuleConfiguration", methods=["POST"])
|
|
@app.route("/api/saveModuleConfiguration", methods=["POST"])
|
|
def save_module_configuration():
|
|
def save_module_configuration():
|
|
"""
|
|
"""
|
|
@@ -602,6 +608,32 @@ def save_module_configuration():
|
|
session.commit()
|
|
session.commit()
|
|
return wrap_response(200, msg='Module configuration saved successfully', data={'id': module.id})
|
|
return wrap_response(200, msg='Module configuration saved successfully', data={'id': module.id})
|
|
|
|
|
|
|
|
+@app.route("/api/getToolList", methods=["GET"])
|
|
|
|
+def get_tool_list():
|
|
|
|
+ """
|
|
|
|
+ 获取所有的工具列表
|
|
|
|
+ :return:
|
|
|
|
+ """
|
|
|
|
+ tools = []
|
|
|
|
+ for tool_name, tool in global_tool_map.items():
|
|
|
|
+ tools.append({
|
|
|
|
+ 'name': tool_name,
|
|
|
|
+ 'description': tool.get_function_description(),
|
|
|
|
+ 'parameters': tool.parameters if hasattr(tool, 'parameters') else {}
|
|
|
|
+ })
|
|
|
|
+ return wrap_response(200, data=tools)
|
|
|
|
+
|
|
|
|
+@app.route("/api/getModuleAgentTypes", methods=["GET"])
|
|
|
|
+def get_agent_types():
|
|
|
|
+ """
|
|
|
|
+ 获取所有的Agent类型
|
|
|
|
+ :return:
|
|
|
|
+ """
|
|
|
|
+ agent_types = [
|
|
|
|
+ {'type': 0, 'display_name': '原生'},
|
|
|
|
+ {'type': 1, 'display_name': 'Coze'}
|
|
|
|
+ ]
|
|
|
|
+ return wrap_response(200, data=agent_types)
|
|
|
|
|
|
@app.route("/api/getTestTaskList", methods=["GET"])
|
|
@app.route("/api/getTestTaskList", methods=["GET"])
|
|
def get_test_task_list():
|
|
def get_test_task_list():
|