DEV Community

Cover image for ใช้งาน Garudust Agent ร่วมกับ Typhoon Thai LLM: คู่มือฉบับสมบูรณ์
Nisit Sirimarnkit
Nisit Sirimarnkit

Posted on

ใช้งาน Garudust Agent ร่วมกับ Typhoon Thai LLM: คู่มือฉบับสมบูรณ์

Garudust เป็น AI agent ที่เขียนด้วย Rust — binary ขนาด ~10 MB, cold start ไม่ถึง 20 มิลลิวินาที และมี persistent memory ที่จำทุกอย่างข้ามหลาย session

แต่ถ้างานที่ทำเป็นภาษาไทยล้วนๆ — เขียนอีเมลธุรกิจ, ตอบลูกค้า LINE OA, สรุปเอกสารราชการ — การใช้ Typhoon โมเดลภาษาไทยจาก SCB 10X จะได้ผลลัพธ์ที่ดีกว่าอย่างชัดเจน

Typhoon มี free API ที่ compatible กับ OpenAI ที่ https://api.opentyphoon.ai/v1 ซึ่งหมายความว่า Garudust เชื่อมต่อได้ทันทีด้วยการตั้งค่า 2 บรรทัด ไม่ต้องแก้โค้ดแม้แต่บรรทัดเดียว


สิ่งที่ต้องเตรียม

  • Linux, macOS หรือ Windows (WSL2)
  • Rust 1.75+ — หรือดาวน์โหลด pre-built binary เลยก็ได้
  • API key จาก opentyphoon.ai (ฟรี)

ขั้นตอนที่ 1 — ขอ Typhoon API Key

ไปที่ opentyphoon.ai สมัครบัญชีฟรี แล้ว generate API key จาก dashboard

API key จะมีหน้าตาประมาณนี้:

sk-ty-xxxxxxxxxxxxxxxxxxxxxxxxxxxx
Enter fullscreen mode Exit fullscreen mode

Free tier ใช้งานได้กับทั้ง 2 โมเดล:

โมเดล Req/วินาที Req/นาที เหมาะกับ
typhoon-v2.1-12b-instruct 5 200 งานทั่วไป, ตอบเร็ว
typhoon-v2.5-30b-a3b-instruct 5 200 งานซับซ้อน, reasoning

สำหรับงาน agent ส่วนใหญ่ แนะนำ typhoon-v2.1-12b-instruct ก่อน — เร็วกว่าและเหมาะกับ multi-turn loop มากกว่า

หมายเหตุ: Free API มี rate limit และไม่เหมาะกับ production workload หนักๆ สำหรับการใช้งานจริงในระดับ enterprise รอ production API บน AWS ที่ Typhoon วางแผนจะเปิดในปี 2026


ขั้นตอนที่ 2 — ติดตั้ง Garudust

วิธีที่ 1: ดาวน์โหลด binary สำเร็จรูป (แนะนำ)

# Linux x86_64
curl -LO https://github.com/garudust-org/garudust-agent/releases/latest/download/garudust-x86_64-unknown-linux-musl.tar.gz
tar -xzf garudust-x86_64-unknown-linux-musl.tar.gz
sudo mv garudust garudust-server /usr/local/bin/
Enter fullscreen mode Exit fullscreen mode
แพลตฟอร์ม ไฟล์
Linux x86_64 garudust-*-x86_64-unknown-linux-musl.tar.gz
Linux ARM64 garudust-*-aarch64-unknown-linux-musl.tar.gz
macOS Apple Silicon garudust-*-aarch64-apple-darwin.tar.gz
macOS Intel garudust-*-x86_64-apple-darwin.tar.gz
Windows garudust-*-x86_64-pc-windows-msvc.zip

วิธีที่ 2: ติดตั้งจาก crates.io

cargo install garudust garudust-server
Enter fullscreen mode Exit fullscreen mode

ตรวจสอบว่าติดตั้งสำเร็จ:

garudust --version
# garudust 0.2.8
Enter fullscreen mode Exit fullscreen mode

ขั้นตอนที่ 3 — เชื่อมต่อ Garudust กับ Typhoon

Garudust แยก config ออกจาก secret เป็น 2 ไฟล์ใน ~/.garudust/:

  • config.yaml — ชื่อโมเดล, provider, ค่าพฤติกรรมต่างๆ (แชร์ได้)
  • .env — API key อย่างเดียว (ห้าม commit เด็ดขาด)

สร้างไฟล์ ~/.garudust/config.yaml:

# เชื่อมต่อ Typhoon ผ่าน OpenAI-compatible endpoint
provider: vllm
model: typhoon-v2.1-12b-instruct
base_url: https://api.opentyphoon.ai/v1

# Context window สำหรับโมเดล 12B
context_window: 8192
compression:
  enabled: true
  threshold_fraction: 0.65

# Memory nudge — บันทึก fact ทุก 5 iteration
nudge_interval: 5
Enter fullscreen mode Exit fullscreen mode

สร้างไฟล์ ~/.garudust/.env:

# Typhoon API key
VLLM_API_KEY=sk-ty-xxxxxxxxxxxxxxxxxxxxxxxxxxxx
Enter fullscreen mode Exit fullscreen mode

ทำไมใช้ VLLM_API_KEY?

Garudust ส่ง key นี้เป็น Authorization: Bearer header ไปยัง base_url ที่กำหนด Typhoon API รับ format นี้ได้ตรงๆ เลย

หรือจะใช้ setup wizard ก็ได้:

garudust setup
Enter fullscreen mode Exit fullscreen mode

เลือก provider เป็น vllm แล้วกรอก base_url และ model ตามด้านบน


ขั้นตอนที่ 4 — ตรวจสอบการเชื่อมต่อ

garudust doctor
Enter fullscreen mode Exit fullscreen mode

ถ้าทุกอย่างถูกต้องจะเห็น:

✓ Config loaded     provider=vllm  model=typhoon-v2.1-12b-instruct
✓ API key present   VLLM_API_KEY
✓ LLM reachable     https://api.opentyphoon.ai/v1 → 200 OK
✓ Memory dir        ~/.garudust/memory/ (0 entries)
✓ Session DB        ~/.garudust/sessions.db
Enter fullscreen mode Exit fullscreen mode

ขั้นตอนที่ 5 — ทดสอบสนทนาภาษาไทย

เปิด TUI แบบ interactive:

garudust
Enter fullscreen mode Exit fullscreen mode

ลองพิมพ์:

คุณ: สวัสดีครับ ช่วยแนะนำตัวเองหน่อยได้ไหม
Enter fullscreen mode Exit fullscreen mode

Agent จะตรวจจับภาษาไทยโดยอัตโนมัติและตอบกลับเป็นภาษาไทย โดยไม่ต้องตั้งค่าภาษาเพิ่มเติม

หรือใช้แบบ one-shot:

garudust "สรุปข้อดีข้อเสียของการเปิดบริษัทในไทยแบบสั้นๆ"
Enter fullscreen mode Exit fullscreen mode

ขั้นตอนที่ 6 — ตั้งให้ตอบไทยเป็นค่าเริ่มต้นถาวร

บอก agent ครั้งเดียว มันจำตลอด:

คุณ: ตั้งแต่นี้ไปตอบเป็นภาษาไทยเสมอ ยกเว้นถ้าฉันถามเป็นภาษาอื่น
Agent: [บันทึกลง memory] เข้าใจแล้วครับ จะตอบเป็นภาษาไทยใน session หน้าทุกครั้ง
Enter fullscreen mode Exit fullscreen mode

Garudust บันทึกลง ~/.garudust/memory/ และโหลดขึ้นมาทุก session โดยอัตโนมัติ ไม่ต้องบอกซ้ำอีก


ตัวอย่างการใช้งานจริง

เขียนอีเมลธุรกิจภาษาไทย

garudust "เขียนอีเมลทางการถึงพาร์ทเนอร์ แจ้งว่าต้องการต่อสัญญา partnership อีก 1 ปี พร้อมเสนอเพิ่มงบ 15% และขอนัดประชุมสัปดาห์หน้า"
Enter fullscreen mode Exit fullscreen mode

สรุปเอกสาร PDF ภาษาไทย

garudust "อ่านไฟล์นี้แล้วสรุปประเด็นสำคัญเป็นภาษาไทย 5 ข้อ: /path/to/contract.pdf"
Enter fullscreen mode Exit fullscreen mode

Agent จะเรียก pdf_read tool โดยอัตโนมัติ แล้วสรุปเนื้อหาให้

เขียน template ตอบ LINE OA

garudust "เขียน template ตอบลูกค้าใน LINE OA สำหรับคำถามเรื่อง shipping 5 แบบ ให้เป็นภาษาไทยที่สุภาพและเป็นมิตร พร้อมระบุวันจัดส่งโดยประมาณ"
Enter fullscreen mode Exit fullscreen mode

สร้าง skill ภาษาไทยให้ใช้ซ้ำได้

คุณ: สร้าง skill สำหรับเขียนรายงานสรุปประจำสัปดาห์เป็นภาษาไทย พร้อม format หัวข้อ ผลงานที่ทำ ปัญหาที่พบ และแผนสัปดาห์หน้า
Agent: [เรียก write_skill]
       บันทึก skill 'weekly-report-th' ไปยัง ~/.garudust/skills/weekly-report-th/SKILL.md แล้ว
Enter fullscreen mode Exit fullscreen mode

ครั้งต่อไปแค่พิมพ์:

garudust "ใช้ skill weekly-report-th สรุปสัปดาห์นี้"
Enter fullscreen mode Exit fullscreen mode

ส่ง briefing ภาษาไทยทุกเช้า (Cron)

เพิ่มใน ~/.garudust/.env:

GARUDUST_CRON_JOBS="0 8 * * *=ค้นหาข่าวเศรษฐกิจและเทคโนโลยีไทยล่าสุด สรุปเป็นรายการ 5 ข้อ บันทึกลงไฟล์ ~/briefing-th.md"
Enter fullscreen mode Exit fullscreen mode

เปิด server:

garudust-server
Enter fullscreen mode Exit fullscreen mode

ทุกวันตี 8 โมงเช้า agent จะค้นหาข่าว สรุปเป็นภาษาไทย และบันทึกไฟล์ให้โดยอัตโนมัติ


เปลี่ยนเป็นโมเดลใหญ่เมื่อต้องการ

สำหรับงานที่ซับซ้อนกว่า เช่น วิเคราะห์สัญญา หรือ multi-step planning:

# เปลี่ยนชั่วคราวใน TUI
/model typhoon-v2.5-30b-a3b-instruct

# หรือเปลี่ยนถาวร
garudust config set model typhoon-v2.5-30b-a3b-instruct
Enter fullscreen mode Exit fullscreen mode

อย่าลืมอัปเดต context_window ใน config.yaml ด้วย:

model: typhoon-v2.5-30b-a3b-instruct
context_window: 32768
Enter fullscreen mode Exit fullscreen mode

แก้ปัญหาเบื้องต้น

อาการ สาเหตุ วิธีแก้
HTTP 401 Unauthorized API key ผิด ตรวจสอบ VLLM_API_KEY ใน ~/.garudust/.env
HTTP 429 Too Many Requests เกิน rate limit รอ ~1 นาที — Garudust retry อัตโนมัติ
Agent ตอบภาษาอังกฤษตลอด ยังไม่ได้ตั้ง memory บอกครั้งเดียว: "ตอบเป็นภาษาไทยเสมอ"
Agent ไม่เรียก tool โมเดลข้าม tool call ระบุชัดขึ้น: "ใช้ web_search หา..." หรือเปลี่ยนเป็น 30B
Context เกิน prompt ยาวเกินไป ลด context_window หรือเปิด compression

Config สรุปฉบับสมบูรณ์

# ~/.garudust/config.yaml

# --- LLM ---
provider: vllm
base_url: https://api.opentyphoon.ai/v1
model: typhoon-v2.1-12b-instruct    # หรือ typhoon-v2.5-30b-a3b-instruct

# --- Context ---
context_window: 8192                # 8192 สำหรับ 12B, 32768 สำหรับ 30B
compression:
  enabled: true
  threshold_fraction: 0.65

# --- Memory ---
nudge_interval: 5                   # บันทึก fact ทุก 5 iteration (0 = ปิด)
Enter fullscreen mode Exit fullscreen mode
# ~/.garudust/.env
VLLM_API_KEY=sk-ty-xxxxxxxxxxxxxxxxxxxxxxxxxxxx
Enter fullscreen mode Exit fullscreen mode

ลิงก์ที่เกี่ยวข้อง


Garudust + Typhoon = AI agent ที่รันบน hardware ของคุณเอง พูดภาษาไทยได้ดี และไม่ส่งข้อมูลออกนอกบ้านถ้าคุณ self-host Typhoon เอง

Top comments (0)