Nodes/ComfyUI Griptape Nodes/Griptape Vector Store Driver: Amazon OpenSearch
ComfyUI Node

Griptape Vector Store Driver: Amazon OpenSearch

Point your RAG at a real OpenSearch cluster

By griptape-ai·Created 2 years ago·Updated about a year ago· 238
Griptape Vector Store Driver: Amazon OpenSearch
  • embedding_driver
  • DRIVER
host_envAMAZON_OPENSEARCH_HOST
index_envAMAZON_OPENSEARCH_INDEX_NAME
aws_access_key_id_env_varAWS_ACCESS_KEY_ID
aws_secret_access_key_env_varAWS_SECRET_ACCESS_KEY
aws_default_region_env_varAWS_DEFAULT_REGION

The Amazon OpenSearch vector store driver is what you reach for when your RAG data already lives in AWS - or when "run it on infrastructure I already pay for" beats "stand up a new database." It's a config node in the pack's driver family: it produces a VECTOR_STORE_DRIVER that points at a specific OpenSearch index on a specific cluster, and you feed that driver into tools and agents that need retrieval. If you're building agent pipelines inside an AWS shop, this is the node that makes your Griptape workflow speak to your existing OpenSearch Service deployment.

Let's be straight about who this is for, because it's the least beginner-friendly node in this batch. OpenSearch is a full search/vector database you must already have deployed - the node doesn't provision anything. On top of that, it needs AWS credentials and an embedding driver. This is a "I have an AWS account and an OpenSearch domain, help me wire it in" node, not a "let's try RAG" node. If that's not you, the local vector store driver or the managed Griptape Cloud knowledge base is the better first step.

How it works

The node reads your cluster details and AWS credentials - all from environment variable names, never values - then builds an AmazonOpenSearchVectorStoreDriver and returns it. It even starts an AWS boto3 session with your credentials so the driver can authenticate against the service. The embedding_driver input is where you attach the embedding model for the vectors; leave it empty and it silently falls back to an OpenAI embedding driver if your OPENAI_API_KEY is set, or a dummy embedding driver otherwise.

The inputs that matter

Every field here is the name of an environment variable, not a value - that's the pack's security pattern, and this node leans on it hardest because there are five of them:

  • host_env - default AMAZON_OPENSEARCH_HOST. The env var holding your cluster's host/endpoint.
  • index_env - default AMAZON_OPENSEARCH_INDEX_NAME. The env var for the index name.
  • aws_access_key_id_env_var / aws_secret_access_key_env_var - defaults AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY. Your AWS credentials, by env-var name.
  • aws_default_region_env_var - default AWS_DEFAULT_REGION.
  • embedding_driver - optional EMBEDDING_DRIVER socket; strongly recommended to connect explicitly.

One output, DRIVER (VECTOR_STORE_DRIVER), feeds a VectorStore tool or an agent that needs a store.

Install

The pack installs normally, but the real setup is the AWS side:

cd ComfyUI/custom_nodes
git clone https://github.com/griptape-ai/ComfyUI-Griptape

or ComfyUI Manager → search "Griptape" → install → restart. Then create an OpenSearch Service domain, an index, and an IAM user with access; set the five environment variables (or add them in the Griptape settings). The README walks through getting AWS access keys from the console's Security Credentials page.

Where people get burned

Everything here fails on credentials or connectivity. The classic ones: env vars not actually set (the node reads them by name, so a missing var means empty values and an auth failure), the index not existing yet, and the region not matching where your cluster lives. Also check the embedding driver - if the index was built with one embedding model and the driver uses another, retrieval quietly comes back garbage. And remember the dummy-driver fallback: if you haven't set an OpenAI key and leave the embedding socket empty, you get a dummy embedder that can't actually store or query meaningfully. This is a production node; it wants a production setup.

CategoryGriptape/Agent Drivers/Vector Store

Inputs (6)

NameTypeDefaultDescription
embedding_driveroptEMBEDDING_DRIVERSelect an embedding driver or leave as default.
host_envoptSTRINGAMAZON_OPENSEARCH_HOSTEnter the name of the environment variable for your AMAZON_OPENSEARCH_HOST, not your actual host.
index_envoptSTRINGAMAZON_OPENSEARCH_INDEX_NAMEEnter the name of the environment variable for your AMAZON_OPENSEARCH_INDEX_NAME, not your actual index name.
aws_access_key_id_env_varoptSTRINGAWS_ACCESS_KEY_IDEnter the name of the environment variable for your AWS_ACCESS_KEY_ID, not your actual key.
aws_secret_access_key_env_varoptSTRINGAWS_SECRET_ACCESS_KEYEnter the name of the environment variable for your AWS_SECRET_ACCESS_KEY, not your actual key.
aws_default_region_env_varoptSTRINGAWS_DEFAULT_REGIONEnter the name of the environment variable for your AWS_DEFAULT_REGION, not your actual region.

Outputs (1)

NameTypeDescription
DRIVERVECTOR_STORE_DRIVER