Why Qdrant?
Docbot uses Qdrant because it’s:- Easy to run locally via Docker
- Performant for document and code search
- Well-suited for semantic similarity queries
- Reliable for production use
Qdrant is currently required for Docbot. Support for other vector stores may be added in the future.
Docker setup
Install Docker
If you don’t have Docker installed:
- macOS/Windows: Download Docker Desktop
- Linux: Follow the installation guide for your distribution
Start Qdrant container
Run Qdrant with persistent storage:This command:
- Runs the container in detached mode (
-d) - Names it
docbot-qdrantfor easy reference - Exposes port 6333 for API access
- Mounts a volume to persist data in
.docbot/qdrant_storage
Qdrant collections
Docbot creates two collections for indexing:Documentation collection
Stores document chunks with the following schema:- Vector size: 1536 (default for OpenAI embeddings)
- Distance metric: Cosine similarity
- Payload indexes:
path(keyword) - Document file pathsection(keyword) - Section heading
Code collection
Stores code chunks with additional metadata:- Vector size: 1536
- Distance metric: Cosine similarity
- Payload indexes:
path(keyword) - Source file pathsymbol(keyword) - Function/class namelanguage(keyword) - Programming language
Configuration
Configure Qdrant settings indocbot.config.jsonc:
Configuration options
url- Qdrant instance URL (default:http://127.0.0.1:6333)manifestPath- Path to index manifest file (tracks indexed files)collections.docs- Name for documentation collectioncollections.code- Name for code collection
Managing Qdrant
Starting and stopping
Stop the container:Viewing logs
Check Qdrant logs for debugging:Accessing the Web UI
Qdrant includes a web interface at:- Browse collections
- Inspect vectors and payloads
- Test search queries manually
- Monitor collection statistics
Using a remote Qdrant instance
For CI/CD or multi-user scenarios, you may want to use a hosted Qdrant instance.Deploy Qdrant
Options for hosted Qdrant:
- Qdrant Cloud - Official managed service
- Self-hosted on your infrastructure
- Docker Compose for team development
Data persistence
Local storage
The mounted volume at.docbot/qdrant_storage contains all your vector data. This directory:
- Persists across container restarts
- Should be added to
.gitignore - Can be backed up for disaster recovery
Clearing and rebuilding
To completely reset your index:Automatic initialization
When you rundocbot init, Docbot automatically:
- Checks if Docker is installed
- Verifies if Qdrant is already running
- Attempts to start a container if needed
- Waits for Qdrant to become accessible
- Provides fallback instructions if automatic setup fails
Next steps
- Configure custom AI models for embeddings
- Learn about indexing strategies
- Review troubleshooting tips for Qdrant issues