feat: add embeding tag to settings
This commit is contained in:
parent
153e7a9299
commit
5b42a6d054
@ -347,8 +347,14 @@ export const SYSTEM_MODELS: Record<string, Model[]> = {
|
|||||||
{
|
{
|
||||||
id: 'deepseek-chat',
|
id: 'deepseek-chat',
|
||||||
provider: 'deepseek',
|
provider: 'deepseek',
|
||||||
name: 'DeepSeek V2.5',
|
name: 'DeepSeek Chat',
|
||||||
group: 'DeepSeek V2.5'
|
group: 'DeepSeek Chat'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 'deepseek-coder',
|
||||||
|
provider: 'deepseek',
|
||||||
|
name: 'DeepSeek Coder',
|
||||||
|
group: 'DeepSeek Coder'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
together: [
|
together: [
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { EditOutlined, MessageOutlined, RedoOutlined, SettingOutlined, TranslationOutlined } from '@ant-design/icons'
|
import { EditOutlined, MessageOutlined, RedoOutlined, SettingOutlined, TranslationOutlined } from '@ant-design/icons'
|
||||||
import { HStack } from '@renderer/components/Layout'
|
import { HStack } from '@renderer/components/Layout'
|
||||||
import PromptPopup from '@renderer/components/Popups/PromptPopup'
|
import PromptPopup from '@renderer/components/Popups/PromptPopup'
|
||||||
|
import { isEmbeddingModel } from '@renderer/config/models'
|
||||||
import { TRANSLATE_PROMPT } from '@renderer/config/prompts'
|
import { TRANSLATE_PROMPT } from '@renderer/config/prompts'
|
||||||
import { useTheme } from '@renderer/context/ThemeProvider'
|
import { useTheme } from '@renderer/context/ThemeProvider'
|
||||||
import { useDefaultModel } from '@renderer/hooks/useAssistant'
|
import { useDefaultModel } from '@renderer/hooks/useAssistant'
|
||||||
@ -35,10 +36,12 @@ const ModelSettings: FC = () => {
|
|||||||
.map((p) => ({
|
.map((p) => ({
|
||||||
label: p.isSystem ? t(`provider.${p.id}`) : p.name,
|
label: p.isSystem ? t(`provider.${p.id}`) : p.name,
|
||||||
title: p.name,
|
title: p.name,
|
||||||
options: sortBy(p.models, 'name').map((m) => ({
|
options: sortBy(p.models, 'name')
|
||||||
label: m.name,
|
.filter((m) => !isEmbeddingModel(m))
|
||||||
value: getModelUniqId(m)
|
.map((m) => ({
|
||||||
}))
|
label: m.name,
|
||||||
|
value: getModelUniqId(m)
|
||||||
|
}))
|
||||||
}))
|
}))
|
||||||
|
|
||||||
const defaultModelValue = useMemo(
|
const defaultModelValue = useMemo(
|
||||||
|
|||||||
@ -9,7 +9,14 @@ import {
|
|||||||
} from '@ant-design/icons'
|
} from '@ant-design/icons'
|
||||||
import VisionIcon from '@renderer/components/Icons/VisionIcon'
|
import VisionIcon from '@renderer/components/Icons/VisionIcon'
|
||||||
import WebSearchIcon from '@renderer/components/Icons/WebSearchIcon'
|
import WebSearchIcon from '@renderer/components/Icons/WebSearchIcon'
|
||||||
import { EMBEDDING_REGEX, getModelLogo, isVisionModel, isWebSearchModel, VISION_REGEX } from '@renderer/config/models'
|
import {
|
||||||
|
EMBEDDING_REGEX,
|
||||||
|
getModelLogo,
|
||||||
|
isEmbeddingModel,
|
||||||
|
isVisionModel,
|
||||||
|
isWebSearchModel,
|
||||||
|
VISION_REGEX
|
||||||
|
} from '@renderer/config/models'
|
||||||
import { PROVIDER_CONFIG } from '@renderer/config/providers'
|
import { PROVIDER_CONFIG } from '@renderer/config/providers'
|
||||||
import { useTheme } from '@renderer/context/ThemeProvider'
|
import { useTheme } from '@renderer/context/ThemeProvider'
|
||||||
import { useAssistants, useDefaultModel } from '@renderer/hooks/useAssistant'
|
import { useAssistants, useDefaultModel } from '@renderer/hooks/useAssistant'
|
||||||
@ -20,7 +27,7 @@ import { checkApi } from '@renderer/services/ApiService'
|
|||||||
import { useAppDispatch } from '@renderer/store'
|
import { useAppDispatch } from '@renderer/store'
|
||||||
import { setModel } from '@renderer/store/assistants'
|
import { setModel } from '@renderer/store/assistants'
|
||||||
import { Model, ModelType, Provider } from '@renderer/types'
|
import { Model, ModelType, Provider } from '@renderer/types'
|
||||||
import { Avatar, Button, Card, Checkbox, Divider, Flex, Input, Popover, Space, Switch } from 'antd'
|
import { Avatar, Button, Card, Checkbox, Divider, Flex, Input, Popover, Space, Switch, Tag } from 'antd'
|
||||||
import Link from 'antd/es/typography/Link'
|
import Link from 'antd/es/typography/Link'
|
||||||
import { groupBy, isEmpty } from 'lodash'
|
import { groupBy, isEmpty } from 'lodash'
|
||||||
import { FC, useEffect, useState } from 'react'
|
import { FC, useEffect, useState } from 'react'
|
||||||
@ -273,6 +280,11 @@ const ProviderSetting: FC<Props> = ({ provider: _provider }) => {
|
|||||||
</Avatar>
|
</Avatar>
|
||||||
{model.name} {isVisionModel(model) && <VisionIcon />}
|
{model.name} {isVisionModel(model) && <VisionIcon />}
|
||||||
{isWebSearchModel(model) && <WebSearchIcon />}
|
{isWebSearchModel(model) && <WebSearchIcon />}
|
||||||
|
{isEmbeddingModel(model) && (
|
||||||
|
<Tag style={{ marginLeft: 10 }} color="orange">
|
||||||
|
{t('models.embedding')}
|
||||||
|
</Tag>
|
||||||
|
)}
|
||||||
<Popover content={modelTypeContent(model)} title={t('models.type.select')} trigger="click">
|
<Popover content={modelTypeContent(model)} title={t('models.type.select')} trigger="click">
|
||||||
<SettingIcon />
|
<SettingIcon />
|
||||||
</Popover>
|
</Popover>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user