Upstash
Upstash stores documents in an Upstash vector index and searches it by meaning.
A vector database stores texts so they can be searched by meaning, not just by exact words. That way an agent can find the paragraph of a manual that answers a question even if it uses different words.
When to use it
- You want a cloud vector database you pay only for what you use.
- You already have an Upstash index and want to use it in your flows.
Configuration
The Operation field decides what the component does, and the fields and outputs change with your choice:
Add(default): stores in the database the documents it receives in Ingest Data.Search: finds the documents closest to the text in Search Query.Retriever: offers the database as a search engine for another component to use, for example an agent or a question-answering chain.
You need an Upstash API credential with your Upstash index address and token. See Credentials.
| Field | What it does |
|---|---|
| Credential (required) | The Upstash API credential with the connection details. |
| Operation | What the component does: Add, Search or Retriever. |
| Ingest Data (required) | With Add. The documents to store, usually those coming out of a text splitter or a file loader. |
| Search Query | With Search. The text to search for. If left empty, nothing is returned. |
| Embedding | The connector where you plug the component that turns texts into numbers to compare them by meaning, such as OpenAI Embeddings. Always use the same one to store and to search. |
Advanced options
| Field | What it does |
|---|---|
| Number Of Results | How many documents each search returns. Default: 4. |
| Text Key | The field that holds each document’s text. Default: text. |
| Search Metadata Filter | Field and value pairs to search only among the documents that match them. |
Output
The outputs depend on Operation:
- Results: with
AddandSearch. WithSearch, the list of documents found, which you can pass to a prompt or an agent. - Vector Store: with
Add. The database, to connect it to components that work with a vector database. - Retriever: with
Retriever. The search engine, to connect it to components that ask for one.
In tool mode, an agent can use the component to search by itself. See Tool Mode.
Example
A school keeps its course notes in Upstash.
- Connect the notes, split into pieces, to Ingest Data of Upstash with Operation set to
Add. - Choose the Upstash API credential and connect an embeddings component.
- In the students’ assistant, use another Upstash with Operation set to
Search.
Related components
- Recursive Character Text Splitter: cuts documents into pieces before storing them.
- OpenAI Embeddings: converts texts so they can be searched by meaning.