Interact with and manage Weaviate Cluster operations. This app provides tools to inspect shards, view collections & tenants, explore schemas, analyze cluster statistics, and interact with objects.
Visit Weaviate Cluster WebApp
- Local
- Custom
- Cloud
- Support for OpenAI, Cohere, HuggingFace and JinaAI
- Add API keys for vectorization providers (optional)
- Vectorization during object updates
-
Shards & Nodes
- View shard details across nodes
- View node details
- Update read-only shards to READY status (
⚠️ Admin API-Key required)
-
Collections & Tenants
- View collections and their tenants
- Aggregate Collections & Tenants
- With Data cached
- Explore collection configurations
- View schema configuration
- Analyze cluster statistics and synchronization
- View cluster metadata & modules
- Analyze shard consistency
- Force repair collection objects across nodes
- View all users and their roles
- View all roles and their permission types
- View all permissions in detail
- Users & Permissions Report
- View MT collections only and configurations
- With Data cached
- Analyze tenants in the collection and states
-
Create (
⚠️ Admin API-Key required)- Create new collections
- Supported Vectorizers (OpenAI, Cohere, HuggingFace, JinaAI)
- Batch upload data from CSV/JSON files
-
Search
- Hybrid search combining vector and keyword capabilities
- Keyword search (BM25) for exact matches
- Vector Search for similarity
- Adjustable alpha parameter (0.0-1.0) for hybrid search balance
- Performance metrics
- Detailed result metadata (scores, distances, timing)
- Support for all vectorized collections
-
Read
- View object data in collections/tenants
- Display data in tables including vectors
- With Data cached
- Download data as CSV files
-
Update (
⚠️ Admin API-Key required)- Edit collection configuration with support for all mutable parameters
- Update objects with optional vectorization
- Export object data to CSV format
- Verify object consistency across cluster nodes (supports up to 11 nodes)
- Real-time object validation and error handling
-
Delete (
⚠️ Admin API-Key required)- Delete collections and tenants
- Batch deletion support for multiple collections/tenants
Prerequisites
- Python 3.10 or higher
- pip installed
Steps to Run
-
Clone the repository:
git clone https://github.com/Shah91n/WeaviateCluster.git cd WeaviateCluster
-
Install the required dependencies:
pip install -r requirements.txt
-
Run the app:
streamlit run streamlit_app.py
If you haven't already created a requirements.txt
file, here's what it should look like:
streamlit
weaviate-client
requests
pandas
Or You can also run the Weaviate Cluster using Docker. Follow the steps below to build the Docker image and run the container:
-
Clone the repository:
git clone https://github.com/Shah91n/WeaviateCluster.git cd WeaviateCluster
-
Build the Docker image:
docker build -t weaviateclusterapp:latest .
-
Run the Docker container:
docker run -p 8501:8501 --add-host=localhost:host-gateway weaviateclusterapp
This will start the Weaviate Cluster, and you can access it by navigating to http://localhost:8501
in your web browser.
- Provide the Weaviate endpoint.
- Provide the API key.
- Connect and enjoy!
This is a personal project and is not officially approved by the Weaviate organization. While functional, the code may not follow all best practices for Python programming or Streamlit. Suggestions and improvements are welcome!
USE AT YOUR OWN RISK: While this tool is designed for cluster operation and analysis, there is always a possibility of unknown bugs.
Contributions are welcome through pull requests! Suggestions for improvements and best practices are highly appreciated.