Knowledge Management System that connects to your RAG system
Project description
Simba - Your Knowledge Management System
Connect your knowledge to any RAG system
Simba is an open source, portable KMS (knowledge management system) designed to integrate seamlessly with any Retrieval-Augmented Generation (RAG) system. With a modern UI and modular architecture, Simba allows developers to focus on building advanced AI solutions without worrying about the complexities of knowledge management.
Table of Contents
๐ Features
- ๐งฉ Modular Architecture: Plug in various vector stores, embedding models, chunkers, and parsers.
- ๐ฅ๏ธ Modern UI: Intuitive user interface to visualize and modify every document chunk.
- ๐ Seamless Integration: Easily integrates with any RAG-based system.
- ๐จโ๐ป Developer Focus: Simplifies knowledge management so you can concentrate on building core AI functionality.
- ๐ฆ Open Source & Extensible: Community-driven, with room for custom features and integrations.
๐ฅ Demo
๐ ๏ธ Getting Started
๐ Prerequisites
Before you begin, ensure you have met the following requirements:
- Python 3.11+ & poetry
- Redis 7.0+
- Node.js 20+
- Git for version control.
- (Optional) Docker for containerized deployment.
๐ฆ Installation
Clone the repository and install dependencies:
git clone https://github.com/GitHamza0206/simba.git
cd simba
poetry install
poetry shell
๐ Configuration
Create a .env file in the root directory:
OPENAI_API_KEY=your_openai_api_key
REDIS_HOST=localhost
CELERY_BROKER_URL=redis://localhost:6379/0
CELERY_RESULT_BACKEND=redis://localhost:6379/1
create or update config.yaml file in the root directory:
# config.yaml
project:
name: "Simba"
version: "1.0.0"
api_version: "/api/v1"
paths:
base_dir: null # Will be set programmatically
faiss_index_dir: "vector_stores/faiss_index"
vector_store_dir: "vector_stores"
llm:
provider: "openai"
model_name: "gpt-4o-mini"
temperature: 0.0
max_tokens: null
streaming: true
additional_params: {}
embedding:
provider: "huggingface"
model_name: "BAAI/bge-base-en-v1.5"
device: "mps" # Changed from mps to cpu for container compatibility
additional_params: {}
vector_store:
provider: "faiss"
collection_name: "simba_collection"
additional_params: {}
chunking:
chunk_size: 512
chunk_overlap: 200
retrieval:
k: 5
celery:
broker_url: ${CELERY_BROKER_URL:-redis://redis:6379/0}
result_backend: ${CELERY_RESULT_BACKEND:-redis://redis:6379/1}
๐ Run Simba
Run the server:
simba server
Run the frontend:
simba front
Run the parsers:
simba parsers
๐ Roadmap
- ๐ป pip install simba
- ๐ง pip install simba-sdk
- ๐ www.simba-docs.com
- ๐ Adding Auth & access management
- ๐ธ๏ธ Adding web scraping
- โ๏ธ Pulling data from Azure / AWS / GCP
- ๐ More parsers and chunkers available
- ๐จ Better UX/UI
๐ค Contributing
Contributions are welcome! If you'd like to contribute to Simba, please follow these steps:
-
Fork the repository.
-
Create a new branch for your feature or bug fix.
-
Commit your changes with clear messages.
-
Open a pull request describing your changes.
๐ฌ Support & Contact
For support or inquiries, please open an issue ๐ on GitHub or contact repo owner at Hamza Zerouali
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file simba_core-1.0.1.tar.gz.
File metadata
- Download URL: simba_core-1.0.1.tar.gz
- Upload date:
- Size: 2.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.11.5 Darwin/24.3.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f39ae7a0dad7766c9acd8331b0f292e2c5fb484c36533983161a2bddb5f0120d
|
|
| MD5 |
2f26a0e6acae0bdfd12f89e46ba21047
|
|
| BLAKE2b-256 |
a9e496bfc51d24bbf8e497b3426d27f857bd9a14e21d6bafc7f2c9777f273bb6
|
File details
Details for the file simba_core-1.0.1-py3-none-any.whl.
File metadata
- Download URL: simba_core-1.0.1-py3-none-any.whl
- Upload date:
- Size: 2.3 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.11.5 Darwin/24.3.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2249cb82f23968daa6f4b7f0ee187b9cab0431db700cad377b2ae053da96b0bb
|
|
| MD5 |
be8b070991dabf01519c0a3725ca0221
|
|
| BLAKE2b-256 |
2af2424584bf4ef39ad9a453746a1b6451b8205446d3a98c6c893989c81a3346
|