From 312bacbb2396c7c8f1499d5c20f12184444c67fc Mon Sep 17 00:00:00 2001 From: fit2cloud-chenyw Date: Mon, 11 Aug 2025 11:06:04 +0800 Subject: [PATCH] perf: Optimize VLLM OpenAI integration vLLM model validation result parsing --- backend/apps/ai_model/model_factory.py | 3 ++- backend/apps/system/api/aimodel.py | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/backend/apps/ai_model/model_factory.py b/backend/apps/ai_model/model_factory.py index f7e5817d..243c91e0 100644 --- a/backend/apps/ai_model/model_factory.py +++ b/backend/apps/ai_model/model_factory.py @@ -66,13 +66,14 @@ class OpenAIvLLM(BaseLLM): openai_api_key=self.config.api_key or 'Empty', openai_api_base=self.config.api_base_url, model_name=self.config.model_name, + streaming=True, **self.config.additional_params, ) class OpenAILLM(BaseLLM): def _init_llm(self) -> BaseChatModel: return BaseChatOpenAI( model=self.config.model_name, - api_key=self.config.api_key, + api_key=self.config.api_key or 'Empty', base_url=self.config.api_base_url, stream_usage=True, **self.config.additional_params, diff --git a/backend/apps/system/api/aimodel.py b/backend/apps/system/api/aimodel.py index 6eea3549..c33fd4ee 100644 --- a/backend/apps/system/api/aimodel.py +++ b/backend/apps/system/api/aimodel.py @@ -28,7 +28,10 @@ async def check_llm(info: AiModelCreator, trans: Trans): ) llm_instance = LLMFactory.create_llm(config) async for chunk in llm_instance.llm.astream("1+1=?"): - if chunk and chunk.content: + SQLBotLogUtil.info(chunk) + if chunk and isinstance(chunk, str): + yield json.dumps({"content": chunk}) + "\n" + if chunk and isinstance(chunk, dict) and chunk.content: yield json.dumps({"content": chunk.content}) + "\n" except Exception as e: