# Continue (/docs/guides/continue)

Use cheapaimodel models for chat, edit and apply in the Continue extension for VS Code and JetBrains.



Continue reaches OpenAI-compatible services through its `openai` provider with a custom `apiBase`, set in your `config.yaml`.

|          | Continue setting | Value                                                                             |
| -------- | ---------------- | --------------------------------------------------------------------------------- |
| Base URL | `apiBase`        | `https://api.cheapaimodel.ai/v1`                                                  |
| API key  | `apiKey`         | Your key from the console's [API Keys](https://console.cheapaimodel.ai/keys) page |
| Model ID | `model`          | `glm-5.3`, or any ID from the [catalog](/models)                                  |

## Set it up [#set-it-up]

Save your key in Continue's secrets file. Continue reads `${{ secrets.NAME }}` values from `.env` files; the IDE extensions cannot see variables exported in your shell.

```bash title="~/.continue/.env"
CHEAPAIMODEL_API_KEY=sk-...
```

Then add a model to `~/.continue/config.yaml` (`%USERPROFILE%\.continue\config.yaml` on Windows):

```yaml title="~/.continue/config.yaml"
name: Main Config
version: 1.0.0
schema: v1

models:
  - name: GLM-5.3 (cheapaimodel)
    provider: openai
    model: glm-5.3
    apiBase: https://api.cheapaimodel.ai/v1
    apiKey: ${{ secrets.CHEAPAIMODEL_API_KEY }}
    roles:
      - chat
      - edit
      - apply
```

Save the file and select &#x2A;*GLM-5.3 (cheapaimodel)** as the chat model in the Continue sidebar. To use more models, add one entry per model ID from the [catalog](/models).

## Autocomplete, embeddings and reranking [#autocomplete-embeddings-and-reranking]

Leave these roles on other providers:

* **`autocomplete`**: Continue's Tab completion expects a fill-in-the-middle (FIM) model; chat models do poorly at it. The catalog's models are chat models.
* **`embed`*&#x2A; and &#x2A;*`rerank`**: cheapaimodel has no embeddings or reranking models. Codebase indexing keeps using Continue's built-in embedder (VS Code) or another provider.

## Common mistakes [#common-mistakes]

* **The key is set in your shell but Continue doesn't use it.** The VS Code and JetBrains extensions cannot read shell environment variables. Put the key in `~/.continue/.env` (no quotes around the value) and restart the IDE.
* **Changes to `config.yaml` don't show up.** Run **Developer: Reload Window** from the VS Code command palette.
* **`404` with the plain-text body `fault filter abort`.** `apiBase` is missing `/v1`, so requests go to `/chat/completions`, which is not an API path. Set `https://api.cheapaimodel.ai/v1`.
* **`404` with `Invalid URL (POST /v1/chat/completions/chat/completions)`.** `apiBase` includes the endpoint path. Continue adds `/chat/completions` itself; set `https://api.cheapaimodel.ai/v1` only.
* **`503` with `model_not_found`.** The `model` value is not a model ID we serve. Copy the ID exactly from the [catalog](/models); `name` is only a label.
