Von Pi Agent unterstützte KI-Anbieter
Das Folgende ist eine vollständige Liste aller von Pi Agent unterstützten KI-Anbieter.
Anbieter, die die Anmeldung per Abonnement unterstützen
Führen Sie die OAuth-Anmeldung mit dem/login-Befehl durch:
| Provider | Voraussetzung | Beschreibung |
|---|---|---|
| Claude Pro/Max | Anthropic-Abonnement | Zusätzliche Nutzung wird pro Token abgerechnet |
| ChatGPT Plus/Pro (Codex) | OpenAI-Abonnement | Offiziell von OpenAI anerkannt |
| GitHub Copilot | GitHub Copilot-Abonnement | Unterstützt Unternehmensserver |
| xAI (Grok) | X Premium-Abonnement | Verwendet das Grok-Modell |
| OpenRouter | OpenRouter-Konto | OAuth erstellt einen API-Schlüssel |
| Radius | Radius-Konto | Dynamisches pi-messages-Gateway |
Abonnement-Einträge richten sich nach der tatsächlichen Anzeige des Pi Agent /login-Menüs; unterschiedliche Versionen können leicht variieren.
Anbieter, die API-Schlüssel unterstützen
API-Schlüssel über Umgebungsvariablen oder~/.pi/agent/auth.json konfigurieren:
$ export ANTHROPIC_API_KEY=sk-ant-api03-xxxx
| Provider | Umgebungsvariable | auth.json-Schlüssel |
|---|---|---|
| Anthropic | ANTHROPIC_API_KEY | anthropic |
| Ant Ling | ANT_LING_API_KEY | ant-ling |
| Azure OpenAI Responses | AZURE_OPENAI_API_KEY | azure-openai-responses |
| OpenAI | OPENAI_API_KEY | openai |
| DeepSeek | DEEPSEEK_API_KEY | deepseek |
| NVIDIA NIM | NVIDIA_API_KEY | nvidia |
| Google Gemini | GEMINI_API_KEY | |
| Amazon Bedrock | AWS_BEARER_TOKEN_BEDROCK | amazon-bedrock |
| Mistral | MISTRAL_API_KEY | mistral |
| Groq | GROQ_API_KEY | groq |
| Cerebras | CEREBRAS_API_KEY | cerebras |
| Cloudflare AI Gateway | CLOUDFLARE_API_KEY (erfordert außerdem CLOUDFLARE_ACCOUNT_ID und CLOUDFLARE_GATEWAY_ID) | cloudflare-ai-gateway |
| Cloudflare Workers AI | CLOUDFLARE_API_KEY (erfordert außerdem CLOUDFLARE_ACCOUNT_ID) | cloudflare-workers-ai |
| xAI | XAI_API_KEY | xai |
| OpenRouter | OPENROUTER_API_KEY | openrouter |
| Vercel AI Gateway | AI_GATEWAY_API_KEY | vercel-ai-gateway |
| ZAI Coding Plan | ZAI_API_KEY | zai |
| ZAI Codierungsplan (China) | ZAI_CODING_CN_API_KEY | zai-coding-cn |
| OpenCode Zen | OPENCODE_API_KEY | opencode |
| OpenCode Go | OPENCODE_API_KEY | opencode-go |
| Radius | RADIUS_API_KEY | radius |
| Hugging Face | HF_TOKEN | huggingface |
| Fireworks | FIREWORKS_API_KEY | fireworks |
| Together AI | TOGETHER_API_KEY | zusammen |
| Baseten | BASETEN_API_KEY | baseten |
| Kimi für Coding | KIMI_API_KEY | kimi-coding |
| MiniMax | MINIMAX_API_KEY | minimax |
| MiniMax (China) | MINIMAX_CN_API_KEY | minimax-cn |
| Qwen Token Plan | QWEN_TOKEN_PLAN_API_KEY | qwen-token-plan |
| Qwen Token Plan(Individuell) | QWEN_TOKEN_PLAN_API_KEY | qwen-token-plan-individual |
| Qwen Token Plan (China) | QWEN_TOKEN_PLAN_CN_API_KEY | qwen-token-plan-cn |
| Xiaomi MiMo | XIAOMI_API_KEY | xiaomi |
| Xiaomi MiMo Token-Plan (China) | XIAOMI_TOKEN_PLAN_CN_API_KEY | xiaomi-token-plan-cn |
| Xiaomi MiMo Token-Plan (Amsterdam) | XIAOMI_TOKEN_PLAN_AMS_API_KEY | xiaomi-token-plan-ams |
| Xiaomi MiMo Token-Plan (Singapur) | XIAOMI_TOKEN_PLAN_SGP_API_KEY | xiaomi-token-plan-sgp |
Insgesamt gibt es 35 API-Key-Anbieter, die eins zu eins der Umgebungsvariablenliste in der offiziellen providers.md entsprechen.
Unter ihnen teilen sich Qwen Token-Plan (Individual) und Qwen Token-Plan dieselbe Umgebungsvariable QWEN_TOKEN_PLAN_API_KEY; der Unterschied liegt im Schlüsselnamen in auth.json und im Bereich der auswählbaren Modelle.
Die Konto- und Gateway-IDs für die beiden Cloudflare-Einträge können entweder als Umgebungsvariablen festgelegt oder in das env-Objekt der auth.json-Anmeldedaten geschrieben werden.
Lokale und benutzerdefinierte Anbieter
Lokale Inferenz-Backends werden über Konfigurationsdateien angebunden, während benutzerdefinierte APIs über die Erweiterungsmethode registriert werden können.
| Provider | Beschreibung | Konfigurationsmethode |
|---|---|---|
| llama.cpp | Lokale Open-Source-Modellinferenz | /login llama.cpp, Modelle über /llama verwalten |
| Benutzerdefinierte API | Entwicklung von Erweiterungen | Registrierung über pi.registerProvider() |
Ein vollständiges Beispiel für die Registrierung eines Anbieters über die Erweiterungsmethode finden Sie im Kapitel "Lokale Modelle mit llama.cpp".
Die folgenden drei lokalen Backends sind alle über die OpenAI-kompatible API angebunden:
| Backend | Standardport | Beschreibung |
|---|---|---|
| Ollama | 11434 | Ohne weitere Einrichtung ein Modell mit einem einzigen Befehl herunterladen und ausführen |
| LM Studio | 1234 | Bietet eine grafische Oberfläche, geeignet für die Verwaltung lokaler Modelle auf dem Desktop |
| vLLM | 8000 | 面向高吞吐量的服务化部署 |
将以下最小示例写入~/.pi/agent/models.json,以 Ollama 为例;对于 LM Studio 和 vLLM,只需替换名称和 baseUrl:
Beispiele
"providers": {
"ollama": {
"baseUrl": "http://127.0.0.1:11434/v1",
"api": "openai-completions",
"apiKey": "ollama",
"models": [
{
"id": "qwen3-coder-30b",
"name": "Qwen3 Coder 30B",
"contextWindow": 131072,
"maxTokens": 8192,
"input": ["text"]
}
]
}
}
}
Der apiKey-Wert "ollama" im Beispiel ist nur ein Platzhalter; der lokale Server ignoriert ihn direkt.
Du kannst ihn aus diesem Grund jedoch nicht löschen: Wenn kein Authentifizierungsfeld konfiguriert ist, wird das Modell normal geladen, erscheint aber nicht im /model-Selektor, und die offizielle Empfehlung ist, den Platzhalterwert beizubehalten.
Die Bedeutungen der einzelnen Felder außer apiKey sind wie folgt:
| Feld | Beschreibung |
|---|---|
| baseUrl | OpenAI-kompatible API-Adresse; für LM Studio verwende http://127.0.0.1:1234/v1, für vLLM gib die tatsächliche Dienstadresse ein |
| api | Verwendet das OpenAI-kompatible Protokoll, schreibe immer openai-completions |
| apiKey | Platzhalterwert; behalte ihn auch für lokale nicht authentifizierte Dienste bei, sonst erscheint das Modell nicht in /model |
| models[].id | Die beim Aufruf verwendete Modell-ID muss mit dem Namen des lokal heruntergeladenen Modells übereinstimmen |
| models[].name | Der im Selektor angezeigte Name |
| models[].contextWindow | Größe des Kontextfensters (Tokens) |
| models[].maxTokens | Maximale Ausgabelänge pro Anfrage (Tokens) |
| models[].input | Unterstützte Eingabetypen |