diff --git a/src/mindpilot/app/api/openai_routes.py b/src/mindpilot/app/api/openai_routes.py index 4a7617b..a510e2f 100644 --- a/src/mindpilot/app/api/openai_routes.py +++ b/src/mindpilot/app/api/openai_routes.py @@ -17,7 +17,7 @@ from openai.types.file_object import FileObject from sse_starlette.sse import EventSourceResponse # from chatchat.configs import BASE_TEMP_DIR, log_verbose -from ..utils import get_OpenAIClient + from .api_schemas import * diff --git a/src/mindpilot/app/tools/search_internet.py b/src/mindpilot/app/tools/search_internet.py index f25d0a7..0683ecd 100644 --- a/src/mindpilot/app/tools/search_internet.py +++ b/src/mindpilot/app/tools/search_internet.py @@ -6,12 +6,13 @@ from langchain_community.utilities import BingSearchAPIWrapper from langchain_community.utilities import DuckDuckGoSearchAPIWrapper from markdownify import markdownify from strsimpy.normalized_levenshtein import NormalizedLevenshtein -from app.utils import get_tool_config + from ..pydantic_v1 import Field # from chatchat.server.utils import get_tool_config from .tools_registry import BaseToolOutput, regist_tool +from ..utils.openai_utils import get_tool_config def bing_search(text, config): diff --git a/src/mindpilot/app/tools/weather_check.py b/src/mindpilot/app/tools/weather_check.py index 2fddd66..4f17b2b 100644 --- a/src/mindpilot/app/tools/weather_check.py +++ b/src/mindpilot/app/tools/weather_check.py @@ -6,8 +6,7 @@ import requests from ..pydantic_v1 import Field from .tools_registry import BaseToolOutput, regist_tool - -from app.utils import get_tool_config +from ..utils.openai_utils import get_tool_config @regist_tool(title="天气查询") diff --git a/src/mindpilot/app/tools/wolfram.py b/src/mindpilot/app/tools/wolfram.py index 1627867..3edf5cf 100644 --- a/src/mindpilot/app/tools/wolfram.py +++ b/src/mindpilot/app/tools/wolfram.py @@ -1,8 +1,9 @@ # Langchain 自带的 Wolfram Alpha API 封装 from ..pydantic_v1 import Field -from app.utils import get_tool_config + from .tools_registry import BaseToolOutput, regist_tool +from ..utils.openai_utils import get_tool_config @regist_tool diff --git a/src/mindpilot/app/utils/openai_utils.py b/src/mindpilot/app/utils/openai_utils.py index c8d337f..44c1208 100644 --- a/src/mindpilot/app/utils/openai_utils.py +++ b/src/mindpilot/app/utils/openai_utils.py @@ -148,7 +148,7 @@ def get_prompt_template(type: str, name: str) -> Optional[str]: type: "llm_chat","knowledge_base_chat","search_engine_chat"的其中一种,如果有新功能,应该进行加入。 """ - from .configs.prompt_config import PROMPT_TEMPLATES + from src.mindpilot.app.configs import PROMPT_TEMPLATES return PROMPT_TEMPLATES.get(type, {}).get(name) @@ -156,12 +156,11 @@ def get_prompt_template(type: str, name: str) -> Optional[str]: def get_tool(name: str = None) -> Union[BaseTool, Dict[str, BaseTool]]: import importlib - from app import tools + from src.mindpilot.app import tools importlib.reload(tools) - from app.tools import tools_registry - + from src.mindpilot.app.tools import tools_registry if name is None: return tools_registry._TOOLS_REGISTRY @@ -183,10 +182,11 @@ async def wrap_done(fn: Awaitable, event: asyncio.Event): # Signal the aiter to stop. event.set() + def get_OpenAIClient( - platform_name: str = None, - model_name: str = None, - is_async: bool = True, + platform_name: str = None, + model_name: str = None, + is_async: bool = True, ) -> Union[openai.Client, openai.AsyncClient]: # """ # construct an openai Client for specified platform or model @@ -204,7 +204,7 @@ def get_OpenAIClient( # assert platform_info, f"cannot find configured platform: {platform_name}" # TODO 配置文件 params = { - "base_url":"https://open.bigmodel.cn/api/paas/v4/", + "base_url": "https://open.bigmodel.cn/api/paas/v4/", "api_key": "8424573178d3681bb2e9bfbc5af24dd5.BKKxdk1d6zzgvfnV" } httpx_params = {} @@ -223,11 +223,11 @@ def get_OpenAIClient( params["http_client"] = httpx.Client(**httpx_params) return openai.Client(**params) -def get_tool_config(name: str = None) -> Dict: - from app.configs import TOOL_CONFIG +def get_tool_config(name: str = None) -> Dict: + from src.mindpilot.app.configs import TOOL_CONFIG if name is None: return TOOL_CONFIG else: - return TOOL_CONFIG.get(name, {}) \ No newline at end of file + return TOOL_CONFIG.get(name, {})