Cara Menggunakan 9Router untuk AI Coding di Zed Editor
Panduan setup 9Router sebagai API router untuk mengakses model AI seperti Claude Opus di Zed Editor dan tools lainnya.
API router adalah layanan yang kompatibel dengan format OpenAI. Dengan API router, kamu bisa mengakses berbagai model AI melalui satu endpoint yang seragam. Cocok dipakai di editor seperti Zed, VS Code, atau tools CLI seperti Claude Code.
Apa itu API Router?
API router adalah proxy yang meneruskan request kamu ke provider AI (Anthropic, OpenAI, dll) dengan format yang standar. Keuntungannya:
- Satu endpoint untuk banyak model
- Format OpenAI-compatible sehingga bisa dipakai di tools apa saja yang mendukung OpenAI API
- Manajemen key terpusat tanpa perlu API key langsung dari setiap provider
Setup di Zed Editor
1. Buka Settings
Tekan Ctrl+, di Zed, atau buka Command Palette (Ctrl+Shift+P) lalu ketik "Open Settings".
2. Tambahkan konfigurasi language_models
Tambahkan blok berikut di settings.json:
{
"language_models": {
"openai_compatible": {
"MyRouter": {
"api_url": "https://your-router.example.com/v1",
"available_models": [
{
"name": "your-model-name",
"max_tokens": 200000,
"max_output_tokens": 32000,
"max_completion_tokens": 200000
}
]
}
}
}
}
3. Masukkan API Key
Setelah menyimpan settings, Zed akan meminta API key untuk provider "MyRouter". Masukkan key yang kamu dapat dari admin router.
4. Pilih model di Agent Panel
Buka Agent Panel di Zed (panel kanan), klik dropdown model di bagian bawah, dan pilih your-model-name dari provider MyRouter.
Selesai. Sekarang kamu bisa menggunakan Claude Opus untuk coding langsung di Zed.
Konfigurasi model
Beberapa parameter yang bisa kamu atur di available_models:
| Parameter | Fungsi | Contoh |
|---|---|---|
name | ID model yang tersedia di router | your-model-name |
max_tokens | Batas token input (context window) | 200000 |
max_output_tokens | Batas token output per response | 32000 |
Menambahkan model lain
Kalau router menyediakan model lain, tambahkan di array available_models:
{
"available_models": [
{
"name": "your-model-name",
"max_tokens": 200000,
"max_output_tokens": 32000
},
{
"name": "another-model",
"max_tokens": 200000,
"max_output_tokens": 16000
}
]
}
Pakai di tools lain
Karena formatnya OpenAI-compatible, kamu bisa memakainya di mana saja yang mendukung custom OpenAI endpoint:
cURL:
curl https://your-router.example.com/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "your-model-name",
"messages": [{"role": "user", "content": "Hello"}]
}'
Python (openai library):
from openai import OpenAI
client = OpenAI(
base_url="https://your-router.example.com/v1",
api_key="YOUR_API_KEY"
)
response = client.chat.completions.create(
model="your-model-name",
messages=[{"role": "user", "content": "Hello"}]
)
Troubleshooting
- 401 Unauthorized - API key salah atau belum dimasukkan. Cek kembali key di settings Zed
- Model tidak muncul di dropdown - Pastikan
namedi settings sama persis dengan yang tersedia di router - Response lambat - Normal untuk model besar seperti Claude Opus yang perlu waktu berpikir, terutama dengan mode thinking aktif