feat(models): enhance model management with improved dialogs and state handling

This commit is contained in:
2025-10-22 15:27:31 +08:00
parent 497ebfba9f
commit 9137ae3063
6 changed files with 197 additions and 155 deletions

View File

@@ -11,7 +11,7 @@ import type { LLMFactory } from "@/constants/llm";
* 个人中心设置
*/
export function useProfileSetting() {
const {fetchUserInfo, userInfo} = useUserData();
const { fetchUserInfo, userInfo } = useUserData();
useEffect(() => {
fetchUserInfo();
@@ -53,36 +53,42 @@ export function useLlmModelSetting() {
const [llmFactory, setLlmFactory] = useState<IFactory[]>([]);
const [myLlm, setMyLlm] = useState<Record<LLMFactory, IMyLlmModel>>();
const fetchLlmFactory = async () => {
try {
const res = await userService.llm_factories_list();
const arr = res.data.data || [];
setLlmFactory(arr);
} catch (error) {
logger.error('获取模型工厂失败:', error);
throw error;
}
}
const fetchMyLlm = async () => {
try {
const res = await userService.my_llm();
const llm_dic = res.data.data || {};
setMyLlm(llm_dic);
} catch (error) {
logger.error('获取我的模型失败:', error);
throw error;
}
}
useEffect(() => {
const fetchLlmFactory = async () => {
try {
const res = await userService.llm_factories_list();
const arr = res.data.data || [];
setLlmFactory(arr);
} catch (error) {
logger.error('获取模型工厂失败:', error);
throw error;
}
}
const fetchMyLlm = async () => {
try {
const res = await userService.my_llm();
const llm_dic = res.data.data || {};
setMyLlm(llm_dic);
} catch (error) {
logger.error('获取我的模型失败:', error);
throw error;
}
}
fetchLlmFactory();
fetchMyLlm();
}, []); // 空依赖数组,只在组件挂载时执行一次
}, []);
const refreshLlmModel = async () => {
await fetchMyLlm();
// await fetchLlmFactory();
logger.info('刷新我的模型成功');
}
return {
llmFactory,
myLlm,
refreshLlmModel,
}
}