diff --git a/app/(chat)/api/models/route.ts b/app/(chat)/api/models/route.ts index 0fd6ceec6..cec284614 100644 --- a/app/(chat)/api/models/route.ts +++ b/app/(chat)/api/models/route.ts @@ -1,5 +1,9 @@ import { auth } from "@/app/(auth)/auth"; -import { getEnabledAiModelsWithProvider, getDefaultAiModel } from "@/lib/db/queries"; +import { + getAgentAiModelWithProvider, + getDefaultAiModel, + getEnabledAiModelsWithProvider, +} from "@/lib/db/queries"; import { ChatSDKError } from "@/lib/errors"; import { isAiModelAgentAuto } from "@/lib/db/ai-model-flags"; @@ -14,6 +18,7 @@ export async function GET() { // 只获取主模型(不包括子模型),子模型由后端根据 videoParams.mode 自动选择 const modelsWithProvider = await getEnabledAiModelsWithProvider(false); + const agentModelWithProvider = await getAgentAiModelWithProvider(); const defaultModel = await getDefaultAiModel(); const visibleModelsWithProvider = modelsWithProvider.filter( ({ model }) => !isAiModelAgentAuto(model) @@ -48,6 +53,14 @@ export async function GET() { return Response.json({ models, defaultModelId: resolvedDefaultModelId, + agentModel: agentModelWithProvider + ? { + id: agentModelWithProvider.model.id, + displayName: agentModelWithProvider.model.displayName, + avatarUrl: agentModelWithProvider.model.avatarUrl, + providerType: agentModelWithProvider.provider.type, + } + : null, }); } catch (error) { if (error instanceof ChatSDKError) { diff --git a/components/canvas/CanvasChatPanel.tsx b/components/canvas/CanvasChatPanel.tsx index 87fdaf06f..8177143bf 100644 --- a/components/canvas/CanvasChatPanel.tsx +++ b/components/canvas/CanvasChatPanel.tsx @@ -827,6 +827,12 @@ export function CanvasChatPanel({ chatId, initialMessages = [], onClose, onOpenF supportsImageGen?: boolean; capabilities?: string[] | null; }>; + agentModel?: { + id: string; + displayName: string; + avatarUrl?: string | null; + providerType: string; + } | null; }>("/api/models", fetcher); // 获取网站设置(包含广告横幅配置和画布设置) @@ -849,7 +855,7 @@ export function CanvasChatPanel({ chatId, initialMessages = [], onClose, onOpenF id: "auto", modelId: "auto", displayName: "Agent模式", - avatarUrl: null, + avatarUrl: modelsData?.agentModel?.avatarUrl || null, providerType: "auto", supportsImageGen: true, };