DEV Community

Cover image for วิธีใช้ Sakana Fugu API?
Thanawat Wongchai
Thanawat Wongchai

Posted on • Originally published at apidog.com

วิธีใช้ Sakana Fugu API?

คุณสามารถใช้ Sakana Fugu API ได้โดยสร้างคีย์ที่ console.sakana.ai คัดลอก Base URL จากคอนโซล แล้วชี้ไคลเอ็นต์ OpenAI เดิมของคุณไปยังเอนด์พอยต์นั้น ไม่ต้องย้าย SDK เพราะ Fugu มี API ที่เข้ากันได้กับ OpenAI: เปลี่ยนแค่ base_url และ api_key ก็เรียกใช้งานผ่านไลบรารี openai ของ Python หรือ JavaScript ได้ทันที เบื้องหลัง Fugu เป็นระบบจัดการหลายเอเจนต์ตามที่ Sakana อธิบายใน หน้าการเปิดตัว โดยระบบจะเลือกเองว่าจะตอบโดยตรงหรือประสานงานหลายโมเดลให้คุณ หากคุณเคยตั้งค่าเกตเวย์แบบเดียวกับในคู่มือ Claude Fable 5 API รูปแบบนี้จะคุ้นเคยมาก

ลองใช้ Apidog วันนี้

คู่มือนี้สรุปขั้นตอนแบบลงมือทำ: รับคีย์, ตั้งค่าไคลเอ็นต์, เลือกโมเดล, เปิดสตรีมมิ่ง และทดสอบคำขอแรกให้สำเร็จภายในไม่กี่นาที

Sakana Fugu API คืออะไร

Fugu ไม่ใช่โมเดลเดี่ยวแบบทั่วไป Sakana อธิบายว่าเป็นโมเดลภาษาที่ถูกฝึกให้ทำงานด้านการมอบหมายงาน การสื่อสารระหว่างเอเจนต์ และการสังเคราะห์ผลลัพธ์ แนวคิดหลักคือ “One Model to Command Them All.”

เมื่อคุณส่งคำขอเข้ามา “คอนดักเตอร์” จะอ่านพรอมต์ แล้วเลือกหนึ่งในสองทาง:

  1. ตอบกลับด้วยตัวเอง
  2. สร้างทีมของ LLM หลายตัวแบบไดนามิก รวมถึงเรียกอินสแตนซ์ของตัวเองแบบ recursive แล้วสังเคราะห์ผลลัพธ์กลับมาเป็นคำตอบเดียว

Sakana Fugu architecture

สำหรับโค้ดฝั่งไคลเอ็นต์ คุณไม่ต้องจัดการความซับซ้อนเหล่านี้เอง คุณเรียกเอนด์พอยต์ OpenAI-compatible เพียงตัวเดียว และรับผลลัพธ์แบบ chat completion ตามปกติ กราฟการจัดการเอเจนต์อยู่ฝั่งเซิร์ฟเวอร์ทั้งหมด

Fugu มีสองเวอร์ชันหลัก:

รุ่น เหมาะกับ
fugu งานทั่วไป, latency ต่ำ, เขียนโค้ด, รีวิวโค้ด, แชทบอท, บริการแบบโต้ตอบ
fugu-ultra งานที่ต้องการคุณภาพคำตอบสูงสุด เช่น วิจัย AI, ทำซ้ำงานวิจัย, วิเคราะห์ความปลอดภัยไซเบอร์, ค้นวรรณกรรมหรือสิทธิบัตร

ในช่วงเบต้า รุ่นที่เล็กกว่าถูกเรียกว่า “Fugu Mini” แต่ชื่อปัจจุบันคือ fugu และ fugu-ultra

Fugu models

พื้นฐานงานวิจัยของ Fugu อ้างอิงจากเอกสาร ICLR 2026 สองฉบับ:

  • Trinity: ตัวประสานงานที่มีพารามิเตอร์น้อยกว่า 20K ปรับปรุงด้วย derivative-free evolution และใช้บทบาท Thinker, Worker, Verifier
  • Conductor: โมเดล 7B ที่ฝึกด้วย reinforcement learning เพื่อเรียนรู้โครงสร้างการสื่อสารระหว่างเอเจนต์

ทั้งสองงานมีวิธีและขนาดต่างกัน จึงไม่ควรนับเป็นโมเดลเดียวกัน และจำนวนพารามิเตอร์ที่แท้จริงของผลิตภัณฑ์ Fugu ที่ให้บริการยังไม่ได้เผยแพร่

ขั้นตอนที่ 1: สร้างคีย์ Fugu API ที่ console.sakana.ai

ไปที่ console.sakana.ai แล้วลงชื่อเข้าใช้ด้วย Google หรืออีเมล การเข้าถึงอาจขึ้นอยู่กับสถานะการเปิดให้บริการในช่วงเวลานั้น รุ่นเบต้าเริ่มต้นด้วยผู้ใช้ประมาณ 500 คนตั้งแต่ปลายเดือนเมษายน 2026 และสถานะ self-service signup อาจเปลี่ยนแปลงได้

ก่อนเริ่มพัฒนา ให้ตรวจสอบสองเรื่องในคอนโซล:

  • บัญชีของคุณเข้าถึง Fugu API ได้หรือไม่
  • ภูมิภาคของคุณรองรับหรือไม่ โดยเฉพาะกรณี EU/EEA ที่มีรายงานข้อจำกัดการให้บริการ

Sakana console

หลังจากเข้าสู่ระบบแล้ว:

  1. เปิดส่วน API keys
  2. สร้าง API key ใหม่
  3. เก็บคีย์ไว้ใน environment variable หรือ secrets manager
  4. ห้าม commit คีย์ลง source control
  5. rotate คีย์ทันทีหากสงสัยว่ารั่วไหล

ตัวอย่าง .env:

FUGU_API_KEY=your_fugu_api_key
FUGU_BASE_URL=<YOUR_FUGU_BASE_URL_FROM_CONSOLE>
Enter fullscreen mode Exit fullscreen mode

สิ่งสำคัญที่สุดคือ Base URL ให้คัดลอกจากคอนโซลของคุณเท่านั้น อย่าเดาจากรูปแบบของผู้ให้บริการรายอื่น และอย่าคัดลอกจากโพสต์ฟอรัม เพราะ Sakana ไม่ได้เผยแพร่ Base URL สาธารณะในหน้าหลัก ณ เวลาที่เขียนนี้

ขั้นตอนที่ 2: ชี้ไคลเอ็นต์ OpenAI เดิมไปยัง Fugu

Fugu ใช้รูปแบบคำขอแบบ OpenAI chat completion ดังนั้นคุณเปลี่ยนแค่:

  • api_key
  • base_url หรือ baseURL

ส่วน messages, model, stream และรูปแบบ response ใช้งานเหมือนเดิม

ในตัวอย่างด้านล่าง <YOUR_FUGU_BASE_URL_FROM_CONSOLE> คือตัวยึดตำแหน่ง ให้แทนค่าด้วย Base URL จริงจากคอนโซลของคุณ

Python

ติดตั้ง SDK หากยังไม่มี:

pip install openai
Enter fullscreen mode Exit fullscreen mode

เรียกใช้งาน:

import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["FUGU_API_KEY"],
    base_url=os.environ["FUGU_BASE_URL"],  # คัดลอกจาก console.sakana.ai
)

response = client.chat.completions.create(
    model="fugu",  # ยืนยันสตริงโมเดลในคอนโซลของคุณ
    messages=[
        {"role": "system", "content": "You are a helpful engineering assistant."},
        {"role": "user", "content": "Refactor this function to remove the nested loop."},
    ],
)

print(response.choices[0].message.content)
Enter fullscreen mode Exit fullscreen mode

JavaScript

ติดตั้ง SDK:

npm install openai
Enter fullscreen mode Exit fullscreen mode

เรียกใช้งาน:

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.FUGU_API_KEY,
  baseURL: process.env.FUGU_BASE_URL, // คัดลอกจาก console.sakana.ai
});

const response = await client.chat.completions.create({
  model: "fugu", // ยืนยันสตริงโมเดลในคอนโซลของคุณ
  messages: [
    { role: "system", content: "You are a helpful engineering assistant." },
    { role: "user", content: "Refactor this function to remove the nested loop." },
  ],
});

console.log(response.choices[0].message.content);
Enter fullscreen mode Exit fullscreen mode

นี่คือการย้ายระบบทั้งหมด: ไคลเอ็นต์เดิม, Base URL ใหม่, คีย์ใหม่ รูปแบบคล้ายการตั้งค่า Claude Code กับ OpenRouter ต่างกันที่ฝั่งเซิร์ฟเวอร์ของ Fugu มีเลเยอร์จัดการหลายเอเจนต์อยู่เบื้องหลัง

ขั้นตอนที่ 3: เลือกค่า model

ฟิลด์ model ใช้เลือกเวอร์ชันของ Fugu:

fugu
fugu-ultra
Enter fullscreen mode Exit fullscreen mode

บางแหล่งอาจรายงานตัวระบุแบบมีวันที่ เช่น fugu-ultra-20260615 แต่ตัวระบุเหล่านี้อาจเปลี่ยนตาม release ให้ตรวจสอบค่าที่ถูกต้องในคอนโซลเสมอ

แนวทางเลือกโมเดล:

  • ใช้ fugu สำหรับงาน interactive, coding, chatbot และงานที่ latency สำคัญ
  • ใช้ fugu-ultra เมื่อต้องการคุณภาพคำตอบสูงสุด เช่น research, reproduction, security analysis

ตัวอย่าง Python:

# รุ่นสมดุลและ latency ต่ำ
fast = client.chat.completions.create(
    model="fugu",
    messages=[
        {
            "role": "user",
            "content": "Summarize this changelog in three bullets.",
        }
    ],
)

# รุ่นที่เน้นคุณภาพคำตอบสูงสุด
deep = client.chat.completions.create(
    model="fugu-ultra",  # ยืนยันสตริงที่ถูกต้องในคอนโซล
    messages=[
        {
            "role": "user",
            "content": "Reproduce the main result of this paper and flag any gaps.",
        }
    ],
)
Enter fullscreen mode Exit fullscreen mode

ขั้นตอนที่ 4: เปิดสตรีมมิ่ง

การสตรีมทำงานเหมือน OpenAI API: ตั้งค่า stream=True ใน Python หรือ stream: true ใน JavaScript แล้ววนอ่าน chunk ที่ส่งกลับมา

เหมาะสำหรับ:

  • UI แชท
  • คำตอบยาว
  • CLI assistant
  • งานที่ต้องการแสดงผล token ระหว่าง generate

Streaming ด้วย Python

stream = client.chat.completions.create(
    model="fugu",
    messages=[
        {
            "role": "user",
            "content": "Walk me through setting up a CI pipeline.",
        }
    ],
    stream=True,
)

for chunk in stream:
    delta = chunk.choices[0].delta.content
    if delta:
        print(delta, end="", flush=True)
Enter fullscreen mode Exit fullscreen mode

Streaming ด้วย JavaScript

const stream = await client.chat.completions.create({
  model: "fugu",
  messages: [
    {
      role: "user",
      content: "Walk me through setting up a CI pipeline.",
    },
  ],
  stream: true,
});

for await (const chunk of stream) {
  const delta = chunk.choices[0]?.delta?.content;
  if (delta) process.stdout.write(delta);
}
Enter fullscreen mode Exit fullscreen mode

ข้อควรเข้าใจ: แม้ response จะสตรีมออกมาเป็น token แต่การจัดการหลายเอเจนต์ยังเกิดในฝั่งเซิร์ฟเวอร์ คุณจะไม่เห็นบทสนทนาระหว่างเอเจนต์หรือ routing graph ใน stream คุณจะเห็นเฉพาะคำตอบที่ถูกสังเคราะห์แล้ว

เกิดอะไรขึ้นเบื้องหลังคำขอหนึ่งครั้ง

เมื่อคำขอเข้ามา Fugu conductor จะประเมินพรอมต์และตัดสินใจว่า:

  1. ตอบโดยตรง
  2. สร้างทีมเอเจนต์
  3. เรียกใช้ LLM หลายตัว รวมถึง Fugu เองแบบ recursive
  4. รวมผลลัพธ์กลับเป็นคำตอบเดียว

ประเด็นนี้สำคัญเมื่อคุณต้องตีความ benchmark หรือวาง governance:

  • เอเจนต์ในกลุ่มสามารถสลับได้
  • ระบบอาจเลือกไม่ใช้เอเจนต์บางตัวตามข้อกำหนดด้านข้อมูลหรือ compliance
  • Fugu สามารถ route แบบไดนามิกเพื่อหลีกเลี่ยงข้อจำกัดของผู้ให้บริการ
  • ผลลัพธ์สะท้อนระบบแบบ model-of-models ไม่ใช่โมเดลเดี่ยวเสมอไป

ดังนั้นเมื่อ Sakana ระบุว่า Fugu Ultra “อยู่ในระดับเดียวกับโมเดลชั้นนำอย่าง Fable 5 และ Mythos Preview” ใน benchmark ด้านวิศวกรรม วิทยาศาสตร์ และ reasoning ควรตีความว่าเป็นการกล่าวอ้างความเท่าเทียมของระบบจัดการหลายโมเดล ไม่ใช่ชัยชนะของโมเดลเดี่ยว

Sakana ยังรายงานว่า Fugu “มีประสิทธิภาพเหนือกว่าอย่างสม่ำเสมอ” เมื่อเทียบกับ Gemini 3.1 Pro, Opus 4.8 และ GPT 5.5 ในแอปพลิเคชันเฉพาะ เช่น AutoResearch, หมากรุกแบบเล่นครั้งเดียว และการทำนายอนุกรมเวลาทางการเงิน แต่ผลลัพธ์แบบนี้อาจเกิดจากการที่ Fugu เรียกใช้โมเดลอื่นแล้วสังเคราะห์ผลลัพธ์ นั่นคือความสามารถของ orchestration ไม่ใช่การจัดอันดับโมเดลเดี่ยวโดยตรง

หากต้องการดูจุดเปรียบเทียบแบบโมเดลเดี่ยว โปรดดูคู่มือ Claude Fable 5 API และสำหรับภาพรวมของ Fugu โปรดดู Sakana Fugu คืออะไร

ข้อสังเกตเรื่องการเข้าถึง ราคา และทางเลือกอื่น

หน้าการเปิดตัวของ Sakana ยืนยันว่ามี:

  • ระดับ subscription สำหรับการใช้งานทั่วไป
  • แผน pay-as-you-go สำหรับ workload ที่หนักกว่าและองค์กร

อย่างไรก็ตาม ตัวเลขราคาเฉพาะที่กระจายอยู่ในแหล่งข้อมูลรองอาจเปลี่ยนได้ และไม่ได้อยู่ในหน้าทางการโดยตรง คู่มือนี้จึงไม่อ้างตัวเลขเหล่านั้น ให้ตรวจสอบราคาปัจจุบันในคอนโซลของคุณ ณ วันที่ 2026-06-22 ก่อนเลือกแผน

หากคุณประเมิน Fugu เทียบกับ routing gateway เช่น OpenRouter หรือ Martian ให้แยกประเภทให้ชัด:

  • Router ทั่วไปมักเลือกโมเดลหนึ่งโมเดลต่อคำขอ
  • Fugu เป็น orchestration layer ที่เรียนรู้ได้ และอาจใช้หลายโมเดลรวมถึงตัวเอง

ถ้าคุณกำลังเปรียบเทียบ gateway สำหรับสแต็กของคุณ รายการ ทางเลือก OpenRouter ที่ดีที่สุด เป็นจุดเริ่มต้นที่ดีในการดู trade-off ระหว่าง single-model routing และ orchestration

ทดสอบ Fugu ด้วย Apidog ก่อนเขียนโค้ด

เพราะ Fugu รองรับรูปแบบ OpenAI chat completions คุณสามารถทดสอบเหมือน HTTP API ทั่วไปใน Apidog

ขั้นตอน:

  1. สร้าง request ใหม่
  2. วาง Base URL จากคอนโซล Sakana
  3. ตั้งค่า Authorization เป็น Bearer token
  4. ใส่ Fugu API key
  5. ตั้งค่า JSON body ด้วย model และ messages
  6. ส่ง request
  7. ตรวจสอบ raw response, token usage และข้อความที่สังเคราะห์แล้ว

ตัวอย่าง body:

{
  "model": "fugu",
  "messages": [
    {
      "role": "system",
      "content": "You are a helpful engineering assistant."
    },
    {
      "role": "user",
      "content": "Explain how to migrate an OpenAI client to Fugu."
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

Test Fugu in Apidog

วิธีนี้ช่วยยืนยันว่า:

  • Base URL ถูกต้อง
  • API key ใช้งานได้
  • ค่า model ถูกต้อง
  • response shape ตรงกับที่แอปของคุณคาดหวัง
  • streaming chunk ทำงานอย่างไร ก่อนเชื่อมเข้ากับ production code

Apidog ยังช่วยบันทึก request, แยก environment, parameterize secret และแชร์ตัวอย่างที่รันได้กับทีม อ่านขั้นตอนเต็มได้ในคู่มือ ทดสอบ Sakana Fugu API ด้วย Apidog เมื่อพร้อมเริ่มสร้าง workflow จริง สามารถ ดาวน์โหลด Apidog แล้วเริ่มจาก request ที่ตรวจสอบแล้วแทนการเดา contract เอง

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

ฉันต้องใช้ SDK ใหม่เพื่อเรียก Sakana Fugu API หรือไม่?

ไม่จำเป็น Fugu เปิดเผยเอนด์พอยต์ที่เข้ากันได้กับ OpenAI ดังนั้นคุณใช้ openai SDK เดิมของ Python หรือ JavaScript ได้ เปลี่ยน base_url เป็นค่าจากคอนโซล และตั้งค่า Fugu API key เท่านั้น

ฉันจะหา Base URL ของ Fugu ได้ที่ไหน?

คัดลอกจากแดชบอร์ดที่ console.sakana.ai หลังเข้าสู่ระบบ Base URL ไม่ได้เผยแพร่ในหน้าสาธารณะของ Sakana ดังนั้นอย่าเดาหรือใช้ host จากผู้ให้บริการอื่น

fugu และ fugu-ultra ต่างกันอย่างไร?

fugu เป็นรุ่นสมดุล latency ต่ำ เหมาะกับงานทั่วไป การเขียนโค้ด รีวิวโค้ด และแชท ส่วน fugu-ultra เน้นคุณภาพคำตอบสูงสุดสำหรับงานวิจัย การทำซ้ำผลวิจัย และการวิเคราะห์ความปลอดภัย ทั้งสองใช้เอนด์พอยต์เดียวกันและสลับได้ด้วยการเปลี่ยนค่า model

Fugu สามารถเอาชนะโมเดลเดี่ยวอย่าง Fable 5 ได้หรือไม่?

ควรตีความอย่างระมัดระวัง Sakana วาง Fugu Ultra ให้อยู่ในระดับเดียวกับ Fable 5 และ Mythos Preview ซึ่งเป็นการกล่าวอ้างความเท่าเทียมมากกว่าการบอกว่า “เอาชนะ” Fugu เป็นระบบจัดการหลายโมเดล จึงสะท้อนความสามารถแบบ model-of-models ไม่ใช่โมเดลเดี่ยวล้วน ดูจุดเปรียบเทียบได้ใน คู่มือ Claude Fable 5 API

Sakana Fugu API มีค่าใช้จ่ายเท่าไหร่?

Sakana ยืนยันว่ามี subscription tier และ pay-as-you-go plan แต่ตัวเลขราคาที่เผยแพร่ในแหล่งข้อมูลรองอาจเปลี่ยนได้ ให้ตรวจสอบราคาปัจจุบันในคอนโซลของคุณ ณ วันที่ 2026-06-22 ก่อนสมัครใช้งาน

ฉันจะทดสอบ Fugu ก่อนเขียนโค้ดได้อย่างไร?

ใช้ไคลเอ็นต์ API เช่น Apidog: วาง Base URL จากคอนโซล เพิ่ม Bearer token ตั้งค่า model และ messages แล้วส่ง request เพื่อตรวจสอบ response ก่อนเชื่อมต่อเข้ากับแอป ดูขั้นตอนเต็มได้ที่ ทดสอบ Sakana Fugu API ด้วย Apidog

สรุป

Fugu ทำให้ระบบหลายเอเจนต์ถูกห่อเป็น API call ที่เข้ากันได้กับ OpenAI เพียงครั้งเดียว งานหลักของคุณคือคัดลอก Base URL ให้ถูกต้องจากคอนโซล ตั้งค่า API key และเลือก model ให้เหมาะกับ workload หลังจากนั้นไคลเอ็นต์ OpenAI เดิมของคุณก็ใช้งานต่อได้ทันที

หากต้องการลดความเสี่ยงก่อนเขียน integration จริง ให้ทดสอบ request ใน Apidog ก่อน ตรวจสอบ contract, response shape และ streaming behavior ให้เรียบร้อย แล้วค่อยนำค่าที่ผ่านการยืนยันไปใช้ในแอปของคุณ ดาวน์โหลด Apidog และส่งคำขอ Fugu แรกจาก request ที่สะอาดและทำซ้ำได้

Top comments (0)