From 7df4ab17c288b9c9de79460bbacfc897b1bb112d Mon Sep 17 00:00:00 2001 From: Jason Schleifer Date: Wed, 23 Oct 2024 13:26:48 +1300 Subject: [PATCH] added quick workaround for Anthropic Config to not use Voyage API key if not needed. --- README.md | 4 ++++ js/versions.js | 9 +++++++- nodes/config/gtUIAnthropicDriversConfig.py | 15 +++++++++---- nodes/drivers/gtUIAnthropicPromptDriver.py | 1 + nodes/drivers/gtUIVoyageAiEmbeddingDriver.py | 23 +++++++++++++------- pyproject.toml | 4 ++-- 6 files changed, 41 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 7cf1603..4a8d2f8 100644 --- a/README.md +++ b/README.md @@ -103,6 +103,10 @@ You can previous and download more examples [here](examples/README.md). ## Recent Changelog +### Oct 23, 2024 +* Updated Anthropic Claude Prompt Driver to include `claude-3-5-sonnet-20241022` +* Updated Anthropic Claude Config to offer option to not use Voyage API for Embedding Driver. Just set `ignore_voyage_embedding_driver` to `True` + ### Oct 11, 2024 * Updated to Griptape Framework v0.33.1 to resolve install bugs diff --git a/js/versions.js b/js/versions.js index 1f126b5..5bee44b 100644 --- a/js/versions.js +++ b/js/versions.js @@ -1,11 +1,18 @@ export const versions = { - "version": "0.33.0", + "version": "0.33.1", "releaseDate": "2024-10-11", "name": "ComfyUI-Griptape", "description": "Griptape integration for ComfyUI", "author": "Jason Schleifer", "repository": "https://github.com/griptape-ai/ComfyUI-Griptape", "changelog": [ + { + "version": "0.33.1", + "date": "2024-10-23", + "changes": [ + "Update to Griptape v0.33.1", + ] + }, { "version": "0.33.0", "date": "2024-10-11", diff --git a/nodes/config/gtUIAnthropicDriversConfig.py b/nodes/config/gtUIAnthropicDriversConfig.py index 99a1789..b278c11 100644 --- a/nodes/config/gtUIAnthropicDriversConfig.py +++ b/nodes/config/gtUIAnthropicDriversConfig.py @@ -4,6 +4,7 @@ from griptape.configs.drivers import AnthropicDriversConfig # StructureGlobalDriversConfig, from griptape.drivers import ( AnthropicPromptDriver, + DummyEmbeddingDriver, LocalVectorStoreDriver, VoyageAiEmbeddingDriver, ) @@ -17,6 +18,7 @@ from .gtUIBaseDriversConfig import ( ) anthropicPromptModels = [ + "claude-3-5-sonnet-20241022", "claude-3-5-sonnet-20240620", "claude-3-opus-20240229", "claude-3-sonnet-20240229", @@ -70,11 +72,16 @@ class gtUIAnthropicDriversConfig(gtUIBaseDriversConfig): drivers_config_params["prompt_driver"] = AnthropicPromptDriver( **prompt_driver_params ) - drivers_config_params["embedding_driver"] = VoyageAiEmbeddingDriver( - **embedding_driver_params - ) + + if embedding_driver_params == {}: + drivers_config_params["embedding_driver"] = VoyageAiEmbeddingDriver( + **embedding_driver_params + ) + else: + drivers_config_params["embedding_driver"] = DummyEmbeddingDriver() + drivers_config_params["vector_store_driver"] = LocalVectorStoreDriver( - embedding_driver=VoyageAiEmbeddingDriver(**embedding_driver_params) + embedding_driver=drivers_config_params["embedding_driver"] ) try: diff --git a/nodes/drivers/gtUIAnthropicPromptDriver.py b/nodes/drivers/gtUIAnthropicPromptDriver.py index fc43d43..85673f7 100644 --- a/nodes/drivers/gtUIAnthropicPromptDriver.py +++ b/nodes/drivers/gtUIAnthropicPromptDriver.py @@ -3,6 +3,7 @@ from griptape.drivers import AnthropicPromptDriver from .gtUIBasePromptDriver import gtUIBasePromptDriver models = [ + "claude-3-5-sonnet-20241022", "claude-3-5-sonnet-20240620", "claude-3-opus-20240229", "claude-3-sonnet-20240229", diff --git a/nodes/drivers/gtUIVoyageAiEmbeddingDriver.py b/nodes/drivers/gtUIVoyageAiEmbeddingDriver.py index fa27de3..346a0a2 100644 --- a/nodes/drivers/gtUIVoyageAiEmbeddingDriver.py +++ b/nodes/drivers/gtUIVoyageAiEmbeddingDriver.py @@ -1,4 +1,4 @@ -from griptape.drivers import VoyageAiEmbeddingDriver +from griptape.drivers import DummyEmbeddingDriver, VoyageAiEmbeddingDriver from .gtUIBaseEmbeddingDriver import gtUIBaseEmbeddingDriver @@ -35,6 +35,7 @@ class gtUIVoyageAiEmbeddingDriver(gtUIBaseEmbeddingDriver): "STRING", {"default": "document"}, ), + "ignore_voyage_embedding_driver": ("BOOLEAN", {"default": False}), } ) @@ -46,16 +47,22 @@ class gtUIVoyageAiEmbeddingDriver(gtUIBaseEmbeddingDriver): ) model = kwargs.get("embedding_model", "voyage-large-2") input_type = kwargs.get("input_type", "document") - params = { - "api_key": api_key, - "model": model, - "input_type": input_type, - } - + ignore = kwargs.get("ignore_voyage_embedding_driver", False) + if ignore: + params = { + "api_key": api_key, + "model": model, + "input_type": input_type, + } + else: + params = {} return params def create(self, **kwargs): params = self.build_params(**kwargs) - driver = VoyageAiEmbeddingDriver(**params) + if params == {}: + driver = DummyEmbeddingDriver() + else: + driver = VoyageAiEmbeddingDriver(**params) return (driver,) diff --git a/pyproject.toml b/pyproject.toml index 91a9633..0dfb3c5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "comfyui-griptape" -version = "1.0.5" +version = "1.0.9" description = "Griptape LLM(Large Language Model) Nodes for ComfyUI." authors = ["Jason Schleifer "] readme = "README.md" @@ -26,7 +26,7 @@ priority = "explicit" [project] name = "comfyui-griptape" description = "Griptape LLM(Large Language Model) Nodes for ComfyUI." -version = "1.0.8" +version = "1.0.9" license = {file = "LICENSE"} dependencies = ["griptape[all]==0.33.1", "python-dotenv"]