mirror of
https://github.com/Alkatrazz24/Funk-lab.git
synced 2026-07-08 05:34:43 +02:00
docs: mise à jour README principal — état cluster + stack IA complète
- Stack IA : diagramme multi-agents (funk-ai/system/monitor/brain), tableau profils Hermes, ask-agent délégation inter-agents - Organisation repo : hermes_user, hermes-skills/, talos/, k8s/ - Gestion cluster : funk-start/stop --k8s, lien admin/cluster.md - Roadmap : cluster k8s ✅, MetalLB+Traefik ✅, ask-agent ✅, hermes_user ✅, WOL et ArgoCD restants Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
9f027cb833
commit
bd7181b8db
1 changed files with 54 additions and 18 deletions
72
README.md
72
README.md
|
|
@ -48,20 +48,43 @@ L'ensemble est géré en Infrastructure-as-Code : **Ansible** pour les hôtes Al
|
|||
## Stack IA
|
||||
|
||||
```
|
||||
Hermes Agent → LiteLLM :4000 → Qwen3-8B (local, gpu-01)
|
||||
→ Claude Sonnet / Opus (API Anthropic)
|
||||
|
||||
Hermes ←→ Qdrant :6333 (mémoire vectorielle sémantique)
|
||||
┌─────────────────────────────────────┐
|
||||
│ Hermes Agent (storage-01) │
|
||||
│ │
|
||||
│ profil funk-ai (Qwen3-8B GPU) │
|
||||
│ │ ask-agent system/monitor │
|
||||
│ ▼ │
|
||||
│ profil system (Qwen3-1.7B CPU) │
|
||||
│ profil monitor (Qwen3-1.7B CPU) │
|
||||
│ profil brain (Claude Sonnet API) │
|
||||
└──────────────┬──────────────────────┘
|
||||
│
|
||||
LiteLLM Proxy :4000
|
||||
│
|
||||
┌────────────────────┼────────────────────┐
|
||||
│ │ │
|
||||
qwen3-8b GPU qwen3-1.7b CPU Claude API
|
||||
gpu-01 :1234 :1236 system / :1237 monitor Anthropic
|
||||
```
|
||||
|
||||
| Composant | Rôle | Hôte |
|
||||
|---|---|---|
|
||||
| **llama-server** | Inférence LLM + embeddings (ROCm 7.x) | gpu-01 |
|
||||
| **LiteLLM** | Proxy API — switch local/cloud transparent | storage-01 |
|
||||
| **Hermes Agent** | Agent IA autonome avec mémoire vectorielle | storage-01 |
|
||||
| **llama-server** (×3) | Inférence GPU + 2× CPU isolés (ROCm 7.x) | gpu-01 |
|
||||
| **LiteLLM** | Proxy API — routing local/cloud transparent | storage-01 |
|
||||
| **Hermes Agent** | Agent IA multi-profils avec mémoire vectorielle | storage-01 |
|
||||
| **ask-agent** | Délégation inter-agents (system / monitor / brain) | storage-01 |
|
||||
| **Qdrant** | Base vectorielle pour la mémoire sémantique | storage-01 |
|
||||
| **PostgreSQL 16** | Persistance Hermes + LiteLLM | storage-01 |
|
||||
|
||||
### Profils Hermes
|
||||
|
||||
| Profil | Modèle | Usage |
|
||||
|---|---|---|
|
||||
| `funk-ai` | Qwen3-8B GPU (~35 tok/s) | Agent principal — par défaut |
|
||||
| `system` | Qwen3-1.7B CPU (~21 tok/s) | Calculs rapides, formatage, résumés |
|
||||
| `monitor` | Qwen3-1.7B CPU (~21 tok/s) | Analyse logs, métriques, santé système |
|
||||
| `brain` | Claude Sonnet 4.6 (API) | Raisonnement complexe, architecture |
|
||||
|
||||
---
|
||||
|
||||
## Infrastructure
|
||||
|
|
@ -101,12 +124,18 @@ Hermes ←→ Qdrant :6333 (mémoire vectorielle sémantique)
|
|||
│ ├── nfs_client # Montages NFS sur gpu-01
|
||||
│ ├── rocm # Stack GPU AMD (ROCm 7.x)
|
||||
│ ├── llama_server # Inférence LLM + embeddings
|
||||
│ ├── litellm # Proxy LLM multi-modèles
|
||||
│ ├── litellm # Proxy LLM + script ask-agent
|
||||
│ ├── hermes_agent # Agent IA autonome
|
||||
│ ├── hermes_user # User hermes + SSH partagé entre hosts
|
||||
│ ├── postgresql # Base de données
|
||||
│ └── qdrant # Base vectorielle
|
||||
├── talos/ # Cluster Kubernetes (talhelper) [à venir]
|
||||
└── k8s/ # Workloads ArgoCD [à venir]
|
||||
├── hermes-skills/ # Skills Hermes versionnés
|
||||
│ └── funk/
|
||||
│ └── agent-delegation/ # Délégation ask-agent (system/monitor/brain)
|
||||
├── talos/ # Cluster Kubernetes (talhelper)
|
||||
└── k8s/ # Workloads ArgoCD
|
||||
├── infra/ # MetalLB, Traefik, cert-manager
|
||||
└── apps/ # Open WebUI, n8n, monitoring
|
||||
```
|
||||
|
||||
---
|
||||
|
|
@ -143,11 +172,15 @@ ansible-playbook -i inventory.yml playbooks/gpu-01.yml --tags llama_server
|
|||
### Gestion du cluster
|
||||
|
||||
```bash
|
||||
funk-start # Allume gpu-01 (WOL) + démarre tous les services
|
||||
funk-stop # Arrêt propre
|
||||
funk-status # État de tous les services (13 checks)
|
||||
funk-start # Allume gpu-01 (WOL) + démarre tous les services
|
||||
funk-start --k8s # Idem + démarre les nœuds k8s
|
||||
funk-stop # Arrêt propre
|
||||
funk-stop --k8s # Arrêt propre + éteint k8s avant
|
||||
funk-status # État de tous les services (13 checks)
|
||||
```
|
||||
|
||||
> Détail complet des procédures : [admin/cluster.md](admin/cluster.md)
|
||||
|
||||
---
|
||||
|
||||
## Secrets
|
||||
|
|
@ -181,10 +214,13 @@ Elle est gérée automatiquement par le rôle Ansible `llama_server`.
|
|||
## Roadmap
|
||||
|
||||
- [x] Ansible — storage-01 (gateway, NFS, PostgreSQL, Qdrant, LiteLLM, Hermes)
|
||||
- [x] Ansible — gpu-01 (ROCm, llama-server, embeddings)
|
||||
- [x] Stack IA opérationnelle (Hermes + Qwen3-8B + mémoire vectorielle)
|
||||
- [x] Ansible — gpu-01 (ROCm, llama-server ×3 — GPU + 2× CPU)
|
||||
- [x] Stack IA opérationnelle (Hermes multi-profils + Qwen3 + Claude API)
|
||||
- [x] Délégation inter-agents (`ask-agent` + skill `agent-delegation`)
|
||||
- [x] User `hermes` avec SSH partagé entre storage-01 et gpu-01
|
||||
- [x] Cluster Kubernetes opérationnel (Talos + talhelper)
|
||||
- [x] MetalLB + Traefik + wildcard DNS `lab.local`
|
||||
- [ ] WOL compute nodes (configuration BIOS)
|
||||
- [ ] Route statique Freebox
|
||||
- [ ] Bootstrap cluster Kubernetes (Talos + talhelper)
|
||||
- [ ] ArgoCD + MetalLB + Traefik
|
||||
- [ ] Workloads IA en k8s (Open WebUI, n8n, monitoring)
|
||||
- [ ] ArgoCD bootstrap + workloads IA (Open WebUI, n8n, monitoring)
|
||||
- [ ] Rôle MinIO
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue