opencode / packages /web /src /content /docs /ko /models.mdx
SaylorTwift's picture
SaylorTwift HF Staff
Add files using upload-large-folder tool
0dbc9de verified
Raw
History Blame Contribute Delete
5.91 kB
---
title: ๋ชจ๋ธ
description: LLM ๊ณต๊ธ‰์ž ๋ฐ ๋ชจ๋ธ ๊ตฌ์„ฑ.
---
opencode๋Š” [AI SDK](https://ai-sdk.dev/) ๋ฐ [Models.dev](https://models.dev)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ **75+ LLM ์ œ๊ณต ์—…์ฒด**๋ฅผ ์ง€์›ํ•˜๋ฉฐ ๋กœ์ปฌ ๋ชจ๋ธ์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.
---
## ๊ณต๊ธ‰์ž
๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ๊ณต๊ธ‰์ž๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ฏธ๋ฆฌ ๋กœ๋“œ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. `/connect` ๋ช…๋ น์„ ํ†ตํ•ด ๊ณต๊ธ‰์ž๋ฅผ์œ„ํ•œ ์ž๊ฒฉ ์ฆ๋ช…์„ ์ถ”๊ฐ€ํ•˜๋ฉด opencode๋ฅผ ์‹œ์ž‘ํ•  ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ž์„ธํžˆ ์•Œ์•„๋ณด๊ธฐ [providers](/docs/providers).
---
## ๋ชจ๋ธ ์„ ํƒ
๊ณต๊ธ‰์ž๋ฅผ ๊ตฌ์„ฑํ•˜๋ฉด ์ž…๋ ฅํ•˜์—ฌ ์›ํ•˜๋Š” ๋ชจ๋ธ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
```bash frame="none"
/models
```
---
## ์ถ”์ฒœ ๋ชจ๋ธ
์ˆ˜๋งŽ์€ ๋ชจ๋ธ์ด ์žˆ์œผ๋ฉฐ, ๋งค์ฃผ ์ƒˆ๋กœ์šด ๋ชจ๋ธ์ด ์ถœ์‹œ๋ฉ๋‹ˆ๋‹ค.
:::tip
์šฐ๋ฆฌ๊ฐ€ ์ถ”์ฒœํ•˜๋Š” ๋ชจ๋ธ ์ค‘ ํ•˜๋‚˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ณ ๋ คํ•˜์‹ญ์‹œ์˜ค.
:::
ํ•˜์ง€๋งŒ ์ฝ”๋“œ ์ž‘์„ฑ๊ณผ ๋„๊ตฌ ํ˜ธ์ถœ ๋ชจ๋‘์—์„œ ๋›ฐ์–ด๋‚œ ์„ฑ๋Šฅ์„ ๋ณด์ด๋Š” ๋ชจ๋ธ๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค.
ํŠน๋ณ„ํ•œ ์ˆœ์„œ๋Š” ์—†์Šต๋‹ˆ๋‹ค. (์ด ๋ชฉ๋ก์€ ์ „์ฒด ๋ชฉ๋ก์ด ์•„๋‹ˆ๋ฉฐ ์ตœ์‹  ์ƒํƒœ๊ฐ€ ์•„๋‹ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค):
- GPT 5.2
- GPT 5.1 Codex
- Claude Opus 4.5
- Claude Sonnet 4.5
- M2.1
- Gemini 3 Pro
---
## ๊ธฐ๋ณธ๊ฐ’ ์„ค์ •
๊ธฐ๋ณธ ๋ชจ๋ธ๋กœ ์„ค์ •ํ•˜๋ ค๋ฉด `model` ํ‚ค๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
opencode ์„ค์ •.
```json title="opencode.json" {3}
{
"$schema": "https://opencode.ai/config.json",
"model": "lmstudio/google/gemma-3n-e4b"
}
```
์ „์ฒด ID๋Š” `provider_id/model_id`์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, [OpenCode Zen](/docs/zen)์„ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด, GPT 5.1 Codex์— `opencode/gpt-5.1-codex`๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
[custom Provider](/docs/providers#custom)๋ฅผ ๊ตฌ์„ฑํ•˜๋ฉด `provider_id`๋Š” ๊ตฌ์„ฑ์˜ `provider` ๋ถ€๋ถ„์—์„œ ํ‚ค์ด๋ฉฐ `model_id`๋Š” `provider.models`์—์„œ ํ‚ค์ž…๋‹ˆ๋‹ค.
---
## ๋ชจ๋ธ ๊ตฌ์„ฑ
config๋ฅผ ํ†ตํ•ด ๋ชจ๋ธ์˜ ์˜ต์…˜์„ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
```jsonc title="opencode.jsonc" {7-12,19-24}
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"openai": {
"models": {
"gpt-5": {
"options": {
"reasoningEffort": "high",
"textVerbosity": "low",
"reasoningSummary": "auto",
"include": ["reasoning.encrypted_content"],
},
},
},
},
"anthropic": {
"models": {
"claude-sonnet-4-5-20250929": {
"options": {
"thinking": {
"type": "enabled",
"budgetTokens": 16000,
},
},
},
},
},
},
}
```
์—ฌ๊ธฐ์„œ๋Š” ๋‘ ๊ฐœ์˜ ๋‚ด์žฅ ๋ชจ๋ธ์— ๋Œ€ํ•œ ์ „์—ญ ์„ค์ •์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค: `gpt-5`๋ฅผ ํ†ตํ•ด ์•ก์„ธ์Šค ํ•  ๋•Œ `openai` ๊ณต๊ธ‰์ž ๋ฐ `claude-sonnet-4-20250514`๋Š” `anthropic` ๊ณต๊ธ‰์ž๋ฅผ ํ†ตํ•ด ์•ก์„ธ์Šค ํ•  ๋•Œ.
๋‚ด์žฅ ๊ณต๊ธ‰์ž ๋ฐ ๋ชจ๋ธ ์ด๋ฆ„์€ [Models.dev](https://models.dev)์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์‚ฌ์šฉ์ค‘์ธ ์—์ด์ „ํŠธ์— ์ด๋Ÿฌํ•œ ์˜ต์…˜์„ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—์ด์ „ํŠธ ๊ตฌ์„ฑ์€ ์—ฌ๊ธฐ์— ๋ชจ๋“  ๊ธ€๋กœ๋ฒŒ ์˜ต์…˜์„ overrides. [๋” ์•Œ์•„๋ณด๊ธฐ](/docs/agents/#additional).
๋‚ด์žฅ ๋œ ๊ฒƒ์„ ํ™•์žฅํ•˜๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ๋ณ€ํ˜•์„ ์ •์˜ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Variants๋Š” ์ค‘๋ณต ํ•ญ๋ชฉ ์ƒ์„ฑ ์—†์ด ๋™์ผํ•œ ๋ชจ๋ธ์„ ์œ„ํ•œ ๋‹ค๋ฅธ ์„ค์ •์„ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:
```jsonc title="opencode.jsonc" {6-21}
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"opencode": {
"models": {
"gpt-5": {
"variants": {
"high": {
"reasoningEffort": "high",
"textVerbosity": "low",
"reasoningSummary": "auto",
},
"low": {
"reasoningEffort": "low",
"textVerbosity": "low",
"reasoningSummary": "auto",
},
},
},
},
},
},
}
```
---
## ๋ณ€ํ˜•
๋งŽ์€ ๋ชจ๋ธ์ด ๋‹ค์–‘ํ•œ ๊ตฌ์„ฑ์˜ ๋ณ€ํ˜•(variant)์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. opencode๋Š” ์ธ๊ธฐ์žˆ๋Š” ๊ณต๊ธ‰์ž๋ฅผ์œ„ํ•œ ๊ธฐ๋ณธ ๋ณ€ํ˜•์œผ๋กœ ๋ฐฐ์†ก๋ฉ๋‹ˆ๋‹ค.
## ๋‚ด์žฅ ๋ณ€ํ˜•
opencode๋Š” ๋งŽ์€ ๊ณต๊ธ‰์ž๋ฅผ ์œ„ํ•œ ๊ธฐ๋ณธ ๋ณ€์ข…์œผ๋กœ ๋ฐœ์†กํ•ฉ๋‹ˆ๋‹ค:
**Anthropic**:
- `high` - ๋†’์€ ์ƒ๊ฐ(Thinking) ์˜ˆ์‚ฐ (๊ธฐ๋ณธ)
- `max` - ์ตœ๋Œ€ ์ƒ๊ฐ ์˜ˆ์‚ฐ
** OpenAI **:
๋ชจ๋ธ์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.
- `none` - ์ถ”๋ก (Reasoning) ์—†์Œ
- `minimal` - ์ตœ์†Œ ์ถ”๋ก  ๋…ธ๋ ฅ
- `low` - ๋‚ฎ์€ ์ด์œ  ๋…ธ๋ ฅ
- `medium` - ์ค‘๊ฐ„ ์ด์œ  ๋…ธ๋ ฅ
- `high` - ๋†’์€ ์ด์œ  ๋…ธ๋ ฅ
- `xhigh` - ์ถ”๊ฐ€ ๋†’์€ ์ด์œ  ๋…ธ๋ ฅ
** ๊ตฌ๊ธ€ **:
- `low` - ๋” ๋‚ฎ์€ ๋…ธ๋ ฅ/ํ† ํฐ ์˜ˆ์‚ฐ
- `high` - ๋” ๋†’์€ ๋…ธ๋ ฅ / ํ† ํฐ ์˜ˆ์‚ฐ
:::tip
์ด ๋ชฉ๋ก์€ ํฌ๊ด„์ ์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋งŽ์€ ๊ณต๊ธ‰์ž๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ๋‚ด์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
:::
### ์‚ฌ์šฉ์ž ์ •์˜ ๋ณ€ํ˜•
๊ธฐ์กด์˜ ๋ณ€ํ˜•์„ ๊ณผ๋„ํ•˜๊ฒŒ ํ•  ์ˆ˜ ์žˆ๊ฑฐ๋‚˜ ์ž์‹ ์—๊ฒŒ ์ถ”๊ฐ€ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
```jsonc title="opencode.jsonc" {7-18}
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"openai": {
"models": {
"gpt-5": {
"variants": {
"thinking": {
"reasoningEffort": "high",
"textVerbosity": "low",
},
"fast": {
"disabled": true,
},
},
},
},
},
},
}
```
## ๋ณ€ํ˜• ์ˆœํ™˜
keybind `variant_cycle`๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ณ€ํ˜• ์‚ฌ์ด ์‹ ์†ํ•˜๊ฒŒ ์ „ํ™˜ํ•ฉ๋‹ˆ๋‹ค. [๋” ์•Œ์•„๋ณด๊ธฐ](/docs/keybinds).
---
## ๋ชจ๋ธ ๋กœ๋”ฉ ์ˆœ์„œ
opencode๊ฐ€ ์‹œ์ž‘๋  ๋•Œ, ๋‹ค์Œ์˜ ์šฐ์„ ์ˆœ์œ„ ์ˆœ์„œ์— ์žˆ๋Š” ๋ชจํ˜•์„ ๊ฒ€์‚ฌํ•ฉ๋‹ˆ๋‹ค:
1. `--model` ๋˜๋Š” `-m` ๋ช…๋ น ์„  ๊นƒ๋ฐœ. ํ˜•์‹์€ ๊ตฌ์„ฑ ํŒŒ์ผ๊ณผ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. `provider_id/model_id`.
2. opencode config์˜ ๋ชจ๋ธ ๋ชฉ๋ก.
```json title="opencode.json"
{
"$schema": "https://opencode.ai/config.json",
"model": "anthropic/claude-sonnet-4-20250514"
}
```
์—ฌ๊ธฐ์— ํ˜•์‹์€ `provider/model`์ž…๋‹ˆ๋‹ค.
3. ๋งˆ์ง€๋ง‰ ์‚ฌ์šฉ๋œ ๋ชจํ˜•.
4. ๋‚ด๋ถ€ ์šฐ์„  ์ˆœ์œ„๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ฒซ ๋ฒˆ์งธ ๋ชจ๋ธ.