05 — AI engineer
05 — Devenir un AI engineer avec Opencode
Objectif : utiliser Opencode non seulement pour écrire du code, mais pour développer des systèmes et des fonctionnalités d’IA — du choix des modèles à l’évaluation, en passant par les serveurs MCP et les skills.
1. Deux façons d’utiliser l’IA en ingénierie
| Usage | Description |
|---|---|
| Coder avec l’IA | Opencode écrit votre application classique (fait depuis le chapitre 01) |
| Développer de l’IA | Vous construisez des produits qui intègrent des LLM : chatbots, RAG, agents, pipelines de données |
Ce chapitre couvre les deux, avec un accent sur la seconde — la spécialité de l’ai-engineer.
2. Choisir ses modèles selon la tâche
Tous les modèles ne se valent pas pour toutes les tâches. Dans opencode.json, configurez des modèles par rôle :
{ "$schema": "https://opencode.ai/config.json", "model": "anthropic/claude-sonnet-4-6", "small_model": "anthropic/claude-haiku-4-5", "agent": { "plan": { "model": "anthropic/claude-haiku-4-5" }, "build": { "model": "anthropic/claude-sonnet-4-6" }, "ai-engineer": { "model": "anthropic/claude-opus-4-6" } }}Règles de bon sens :
- Modèle rapide/économique pour explorer, planifier, titrer, résumer.
- Modèle puissant pour implémenter des changements complexes.
- Modèle maximal pour l’architecture IA, les problèmes durs, l’audit.
- La température : basse (
0.1) pour l’analyse, haute (0.7+) pour le brainstorming.
flowchart TD T[Tâche ?] -->|explorer, planifier, résumer| R[petit modèle rapide<br/>ex. claude-haiku] T -->|implémenter du code| P[modèle puissant<br/>ex. claude-sonnet] T -->|problème d'IA difficile, audit| M[modèle maximal<br/>ex. claude-opus] T -->|brainstorming, créativité| C[température haute > 0.7] R --> C P --> C M --> C style R fill:#ecfeff,stroke:#0891b2,color:#164e63 style P fill:#eef2ff,stroke:#4f46e5,color:#312e81 style M fill:#fff7ed,stroke:#ea580c,color:#7c2d12 style C fill:#f5f3ff,stroke:#7c3aed,color:#4c1d95Liste des modèles disponibles :
opencode models3. Les skills — des compétences réutilisables
Un skill est un SKILL.md contenant des instructions que l’agent charge à la demande quand la tâche correspond. C’est un « mode d’emploi » pour des workflows complexes.
Emplacements
.opencode/skills/<nom>/SKILL.md ← projet~/.config/opencode/skills/<nom>/SKILL.md ← globalStructure
---name: test-driven-devdescription: Use when writing code with tests. Guides the red-green-refactor loop.---
# Test-Driven Development
Follow the red-green-refactor cycle:1. RED: write a failing test for the behavior first.2. GREEN: write the minimal code to make it pass.3. REFACTOR: clean up while keeping tests green....Règles de validation
nameetdescriptionobligatoires.name: minuscules, tirets simples, 1-64 caractères (^[a-z0-9]+(-[a-z0-9]+)*$).description: 1-1024 caractères, écrite à la 3e personne, avec les mots-clés déclencheurs en avant.- Le fichier s’appelle
SKILL.mdexactement, dans un dossier au nom du skill.
Exemple fourni
Le skill exemples/.opencode/skills/test-driven-dev/SKILL.md applique le cycle rouge-vert-refactor à chaque développement.
cp -r exemples/.opencode/skills/ .opencode/skills/4. Les serveurs MCP — donner des super-pouvoirs à l’IA
MCP (Model Context Protocol) connecte Opencode à des outils externes : navigateur, base de données, GitHub, etc. C’est ainsi qu’un AI engineer teste réellement ses modèles, navigue dans la doc et interagit avec le monde.
Configuration dans opencode.json :
{ "mcp": { "playwright": { "type": "local", "command": ["npx", "-y", "@playwright/mcp"], "enabled": true }, "github": { "type": "remote", "url": "https://api.githubcopilot.com/mcp/", "enabled": true, "headers": { "Authorization": "Bearer {env:GITHUB_TOKEN}" } } }}type:local(commande) ouremote(URL).commandest un tableau de chaînes, jamais une seule chaîne.{env:VAR}permet d’interpoler des variables d’environnement dans les en-têtes.
Exemples d’usage en ingénierie IA :
- Playwright : tester visuellement une interface de chatbot, vérifier le rendu.
- GitHub MCP : créer des issues, commenter des PR depuis une session.
- Serveurs métier : interroger votre API, votre base, votre CI.
5. Le workflow d’un AI engineer (bonnes pratiques)
Concevoir avec un prompt système propre
Demandez à Opencode de vous aider à rédiger le prompt système d’un agent que vous développez :
Aide-moi à écrire un prompt système pour un agent de support client :- ton clair et empathique- refuse poliment ce qui est hors périmètre- escalade vers un humain si l'utilisateur est frustré- ne jamais inventer de prix ou de politiquesÉvaluer, ne pas deviner
L’ingénierie IA sérieuse s’évalue. Demandez à Opencode de construire un jeu d’évaluation :
Crée un jeu de 20 prompts de test variés pour évaluer notre assistant,avec pour chacun : entrée, sortie attendue, critères de réussite.Génère aussi un script qui lance l'évaluation et calcule un score.Tester les cas limites
Les LLM échouent de façon différente des logiciels classiques : hallucinations, injections de prompt, fuite de contexte, sorties hors format. Votre agent security-auditor (chapitre 03) devrait aussi auditer ces surfaces.
6. Ingénierie de données et de prompts
- RAG : demandez à Opencode de structurer l’indexation, le chunking, l’embeddings et la recherche de votre base de connaissances.
flowchart LR S[Sources<br/>docs, wikis] --> C[Découpage en chunks] C --> E[Embeddings] E --> V[(Base vectorielle)] Q[Question utilisateur] --> EQ[Embeddings de la requête] EQ --> R[Recherche de similarité] V --> R R --> CTX[Contexte pertinent] CTX --> L[LLM — génération] Q --> L L --> A[Réponse sourcée] style S fill:#ecfeff,stroke:#0891b2,color:#164e63 style V fill:#eef2ff,stroke:#4f46e5,color:#312e81 style L fill:#fff7ed,stroke:#ea580c,color:#7c2d12 style A fill:#f0fdf4,stroke:#16a34a,color:#14532d- Fine-tuning : aidez-vous d’Opencode pour préparer des datasets propres (nettoyage, dédup, format).
- Pipelines : laissez l’agent générer les tests d’intégration entre les étapes (ingestion → embedding → retrieval → génération).
Le tout dans des incréments testés, conformément à la méthode d’ingénieur.
Récapitulatif
- Modèles par rôle : rapide pour planifier, puissant pour implémenter.
- Skills = workflows réutilisables déclenchés à la demande.
- MCP = connecter Opencode à vos outils (navigateur, GitHub, API).
- Évaluation systématique des sorties de vos systèmes d’IA.
Passez au chapitre 06 — Sécurité pour verrouiller vos agents.