From 69f93d167c2cf64dc2a1839061e1618cbc305cc1 Mon Sep 17 00:00:00 2001 From: kangfenmao Date: Sat, 7 Sep 2024 18:11:13 +0800 Subject: [PATCH] feat: Improved model selection and unique id generation - Improved dropdown menu selection logic for models. - Changes improve ModelSettings component to use getModelUniqId function for model identifiers. - Added modeling service functionality to generate unique model identifiers. --- .../src/pages/home/components/SelectModelDropdown.tsx | 11 ++++++++--- src/renderer/src/pages/settings/ModelSettings.tsx | 11 ++++++----- src/renderer/src/services/model.ts | 6 ++++++ 3 files changed, 20 insertions(+), 8 deletions(-) create mode 100644 src/renderer/src/services/model.ts diff --git a/src/renderer/src/pages/home/components/SelectModelDropdown.tsx b/src/renderer/src/pages/home/components/SelectModelDropdown.tsx index 131b7d9061..8df1f8f58c 100644 --- a/src/renderer/src/pages/home/components/SelectModelDropdown.tsx +++ b/src/renderer/src/pages/home/components/SelectModelDropdown.tsx @@ -1,5 +1,6 @@ import { getModelLogo } from '@renderer/config/provider' import { useProviders } from '@renderer/hooks/useProvider' +import { getModelUniqId } from '@renderer/services/model' import { Model } from '@renderer/types' import { Avatar, Dropdown, DropdownProps, MenuProps } from 'antd' import { first, reverse, sortBy, upperFirst } from 'lodash' @@ -23,9 +24,9 @@ const SelectModelDropdown: FC = ({ children, model, o label: p.isSystem ? t(`provider.${p.id}`) : p.name, type: 'group', children: reverse(sortBy(p.models, 'name')).map((m) => ({ - key: m?.id, + key: getModelUniqId(m), label: upperFirst(m?.name), - defaultSelectedKeys: [model?.id], + defaultSelectedKeys: model ? [getModelUniqId(model)] : [], icon: ( {first(m?.name)} @@ -37,7 +38,11 @@ const SelectModelDropdown: FC = ({ children, model, o return ( { title: p.name, options: sortBy(p.models, 'name').map((m) => ({ label: upperFirst(m.name), - value: m.id + value: getModelUniqId(m) })) })) - const iconStyle = { fontSize: 16, marginRight: 8 } - return ( @@ -39,9 +38,9 @@ const ModelSettings: FC = () => {