feat: add embeding tag to settings

This commit is contained in:
kangfenmao 2024-12-26 12:25:36 +08:00
parent 153e7a9299
commit 5b42a6d054
3 changed files with 29 additions and 8 deletions

View File

@ -347,8 +347,14 @@ export const SYSTEM_MODELS: Record<string, Model[]> = {
{
id: 'deepseek-chat',
provider: 'deepseek',
name: 'DeepSeek V2.5',
group: 'DeepSeek V2.5'
name: 'DeepSeek Chat',
group: 'DeepSeek Chat'
},
{
id: 'deepseek-coder',
provider: 'deepseek',
name: 'DeepSeek Coder',
group: 'DeepSeek Coder'
}
],
together: [

View File

@ -1,6 +1,7 @@
import { EditOutlined, MessageOutlined, RedoOutlined, SettingOutlined, TranslationOutlined } from '@ant-design/icons'
import { HStack } from '@renderer/components/Layout'
import PromptPopup from '@renderer/components/Popups/PromptPopup'
import { isEmbeddingModel } from '@renderer/config/models'
import { TRANSLATE_PROMPT } from '@renderer/config/prompts'
import { useTheme } from '@renderer/context/ThemeProvider'
import { useDefaultModel } from '@renderer/hooks/useAssistant'
@ -35,10 +36,12 @@ const ModelSettings: FC = () => {
.map((p) => ({
label: p.isSystem ? t(`provider.${p.id}`) : p.name,
title: p.name,
options: sortBy(p.models, 'name').map((m) => ({
label: m.name,
value: getModelUniqId(m)
}))
options: sortBy(p.models, 'name')
.filter((m) => !isEmbeddingModel(m))
.map((m) => ({
label: m.name,
value: getModelUniqId(m)
}))
}))
const defaultModelValue = useMemo(

View File

@ -9,7 +9,14 @@ import {
} from '@ant-design/icons'
import VisionIcon from '@renderer/components/Icons/VisionIcon'
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 { useTheme } from '@renderer/context/ThemeProvider'
import { useAssistants, useDefaultModel } from '@renderer/hooks/useAssistant'
@ -20,7 +27,7 @@ import { checkApi } from '@renderer/services/ApiService'
import { useAppDispatch } from '@renderer/store'
import { setModel } from '@renderer/store/assistants'
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 { groupBy, isEmpty } from 'lodash'
import { FC, useEffect, useState } from 'react'
@ -273,6 +280,11 @@ const ProviderSetting: FC<Props> = ({ provider: _provider }) => {
</Avatar>
{model.name} {isVisionModel(model) && <VisionIcon />}
{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">
<SettingIcon />
</Popover>