From 08a13b2fa24e1e0627f6a7822036c2e7a47930ee Mon Sep 17 00:00:00 2001 From: n4ze3m Date: Tue, 20 Feb 2024 00:20:51 +0530 Subject: [PATCH] Add support for Fireworks embedding model*** --- server/prisma/seed.ts | 6 ++++++ server/src/utils/embeddings.ts | 10 ++++++++++ server/src/utils/models.ts | 2 +- 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/server/prisma/seed.ts b/server/prisma/seed.ts index 2a7dfe3b..387b2141 100644 --- a/server/prisma/seed.ts +++ b/server/prisma/seed.ts @@ -341,6 +341,12 @@ const EMBEDDING_MODELS: { name: "text-embedding-3-large (OpenAI)", model_type: "embedding", model_provider: "OpenAI", + }, + { + model_provider: "Fireworks", + model_type: "embedding", + model_id: "dialoqbase_eb_nomic-ai/nomic-embed-text-v1.5", + name: "nomic-ai/nomic-embed-text-v1.5 (Fireworks)", } ]; diff --git a/server/src/utils/embeddings.ts b/server/src/utils/embeddings.ts index fbb78a4f..31c0a117 100644 --- a/server/src/utils/embeddings.ts +++ b/server/src/utils/embeddings.ts @@ -80,6 +80,15 @@ export const embeddings = ( }, }, }); + case "fireworks": + return new OpenAIEmbeddings({ + modelName, + openAIApiKey: process.env.FIREWORKS_API_KEY!, + configuration: { + baseURL: "https://api.fireworks.ai/inference/v1", + apiKey: process.env.FIREWORKS_API_KEY!, + }, + }); default: console.log("Using Default Embeddings"); return new OpenAIEmbeddings(); @@ -96,4 +105,5 @@ export const supportedEmbeddings = [ "supabase", "jina", "google", + "fireworks", ]; diff --git a/server/src/utils/models.ts b/server/src/utils/models.ts index e979087e..ea42dca7 100644 --- a/server/src/utils/models.ts +++ b/server/src/utils/models.ts @@ -65,7 +65,7 @@ export const chatModelProvider = ( return new ChatOpenAI({ modelName: modelName, temperature: temperature, - openAIApiKey: otherFields.apiKey || process.env.OPENAI_API_KEY, + openAIApiKey: otherFields.apiKey || process.env.OPENAI_API_KEY , ...otherFields, configuration: { baseURL: otherFields.baseURL,