# Aider (/id/docs/guides/aider)

Jalankan asisten coding Aider dengan model cheapaimodel lewat API yang kompatibel dengan OpenAI.



Aider terhubung ke API yang kompatibel dengan OpenAI lewat awalan model `openai/`: arahkan Base URL dan key ke cheapaimodel, lalu tambahkan `openai/` di depan ID model.

|          | Pengaturan Aider                           | Nilai                                                                           |
| -------- | ------------------------------------------ | ------------------------------------------------------------------------------- |
| Base URL | `OPENAI_API_BASE` atau `--openai-api-base` | `https://api.cheapaimodel.ai/v1`                                                |
| API key  | `OPENAI_API_KEY` atau `--openai-api-key`   | Key kamu dari halaman [API key](https://console.cheapaimodel.ai/keys) di Konsol |
| ID model | `--model`                                  | `openai/glm-5.3`, atau `openai/` ditambah ID apa pun dari [katalog](/id/models) |

## Penyiapan [#set-it-up]

```bash title="Terminal"
python -m pip install aider-install
aider-install
```

Lalu, di proyekmu:

```bash title="Terminal"
export OPENAI_API_BASE="https://api.cheapaimodel.ai/v1"
export OPENAI_API_KEY="$CHEAPAIMODEL_API_KEY"
aider --model openai/glm-5.3
```

Aider membuang awalan itu dan meminta `glm-5.3` ke `/v1/chat/completions`.

Supaya pengaturan ini tersimpan tanpa harus mengekspor variabel `OPENAI_*` untuk semua tool, taruh pengaturannya di file konfigurasi Aider:

```yaml title="~/.aider.conf.yml"
model: openai/glm-5.3
openai-api-base: https://api.cheapaimodel.ai/v1
openai-api-key: sk-...
```

Aider juga membaca `.aider.conf.yml` dari root repo git kamu. Jangan masukkan file yang berisi key kamu ke version control.

## Peringatan model [#the-model-warning]

Saat mulai, Aider menampilkan `Unknown context window size and costs, using sane defaults` untuk model yang metadatanya tidak ia punya, dan mungkin menyarankan nama yang mirip seperti `zai/glm-5.3`. Tetap pakai `openai/glm-5.3`: nama yang disarankan itu langsung memanggil penyedia lain, bukan cheapaimodel. Menurut dokumentasi Aider, peringatan ini aman diabaikan karena Aider tidak menerapkan batas token.

Untuk menyembunyikannya, pakai `--no-show-model-warnings`, atau jelaskan modelnya di `.aider.model.metadata.json` di direktori home kamu:

```json title="~/.aider.model.metadata.json"
{
  "openai/glm-5.3": {
    "max_input_tokens": CONTEXT_LENGTH,
    "litellm_provider": "openai",
    "mode": "chat"
  }
}
```

Ganti `CONTEXT_LENGTH` dengan panjang konteks yang tertera di halaman model, misalnya [glm-5.3](/id/models/glm-5.3). Aider tidak tahu harga cheapaimodel; lihat pengeluaranmu di halaman [Aktivitas](https://console.cheapaimodel.ai/activity) di Konsol.

## Kesalahan umum [#common-mistakes]

* **`litellm.BadRequestError: LLM Provider NOT provided`.** ID model tidak diberi awalan `openai/`. Pakai `--model openai/glm-5.3`.
* **Aider mulai dengan `gpt-4o` dan semua permintaan gagal.** Tanpa `--model` (atau `model:` di file konfigurasi), Aider melihat `OPENAI_API_KEY` lalu memilih model default OpenAI, misalnya `gpt-4o` dengan `gpt-4o-mini` sebagai weak model. Kami tidak menyediakan ID tersebut. Selalu sebutkan modelnya.
* **Permintaan `--weak-model` atau `--editor-model` gagal.** Aturannya sama dengan `--model`: beri awalan `openai/` dan pakai ID dari katalog, misalnya `--weak-model openai/glm-5.3-flash`. Kalau keduanya tidak kamu atur, Aider memakai model utama untuk keduanya.
* **"The API provider's servers are down or overloaded", disertai percobaan ulang.** Aider melaporkan setiap `503` dengan pesan ini. Kalau gagal sejak permintaan pertama, cek ID model: ID yang tidak kami sediakan mengembalikan `503` dengan `model_not_found`. Selain itu, lihat [Error](/id/docs/concepts/errors).
* **`fault filter abort` atau `Invalid URL (POST /v1/chat/completions/chat/completions)`.** Keduanya `404` karena Base URL salah: yang pertama berarti `/v1` tidak ada, yang kedua berarti Base URL menyertakan path endpoint. Atur persis ke `https://api.cheapaimodel.ai/v1`.
