diff --git a/api/app/clients/OpenAIClient.js b/api/app/clients/OpenAIClient.js index 3554f4d6543..9cde8b56e98 100644 --- a/api/app/clients/OpenAIClient.js +++ b/api/app/clients/OpenAIClient.js @@ -423,6 +423,7 @@ class OpenAIClient extends BaseClient { promptPrefix: this.options.promptPrefix, resendFiles: this.options.resendFiles, imageDetail: this.options.imageDetail, + modelLabel: this.options.modelLabel, iconURL: this.options.iconURL, greeting: this.options.greeting, spec: this.options.spec, diff --git a/api/app/clients/PluginsClient.js b/api/app/clients/PluginsClient.js index 09e3dc5adc4..7259eb56f28 100644 --- a/api/app/clients/PluginsClient.js +++ b/api/app/clients/PluginsClient.js @@ -43,6 +43,7 @@ class PluginsClient extends OpenAIClient { return { artifacts: this.options.artifacts, chatGptLabel: this.options.chatGptLabel, + modelLabel: this.options.modelLabel, promptPrefix: this.options.promptPrefix, tools: this.options.tools, ...this.modelOptions, diff --git a/api/app/clients/specs/OpenAIClient.test.js b/api/app/clients/specs/OpenAIClient.test.js index 2fa37957d17..ab70d4c9070 100644 --- a/api/app/clients/specs/OpenAIClient.test.js +++ b/api/app/clients/specs/OpenAIClient.test.js @@ -412,6 +412,7 @@ describe('OpenAIClient', () => { it('should return the correct save options', () => { const options = client.getSaveOptions(); expect(options).toHaveProperty('chatGptLabel'); + expect(options).toHaveProperty('modelLabel'); expect(options).toHaveProperty('promptPrefix'); }); }); diff --git a/api/models/Agent.js b/api/models/Agent.js index 206c983f979..5f448502a51 100644 --- a/api/models/Agent.js +++ b/api/models/Agent.js @@ -200,6 +200,7 @@ const getListAgents = async (searchParameter) => { avatar: 1, author: 1, projectIds: 1, + description: 1, isCollaborative: 1, }).lean() ).map((agent) => { diff --git a/api/server/middleware/buildEndpointOption.js b/api/server/middleware/buildEndpointOption.js index 7559fcca56c..a0ce754a1c4 100644 --- a/api/server/middleware/buildEndpointOption.js +++ b/api/server/middleware/buildEndpointOption.js @@ -63,6 +63,10 @@ async function buildEndpointOption(req, res, next) { } try { + currentModelSpec.preset.spec = spec; + if (currentModelSpec.iconURL != null && currentModelSpec.iconURL !== '') { + currentModelSpec.preset.iconURL = currentModelSpec.iconURL; + } parsedBody = parseCompactConvo({ endpoint, endpointType, diff --git a/client/src/a11y/LiveAnnouncer.tsx b/client/src/a11y/LiveAnnouncer.tsx index 9df48bf2e98..29912b49af7 100644 --- a/client/src/a11y/LiveAnnouncer.tsx +++ b/client/src/a11y/LiveAnnouncer.tsx @@ -1,6 +1,6 @@ // client/src/a11y/LiveAnnouncer.tsx import React, { useState, useCallback, useRef, useEffect, useMemo } from 'react'; -import type { AnnounceOptions } from '~/Providers/AnnouncerContext'; +import type { AnnounceOptions } from '~/common'; import AnnouncerContext from '~/Providers/AnnouncerContext'; import useLocalize from '~/hooks/useLocalize'; import Announcer from './Announcer'; diff --git a/client/src/components/Audio/Voices.tsx b/client/src/components/Audio/Voices.tsx index ab6b0a86090..963ff250d86 100644 --- a/client/src/components/Audio/Voices.tsx +++ b/client/src/components/Audio/Voices.tsx @@ -1,7 +1,6 @@ import React from 'react'; import { useRecoilState } from 'recoil'; import type { Option } from '~/common'; -import DropdownNoState from '~/components/ui/DropdownNoState'; import { useLocalize, useTTSBrowser, useTTSEdge, useTTSExternal } from '~/hooks'; import { Dropdown } from '~/components/ui'; import { logger } from '~/utils'; diff --git a/client/src/components/Auth/AuthLayout.tsx b/client/src/components/Auth/AuthLayout.tsx index 0ff99f357cf..6df73d2cf94 100644 --- a/client/src/components/Auth/AuthLayout.tsx +++ b/client/src/components/Auth/AuthLayout.tsx @@ -9,8 +9,9 @@ import Footer from './Footer'; const ErrorRender = ({ children }: { children: React.ReactNode }) => (