ชี้ Trae Agent ไปที่ endpoint เดียวสำหรับทุกโมเดล

Updated 2026-07-30

trae_config.yaml ของ Trae Agent ให้ provider แต่ละตัวมี base_url และ api_key ของตัวเอง ตั้ง base_url ของ provider openai เป็น https://api.apisrouter.com/v1 แล้ว agent พร้อมตัวสรุป Lakeview ของมันจะรันบน id ของ Claude, GPT, DeepSeek, GLM หรือ Kimi ผ่าน key เดียว

คำตอบสั้น ๆ: หนึ่ง provider block หนึ่ง model block

configuration ปัจจุบันของ Trae Agent เป็น YAML: trae_config.yaml ในไดเรกทอรีโปรเจกต์ มีสาม block ที่เกี่ยวข้อง model_providers กำหนด endpoint และแต่ละ entry รับ api_key, provider และ base_url ดังนั้น gateway แบบ OpenAI-compatible ก็แค่ provider ประเภท openai ที่สลับ base_url ของมัน models กำหนด config โมเดลที่มีชื่อซึ่งอ้างอิง provider ผ่าน model_provider agents ผูก trae_agent เข้ากับหนึ่งในชื่อโมเดลเหล่านั้น README ต้นทางแสดงรูปทรงนี้เป๊ะ ๆ สำหรับการ route ผ่านบริการหลายโมเดล: provider entry แบบ openai ที่ base_url ชี้ไปที่ root /v1 ของบริการ สำหรับ APIsRouter นั่นคือ https://api.apisrouter.com/v1 และฟิลด์ model จะรับ id ในแคตตาล็อกใดก็ได้เป็นสตริงธรรมดา รวม id ของ Claude และ Kimi ด้วย เพราะประเภท provider ตัดสินแค่รูปแบบ request ไม่ใช่ vendor

model_providers:
  apisrouter:
    api_key: your_apisrouter_api_key
    provider: openai
    base_url: https://api.apisrouter.com/v1

models:
  trae_agent_model:
    model_provider: apisrouter
    model: claude-sonnet-4-6
    max_tokens: 4096
    temperature: 0.5

Trae Agent เดินสายข้างในอย่างไร

Trae Agent (bytedance บน GitHub มีดาวประมาณ 12K) คือ agent วิศวกรรมซอฟต์แวร์เชิงวิจัยของ ByteDance สำหรับ command line: ให้งานกับ trae-cli แล้วมันจะทำงานผ่าน tool loop ที่โปร่งใส โดยมี bash, การแก้ไขไฟล์ และ sequential thinking อยู่ใน tool ที่มาพร้อมระบบ จนถึง max_steps ที่ตั้งค่าได้ มันถูกออกแบบให้เป็นโมดูลาร์โดยตั้งใจ ซึ่งเป็นเหตุผลที่ config แยก provider ออกจากโมเดลออกจาก agent: provider เดียวกันสามารถแบก model config ได้หลายตัว และการสลับว่า agent รันบนอะไรคือการแก้อ้างอิงชื่อหนึ่งบรรทัด มีสองช่องโมเดลที่สำคัญในทางปฏิบัติ trae_agent_model คือ loop หลัก โมเดลที่ทำ reasoning, tool call และการแก้ไข ที่ max_steps สองร้อยหมายความว่างานหนึ่งชิ้นอาจเป็นลำดับ call ที่ถูกเรียกเก็บเงินยาว lakeview_model ขับเคลื่อน Lakeview ฟีเจอร์สรุปขั้นตอนของ Trae ที่สร้างสรุปสั้นอ่านง่ายว่า agent ทำอะไรในแต่ละขั้น Lakeview ยิงบ่อยและ output ของมันคือร้อยแก้วที่อ่านผ่าน ๆ ได้ ซึ่งทำให้มันเป็นช่องตำราสำหรับ id ที่เร็ว ในขณะที่ loop หลักยังคง id แบบ frontier ไว้ configuration resolve จากมากกว่า YAML: CLI รับ flag --provider และ --model ต่อการรัน และตัวแปร environment เฉพาะ provider, OPENAI_API_KEY และ OPENAI_BASE_URL อยู่ในชุดที่มีเอกสารระบุ ป้อนการตั้งค่าเดียวกัน flag คือวิธีที่คุณ A/B โมเดลตัวที่สองโดยไม่ต้องแตะไฟล์

ตั้งค่าแบบเต็ม: agent, Lakeview และการรัน

config เต็มผูก agent เข้ากับโมเดลหลักและ Lakeview เข้ากับโมเดลที่เร็ว ทั้งคู่ผ่าน provider entry เดียวกัน สังเกตการอ้างอิงทางอ้อม: agents.trae_agent.model ระบุชื่อ entry ใน models และแต่ละ entry ใน models ระบุชื่อ provider ผ่าน model_provider การพิมพ์ผิดในการอ้างอิงตัวใดตัวหนึ่งจะทำให้ chain ล้มเหลว ดังนั้นเก็บทั้งสามชื่อให้สอดคล้องกัน ข้อสังเกตทางประวัติศาสตร์หนึ่งอย่างที่อธิบาย tutorial ที่งงส่วนใหญ่: configuration ของ Trae Agent เคยเป็น trae_config.json และตอนนี้ repo ระบุรูปแบบนั้นว่าเป็น legacy โดยมี YAML เป็นรูปแบบปัจจุบัน คู่มือที่แสดง JSON กำลังอธิบาย layout เก่ากว่า key ย้ายมา แนวคิดยังคงเดิม ถ้าคุณมี config JSON เก่า เอกสาร legacy-config ของ repo ครอบคลุมการ mapping มุมมองเรื่อง key เดียวคุ้มค่าที่จะอธิบายสำหรับเครื่องมือนี้โดยเฉพาะ รายการ provider แบบ native ของ Trae Agent ครอบคลุม vendor ทั้งอเมริกาและจีน ซึ่งปกติหมายถึงบัญชีและ key ต่อ vendor ซึ่งบางตัวหายากขึ้นอยู่กับว่าคุณอยู่ที่ไหน หลัง gateway entry เดียว claude-sonnet-4-6, gpt-5.5, deepseek-v4-pro, glm-5.2 และ kimi-k2.7-code ล้วนห่างกันแค่สตริงโมเดลเดียว บน key เดียว ยอดคงเหลือเดียว ไม่ว่าคุณจะพัฒนาจากฝั่งไหนของแปซิฟิก

agents:
  trae_agent:
    enable_lakeview: true
    model: trae_agent_model
    max_steps: 200
    tools:
      - bash
      - str_replace_based_edit_tool
      - sequentialthinking
      - task_done

model_providers:
  apisrouter:
    api_key: your_apisrouter_api_key
    provider: openai
    base_url: https://api.apisrouter.com/v1

models:
  trae_agent_model:
    model_provider: apisrouter
    model: claude-sonnet-4-6
    max_tokens: 4096
    temperature: 0.5
  lakeview_model:
    model_provider: apisrouter
    model: claude-haiku-4-5-20251001
    max_tokens: 4096
    temperature: 0.5

เลือกโมเดลสำหรับ agent loop

flag --provider และ --model ทำให้ workflow การเปรียบเทียบเป็นรูปธรรม: รันงานเดียวกันสองครั้งด้วย flag ต่างกัน อ่าน steps-to-done และ usage ที่ตั้งราคาแล้วต่อโมเดลใน console แล้วยกผู้ชนะขึ้นไปใส่ใน trae_config.yaml

  • loop หลักคืองาน tool ระยะยาว: อ่านไฟล์, แก้ไข, รัน bash, ตัดสินว่างานเสร็จหรือยัง claude-sonnet-4-6 และ gpt-5.5 รักษาแผนสองร้อยขั้นตอนไว้ด้วยกันได้ ช่องนี้คือที่สุดท้ายที่ควรประหยัด
  • Lakeview คือการสรุปความถี่สูงความเสี่ยงต่ำ claude-haiku-4-5-20251001 หรือ deepseek-v4-flash ทำให้มันแทบไม่มีต้นทุนเมื่อเทียบกับค่าใช้จ่ายของ loop หลัก
  • kimi-k2.7-code และ glm-5.2 คือผู้สมัครจริงจังสำหรับ loop หลักบน codebase ที่มี comment, commit history หรือเอกสารภาษาจีน repo สองภาษาคือที่ที่พวกมันเอาชนะโมเดลที่เน้นภาษาอังกฤษก่อนในเรื่องความเข้าใจ ไม่ใช่แค่ราคา
  • deepseek-v4-pro คือตัวเลือกปริมาณสำหรับการรันแบบ batch กวาดการแก้ไขเดียวกันข้ามหลาย repo หรือรัน agent ใน CI ซึ่งต้นทุนต่องานคูณกัน
  • max_steps คือตัวควบคุมต้นทุนของคุณ โมเดลที่หลงทางจะเผาผลาญ step เมื่อเปรียบเทียบผู้สมัคร ให้เปรียบเทียบ steps-to-done บนงานเดียวกัน ไม่ใช่ token ต่อ request

จ่ายตามการใช้งาน · ถูกกว่าราคาทางการ

Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.

โมเดลราคาทางการราคาของเรา
Claude Sonnet 4.6$3.00 / $15.00 per M$2.40 / $12.00 per M
GPT-5.5$5.00 / $30.00 per M$4.00 / $24.00 per M
DeepSeek V4 Pro$0.43 / $0.87 per M$0.40 / $0.90 per M
GLM-5.2$1.14 / $4.00 per M$1.10 / $4.00 per M
Kimi K2.7 Code$0.95 / $4.00 per M$1.00 / $4.00 per M

รูปแบบความล้มเหลวเฉพาะของ Trae Agent

ความสับสนระหว่าง JSON กับ YAML นำหน้าทุกอย่าง trae_config.json ที่ copy มาจากคู่มือเก่าจะถูกอ่านเป็น legacy อย่างดีที่สุดหรือถูกเมินอย่างแย่ที่สุด และอาการคือ CLI ทำตัวเหมือนคุณไม่เคยตั้งค่าอะไรเลย การตั้งค่าปัจจุบันควรอยู่ใน trae_config.yaml migrate ไฟล์เก่าด้วยเอกสาร legacy-config ของ repo แทนการเดาชื่อ key chain สามชื่อพังอย่างเงียบ ๆ agents.trae_agent.model ต้องระบุชื่อ entry ใน models และ model_provider ของ entry นั้นต้องระบุชื่อ entry ใน model_providers เปลี่ยนชื่อตัวหนึ่งแต่ไม่เปลี่ยนตัวอื่นแล้วการรันจะล้มเหลวตั้งแต่ startup ด้วย resolution error แทนที่จะเป็น request error ซึ่งชี้คุณไปที่ YAML ไม่ใช่เครือข่าย base_url ต้องการ /v1 รวมอยู่ด้วย ตรงกับตัวอย่างต้นทางที่ชี้ไปที่ root /v1 ของ router host เปล่า ๆ จะสร้าง 404 เมื่อ client เติม path chat-completions เข้าไป Lakeview ล้มเหลวในขณะที่ agent ทำงานได้หมายความว่า lakeview_model อ้างอิง id ที่ endpoint ไม่เสิร์ฟ ซึ่งพลาดง่ายเพราะคุณทดสอบโมเดลหลักแล้วลืมช่องที่สอง และตัวแปร environment ที่แอบสนับสนุน provider ที่คุณคิดว่าตั้งค่าผ่านไฟล์ โดยเฉพาะ OPENAI_API_KEY คุ้มค่าที่จะตรวจสอบเมื่อ authentication ทำงานไม่สอดคล้องกันระหว่าง shell

ใครที่ route Trae Agent ผ่าน gateway

  • นักพัฒนาที่ต้องการให้ Claude หรือ GPT ขับเคลื่อน agent loop และ GLM, Kimi หรือ DeepSeek ห่างแค่ flag เดียว โดยไม่ต้องถือบัญชีที่ vendor แต่ละราย
  • ทีมสองภาษาที่ทำงานข้าม codebase จีนและอังกฤษ ที่โมเดลที่แข็งแกร่งที่สุดต่อ repo อาจมาจากทั้งสองระบบนิเวศ เรียกใช้ได้ผ่าน key เดียว
  • วิศวกรที่รันงาน agent แบบ batch หรือ CI ที่การติดตาม usage ต่อ key เปลี่ยนกองทัพการรัน trae-cli ให้เป็นรายงานต้นทุนที่อ่านได้
  • นักวิจัยที่ทำ benchmark โมเดล agent เพราะ Trae Agent สร้างมาสำหรับการเปรียบเทียบสไตล์ ablation และ gateway ทำให้ผู้สมัครแต่ละคนเป็นการเปลี่ยน flag เดียวกัน
  • นักพัฒนาที่ไม่มีสิทธิ์เข้าถึงระบบเก็บเงินของ vendor รายหนึ่ง การเข้าถึงแบบเติมเงินโดยไม่ต้องใช้บัตรตัดการพึ่งพาการสมัครต่อ provider ออกไป

ตรวจสอบ endpoint และ debug งานแรก

ยืนยันว่า endpoint เสิร์ฟ id ของคุณก่อนการรันแรก: รายการ /v1/models ด้วย key ของคุณคือการสะกดที่น่าเชื่อถือสำหรับทุกฟิลด์ model ใน YAML ทั้งช่องหลักและช่อง Lakeview ความล้มเหลวในการรันครั้งแรกแยกได้ชัดเจน config resolution error ก่อน request ใดคือ chain สามชื่อหรือไฟล์ JSON แบบ legacy 401 คือ api_key ใน provider block หรือตัวแปร environment ที่ override มัน 404 บนทุก request คือ base_url ที่ขาด /v1 error model-not-found ระบุชื่อช่องที่ผิด ตรวจสอบว่าเป็นโมเดล agent หรือโมเดล Lakeview และการรันที่เริ่มแต่ค้างกลางงานมักเป็นโมเดลที่หลงทางมากกว่า endpoint ล้มเหลว ซึ่งเป็นสิ่งที่ max_steps และ step log มีไว้ให้ดู เมื่องานรันแล้ว console ของ APIsRouter แสดงโมเดลต่อ request, จำนวน token และค่าใช้จ่าย agent ที่ใช้ร้อย step ต่องานคูณทุกอย่าง และ usage log คือที่ที่คุณเรียนรู้ว่างานหนึ่งมีต้นทุนจริงเท่าไหร่บนโมเดลผู้สมัครแต่ละตัว

curl -s https://api.apisrouter.com/v1/models \
  -H "Authorization: Bearer $APISROUTER_API_KEY" | head -50

คำถามที่พบบ่อย

custom base URL ใส่ที่ไหนใน config ของ Trae Agent?

ใน trae_config.yaml ใต้ model_providers: ให้ entry มี api_key, provider: openai และ base_url: https://api.apisrouter.com/v1 model config ใน block models จะอ้างอิง entry นั้นด้วยชื่อผ่าน model_provider

trae_config.json ยังใช้ได้อยู่ไหม?

repo ระบุ JSON ว่าเป็นรูปแบบ legacy และ YAML คือรูปแบบปัจจุบัน พร้อมเอกสาร migration สำหรับไฟล์เก่า คู่มือที่แสดง trae_config.json กำลังอธิบาย layout เก่ากว่า การตั้งค่าใหม่ควรใช้ trae_config.yaml

Trae Agent รันโมเดล Claude, GLM, Kimi และ DeepSeek ผ่าน key เดียวได้ไหม?

ได้ ประเภท provider ตั้งรูปแบบ request และฟิลด์ model ถูกส่งผ่านเป็นสตริงธรรมดา ดังนั้น id ใดก็ตามที่ endpoint เสิร์ฟใช้ได้: claude-sonnet-4-6, glm-5.2, kimi-k2.7-code และ deepseek-v4-pro ล้วนผ่าน provider block และ key เดียวกัน

lakeview_model คืออะไร และต้องมี endpoint ของตัวเองไหม?

Lakeview สรุปแต่ละขั้นตอนของ agent เป็นข้อความสั้นอ่านง่าย โดยใช้โมเดลที่ระบุใน lakeview_model มัน resolve ผ่านกลไก model_providers เดียวกัน ดังนั้นชี้มันไปที่ id ในแคตตาล็อกที่เร็วบน gateway entry เดียวกันได้เลย มันยิงบ่อยและไม่ต้องการ reasoning แบบ frontier

flag ของ CLI override trae_config.yaml ไหม?

override trae-cli รับ --provider และ --model ต่อการรัน ซึ่งเป็นวิธีที่ตั้งใจให้ใช้ทดสอบโมเดลอื่นโดยไม่ต้องแก้ไฟล์ ตัวแปร environment ของ provider อย่าง OPENAI_API_KEY และ OPENAI_BASE_URL ก็ถูกอ่านด้วย ดังนั้นตรวจสอบ export ที่ค้างอยู่เมื่อพฤติกรรมต่างกันระหว่าง shell

base_url ควรมี /v1 ไหม?

ควรมี ตัวอย่างต้นทางชี้ provider openai ไปที่ root /v1 ของ router และค่าของ APIsRouter คือ https://api.apisrouter.com/v1 host เปล่า ๆ จะเกิด 404 เมื่อ client เติม request path เข้าไป