←back to docs
Stores
Learn about ChatBotKit's stores, an abstract storage class for efficient and organized storage and retrieval of data. Choose between Ada Sprout, Lingo Sprout, and Ada Loom depending on your dataset and retrieval needs.
ChatBotKit Stores are specialized storage classes designed for efficient data retrieval and management. They serve as the backbone for organizing and accessing information within your datasets, ensuring optimal performance based on your specific use case requirements.
How Stores Work
When creating a dataset, you select a store type that best matches your data size and retrieval needs. Each store uses different underlying technologies optimized for specific scenarios, from rapid searches on smaller datasets to comprehensive searches across millions of records.
Available Store Types
Ada Sprout
Best for: Small to medium datasets requiring fast search speeds
- Technology: text-embedding-ada-002 + vector database
- Ideal use cases:
- Quick lookups on smaller datasets
- Applications where search speed is the primary concern
- Lightweight implementations
Lingo Sprout (beta)
Best for: General-purpose semantic search across various dataset sizes
- Technology: text-embedding-3-small + vector database
- Note: Lingo Sprout is currently in beta.
- Ideal use cases:
- Semantic search applications
- General-purpose data retrieval
- Balanced performance and accuracy needs
Ada Loom (Default)
Best for: Datasets where search recall and precision both matter
- Technology: hybrid search combining text-embedding-ada-002 and BM25 over a vector database
- Ideal use cases:
- Datasets where keyword and semantic relevance both matter
- Applications requiring reliable, consistent search results
- General production workloads
Choosing the Right Store
| Store Type | Primary Strength | Best For |
|---|---|---|
| Ada Sprout | Speed | Fast lookups, lightweight apps |
| Lingo Sprout (beta) | Versatility | General semantic search |
| Ada Loom | Hybrid precision | Production workloads, keyword + semantic search |
Getting Started
- Assess your needs: Consider your dataset size and whether you prioritize speed or accuracy
- Select your store: Choose the appropriate store type when creating your dataset
- Monitor performance: Evaluate search results and adjust if needed