Spaces:
Running
on
Zero
Running
on
Zero
Upload README.md with huggingface_hub
Browse files
README.md
CHANGED
|
@@ -1,12 +1,111 @@
|
|
| 1 |
---
|
| 2 |
-
title: Swift
|
| 3 |
-
emoji:
|
| 4 |
-
colorFrom:
|
| 5 |
-
colorTo:
|
| 6 |
sdk: gradio
|
| 7 |
sdk_version: 5.43.1
|
| 8 |
app_file: app.py
|
| 9 |
pinned: false
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
---
|
| 11 |
|
| 12 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
---
|
| 2 |
+
title: Swift MLX documentation research
|
| 3 |
+
emoji: 🔍
|
| 4 |
+
colorFrom: blue
|
| 5 |
+
colorTo: green
|
| 6 |
sdk: gradio
|
| 7 |
sdk_version: 5.43.1
|
| 8 |
app_file: app.py
|
| 9 |
pinned: false
|
| 10 |
+
license: mit
|
| 11 |
+
hardware: zerogpu
|
| 12 |
+
short_description: Search in the Swift MLX documentation
|
| 13 |
+
models:
|
| 14 |
+
- Qwen/Qwen3-Embedding-4B
|
| 15 |
+
- Qwen/Qwen3-Reranker-4B
|
| 16 |
+
- Qwen/Qwen3-4B-Instruct-2507
|
| 17 |
+
datasets:
|
| 18 |
+
- VincentGOURBIN/swift-mlx-Qwen3-Embedding-4B
|
| 19 |
+
tags:
|
| 20 |
+
- rag
|
| 21 |
+
- retrieval-augmented-generation
|
| 22 |
+
- qwen3
|
| 23 |
+
- semantic-search
|
| 24 |
+
- question-answering
|
| 25 |
+
- zero-gpu
|
| 26 |
+
- mcp-server
|
| 27 |
+
- faiss
|
| 28 |
---
|
| 29 |
|
| 30 |
+
# 🔍 LocalRAG - Système RAG Complet avec Qwen3
|
| 31 |
+
|
| 32 |
+
Système RAG (Retrieval-Augmented Generation) complet utilisant les modèles Qwen3 de dernière génération avec reranking et génération streamée.
|
| 33 |
+
|
| 34 |
+
## ⚡ Fonctionnalités
|
| 35 |
+
|
| 36 |
+
### 🧠 **Modèles IA Avancés**
|
| 37 |
+
- **Embeddings**: Qwen3-Embedding-4B (2560 dimensions)
|
| 38 |
+
- **Reranking**: Qwen3-Reranker-4B pour l'affinage des résultats
|
| 39 |
+
- **Génération**: Qwen3-4B-Instruct-2507 avec streaming
|
| 40 |
+
- **Optimisation ZeroGPU**: Support natif avec décorateurs @spaces.GPU
|
| 41 |
+
|
| 42 |
+
### 🔍 **Recherche Sémantique Avancée**
|
| 43 |
+
- **Pipeline 2 étapes**: Recherche vectorielle + reranking
|
| 44 |
+
- **Index FAISS**: Recherche haute performance sur de gros volumes
|
| 45 |
+
- **Scores détaillés**: Embedding + reranking pour chaque document
|
| 46 |
+
- **Sélection intelligente**: Top-K adaptatif selon pertinence
|
| 47 |
+
|
| 48 |
+
### 💬 **Génération Contextuelle**
|
| 49 |
+
- **Streaming**: Réponse progressive token par token
|
| 50 |
+
- **Contexte enrichi**: Intégration des documents les plus pertinents
|
| 51 |
+
- **Références**: Sources avec scores de pertinence
|
| 52 |
+
- **Qualité**: Réponses basées uniquement sur le contexte fourni
|
| 53 |
+
|
| 54 |
+
### 🔌 **Intégration MCP**
|
| 55 |
+
- **Serveur MCP natif**: Fonction `ask_rag_question()` exposée
|
| 56 |
+
- **Paramètres configurables**: Nombre documents, activation reranking
|
| 57 |
+
- **Compatible**: Claude Desktop, VS Code, Cursor IDE
|
| 58 |
+
- **API structurée**: Réponses JSON avec sources et métadonnées
|
| 59 |
+
|
| 60 |
+
## 🚀 Utilisation
|
| 61 |
+
|
| 62 |
+
### Interface Web
|
| 63 |
+
1. **Posez votre question** dans le chat
|
| 64 |
+
2. **Observez la recherche** en 2 étapes (vectorielle → reranking)
|
| 65 |
+
3. **Lisez la réponse** générée en streaming
|
| 66 |
+
4. **Consultez les sources** avec scores de pertinence
|
| 67 |
+
|
| 68 |
+
### Paramètres Avancés
|
| 69 |
+
- **Documents finaux**: Nombre de documents pour la génération (1-10)
|
| 70 |
+
- **Reranking**: Activer/désactiver l'affinage Qwen3
|
| 71 |
+
- **Historique**: Conversations contextuelles
|
| 72 |
+
|
| 73 |
+
### Intégration MCP
|
| 74 |
+
Connectez votre client MCP pour un accès programmatique :
|
| 75 |
+
```python
|
| 76 |
+
# Exemple d'utilisation MCP
|
| 77 |
+
result = mcp_client.call_tool(
|
| 78 |
+
"ask_rag_question",
|
| 79 |
+
question="Comment implémenter des réseaux de neurones complexes?",
|
| 80 |
+
num_documents=3,
|
| 81 |
+
use_reranking=True
|
| 82 |
+
)
|
| 83 |
+
```
|
| 84 |
+
|
| 85 |
+
## 🎯 Cas d'Usage Parfaits
|
| 86 |
+
|
| 87 |
+
- **Documentation technique**: Recherche dans APIs, guides, tutoriels
|
| 88 |
+
- **Support client**: Réponses basées sur une base de connaissances
|
| 89 |
+
- **Recherche académique**: Analyse de corpus documentaires
|
| 90 |
+
- **Assistance développeur**: Aide contextuelle sur frameworks/librairies
|
| 91 |
+
- **Formation**: Système de questions-réponses intelligent
|
| 92 |
+
|
| 93 |
+
## 📊 Performance
|
| 94 |
+
|
| 95 |
+
- **Recherche**: ~50ms pour 10K+ documents
|
| 96 |
+
- **Reranking**: ~200ms pour 20 candidats
|
| 97 |
+
- **Génération**: ~2-4s avec streaming
|
| 98 |
+
- **Mémoire**: ~6-8GB optimisé pour ZeroGPU
|
| 99 |
+
|
| 100 |
+
## 🔒 Sécurité & Confidentialité
|
| 101 |
+
|
| 102 |
+
- **ZeroGPU**: Traitement sécurisé sans stockage persistant
|
| 103 |
+
- **Données temporaires**: Pas de rétention des questions/réponses
|
| 104 |
+
- **Modèles locaux**: Traitement dans l'environnement HF Spaces
|
| 105 |
+
|
| 106 |
+
## 📚 Source des Données
|
| 107 |
+
|
| 108 |
+
Ce Space utilise des embeddings pré-calculés depuis le dataset :
|
| 109 |
+
**[VincentGOURBIN/swift-mlx-Qwen3-Embedding-4B](https://huggingface.co/datasets/VincentGOURBIN/swift-mlx-Qwen3-Embedding-4B)**
|
| 110 |
+
|
| 111 |
+
Commencez à poser vos questions pour découvrir la puissance du RAG avec Qwen3! 🔍✨
|