Skip to main content

🌍 Wooma African RAG Assistant

Un package Python complet développé par et pour la communauté africaine (Wooma CI), combinant un vectoriseur de documents et un assistant conversationnel (RAG) propulsé par l'IA.

Python Version License

🎯 Fonctionnalités

  • Vectoriseur de documents (GUI) : Interface graphique élégante pour extraire et vectoriser vos données (PDF, DOCX, XLSX, PPTX, CSV, JSON, TXT) vers ChromaDB.
  • Chat Assistant (Web UI) : Interface web réactive avec streaming, historique, copie de code et coloration syntaxique.
  • Prêt pour l'intégration : Utilisable en ligne de commande (CLI) ou importable en tant que module dans vos propres scripts Python.
  • FastAPI Ready : Montez le chat directement comme une sous-application dans vos propres projets FastAPI.

🚀 Installation

Installez simplement le package via pip :

pip install wooma-rag-assistant

Note : Assurez-vous d'avoir Ollama installé et lancé en arrière-plan pour l'inférence des modèles LLM.

💻 Cas d'utilisation

1. En ligne de commande (CLI)

Une fois installé, vous disposez de deux commandes globales dans votre terminal :

Lancer le vectoriseur (Interface Graphique) :

rag-vectorizer

Lancer le serveur Web de Chat :

rag-chat --port 8080 --model llama3.2

2. Importation dans vos propres scripts Python

Vous pouvez réutiliser la logique d'extraction de documents dans vos projets Data Science :

from pathlib import Path
from rag_assistant import DocumentProcessor, CollectionManager

# Extraire le texte et les métadonnées d'un fichier
fichier = Path("mon_document_afrique.pdf")
processeur = DocumentProcessor()
lignes, metadonnees = processeur.process_file(fichier)

print(f"Extractions : {len(lignes)} fragments.")

# Voir vos collections ChromaDB
manager = CollectionManager()
print(manager.list_collections())

3. Intégration dans une API (FastAPI)

Vous développez déjà une API FastAPI ? Montez notre application RAG en une seule ligne de code :

import uvicorn
from fastapi import FastAPI
from rag_assistant import app as rag_app

mon_api = FastAPI()

@mon_api.get("/hello")
def hello():
    return {"message": "Bienvenue sur mon API"}

# Intégrer l'assistant RAG sous l'URL /rag
mon_api.mount("/rag", rag_app)

if __name__ == "__main__":
    uvicorn.run(mon_api, host="127.0.0.1", port=8000)

Rendez-vous ensuite sur http://localhost:8000/rag/ !

🤝 Contribution

Vos contributions (Pull Requests) sont les bienvenues pour améliorer cet outil !

Metadata

Release files for wooma-rag-assistant 0.1.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wooma-rag-assistant 0.1.6
File Size Uploaded Provenance
wooma_rag_assistant-0.1.6.tar.gz 494.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for wooma-rag-assistant 0.1.6
File Interpreter ABI Platform
wooma_rag_assistant-0.1.6-py3-none-any.whl Python 3 none any Details

Total release size: 985.9 kB

Release files / wooma_rag_assistant-0.1.6.tar.gz

Download URL wooma_rag_assistant-0.1.6.tar.gz
Size 494.5 kB
Tags Source
SHA-256 checksum
How to use checksums
3ce3a7fc784c55315f3e6ba5ef189c60157797c85dbe54dde66619f179d35032
BLAKE2b-256 checksum
How to use checksums
a718e585a5e1254379a44db2049303adcadfbe59e5c33ed3c2105ef8d58e7e39
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.9

Release files / wooma_rag_assistant-0.1.6-py3-none-any.whl

Download URL wooma_rag_assistant-0.1.6-py3-none-any.whl
Size 491.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c1358a21cac3bc2d8e1202d5991b83b1ec2065de366495871a025b7c37995962
BLAKE2b-256 checksum
How to use checksums
739ac5d8dcedc17ecefcf9b921b84f97e18f5e8e1ac47a9fa17e5c66ebcafe06
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.9

Security for wooma-rag-assistant 0.1.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page