chore: add facades refactor: core module export refactor: inference plugin - deprecate function registering (#537) * refactor: revamp inference plugin as class - deprecate function registering * refactor: monitoring plugin - deprecate service registering (#538) refactor: revamp inference plugin as class - deprecate function registering chore: update import refactor: plugin revamp - model management chore: update build steps and remove experimental plugins refactor: remove pluggable electron chore: add sorting for conversations chore: build plugins for testing chore: consistent plugin directory name chore: docs chore: fix CI chore: update conversation prefix
36 lines
1.0 KiB
TypeScript
36 lines
1.0 KiB
TypeScript
import { useState } from 'react'
|
|
import { useSetAtom } from 'jotai'
|
|
import { modelLoadMoreAtom } from '@helpers/atoms/ExploreModelLoading.atom'
|
|
import { ModelCatalog } from '@janhq/core/lib/types'
|
|
|
|
export default function useGetHuggingFaceModel() {
|
|
const setLoadMoreInProgress = useSetAtom(modelLoadMoreAtom)
|
|
const [modelList, setModelList] = useState<ModelCatalog[]>([])
|
|
const [currentOwner, setCurrentOwner] = useState<string | undefined>(
|
|
undefined
|
|
)
|
|
|
|
const getHuggingFaceModel = async (owner?: string) => {
|
|
if (!owner) {
|
|
setModelList([])
|
|
return
|
|
}
|
|
|
|
const searchParams: SearchModelParamHf = {
|
|
search: { owner },
|
|
limit: 5,
|
|
}
|
|
// const result = await searchModels(searchParams);
|
|
// console.debug("result", JSON.stringify(result));
|
|
// if (owner !== currentOwner) {
|
|
// setModelList(result.data);
|
|
// setCurrentOwner(owner);
|
|
// } else {
|
|
// setModelList([...modelList, ...result.data]);
|
|
// }
|
|
setLoadMoreInProgress(false)
|
|
}
|
|
|
|
return { modelList, getHuggingFaceModel }
|
|
}
|