« Pi Agent Harness » : différence entre les versions
Autres actions
| Ligne 58 : | Ligne 58 : | ||
Une fois l'authentification terminée, de nouveaux modèles OpenAI seront disponibles via : | Une fois l'authentification terminée, de nouveaux modèles OpenAI seront disponibles via : | ||
/model | /model | ||
==== Choix du modèle pour la planification ==== | |||
Pour les tâches de planification, d'architecture logicielle ou de découpage d'un développement en plusieurs étapes, tous les modèles ne présentent pas le même rapport entre qualité de raisonnement et consommation du quota ChatGPT. | |||
; '''GPT-6.0 Astra''' | |||
: À privilégier pour les tâches de planification particulièrement complexes : architecture générale d'un projet, gros refactoring, choix techniques importants ou problèmes nécessitant un raisonnement en plusieurs étapes. | |||
: C'est le choix offrant la meilleure capacité de raisonnement, mais également l'un des plus coûteux en quota. | |||
; '''GPT-5.6 Sol''' | |||
: Recommandé comme modèle principal pour la planification. | |||
: Il offre un très bon niveau de raisonnement tout en consommant nettement moins de ressources que GPT-6.0 Astra. | |||
: Il convient particulièrement à la conception d'une fonctionnalité, à la création d'un plan d'implémentation ou à l'analyse d'une architecture existante. | |||
; '''GPT-5.6 Terra''' | |||
: À utiliser lorsqu'on souhaite réduire davantage la consommation du quota. | |||
: Il reste adapté aux tâches de planification courantes, mais sera moins fiable que GPT-5.6 Sol pour les problèmes d'architecture complexes. | |||
; '''GPT-5.6 Luna''' | |||
: Modèle rapide et économique, plutôt destiné aux tâches simples ou répétitives. | |||
: Il est moins recommandé comme modèle principal pour concevoir l'architecture d'une fonctionnalité importante. | |||
=== Projets === | === Projets === | ||
Version du 9 octobre 2026 à 08:47
Prérequis
Installation
Debian
# apt update && apt upgrade # apt install npm
On créé un utilisateur Pi :
# adduser pi # su - pi
On installe Pi avec l'installateur officiel :
# curl -fsSL https://pi.dev/install.sh | sh # export PATH="/home/pi/.pi/agent/bin:$PATH"
On vérifie l'installation :
# pi --version
Configuration
Modèle local
# vi ~/.pi/agent/models.json
Par exemple, on créé un fournisseur local
{
"providers": {
"local": {
"baseUrl": "https://192.168.1.123:8080/v1",
"api": "openai-completions",
"apiKey": "local",
"models": [
{
"id": "Qwen3.8-27B",
"input": ["text", "image"]
},
{
"id": "Muse-Glimmer",
"input": ["text", "image"]
}
]
}
}
}
On lance ensuite Pi :
# pi
Le modèle peut ensuite être sélectionné avec :
/login local
Abonnement ChatGPT
On lance Pi :
# pi
On utilise ensuite la commande /login :
/login
Puis on sélectionne :
→ Sign in with an account
→ OpenAI
Se rendre sur l'URL indiquée et suivre les instructions pour connecter son compte ChatGPT.
Une fois l'authentification terminée, de nouveaux modèles OpenAI seront disponibles via :
/model
Choix du modèle pour la planification
Pour les tâches de planification, d'architecture logicielle ou de découpage d'un développement en plusieurs étapes, tous les modèles ne présentent pas le même rapport entre qualité de raisonnement et consommation du quota ChatGPT.
- GPT-6.0 Astra
- À privilégier pour les tâches de planification particulièrement complexes : architecture générale d'un projet, gros refactoring, choix techniques importants ou problèmes nécessitant un raisonnement en plusieurs étapes.
- C'est le choix offrant la meilleure capacité de raisonnement, mais également l'un des plus coûteux en quota.
- GPT-5.6 Sol
- Recommandé comme modèle principal pour la planification.
- Il offre un très bon niveau de raisonnement tout en consommant nettement moins de ressources que GPT-6.0 Astra.
- Il convient particulièrement à la conception d'une fonctionnalité, à la création d'un plan d'implémentation ou à l'analyse d'une architecture existante.
- GPT-5.6 Terra
- À utiliser lorsqu'on souhaite réduire davantage la consommation du quota.
- Il reste adapté aux tâches de planification courantes, mais sera moins fiable que GPT-5.6 Sol pour les problèmes d'architecture complexes.
- GPT-5.6 Luna
- Modèle rapide et économique, plutôt destiné aux tâches simples ou répétitives.
- Il est moins recommandé comme modèle principal pour concevoir l'architecture d'une fonctionnalité importante.
Projets
# mkdir -p ~/projets/mon-projet # cd ~/projets/mon-projet # pi
Mise à jour
# pi update
- Pi uniquement :
# pi update --self
- Extensions/packages uniquement :
# pi update --extensions
- Pi + extensions/packages :
# pi update --all
Extension
Package Catalog : Installation avec pi install npm:<package>
Extension fournissant à Pi des outils natifs pour la recherche web et la consultation de pages, avec prise en charge locale de SearXNG et Firecrawl. # pi install npm:pi-web-access Pour utiliser SearXNG et Firecrawl, éditer :
# vi ~/.pi/agent/web-search.json
Ajouter :
{
"searxngBaseUrl": "https://192.168.1.123:8080",
"firecrawlBaseUrl": "https://192.168.1.123:3002",
"searchRouting": {
"providers": ["searxng", "firecrawl"],
"useCurrentModel": false,
"fallbackOn": ["transient", "quota", "network", "invalid-response"]
},
"fetchRouting": {
"providers": ["firecrawl"],
"allowRemoteHostedProviders": false
},
"fetch": {
"timeout": 30,
"defaultMode": "readable",
"allowedModes": ["readable", "raw", "answer"],
"answerProvider": "local",
"answerModel": "Qwen3.8-27B"
},
"webSearch": {
"enabled": true,
"allowedProviders": ["searxng", "firecrawl"]
},
"tools": {
"webSearch": { "enabled": true },
"sourceCheck": { "enabled": true },
"fetchContent": { "enabled": true },
"getSearchContent": { "enabled": true }
},
"commands": {
"websearch": { "enabled": true },
"curator": { "enabled": true },
"search": { "enabled": true },
"google-account": { "enabled": true }
},
"ssrf": {
"allowRanges": ["192.168.1.0/24"]
}
}
Navigateur Camofox anti-détection intégré sous forme d’outils natifs pour l’agent, avec gestion à la demande de son cycle de vie.
# sudo apt-get update && sudo apt-get install -y libgtk-3-0t64 libdbus-glib-1-2 libasound2t64 # pi install npm:@munstar0s/pifox
Mémoire persistante locale pour Pi, avec stockage SQLite et outils natifs pour mémoriser, retrouver et supprimer des souvenirs.
# sudo apt update && apt upgrade # sudo apt install python3-pip python3-full python3-venv # python3 -m venv ~/.mnemosyne-venv
On installe Mnemosyne :
mnemosyne-memory→ mémoire + recherche lexicale, très léger.mnemosyne-memory[embeddings]→ ajoute la recherche sémantique avec des embeddings locaux.mnemosyne-memory[all]→ installe toutes les fonctionnalités optionnelles, notamment les modèles locaux nécessaires aux fonctions avancées.
# ~/.mnemosyne-venv/bin/pip install mnemosyne-memory[embeddings] # pi install npm:@mnemosyne-oss/pi-mnemosyne # echo 'export PATH="$HOME/.mnemosyne-venv/bin:$PATH"' >> ~/.bashrc # source ~/.bashrc
Configuration
# vi ~/.hermes/mnemosyne/config.yaml
- Pour remplacer le LLM embedding par défaut qui est anglais uniquement par un modèle fournis :
... embedding_dim: 384 embedding_model: BAAI/bge-small-en-v1.5 ...
| Modèle | Dimensions | Langue / Type |
|---|---|---|
BAAI/bge-small-en-v1.5 |
384 | English |
BAAI/bge-base-en-v1.5 |
768 | English |
BAAI/bge-small-zh-v1.5 |
512 | Chinese |
BAAI/bge-base-zh-v1.5 |
768 | Chinese |
BAAI/bge-large-zh-v1.5 |
1,024 | Chinese |
BAAI/bge-m3 |
1,024 | Multilingual |
intfloat/multilingual-e5-large |
1,024 | Multilingual |
sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2 |
384 | Multilingual |
sentence-transformers/all-MiniLM-L6-v2 |
384 | Multilingual |
sentence-transformers/paraphrase-multilingual-mpnet-base-v2 |
768 | Multilingual |
openai/text-embedding-3-small |
1,536 | API |
openai/text-embedding-3-large |
3,072 | API |
- Pour utiliser un embedding auto-hébergé :
... embedding_api_key: 'MA_CLE' embedding_api_url: 'http://MON_SERVEUR:8080/v1' embedding_dim: 1024 embedding_model: 'TON_MODELE' embeddings_off: false embeddings_via_api: true enhanced_recall: false ...
- Pour utiliser un LLM auto-hébergé, exemple avec LFM2.5-2.6B :
... llm_api_key: 'MA_CLE' llm_base_url: 'http://MON_SERVEUR:8085/v1' llm_conflict_detection: false llm_enabled: true llm_fallback_api_key: llm_fallback_base_url: llm_fallback_models: llm_file: llm_max_tokens: 2048 llm_model: 'LiquidAI_LFM2.5-2.6B' llm_n_ctx: 131072 llm_n_threads: 4 llm_repo: llm_timeout: 60 ...
# pi install npm:pi-mcp-adapter
Puis pour configurer les instances MCP :
# mkdir -p ~/.config/mcp # vi ~/.config/mcp/mcp.json
# vi ~/.config/mcp/mcp.json
{
"mcpServers": {
"ragflow": {
"url": "http://192.168.1.123:9382/mcp",
"headers": {
"Authorization": "Bearer TON_API_KEY"
}
}
}
}