From 02dbe80d2fd596e7374b0079ec7871cb1d009531 Mon Sep 17 00:00:00 2001 From: Junyan Qin Date: Thu, 7 Aug 2025 10:01:04 +0800 Subject: [PATCH] perf: model testing --- pkg/api/http/service/model.py | 2 +- pkg/provider/modelmgr/requesters/anthropicmsgs.py | 4 ++-- .../modelmgr/requesters/anthropicmsgs.yaml | 2 +- .../component/embedding-form/EmbeddingForm.tsx | 13 +++++++++++++ .../app/home/models/component/llm-form/LLMForm.tsx | 14 +++++++++++++- .../components/debug-dialog/DebugDialog.tsx | 2 +- 6 files changed, 31 insertions(+), 6 deletions(-) diff --git a/pkg/api/http/service/model.py b/pkg/api/http/service/model.py index d8457da3..d3f3d5d8 100644 --- a/pkg/api/http/service/model.py +++ b/pkg/api/http/service/model.py @@ -101,7 +101,7 @@ class LLMModelsService: model=runtime_llm_model, messages=[llm_entities.Message(role='user', content='Hello, world!')], funcs=[], - extra_args={}, + extra_args=model_data.get('extra_args', {}), ) diff --git a/pkg/provider/modelmgr/requesters/anthropicmsgs.py b/pkg/provider/modelmgr/requesters/anthropicmsgs.py index 75f2bf7e..e0850c03 100644 --- a/pkg/provider/modelmgr/requesters/anthropicmsgs.py +++ b/pkg/provider/modelmgr/requesters/anthropicmsgs.py @@ -21,7 +21,7 @@ class AnthropicMessages(requester.ProviderAPIRequester): client: anthropic.AsyncAnthropic default_config: dict[str, typing.Any] = { - 'base_url': 'https://api.anthropic.com/v1', + 'base_url': 'https://api.anthropic.com', 'timeout': 120, } @@ -44,6 +44,7 @@ class AnthropicMessages(requester.ProviderAPIRequester): self.client = anthropic.AsyncAnthropic( api_key='', http_client=httpx_client, + base_url=self.requester_cfg['base_url'], ) async def invoke_llm( @@ -141,7 +142,6 @@ class AnthropicMessages(requester.ProviderAPIRequester): args['tools'] = tools try: - # print(json.dumps(args, indent=4, ensure_ascii=False)) resp = await self.client.messages.create(**args) args = { diff --git a/pkg/provider/modelmgr/requesters/anthropicmsgs.yaml b/pkg/provider/modelmgr/requesters/anthropicmsgs.yaml index 7dbcf3ed..e3f745fb 100644 --- a/pkg/provider/modelmgr/requesters/anthropicmsgs.yaml +++ b/pkg/provider/modelmgr/requesters/anthropicmsgs.yaml @@ -14,7 +14,7 @@ spec: zh_Hans: 基础 URL type: string required: true - default: "https://api.anthropic.com/v1" + default: "https://api.anthropic.com" - name: timeout label: en_US: Timeout diff --git a/web/src/app/home/models/component/embedding-form/EmbeddingForm.tsx b/web/src/app/home/models/component/embedding-form/EmbeddingForm.tsx index d50885ae..18be1662 100644 --- a/web/src/app/home/models/component/embedding-form/EmbeddingForm.tsx +++ b/web/src/app/home/models/component/embedding-form/EmbeddingForm.tsx @@ -298,6 +298,18 @@ export default function EmbeddingForm({ function testEmbeddingModelInForm() { setModelTesting(true); + const extraArgsObj: Record = {}; + form + .getValues('extra_args') + ?.forEach((arg: { key: string; type: string; value: string }) => { + if (arg.type === 'number') { + extraArgsObj[arg.key] = Number(arg.value); + } else if (arg.type === 'boolean') { + extraArgsObj[arg.key] = arg.value === 'true'; + } else { + extraArgsObj[arg.key] = arg.value; + } + }); httpClient .testEmbeddingModel('_', { uuid: '', @@ -309,6 +321,7 @@ export default function EmbeddingForm({ timeout: 120, }, api_keys: [form.getValues('api_key')], + extra_args: extraArgsObj, }) .then((res) => { console.log(res); diff --git a/web/src/app/home/models/component/llm-form/LLMForm.tsx b/web/src/app/home/models/component/llm-form/LLMForm.tsx index 73cc32fe..f7c329e1 100644 --- a/web/src/app/home/models/component/llm-form/LLMForm.tsx +++ b/web/src/app/home/models/component/llm-form/LLMForm.tsx @@ -312,6 +312,18 @@ export default function LLMForm({ function testLLMModelInForm() { setModelTesting(true); + const extraArgsObj: Record = {}; + form + .getValues('extra_args') + ?.forEach((arg: { key: string; type: string; value: string }) => { + if (arg.type === 'number') { + extraArgsObj[arg.key] = Number(arg.value); + } else if (arg.type === 'boolean') { + extraArgsObj[arg.key] = arg.value === 'true'; + } else { + extraArgsObj[arg.key] = arg.value; + } + }); httpClient .testLLMModel('_', { uuid: '', @@ -324,7 +336,7 @@ export default function LLMForm({ }, api_keys: [form.getValues('api_key')], abilities: form.getValues('abilities'), - extra_args: form.getValues('extra_args'), + extra_args: extraArgsObj, }) .then((res) => { console.log(res); diff --git a/web/src/app/home/pipelines/components/debug-dialog/DebugDialog.tsx b/web/src/app/home/pipelines/components/debug-dialog/DebugDialog.tsx index 8505f4f9..e29af1c3 100644 --- a/web/src/app/home/pipelines/components/debug-dialog/DebugDialog.tsx +++ b/web/src/app/home/pipelines/components/debug-dialog/DebugDialog.tsx @@ -257,7 +257,7 @@ export default function DebugDialog({ sessionType, messageChain, selectedPipelineId, - 120000, + 180000, ); setMessages((prevMessages) => [...prevMessages, response.message]);