Spaces:
Running
on
Zero
Running
on
Zero
title: Swift MLX documentation research | |
emoji: 🔍 | |
colorFrom: blue | |
colorTo: green | |
sdk: gradio | |
sdk_version: 5.43.1 | |
app_file: step03_chatbot.py | |
pinned: false | |
license: mit | |
hardware: zerogpu | |
short_description: Search in the Swift MLX documentation | |
models: | |
- Qwen/Qwen3-Embedding-4B | |
- Qwen/Qwen3-Reranker-4B | |
- Qwen/Qwen3-4B-Instruct-2507 | |
datasets: | |
- VincentGOURBIN/swift-mlx-Qwen3-Embedding-4B | |
tags: | |
- rag | |
- retrieval-augmented-generation | |
- qwen3 | |
- semantic-search | |
- question-answering | |
- zero-gpu | |
- mcp-server | |
- faiss | |
# 🔍 LocalRAG - Système RAG Complet avec Qwen3 | |
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. | |
## ⚡ Fonctionnalités | |
### 🧠 **Modèles IA Avancés** | |
- **Embeddings**: Qwen3-Embedding-4B (2560 dimensions) | |
- **Reranking**: Qwen3-Reranker-4B pour l'affinage des résultats | |
- **Génération**: Qwen3-4B-Instruct-2507 avec streaming | |
- **Optimisation ZeroGPU**: Support natif avec décorateurs @spaces.GPU | |
### 🔍 **Recherche Sémantique Avancée** | |
- **Pipeline 2 étapes**: Recherche vectorielle + reranking | |
- **Index FAISS**: Recherche haute performance sur de gros volumes | |
- **Scores détaillés**: Embedding + reranking pour chaque document | |
- **Sélection intelligente**: Top-K adaptatif selon pertinence | |
### 💬 **Génération Contextuelle** | |
- **Streaming**: Réponse progressive token par token | |
- **Contexte enrichi**: Intégration des documents les plus pertinents | |
- **Références**: Sources avec scores de pertinence | |
- **Qualité**: Réponses basées uniquement sur le contexte fourni | |
### 🔌 **Intégration MCP** | |
- **Serveur MCP natif**: Fonction `ask_rag_question()` exposée | |
- **Paramètres configurables**: Nombre documents, activation reranking | |
- **Compatible**: Claude Desktop, VS Code, Cursor IDE | |
- **API structurée**: Réponses JSON avec sources et métadonnées | |
## 🚀 Utilisation | |
### Interface Web | |
1. **Posez votre question** dans le chat | |
2. **Observez la recherche** en 2 étapes (vectorielle → reranking) | |
3. **Lisez la réponse** générée en streaming | |
4. **Consultez les sources** avec scores de pertinence | |
### Paramètres Avancés | |
- **Documents finaux**: Nombre de documents pour la génération (1-10) | |
- **Reranking**: Activer/désactiver l'affinage Qwen3 | |
- **Historique**: Conversations contextuelles | |
### Intégration MCP | |
Connectez votre client MCP pour un accès programmatique : | |
```python | |
# Exemple d'utilisation MCP | |
result = mcp_client.call_tool( | |
"ask_rag_question", | |
question="Comment implémenter des réseaux de neurones complexes?", | |
num_documents=3, | |
use_reranking=True | |
) | |
``` | |
## 🎯 Cas d'Usage Parfaits | |
- **Documentation technique**: Recherche dans APIs, guides, tutoriels | |
- **Support client**: Réponses basées sur une base de connaissances | |
- **Recherche académique**: Analyse de corpus documentaires | |
- **Assistance développeur**: Aide contextuelle sur frameworks/librairies | |
- **Formation**: Système de questions-réponses intelligent | |
## 📊 Performance | |
- **Recherche**: ~50ms pour 10K+ documents | |
- **Reranking**: ~200ms pour 20 candidats | |
- **Génération**: ~2-4s avec streaming | |
- **Mémoire**: ~6-8GB optimisé pour ZeroGPU | |
## 🔒 Sécurité & Confidentialité | |
- **ZeroGPU**: Traitement sécurisé sans stockage persistant | |
- **Données temporaires**: Pas de rétention des questions/réponses | |
- **Modèles locaux**: Traitement dans l'environnement HF Spaces | |
## 📚 Source des Données | |
Ce Space utilise des embeddings pré-calculés depuis le dataset : | |
**[VincentGOURBIN/swift-mlx-Qwen3-Embedding-4B](https://huggingface.co/datasets/VincentGOURBIN/swift-mlx-Qwen3-Embedding-4B)** | |
Commencez à poser vos questions pour découvrir la puissance du RAG avec Qwen3! 🔍✨ | |