| 12345678910111213141516171819202122232425262728293031323334353637383940414243 | 
							- import { LlmModelType } from '@/constants/knowledge';
 - import userService from '@/services/user-service';
 - import { useQuery } from '@tanstack/react-query';
 - 
 - import {
 -   IThirdOAIModelCollection as IThirdAiModelCollection,
 -   IThirdOAIModel,
 - } from '@/interfaces/database/llm';
 - import { buildLlmUuid } from '@/utils/llm-util';
 - 
 - export const useFetchLlmList = (modelType?: LlmModelType) => {
 -   const { data } = useQuery<IThirdAiModelCollection>({
 -     queryKey: ['llmList'],
 -     initialData: {},
 -     queryFn: async () => {
 -       const { data } = await userService.llm_list({ model_type: modelType });
 - 
 -       return data?.data ?? {};
 -     },
 -   });
 - 
 -   return data;
 - };
 - 
 - type IThirdOAIModelWithUuid = IThirdOAIModel & { uuid: string };
 - 
 - export function useSelectFlatLlmList(modelType?: LlmModelType) {
 -   const llmList = useFetchLlmList(modelType);
 - 
 -   return Object.values(llmList).reduce<IThirdOAIModelWithUuid[]>((pre, cur) => {
 -     pre.push(...cur.map((x) => ({ ...x, uuid: buildLlmUuid(x) })));
 - 
 -     return pre;
 -   }, []);
 - }
 - 
 - export function useFindLlmByUuid(modelType?: LlmModelType) {
 -   const flatList = useSelectFlatLlmList(modelType);
 - 
 -   return (uuid: string) => {
 -     return flatList.find((x) => x.uuid === uuid);
 -   };
 - }
 
 
  |