Quellcode durchsuchen

Update API server for management

StrayWarrior vor 2 Tagen
Ursprung
Commit
7d990c84db
2 geänderte Dateien mit 29 neuen und 2 gelöschten Zeilen
  1. 28 1
      pqai_agent_server/api_server.py
  2. 1 1
      pqai_agent_server/utils/common.py

+ 28 - 1
pqai_agent_server/api_server.py

@@ -13,7 +13,7 @@ from pqai_agent import configs
 
 from pqai_agent import chat_service, prompt_templates
 from pqai_agent.logging import logger, setup_root_logger
-from pqai_agent.agents.message_reply_agent import MessageReplyAgent
+from pqai_agent.toolkit import global_tool_map
 from pqai_agent.data_models.agent_configuration import AgentConfiguration
 from pqai_agent.data_models.service_module import ServiceModule
 from pqai_agent.history_dialogue_service import HistoryDialogueService
@@ -520,6 +520,33 @@ def save_module_configuration():
         session.commit()
         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.errorhandler(werkzeug.exceptions.BadRequest)
 def handle_bad_request(e):
     logger.error(e)

+ 1 - 1
pqai_agent_server/utils/common.py

@@ -13,5 +13,5 @@ def wrap_response(code, msg=None, data=None):
 
 def quit_human_intervention_status(user_id, staff_id):
     url = f"http://ai-wechat-hook-internal.piaoquantv.com/manage/insertEvent?sender={user_id}&receiver={staff_id}&type=103&content=SYSTEM"
-    response = requests.get(url, timeout=20)
+    response = requests.post(url, timeout=20)
     return response.json()