Model Runtime (#1858)
Co-authored-by: StyleZhang <jasonapring2015@outlook.com> Co-authored-by: Garfield Dai <dai.hai@foxmail.com> Co-authored-by: chenhe <guchenhe@gmail.com> Co-authored-by: jyong <jyong@dify.ai> Co-authored-by: Joel <iamjoel007@gmail.com> Co-authored-by: Yeuoly <admin@srmxy.cn>
This commit is contained in:
@@ -39,8 +39,8 @@ import type { DataSet } from '@/models/datasets'
|
||||
import ConfigSummary from '@/app/components/explore/universal-chat/config-view/summary'
|
||||
import { fetchDatasets } from '@/service/datasets'
|
||||
import ItemOperation from '@/app/components/explore/item-operation'
|
||||
import { useCurrentProviderAndModel } from '@/app/components/header/account-setting/model-provider-page/hooks'
|
||||
import { useProviderContext } from '@/context/provider-context'
|
||||
import type { ProviderEnum } from '@/app/components/header/account-setting/model-page/declarations'
|
||||
|
||||
const APP_ID = 'universal-chat'
|
||||
const DEFAULT_PLUGIN = {
|
||||
@@ -76,8 +76,8 @@ const Main: FC<IMainProps> = () => {
|
||||
const getInitConfig = (type: 'model' | 'plugin') => {
|
||||
if (type === 'model') {
|
||||
return {
|
||||
providerName: prevConfig?.providerName || agentThoughtModelList?.[0]?.model_provider.provider_name,
|
||||
modelId: prevConfig?.modelId || agentThoughtModelList?.[0]?.model_name,
|
||||
providerName: prevConfig?.providerName || agentThoughtModelList[0]?.provider,
|
||||
modelId: prevConfig?.modelId || agentThoughtModelList[0]?.models[0]?.model,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -452,9 +452,16 @@ const Main: FC<IMainProps> = () => {
|
||||
const [hasStopResponded, setHasStopResponded, getHasStopResponded] = useGetState(false)
|
||||
const [errorHappened, setErrorHappened] = useState(false)
|
||||
const [isResponsingConIsCurrCon, setIsResponsingConCurrCon, getIsResponsingConIsCurrCon] = useGetState(true)
|
||||
const initConfig = getInitConfig('model')
|
||||
const [modelId, setModeId] = useState<string>((initConfig as any)?.modelId as string)
|
||||
const [providerName, setProviderName] = useState<string>((initConfig as any)?.providerName)
|
||||
const { currentModel } = useCurrentProviderAndModel(
|
||||
agentThoughtModelList,
|
||||
{ provider: providerName, model: modelId },
|
||||
)
|
||||
const handleSend = async (message: string) => {
|
||||
if (isNewConversation) {
|
||||
const isModelSelected = modelId && !!agentThoughtModelList.find(item => item.model_name === modelId)
|
||||
const isModelSelected = modelId && !!currentModel
|
||||
if (!isModelSelected) {
|
||||
notify({ type: 'error', message: t('appDebug.errorMessage.notSelectModel') })
|
||||
return
|
||||
@@ -601,7 +608,7 @@ const Main: FC<IMainProps> = () => {
|
||||
setChatList(newListWithAnswer)
|
||||
},
|
||||
onMessageEnd: (messageEnd) => {
|
||||
responseItem.citation = messageEnd.retriever_resources
|
||||
responseItem.citation = messageEnd.metadata?.retriever_resources
|
||||
|
||||
const newListWithAnswer = produce(
|
||||
getChatList().filter(item => item.id !== responseItem.id && item.id !== placeholderAnswerId),
|
||||
@@ -691,9 +698,6 @@ const Main: FC<IMainProps> = () => {
|
||||
/>
|
||||
)
|
||||
}
|
||||
const initConfig = getInitConfig('model')
|
||||
const [modelId, setModeId] = useState<string>((initConfig as any)?.modelId as string)
|
||||
const [providerName, setProviderName] = useState<ProviderEnum>((initConfig as any)?.providerName as ProviderEnum)
|
||||
// const currModel = MODEL_LIST.find(item => item.id === modelId)
|
||||
|
||||
const [plugins, setPlugins] = useState<Record<string, boolean>>(getInitConfig('plugin') as Record<string, boolean>)
|
||||
@@ -707,7 +711,7 @@ const Main: FC<IMainProps> = () => {
|
||||
const configSetDefaultValue = () => {
|
||||
const initConfig = getInitConfig('model')
|
||||
setModeId((initConfig as any)?.modelId as string)
|
||||
setProviderName((initConfig as any)?.providerName as ProviderEnum)
|
||||
setProviderName((initConfig as any)?.providerName)
|
||||
setPlugins(getInitConfig('plugin') as any)
|
||||
setDateSets([])
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user