about summary refs log tree commit diff
path: root/.venv/lib/python3.12/site-packages/litellm/llms/fireworks_ai/embed
diff options
context:
space:
mode:
authorS. Solomon Darnell2025-03-28 21:52:21 -0500
committerS. Solomon Darnell2025-03-28 21:52:21 -0500
commit4a52a71956a8d46fcb7294ac71734504bb09bcc2 (patch)
treeee3dc5af3b6313e921cd920906356f5d4febc4ed /.venv/lib/python3.12/site-packages/litellm/llms/fireworks_ai/embed
parentcc961e04ba734dd72309fb548a2f97d67d578813 (diff)
downloadgn-ai-master.tar.gz
two version of R2R are here HEAD master
Diffstat (limited to '.venv/lib/python3.12/site-packages/litellm/llms/fireworks_ai/embed')
-rw-r--r--.venv/lib/python3.12/site-packages/litellm/llms/fireworks_ai/embed/fireworks_ai_transformation.py44
1 files changed, 44 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/litellm/llms/fireworks_ai/embed/fireworks_ai_transformation.py b/.venv/lib/python3.12/site-packages/litellm/llms/fireworks_ai/embed/fireworks_ai_transformation.py
new file mode 100644
index 00000000..80906443
--- /dev/null
+++ b/.venv/lib/python3.12/site-packages/litellm/llms/fireworks_ai/embed/fireworks_ai_transformation.py
@@ -0,0 +1,44 @@
+"""
+This is OpenAI compatible - no transformation is applied
+
+"""
+
+import litellm
+
+
+class FireworksAIEmbeddingConfig:
+    def get_supported_openai_params(self, model: str):
+        """
+        dimensions Only supported in nomic-ai/nomic-embed-text-v1.5 and later models.
+
+        https://docs.fireworks.ai/api-reference/creates-an-embedding-vector-representing-the-input-text
+        """
+        if "nomic-ai" in model:
+            return ["dimensions"]
+        return []
+
+    def map_openai_params(
+        self, non_default_params: dict, optional_params: dict, model: str
+    ):
+        """
+        No transformation is applied - fireworks ai is openai compatible
+        """
+        supported_openai_params = self.get_supported_openai_params(model)
+        for param, value in non_default_params.items():
+            if param in supported_openai_params:
+                optional_params[param] = value
+        return optional_params
+
+    def is_fireworks_embedding_model(self, model: str):
+        """
+        helper to check if a model is a fireworks embedding model
+
+        Fireworks embeddings does not support passing /accounts/fireworks in the model name so we need to know if it's a known embedding model
+        """
+        if (
+            model in litellm.fireworks_ai_embedding_models
+            or f"fireworks_ai/{model}" in litellm.fireworks_ai_embedding_models
+        ):
+            return True
+
+        return False