This hands-on workshop, aims at developers and solution builders, introduces how to leverage Redis, Redis's Vector Semantic Search, Vector Database and AWS Bedrock's base modules.
A detailed set of Jupyter notebooks to teach semantic search and RAG patterns over public financial 10k documents with different Redis clients and integrations including: redis-py, redisvl, and langchain.
Redis, widely recognized for its low-latency performance, extends beyond traditional noSQL databases. It's uniquely suited for tasks like caching, session management, job queuing, and JSON storage. With enhanced Search+Query features, Redis emerges as a performant Vector Database supporting Vector Search over unstructured data encoded as embeddings.
Click on one of the three notebook options below to start your journey. It launches a Jupyter Notebook that prepares your environment by cloning the necessary repository artifacts, managing Python dependencies, and ends with an end-to-end walkthrough of vector search in Redis.
Select your desired notebook tutorial from below:
# | Notebook | Description | Documentation |
---|---|---|---|
1 | Redis Vector Store | Grasp VSS basics with the standard Redis Python client. | View Docs |
2 | Redis and LangChain | A RAG pattern using Redis with orchestration framework LangChain. | View Docs |
Wondering why there are multiple clients? Each serves a unique purpose, providing varying abstraction levels. Your choice depends on several factors:
- Use Cases: Are you focusing on pure vector search, RAG, or other tasks like LLM semantic caching?
- Redis Experience: How comfortable is your team with Redis clients and commands?
- Integration Points: What are your touch points with LLMs and Embedding Providers?
- Performance Demands: How intensive are your performance requirements?
- Configurability: Do you prefer ease of use or fine-grained control?
Each notebook explores these considerations, guiding you through making an informed choice for your use case.
- Not for Local Use: This project isn't configured for local environments. Running it outside of Jupyter Notebook or Google Colab requires a different setup.
- Temporary Workspace: This doesn't save your work indefinitely. Download your notebooks to avoid losing progress.
- Idle Disconnections: Extended inactivity in Jupyter Notebook can disconnect the runtime, potentially resulting in work loss. Regular saving is your friend!