# Codage IA Aider

Aider est un assistant de codage IA en ligne de commande avec plus de 39K étoiles sur GitHub. Il modifie les fichiers directement dans votre dépôt, crée automatiquement des commits Git et prend en charge à la fois les API cloud (OpenAI, Anthropic) et des modèles entièrement locaux via Ollama. Sur un GPU Clore.ai, vous pouvez exécuter des grands modèles de codage comme DeepSeek-R1 32B ou Qwen2.5-Coder-32B entièrement sur votre propre matériel — privé, rapide et économique.

{% hint style="success" %}
Tous les exemples s'exécutent sur des serveurs GPU loués via le [CLORE.AI Marketplace](https://clore.ai/marketplace).
{% endhint %}

## Principales caractéristiques

* **Natif terminal** — fonctionne via SSH, parfait pour les serveurs Clore.ai sans interface graphique
* **Connaît Git** — commit automatiquement chaque modification avec des messages descriptifs, facile à réviser et à annuler
* **Édition multi-fichiers** — ajoutez plusieurs fichiers au contexte et éditez-les simultanément
* **Prise en charge des modèles locaux** — connectez-vous à Ollama pour un codage entièrement privé, sans coût d'API
* **Mode Architecte** — utilisez un modèle de raisonnement puissant pour planifier, puis un modèle rapide pour implémenter
* **Carte du dépôt** — indexe automatiquement votre code pour des modifications conscientes du contexte
* **Linting et tests** — exécutez les linters/tests après chaque modification, corrige automatiquement les échecs
* **Entrée vocale** — dictez des instructions de codage via le microphone

## Exigences

| Composant | Minimum        | Recommandé     |
| --------- | -------------- | -------------- |
| GPU       | RTX 3060 12 Go | RTX 4090 24 Go |
| VRAM      | 12 Go          | 24 Go          |
| RAM       | 16 Go          | 32 Go          |
| Disque    | 30 Go          | 60 Go          |
| Python    | 3.9            | 3.11           |

**Tarifs Clore.ai :** RTX 4090 ≈ 0,5–2 $/jour · RTX 3090 ≈ 0,3–1 $/jour · RTX 3060 ≈ 0,15–0,3 $/jour

Pour les modèles uniquement cloud (pas d'inférence locale), un GPU n'est pas requis — mais les GPU Clore.ai vous permettent d'exécuter des modèles Ollama localement pour une confidentialité totale.

## Démarrage rapide

### 1. Installer Aider

```bash
pip install aider-chat
```

### 2. Configurez Ollama pour les modèles locaux

```bash
# Installer Ollama
curl -fsSL https://ollama.com/install.sh | sh

# Récupérer un modèle de codage
ollama pull deepseek-r1:32b

# Ou un modèle plus petit pour moins de VRAM
ollama pull qwen2.5-coder:7b
```

### 3. Démarrer Aider avec un modèle local

```bash
cd /workspace/votre-projet

# Utiliser DeepSeek-R1 32B via Ollama (nécessite ~20 Go de VRAM)
aider --model ollama/deepseek-r1:32b

# Ou utiliser un modèle plus petit sur RTX 3060
aider --model ollama/qwen2.5-coder:7b
```

### 4. Commencez à coder

Dans le REPL Aider :

```
> /add src/main.py src/utils.py
> Ajouter la gestion des erreurs à la fonction parse_config et écrire des tests unitaires pour celle-ci
```

Aider va :

1. Lire les fichiers et comprendre la base de code
2. Proposer des changements sous forme de diff
3. Appliquer les modifications sur le disque
4. Créer un commit Git avec un message descriptif

## Exemples d'utilisation

### Mode Architecte (configuration à deux modèles)

Utilisez un modèle puissant pour le raisonnement et un modèle rapide pour la génération de code :

```bash
# Architecte cloud + éditeur local
aider --architect --model ollama/deepseek-r1:32b --editor-model ollama/qwen2.5-coder:7b
```

Le modèle architecte planifie les changements, et le modèle éditeur écrit le code réel — combinant un raisonnement de haute qualité avec une implémentation rapide.

### Ajouter des fichiers et éditer

```bash
# Ajouter des fichiers spécifiques au contexte du chat
> /add src/api/routes.py src/models/user.py

# Demander des changements
> Refactoriser le point de terminaison d'inscription des utilisateurs pour utiliser async/await et ajouter une validation des entrées avec Pydantic

# Ajouter un répertoire entier
> /add src/tests/

# Exécuter les tests après la modification
> /test pytest src/tests/ -v
```

### Utilisation avec des API cloud

```bash
# OpenAI
export OPENAI_API_KEY=sk-...
aider --model gpt-4o

# Anthropic
export ANTHROPIC_API_KEY=sk-ant-...
aider --model claude-sonnet-4-20250514
```

### Intégration Git

```bash
# Chaque modification crée automatiquement un commit
git log --oneline -5
# a1b2c3d aider : Ajouter la gestion des erreurs à parse_config
# d4e5f6g aider : Écrire des tests unitaires pour parse_config
# h7i8j9k aider : Refactoriser le point de terminaison d'inscription des utilisateurs

# Annuler la dernière modification d'Aider
aider --undo
```

### Lint et correction automatique

```bash
# Configurer un linter
aider --lint-cmd "ruff check --fix" --auto-lint

# Aider exécute le linter après chaque modification et corrige automatiquement les problèmes
```

### Mode non interactif (scripté)

```bash
# Exécuter une instruction unique et quitter
aider --model ollama/deepseek-r1:32b \
  --message "Ajouter des annotations de type à toutes les fonctions dans src/utils.py" \
  --yes  # accepter automatiquement les modifications
```

## Recommandations de modèles

| Modèle                | VRAM    | Vitesse | Qualité | Idéal pour                      |
| --------------------- | ------- | ------- | ------- | ------------------------------- |
| deepseek-r1:32b       | ≈20 Go  | Moyen   | Élevé   | Refactorisation complexe        |
| qwen2.5-coder:32b     | ≈20 Go  | Moyen   | Élevé   | Génération de code              |
| qwen2.5-coder:7b      | \~5 Go  | Rapide  | Bon     | Modifications rapides, RTX 3060 |
| codellama:34b         | ≈20 Go  | Moyen   | Bon     | Code legacy, C/C++              |
| deepseek-coder-v2:16b | \~10 Go | Rapide  | Bon     | Performance équilibrée          |

## Conseils

* **Utilisez `/add` sélectivement** — n'ajoutez que les fichiers que Aider a besoin de voir. Trop de fichiers gaspillent des tokens de contexte
* **Mode Architecte** est puissant pour les changements complexes — le modèle de raisonnement détecte des cas limites que le modèle éditeur pourrait manquer
* **`/undo`** annule proprement la dernière modification via Git — expérimentez librement
* **`/diff`** affiche les changements proposés avant application — à utiliser pour la revue
* **Définir `--auto-commits`** (par défaut) pour un historique Git complet de chaque changement IA
* **Utilisez `.aiderignore`** pour exclure des fichiers de la carte du dépôt (node\_modules, .venv, etc.)
* **Pour les grands dépôts**, la carte du dépôt d'Aider aide le modèle à comprendre la structure du code — laissez-la s'exécuter au premier chargement
* **Exécuter les tests après les modifications** — `/test pytest` détecte immédiatement les régressions

## Dépannage

| Problème                                     | Solution                                                                                     |
| -------------------------------------------- | -------------------------------------------------------------------------------------------- |
| Modèle Ollama trop lent                      | Utilisez une quantification plus petite (q4\_0) ou un modèle plus petit                      |
| `CUDA out of memory` avec Ollama             | Récupérez une variante de modèle plus petite ou utilisez `OLLAMA_NUM_GPU=0` pour le CPU      |
| Erreurs de commit Git                        | Assurez-vous que `git config user.email` et `user.name` sont définis                         |
| Aider ignore mes fichiers                    | Utilisez `/add filename.py` explicitement — Aider n'édite que les fichiers ajoutés           |
| Le modèle produit de mauvaises modifications | Essayez un modèle plus puissant, ou utilisez le mode architecte                              |
| Connexion refusée (Ollama)                   | Assurez-vous qu'Ollama est en cours d'exécution : `ollama serve` ou `systemctl start ollama` |
| Fenêtre de contexte dépassée                 | Supprimez des fichiers avec `/drop`, ne gardez que les fichiers pertinents                   |

## Ressources

* [Aider GitHub](https://github.com/Aider-AI/aider)
* [Documentation Aider](https://aider.chat)
* [Bibliothèque de modèles Ollama](https://ollama.com/library)
* [CLORE.AI Marketplace](https://clore.ai/marketplace)
