Commit 1e355c47 authored by crazywoola's avatar crazywoola

feat: support change model in fe

parent f8951d7f
......@@ -24,6 +24,9 @@ import {
useModelList,
useModelListAndDefaultModelAndCurrentProviderAndModel,
} from '@/app/components/header/account-setting/model-provider-page/hooks'
import type {
DefaultModel,
} from '@/app/components/header/account-setting/model-provider-page/declarations'
const rowClass = `
flex justify-between py-4 flex-wrap gap-y-2
......@@ -58,7 +61,17 @@ const Form = () => {
const [permission, setPermission] = useState(currentDataset?.permission)
const [indexMethod, setIndexMethod] = useState(currentDataset?.indexing_technique)
const [retrievalConfig, setRetrievalConfig] = useState(currentDataset?.retrieval_model_dict as RetrievalConfig)
const [embeddingModel, setEmbeddingModel] = useState<DefaultModel>(
currentDataset?.embedding_model
? {
provider: currentDataset.embedding_model_provider,
model: currentDataset.embedding_model,
}
: {
provider: '',
model: '',
},
)
const {
modelList: rerankModelList,
defaultModel: rerankDefaultModel,
......@@ -100,6 +113,8 @@ const Form = () => {
permission,
indexing_technique: indexMethod,
retrieval_model: postRetrievalConfig,
embedding_model: embeddingModel.model,
embedding_model_provider: embeddingModel.provider,
},
})
notify({ type: 'success', message: t('common.actionMsg.modifiedSuccessfully') })
......@@ -188,18 +203,13 @@ const Form = () => {
</div>
<div className='w-[480px]'>
<ModelSelector
readonly
triggerClassName='!h-9 !cursor-not-allowed opacity-60'
defaultModel={{
provider: currentDataset.embedding_model_provider,
model: currentDataset.embedding_model,
}}
triggerClassName=''
defaultModel={embeddingModel}
modelList={embeddingModelList}
onSelect={(model: DefaultModel) => {
setEmbeddingModel(model)
}}
/>
<div className='mt-2 w-full text-xs leading-6 text-gray-500'>
{t('datasetSettings.form.embeddingModelTip')}
<span className='text-[#155eef] cursor-pointer' onClick={() => setShowAccountSettingModal({ payload: 'provider' })}>{t('datasetSettings.form.embeddingModelTipLink')}</span>
</div>
</div>
</div>
)}
......
......@@ -49,7 +49,12 @@ export const fetchDatasetDetail: Fetcher<DataSet, string> = (datasetId: string)
return get<DataSet>(`/datasets/${datasetId}`)
}
export const updateDatasetSetting: Fetcher<DataSet, { datasetId: string; body: Partial<Pick<DataSet, 'name' | 'description' | 'permission' | 'indexing_technique' | 'retrieval_model'>> }> = ({ datasetId, body }) => {
export const updateDatasetSetting: Fetcher<DataSet, {
datasetId: string
body: Partial<Pick<DataSet,
'name' | 'description' | 'permission' | 'indexing_technique' | 'retrieval_model' | 'embedding_model' | 'embedding_model_provider'
>>
}> = ({ datasetId, body }) => {
return patch<DataSet>(`/datasets/${datasetId}`, { body })
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment