jan/web/app/_hooks/useDownloadModel.ts
James d982dce090 feat: allowing user to fetch models from github
Signed-off-by: James <james@jan.ai>
2023-10-12 07:30:29 -07:00

21 lines
683 B
TypeScript

import { executeSerial } from "@/_services/pluginService";
import { DataService, ModelManagementService } from "../../shared/coreService";
import { Product } from "@/_models/Product";
import { ModelVersion } from "@/_models/ModelVersion";
export default function useDownloadModel() {
const downloadModel = async (model: Product, modelVersion: ModelVersion) => {
modelVersion.startDownloadAt = Date.now();
await executeSerial(DataService.STORE_MODEL, { model, modelVersion });
await executeSerial(ModelManagementService.DOWNLOAD_MODEL, {
downloadUrl: modelVersion.downloadLink,
fileName: modelVersion.id,
});
};
return {
downloadModel,
};
}