224 lines
10 KiB
Plaintext
224 lines
10 KiB
Plaintext
---
|
||
title: โมเดล
|
||
description: การกำหนดค่าผู้ให้บริการและรุ่น LLM
|
||
---
|
||
|
||
OpenCode ใช้ [AI SDK](https://ai-sdk.dev/) และ [Models.dev](https://models.dev) เพื่อรองรับผู้ให้บริการ **75+ LLM** และรองรับการใช้งานโมเดลท้องถิ่น
|
||
|
||
---
|
||
|
||
## ผู้ให้บริการ
|
||
|
||
ผู้ให้บริการที่ได้รับความนิยมส่วนใหญ่จะถูกโหลดไว้ล่วงหน้าตามค่าเริ่มต้น หากคุณได้เพิ่มข้อมูลรับรองสำหรับผู้ให้บริการผ่านคำสั่ง `/connect` ข้อมูลเหล่านั้นจะพร้อมใช้งานเมื่อคุณเริ่ม OpenCode
|
||
|
||
เรียนรู้เพิ่มเติมเกี่ยวกับ [ผู้ให้บริการ](/docs/providers)
|
||
|
||
---
|
||
|
||
## เลือกรุ่น
|
||
|
||
เมื่อคุณกำหนดค่าผู้ให้บริการแล้ว คุณสามารถเลือกรุ่นที่ต้องการได้โดยพิมพ์:
|
||
|
||
```bash frame="none"
|
||
/models
|
||
```
|
||
|
||
---
|
||
|
||
## รุ่นที่แนะนำ
|
||
|
||
มีโมเดลออกมามากมาย โดยมีโมเดลใหม่ๆ ออกมาทุกสัปดาห์
|
||
|
||
:::tip
|
||
พิจารณาใช้รุ่นใดรุ่นหนึ่งที่เราแนะนำ
|
||
:::
|
||
|
||
อย่างไรก็ตาม มีเพียงไม่กี่ตัวเท่านั้นที่เก่งทั้งการสร้างโค้ดและการเรียกใช้เครื่องมือ
|
||
|
||
ต่อไปนี้เป็นโมเดลหลายรุ่นที่ทำงานได้ดีกับ OpenCode โดยไม่เรียงลำดับเป็นพิเศษ (นี่ไม่ใช่รายการที่ครอบคลุมและไม่จำเป็นต้องเป็นข้อมูลล่าสุด):
|
||
|
||
- GPT 5.2
|
||
- GPT 5.1 Codex
|
||
- Claude Opus 4.5
|
||
- Claude Sonnet 4.5
|
||
- MiniMax 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) คุณจะใช้ `opencode/gpt-5.1-codex` สำหรับ GPT 5.1 Codex
|
||
|
||
หากคุณได้กำหนดค่า [ผู้ให้บริการที่กำหนดเอง](/docs/providers#กำหนดเอง) `provider_id` จะเป็นคีย์จากส่วน `provider` ของการกำหนดค่าของคุณ และ `model_id` จะเป็นคีย์จาก `provider.models`
|
||
|
||
---
|
||
|
||
## กำหนดค่าโมเดล
|
||
|
||
คุณสามารถกำหนดค่าตัวเลือกของโมเดลได้ทั่วโลกผ่านการกำหนดค่า
|
||
|
||
```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)
|
||
|
||
คุณยังสามารถกำหนดค่าตัวเลือกเหล่านี้สำหรับตัวแทนใดๆ ที่คุณใช้อยู่ได้ การกำหนดค่าตัวแทนจะแทนที่ตัวเลือกส่วนกลางใดๆ ที่นี่ [เรียนรู้เพิ่มเติม](/docs/agents/#เพิ่มเติม)
|
||
|
||
คุณยังสามารถกำหนดตัวแปรแบบกำหนดเองที่ขยายตัวแปรในตัวได้ ตัวแปรช่วยให้คุณกำหนดการตั้งค่าที่แตกต่างกันสำหรับรุ่นเดียวกันโดยไม่ต้องสร้างรายการที่ซ้ำกัน:
|
||
|
||
```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",
|
||
},
|
||
},
|
||
},
|
||
},
|
||
},
|
||
},
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
## หลากหลาย
|
||
|
||
หลายรุ่นรองรับหลายรุ่นด้วยการกำหนดค่าที่แตกต่างกัน OpenCode มาพร้อมกับตัวแปรเริ่มต้นในตัวสำหรับผู้ให้บริการยอดนิยม
|
||
|
||
### ตัวแปรในตัว
|
||
|
||
OpenCode มาพร้อมกับตัวแปรเริ่มต้นสำหรับผู้ให้บริการหลายราย:
|
||
|
||
**Anthropic**:
|
||
|
||
- `high` - งบประมาณการคิดสูง (ค่าเริ่มต้น)
|
||
- `max` - งบประมาณการคิดสูงสุด
|
||
|
||
**OpenAI**:
|
||
|
||
แตกต่างกันไปตามรุ่น แต่โดยประมาณ:
|
||
|
||
- `none` - ไม่มีเหตุผล
|
||
- `minimal` - ความพยายามในการให้เหตุผลน้อยที่สุด
|
||
- `low` - ความพยายามในการให้เหตุผลต่ำ
|
||
- `medium` - ความพยายามในการให้เหตุผลปานกลาง
|
||
- `high` - ความพยายามในการให้เหตุผลสูง
|
||
- `xhigh` - ความพยายามในการให้เหตุผลสูงเป็นพิเศษ
|
||
|
||
**Google**:
|
||
|
||
- `low` - ลดความพยายาม/token งบประมาณ
|
||
- `high` - ความพยายามที่สูงขึ้น/token งบประมาณ
|
||
|
||
:::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,
|
||
},
|
||
},
|
||
},
|
||
},
|
||
},
|
||
},
|
||
}
|
||
```
|
||
|
||
### ตัวแปรของวงจร
|
||
|
||
ใช้ปุ่มลัด `variant_cycle` เพื่อสลับระหว่างตัวแปรต่างๆ อย่างรวดเร็ว [เรียนรู้เพิ่มเติม](/docs/keybinds)
|
||
|
||
---
|
||
|
||
## กำลังโหลดโมเดล
|
||
|
||
เมื่อ OpenCode เริ่มทำงาน ระบบจะตรวจสอบรุ่นตามลำดับความสำคัญต่อไปนี้:
|
||
|
||
1. การตั้งค่าสถานะบรรทัดคำสั่ง `--model` หรือ `-m` รูปแบบจะเหมือนกับในไฟล์ปรับแต่ง: `provider_id/model_id`
|
||
|
||
2. รายการโมเดลในการกำหนดค่า OpenCode
|
||
|
||
```json title="opencode.json"
|
||
{
|
||
"$schema": "https://opencode.ai/config.json",
|
||
"model": "anthropic/claude-sonnet-4-20250514"
|
||
}
|
||
```
|
||
|
||
รูปแบบที่นี่คือ `provider/model`
|
||
|
||
3. รุ่นที่ใช้ล่าสุด.
|
||
|
||
4. รุ่นแรกที่ใช้ลำดับความสำคัญภายใน
|