borges-graph / README.md
ArthurSrz's picture
fix: Configure Python 3.11 and fix dependencies for nano-graphrag
af1022d
---
title: Borges Graph
emoji: 📚
colorFrom: yellow
colorTo: red
sdk: gradio
sdk_version: 4.44.0
app_file: app.py
python_version: 3.11
pinned: false
license: mit
short_description: GraphRAG Explorer for Borgesian Literature Analysis
---
# 📚 Borges Graph - GraphRAG Explorer
Une application Gradio interactive pour explorer vos données GraphRAG à travers l'intelligence artificielle. Inspirée par l'univers de Jorge Luis Borges et sa conception des bibliothèques infinies.
## ✨ Fonctionnalités
- **🔍 Recherche intelligente**: Posez des questions en langage naturel sur vos livres
- **📊 Modes de recherche**: Local (focalisé) ou Global (vue d'ensemble)
- **📚 Gestion de livres**: Uploadez et traitez de nouveaux textes
- **🌐 API externe**: Connexion optionnelle à l'API Borges déployée
- **🎯 Interface intuitive**: Design élégant inspiré de l'esthétique borgésienne
## 🚀 Installation et déploiement
### Installation locale
```bash
pip install -r requirements.txt
python app.py
```
### Déploiement sur Hugging Face Spaces
1. Forkez ou clonez ce repository
2. Créez un nouvel Space sur [Hugging Face](https://huggingface.co/spaces)
3. Uploadez les fichiers de ce dossier
4. Configurez les variables d'environnement si nécessaire:
- `OPENAI_API_KEY`: Votre clé API OpenAI
- `BORGES_API_URL`: URL de votre API Borges (optionnel)
- `ENABLE_EXTERNAL_API`: "true" pour activer la connexion API externe
## 📋 Utilisation
### Mode local
1. **Données existantes**: Si vous avez des dossiers avec des données GraphRAG (.graphml), ils seront automatiquement détectés
2. **Nouveaux textes**: Uploadez un fichier .txt qui sera traité automatiquement
3. **Données pré-traitées**: Uploadez un fichier .zip contenant des données GraphRAG existantes
### Mode API externe
Activez l'option "Utiliser l'API Borges" pour interroger directement votre application déployée sur Vercel.
## 🔧 Configuration
### Variables d'environnement
- `OPENAI_API_KEY`: Requis pour le traitement GraphRAG local
- `BORGES_API_URL`: URL de l'API externe (défaut: https://borges-library.vercel.app/api/graphrag)
- `ENABLE_EXTERNAL_API`: Active l'option API externe dans l'interface
### Formats de fichiers supportés
- **📄 .txt**: Texte brut qui sera traité par GraphRAG
- **📦 .zip**: Archive contenant des données GraphRAG pré-traitées
## 🏗️ Architecture
L'application est construite avec:
- **Gradio**: Interface utilisateur interactive
- **nano-graphrag**: Moteur de traitement GraphRAG
- **NetworkX**: Manipulation des graphes
- **OpenAI API**: Modèles de langage pour l'analyse
## 🎨 Interface
L'interface comprend deux onglets principaux:
1. **🔍 Recherche**: Pour interroger vos données
2. **📚 Gestion des livres**: Pour uploader et gérer vos textes
## 🤝 Intégration avec l'écosystème Borges
Cette application Gradio est conçue pour fonctionner en synergie avec:
- **Borges Library Web**: Interface principale déployée sur Vercel
- **GraphRAG API**: API backend pour les requêtes GraphRAG
- **Neo4j**: Base de données graphe pour la persistance
## 🔗 Liens
- [nano-graphrag](https://github.com/gusye1234/nano-graphrag)
- [Gradio](https://gradio.app)
- [Hugging Face Spaces](https://huggingface.co/spaces)