prithivMLmods's picture
Upload 39 files
a7634ef verified
raw
history blame contribute delete
853 Bytes
import {
Model,
Quantization,
default as initialize,
} from "@ratchet-ml/ratchet-web";
import ratchetWasmUrl from "@ratchet-ml/ratchet-web/ratchet-web_bg.wasm?url";
let model: Model | undefined;
export async function initializeRatchet(
handleLoadingProgress: (loadingProgressPercentage: number) => void,
) {
await initialize(ratchetWasmUrl);
model = await Model.load(
{ Phi: "phi3" },
Quantization.Q8_0,
handleLoadingProgress,
);
}
export async function runCompletion(
prompt: string,
callback: (completionChunk: string) => void,
) {
if (!model) throw new Error("Ratchet is not initialized.");
await model.run({ prompt, callback });
}
export async function exitRatchet() {
if (!model) throw new Error("Ratchet is not initialized.");
model.free();
model = undefined;
}