vortex-omega-final / INTEGRATION.md
RDS777's picture
Upload 1772 files
89c2dc5 verified
|
Raw
History Blame Contribute Delete
3.69 kB
# VORTEX GOD v1 — Guide d'intégration
## 1. Télécharger le modèle Qwen3 8B GGUF
Dans votre Space Hugging Face, ajoutez ce script de téléchargement au démarrage
(ou dans un `Dockerfile`) :
```bash
mkdir -p /app/models
huggingface-cli download \
bartowski/Qwen3-8B-Instruct-GGUF \
Qwen3-8B-Instruct-Q4_K_M.gguf \
--local-dir /app/models \
--local-dir-use-symlinks False
```
Modèles alternatifs si la VRAM est insuffisante :
- `Q3_K_M` (~3.5 Go) — légèrement moins précis
- `Q5_K_M` (~5.3 Go) — meilleur si la RAM le permet
## 2. Installer llama-cpp-python avec support CUDA
```bash
CMAKE_ARGS="-DGGML_CUDA=on" \
pip install llama-cpp-python --no-cache-dir --upgrade
```
> Sur HF Spaces T4, ajouter ceci dans `packages.txt` :
> `libcublas-dev-12-4`
## 3. Variables d'environnement (Secrets HF)
| Variable | Valeur recommandée |
|------------------|---------------------------------------------------------|
| `USE_LOCAL_LLM` | `1` |
| `LLM_MODEL` | `/app/models/Qwen3-8B-Instruct-Q4_K_M.gguf` |
| `N_GPU_LAYERS` | `35` (T4 Small — ajuster si OOM) |
| `N_CTX` | `4096` |
| `HF_TOKEN` | votre token (pour télécharger le modèle) |
| `SEARXNG_URL` | URL de votre instance SearXNG (optionnel) |
| `DATA_DIR` | `/app/data` |
| `ENERGY_MAX` | `10000` |
## 4. Intégrer les nouveaux fichiers dans l'arborescence existante
```
Vortttxx/
├── agents/
│ └── cognitive_engine.py ← REMPLACER par le nouveau
├── utils/
│ └── web_search.py ← NOUVEAU fichier
├── tests/
│ └── test_god_bootstrap.py ← NOUVEAU fichier
└── requirements.txt ← REMPLACER par le nouveau
```
## 5. Modifier app.py pour intégrer la recherche web
Dans le fichier `app.py` existant, ajoutez après les imports :
```python
from utils.web_search import web_search, search_arxiv
```
Puis ajoutez un onglet dans l'interface Gradio :
```python
with gr.TabItem("🌐 Recherche web"):
search_query = gr.Textbox(label="Requête")
fetch_toggle = gr.Checkbox(label="Extraire le contenu des pages", value=False)
arxiv_toggle = gr.Checkbox(label="Rechercher sur arXiv", value=False)
search_btn = gr.Button("Rechercher")
search_out = gr.Markdown()
async def do_search(q, fetch, arxiv_mode):
if arxiv_mode:
resp = await search_arxiv(q, max_results=5)
else:
resp = await web_search(q, max_results=6, fetch_pages=fetch)
return resp.as_context()
search_btn.click(fn=do_search, inputs=[search_query, fetch_toggle, arxiv_toggle], outputs=search_out)
```
## 6. Vérifier l'installation
```bash
python tests/test_god_bootstrap.py
```
## 7. Prochaines étapes (roadmap)
| Étape | Fichier à créer | Priorité |
|-------|------------------------------|----------|
| 2 | `agents/specialized/*.py` | Haute |
| 3 | `core/knowledge_graph.py` | Haute |
| 4 | `core/rag_engine.py` | Moyenne |
| 5 | Système d'évolution agents | Basse |
## Notes sur les performances T4
- Qwen3 8B Q4_K_M génère ~15-25 tokens/sec sur T4 avec `n_gpu_layers=35`
- Réduire `N_CTX` à 2048 pour économiser la VRAM si nécessaire
- Le cache LRU (`LLM_CACHE_MAX=256`) évite les appels répétés
- `fetch_pages=False` par défaut pour la recherche web (plus rapide)