You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
6 days ago | |
|---|---|---|
| config | 1 week ago | |
| docker | 1 week ago | |
| docs | 6 days ago | |
| langfuse | 1 week ago | |
| scripts | 1 week ago | |
| src | 6 days ago | |
| tests | 1 week ago | |
| .dockerignore | 1 week ago | |
| .env.example | 1 week ago | |
| .gitignore | 1 week ago | |
| DOCKER_TESTING_README.md | 1 week ago | |
| Dockerfile | 1 week ago | |
| Jenkinsfile | 1 week ago | |
| PRODUCTION_READINESS_REPORT.md | 1 week ago | |
| README.md | 1 week ago | |
| docker-compose.yml | 1 week ago | |
| entrypoint.sh | 1 week ago | |
| out.md | 6 days ago | |
| pytest.ini | 1 week ago | |
| requirements-dev.txt | 1 week ago | |
| requirements.txt | 1 week ago | |
| runner.sh | 1 week ago | |
README.md
Islamic Scholar Agent
A production-ready Islamic knowledge agent built with Agno framework, featuring RAG (Retrieval-Augmented Generation) capabilities for answering questions based on Islamic texts and knowledge.
Project Structure
├── src/ # Production source code
│ ├── agents/ # Agent implementations
│ ├── knowledge/ # Knowledge base & RAG pipeline
│ ├── models/ # LLM integrations
│ ├── api/ # FastAPI routes
│ ├── core/ # Core configurations
│ └── utils/ # Utility functions
├── data/ # Data files
│ ├── raw/ # Original data files
│ ├── processed/ # Processed/cleaned data
│ └── embeddings/ # Pre-computed embeddings
├── scripts/ # Utility scripts
├── tests/ # Test files
├── config/ # Configuration files
├── docker/ # Docker files
└── docs/ # Documentation
Features
- Islamic Knowledge Focus: Specialized agent for Islamic knowledge queries
- RAG Pipeline: Retrieval-augmented generation using vector databases
- Multiple Vector Stores: Support for Qdrant and PostgreSQL with PgVector
- Modular Architecture: Clean separation of concerns
- Production Ready: Docker support, health checks, logging
- Comprehensive Testing: Unit and integration tests
Quick Start
-
Setup Environment:
cp .env.example .env # Edit .env with your API keys -
Install Dependencies:
pip install -r requirements.txt -
Setup Vector Database:
python scripts/setup_vectordb.py -
Ingest Knowledge Data:
python scripts/ingest_excel.py -
Run Application:
python src/main.py
Development
Running Tests
pytest tests/
Qdrant Connection Test
Test Qdrant vector database connectivity:
python test_qdrant_connection.py
For detailed documentation see: Qdrant Connection Test Guide
Health Check
python scripts/health_check.py
Docker Development
cd docker
docker-compose -f docker-compose.dev.yml up
API Usage
Health Check
curl http://localhost:8081/health
Chat Endpoint
curl -X POST "http://localhost:8081/chat" \
-H "Content-Type: application/json" \
-d '{"message": "What is the importance of Islamic knowledge?"}'
Configuration
- Development:
config/development.env - Production:
config/production.env - Models:
config/models.yaml
Documentation
License
This project is licensed under the MIT License.