# 🔌 Fournisseurs et Configuration des ModĂšles > Retour au [README](../../README.fr.md) ### Fournisseurs > [!NOTE] > Groq fournit la transcription vocale gratuite via Whisper. Si configurĂ©, les messages audio de n'importe quel canal seront automatiquement transcrits au niveau de l'agent. | Provider | Purpose | Get API Key | | ------------ | --------------------------------------- | ------------------------------------------------------------ | | `gemini` | LLM (Gemini direct) | [aistudio.google.com](https://aistudio.google.com) | | `zhipu` | LLM (Zhipu direct) | [bigmodel.cn](https://bigmodel.cn) | | `volcengine` | LLM (Volcengine direct) | [volcengine.com](https://www.volcengine.com/activity/codingplan?utm_campaign=PicoClaw&utm_content=PicoClaw&utm_medium=devrel&utm_source=OWO&utm_term=PicoClaw) | | `openrouter` | LLM (recommended, access to all models) | [openrouter.ai](https://openrouter.ai) | | `anthropic` | LLM (Claude direct) | [console.anthropic.com](https://console.anthropic.com) | | `openai` | LLM (GPT direct) | [platform.openai.com](https://platform.openai.com) | | `deepseek` | LLM (DeepSeek direct) | [platform.deepseek.com](https://platform.deepseek.com) | | `qwen` | LLM (Qwen direct) | [dashscope.console.aliyun.com](https://dashscope.console.aliyun.com) | | `groq` | LLM + **Voice transcription** (Whisper) | [console.groq.com](https://console.groq.com) | | `cerebras` | LLM (Cerebras direct) | [cerebras.ai](https://cerebras.ai) | | `vivgrid` | LLM (Vivgrid direct) | [vivgrid.com](https://vivgrid.com) | | `moonshot` | LLM (Kimi/Moonshot direct) | [platform.moonshot.cn](https://platform.moonshot.cn) | | `minimax` | LLM (Minimax direct) | [platform.minimaxi.com](https://platform.minimaxi.com) | | `avian` | LLM (Avian direct) | [avian.io](https://avian.io) | | `mistral` | LLM (Mistral direct) | [console.mistral.ai](https://console.mistral.ai) | | `longcat` | LLM (Longcat direct) | [longcat.ai](https://longcat.ai) | | `modelscope` | LLM (ModelScope direct) | [modelscope.cn](https://modelscope.cn) | ### Configuration des ModĂšles (model_list) > **NouveautĂ©** PicoClaw utilise dĂ©sormais une approche de configuration **centrĂ©e sur le modĂšle**. SpĂ©cifiez simplement le format `vendor/model` (par ex. `zhipu/glm-4.7`) pour ajouter de nouveaux fournisseurs — **aucune modification de code requise !** Cette conception permet Ă©galement le **support multi-agents** avec une sĂ©lection flexible de fournisseurs : - **DiffĂ©rents agents, diffĂ©rents fournisseurs** : Chaque agent peut utiliser son propre fournisseur LLM - **ModĂšles de repli** : Configurez des modĂšles principaux et de repli pour la rĂ©silience - **RĂ©partition de charge** : Distribuez les requĂȘtes entre plusieurs endpoints - **Configuration centralisĂ©e** : GĂ©rez tous les fournisseurs en un seul endroit #### 📋 Tous les Vendors SupportĂ©s | Vendor | `model` Prefix | Default API Base | Protocol | API Key | | ------------------- | ----------------- |-----------------------------------------------------| --------- | ---------------------------------------------------------------- | | **OpenAI** | `openai/` | `https://api.openai.com/v1` | OpenAI | [Get Key](https://platform.openai.com) | | **Anthropic** | `anthropic/` | `https://api.anthropic.com/v1` | Anthropic | [Get Key](https://console.anthropic.com) | | **æ™șè°± AI (GLM)** | `zhipu/` | `https://open.bigmodel.cn/api/paas/v4` | OpenAI | [Get Key](https://open.bigmodel.cn/usercenter/proj-mgmt/apikeys) | | **DeepSeek** | `deepseek/` | `https://api.deepseek.com/v1` | OpenAI | [Get Key](https://platform.deepseek.com) | | **Google Gemini** | `gemini/` | `https://generativelanguage.googleapis.com/v1beta` | OpenAI | [Get Key](https://aistudio.google.com/api-keys) | | **Groq** | `groq/` | `https://api.groq.com/openai/v1` | OpenAI | [Get Key](https://console.groq.com) | | **Moonshot** | `moonshot/` | `https://api.moonshot.cn/v1` | OpenAI | [Get Key](https://platform.moonshot.cn) | | **通äč‰ćƒé—ź (Qwen)** | `qwen/` | `https://dashscope.aliyuncs.com/compatible-mode/v1` | OpenAI | [Get Key](https://dashscope.console.aliyun.com) | | **NVIDIA** | `nvidia/` | `https://integrate.api.nvidia.com/v1` | OpenAI | [Get Key](https://build.nvidia.com) | | **Ollama** | `ollama/` | `http://localhost:11434/v1` | OpenAI | Local (no key needed) | | **OpenRouter** | `openrouter/` | `https://openrouter.ai/api/v1` | OpenAI | [Get Key](https://openrouter.ai/keys) | | **LiteLLM Proxy** | `litellm/` | `http://localhost:4000/v1` | OpenAI | Your LiteLLM proxy key | | **VLLM** | `vllm/` | `http://localhost:8000/v1` | OpenAI | Local | | **Cerebras** | `cerebras/` | `https://api.cerebras.ai/v1` | OpenAI | [Get Key](https://cerebras.ai) | | **VolcEngine (Doubao)** | `volcengine/` | `https://ark.cn-beijing.volces.com/api/v3` | OpenAI | [Get Key](https://www.volcengine.com/activity/codingplan?utm_campaign=PicoClaw&utm_content=PicoClaw&utm_medium=devrel&utm_source=OWO&utm_term=PicoClaw) | | **焞矗äș‘** | `shengsuanyun/` | `https://router.shengsuanyun.com/api/v1` | OpenAI | - | | **BytePlus** | `byteplus/` | `https://ark.ap-southeast.bytepluses.com/api/v3` | OpenAI | [Get Key](https://www.byteplus.com) | | **Vivgrid** | `vivgrid/` | `https://api.vivgrid.com/v1` | OpenAI | [Get Key](https://vivgrid.com) | | **LongCat** | `longcat/` | `https://api.longcat.chat/openai` | OpenAI | [Get Key](https://longcat.chat/platform) | | **ModelScope (魔搭)**| `modelscope/` | `https://api-inference.modelscope.cn/v1` | OpenAI | [Get Token](https://modelscope.cn/my/tokens) | | **Antigravity** | `antigravity/` | Google Cloud | Custom | OAuth only | | **GitHub Copilot** | `github-copilot/` | `localhost:4321` | gRPC | - | #### Configuration de Base ```json { "model_list": [ { "model_name": "ark-code-latest", "model": "volcengine/ark-code-latest", "api_keys": ["sk-your-api-key"] }, { "model_name": "gpt-5.4", "model": "openai/gpt-5.4", "api_keys": ["sk-your-openai-key"] }, { "model_name": "claude-sonnet-4.6", "model": "anthropic/claude-sonnet-4.6", "api_keys": ["sk-ant-your-key"] }, { "model_name": "glm-4.7", "model": "zhipu/glm-4.7", "api_keys": ["your-zhipu-key"] } ], "agents": { "defaults": { "model_name": "gpt-5.4" } } } ``` #### Champs d'entrĂ©e `model_list` | Champ | Type | Requis | Description | |-------|------|--------|-------------| | `model_name` | string | Oui | Nom unique pour rĂ©fĂ©rencer ce modĂšle dans la config agent | | `model` | string | Oui | Identifiant fournisseur/modĂšle (ex : `openai/gpt-5.4`, `azure/gpt-5.4`, `anthropic/claude-sonnet-4.6`) | | `api_keys` | string[] | Oui* | ClĂ©(s) API pour l'authentification. Plusieurs clĂ©s permettent la rotation par requĂȘte. Non requis pour les fournisseurs locaux (Ollama, LM Studio, VLLM) | | `api_base` | string | Non | Remplace l'URL de base API par dĂ©faut | | `proxy` | string | Non | URL du proxy HTTP pour cette entrĂ©e de modĂšle | | `user_agent` | string | Non | En-tĂȘte `User-Agent` personnalisĂ© pour les requĂȘtes API (supportĂ© par les providers OpenAI-compatible, Anthropic et Azure) | | `request_timeout` | int | Non | DĂ©lai d'expiration de la requĂȘte en secondes (la valeur par dĂ©faut varie selon le provider) | | `max_tokens_field` | string | Non | Remplace le nom du champ max tokens dans le corps de la requĂȘte (ex : `max_completion_tokens` pour les modĂšles o1) | | `thinking_level` | string | Non | Niveau de pensĂ©e Ă©tendue : `off`, `low`, `medium`, `high`, `xhigh` ou `adaptive` | | `extra_body` | object | Non | Champs supplĂ©mentaires Ă  injecter dans chaque corps de requĂȘte | | `rpm` | int | Non | Limite de requĂȘtes par minute | | `fallbacks` | string[] | Non | Noms des modĂšles de secours pour le basculement automatique | | `enabled` | bool | Non | Activer ou dĂ©sactiver cette entrĂ©e de modĂšle (par dĂ©faut : `true`) | #### Exemples par Vendor **OpenAI** ```json { "model_name": "gpt-5.4", "model": "openai/gpt-5.4", "api_keys": ["sk-..."] } ``` **VolcEngine (Doubao)** ```json { "model_name": "ark-code-latest", "model": "volcengine/ark-code-latest", "api_keys": ["sk-..."] } ``` **æ™șè°± AI (GLM)** ```json { "model_name": "glm-4.7", "model": "zhipu/glm-4.7", "api_keys": ["your-key"] } ``` **DeepSeek** ```json { "model_name": "deepseek-chat", "model": "deepseek/deepseek-chat", "api_keys": ["sk-..."] } ``` **Anthropic (avec clĂ© API)** ```json { "model_name": "claude-sonnet-4.6", "model": "anthropic/claude-sonnet-4.6", "api_keys": ["sk-ant-your-key"] } ``` > ExĂ©cutez `picoclaw auth login --provider anthropic` pour coller votre token API. **API Anthropic Messages (format natif)** Pour l'accĂšs direct Ă  l'API Anthropic ou les endpoints personnalisĂ©s qui ne prennent en charge que le format de message natif d'Anthropic : ```json { "model_name": "claude-opus-4-6", "model": "anthropic-messages/claude-opus-4-6", "api_keys": ["sk-ant-your-key"], "api_base": "https://api.anthropic.com" } ``` > Utilisez le protocole `anthropic-messages` lorsque : > - Vous utilisez des proxys tiers qui ne prennent en charge que l'endpoint natif `/v1/messages` d'Anthropic (pas le format compatible OpenAI `/v1/chat/completions`) > - Vous vous connectez Ă  des services comme MiniMax, Synthetic qui nĂ©cessitent le format de message natif d'Anthropic > - Le protocole `anthropic` existant renvoie des erreurs 404 (indiquant que l'endpoint ne prend pas en charge le format compatible OpenAI) > > **Note :** Le protocole `anthropic` utilise le format compatible OpenAI (`/v1/chat/completions`), tandis que `anthropic-messages` utilise le format natif d'Anthropic (`/v1/messages`). Choisissez en fonction du format pris en charge par votre endpoint. **Ollama (local)** ```json { "model_name": "llama3", "model": "ollama/llama3" } ``` **Proxy/API PersonnalisĂ©** ```json { "model_name": "my-custom-model", "model": "openai/custom-model", "api_base": "https://my-proxy.com/v1", "api_keys": ["sk-..."], "user_agent": "MyApp/1.0", "request_timeout": 300 } ``` **LiteLLM Proxy** ```json { "model_name": "lite-gpt4", "model": "litellm/lite-gpt4", "api_base": "http://localhost:4000/v1", "api_keys": ["sk-..."] } ``` PicoClaw ne supprime que le prĂ©fixe externe `litellm/` avant d'envoyer la requĂȘte, donc les alias de proxy comme `litellm/lite-gpt4` envoient `lite-gpt4`, tandis que `litellm/openai/gpt-4o` envoie `openai/gpt-4o`. #### RĂ©partition de Charge Configurez plusieurs endpoints pour le mĂȘme nom de modĂšle — PicoClaw effectuera automatiquement un round-robin entre eux : ```json { "model_list": [ { "model_name": "gpt-5.4", "model": "openai/gpt-5.4", "api_base": "https://api1.example.com/v1", "api_keys": ["sk-key1"] }, { "model_name": "gpt-5.4", "model": "openai/gpt-5.4", "api_base": "https://api2.example.com/v1", "api_keys": ["sk-key2"] } ] } ``` #### Migration depuis l'Ancienne Configuration `providers` L'ancienne configuration `providers` est **dĂ©prĂ©ciĂ©e** et a Ă©tĂ© supprimĂ©e dans V2. Les configs V0/V1 existantes sont auto-migrĂ©es. **Ancienne configuration (dĂ©prĂ©ciĂ©e) :** ```json { "providers": { "zhipu": { "api_key": "your-key", "api_base": "https://open.bigmodel.cn/api/paas/v4" } }, "agents": { "defaults": { "provider": "zhipu", "model": "glm-4.7" } } } ``` **Nouvelle configuration (recommandĂ©e) :** ```json { "version": 3, "model_list": [ { "model_name": "glm-4.7", "model": "zhipu/glm-4.7", "api_keys": ["your-key"] } ], "agents": { "defaults": { "model_name": "glm-4.7" } } } ``` Pour un guide de migration dĂ©taillĂ©, voir [migration/model-list-migration.md](../migration/model-list-migration.md). ### Architecture des Fournisseurs PicoClaw route les fournisseurs par famille de protocoles : - Protocole compatible OpenAI : OpenRouter, passerelles compatibles OpenAI, Groq, Zhipu et endpoints de type vLLM. - Protocole Anthropic : Comportement natif de l'API Claude. - Chemin Codex/OAuth : Route d'authentification OAuth/token OpenAI. Cela maintient le runtime lĂ©ger tout en faisant des nouveaux backends compatibles OpenAI principalement une opĂ©ration de configuration (`api_base` + `api_key`).
Zhipu **1. Obtenir la clé API et l'URL de base** * Obtenir la [clé API](https://bigmodel.cn/usercenter/proj-mgmt/apikeys) **2. Configurer** ```json { "agents": { "defaults": { "workspace": "~/.picoclaw/workspace", "model_name": "glm-4.7", "max_tokens": 8192, "temperature": 0.7, "max_tool_iterations": 20 } }, "providers": { "zhipu": { "api_key": "Your API Key", "api_base": "https://open.bigmodel.cn/api/paas/v4" } } } ``` **3. Lancer** ```bash picoclaw agent -m "Hello" ```
Exemple de configuration complĂšte ```json { "agents": { "defaults": { "model_name": "anthropic/claude-opus-4-5" } }, "session": { "dm_scope": "per-channel-peer" }, "providers": { "openrouter": { "api_key": "sk-or-v1-xxx" }, "groq": { "api_key": "gsk_xxx" } }, "channel_list": { "telegram": { "enabled": true, "type": "telegram", "token": "123456:ABC...", "allow_from": ["123456789"] }, "discord": { "enabled": true, "type": "discord", "token": "", "allow_from": [""] }, "whatsapp": { "enabled": false, "type": "whatsapp", "bridge_url": "ws://localhost:3001", "use_native": false, "session_store_path": "", "allow_from": [] }, "feishu": { "enabled": false, "type": "feishu", "app_id": "cli_xxx", "app_secret": "xxx", "encrypt_key": "", "verification_token": "", "allow_from": [] }, "qq": { "enabled": false, "type": "qq", "app_id": "", "app_secret": "", "allow_from": [] } }, "tools": { "web": { "brave": { "enabled": false, "api_key": "BSA...", "max_results": 5 }, "duckduckgo": { "enabled": true, "max_results": 5 }, "perplexity": { "enabled": false, "api_key": "", "max_results": 5 }, "searxng": { "enabled": false, "base_url": "http://localhost:8888", "max_results": 5 } }, "cron": { "exec_timeout_minutes": 5 } }, "heartbeat": { "enabled": true, "interval": 30 } } ```
--- ## 📝 Comparaison des ClĂ©s API | Service | Pricing | Use Case | | ---------------- | ------------------------ | ------------------------------------- | | **OpenRouter** | Free: 200K tokens/month | Multiple models (Claude, GPT-4, etc.) | | **Volcengine CodingPlan** | „9.9/first month | Best for Chinese users, multiple SOTA models (Doubao, DeepSeek, etc.) | | **Zhipu** | Free: 200K tokens/month | Suitable for Chinese users | | **Brave Search** | $5/1000 queries | Web search functionality | | **SearXNG** | Free (self-hosted) | Privacy-focused metasearch (70+ engines) | | **Groq** | Free tier available | Fast inference (Llama, Mixtral) | | **Cerebras** | Free tier available | Fast inference (Llama, Qwen, etc.) | | **LongCat** | Free: up to 5M tokens/day | Fast inference | | **ModelScope** | Free: 2000 requests/day | Inference (Qwen, GLM, DeepSeek, etc.) | ---
PicoClaw Meme