From 79fa6ca5be4bc72d6a84aefe06ede10671ba5c64 Mon Sep 17 00:00:00 2001 From: Peli de Halleux Date: Fri, 13 Dec 2024 01:20:58 +0000 Subject: [PATCH 1/3] initial genaiscript local app support --- packages/tasks/src/local-apps.ts | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/packages/tasks/src/local-apps.ts b/packages/tasks/src/local-apps.ts index 0f2695c13..ccb03394e 100644 --- a/packages/tasks/src/local-apps.ts +++ b/packages/tasks/src/local-apps.ts @@ -163,6 +163,20 @@ const snippetOllama = (model: ModelData, filepath?: string): string => { return `ollama run hf.co/${model.id}{{OLLAMA_TAG}}`; }; +const snippetGenAIScript = (model: ModelData, filepath?: string): LocalAppSnippet[] => { + let ollamatag = "{{OLLAMA_TAG}}"; + if (filepath) { + const quantLabel = parseGGUFQuantLabel(filepath); + ollamatag = quantLabel ? `:${quantLabel}` : ""; + } + return [ + { + title: "Serve model with Ollama", + content: "npx --yes genaiscript run myscript --model ollama:${ollamatag}", + }, + ]; +}; + const snippetLocalAI = (model: ModelData, filepath?: string): LocalAppSnippet[] => { const command = (binary: string) => ["# Load and run the model:", `${binary} huggingface://${model.id}/${filepath ?? "{{GGUF_FILE}}"}`].join("\n"); @@ -427,6 +441,13 @@ export const LOCAL_APPS = { displayOnModelPage: isLlamaCppGgufModel, snippet: snippetOllama, }, + genaiscript: { + prettyLabel: "GenAIScript", + docsUrl: "https://microsoft.github.io/genaiscript/", + mainTask: "text-generation", + displayOnModelPage: isLlamaCppGgufModel, + snippet: snippetGenAIScript, + }, } satisfies Record; export type LocalAppKey = keyof typeof LOCAL_APPS; From 57fa6f0dec0bfba3956da9ac37f44b615ab595d9 Mon Sep 17 00:00:00 2001 From: Peli de Halleux Date: Fri, 13 Dec 2024 01:26:33 +0000 Subject: [PATCH 2/3] add example --- packages/tasks/src/local-apps.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/tasks/src/local-apps.ts b/packages/tasks/src/local-apps.ts index ccb03394e..3784cb95f 100644 --- a/packages/tasks/src/local-apps.ts +++ b/packages/tasks/src/local-apps.ts @@ -171,8 +171,9 @@ const snippetGenAIScript = (model: ModelData, filepath?: string): LocalAppSnippe } return [ { - title: "Serve model with Ollama", - content: "npx --yes genaiscript run myscript --model ollama:${ollamatag}", + title: "Use model through Ollama", + setup: "Create a `poem.genai.mjs` file with $`write a poem`", + content: "npx --yes genaiscript run poem --model ollama:${ollamatag}", }, ]; }; From 9b69c48c2a5ed153eab2cc67f11b13605fc319e6 Mon Sep 17 00:00:00 2001 From: Peli de Halleux Date: Fri, 13 Dec 2024 01:32:47 +0000 Subject: [PATCH 3/3] simplify --- packages/tasks/src/local-apps.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/tasks/src/local-apps.ts b/packages/tasks/src/local-apps.ts index 3784cb95f..aca9b7083 100644 --- a/packages/tasks/src/local-apps.ts +++ b/packages/tasks/src/local-apps.ts @@ -169,11 +169,11 @@ const snippetGenAIScript = (model: ModelData, filepath?: string): LocalAppSnippe const quantLabel = parseGGUFQuantLabel(filepath); ollamatag = quantLabel ? `:${quantLabel}` : ""; } + const modelid = `${model.id}${ollamatag}`; return [ { title: "Use model through Ollama", - setup: "Create a `poem.genai.mjs` file with $`write a poem`", - content: "npx --yes genaiscript run poem --model ollama:${ollamatag}", + content: `npx --yes genaiscript run poem --model ollama:${modelid}`, }, ]; };