OmniRoute: The Ultimate Unified Open Source AI Gateway
สรุปย่อ
ประเด็นสำคัญจากวิดีโอ
- ช่อง: DevsKingdom · ความยาว: 10:15 นาที · ลิงก์: https://www.youtube.com/watch?v=zUfSvSnL5Yc
# สรุป: OmniRoute: The Ultimate Unified Open Source AI Gateway - ช่อง: DevsKingdom · ความยาว: 10:15 นาที · ลิงก์: https://www.youtube.com/watch?v=zUfSvSnL5Yc - OmniRoute คือ AI gateway แบบโอเพนซอร์สที่รวมผู้ให้บริการ AI ทั้งหมดไว้ในแพลตฟอร์มเดียว ใช้ endpoint เดียวกันเข้าถึงผู้ให้บริการทุกราย ทั้งแบบฟรีและเสียเงิน - โปรเจกต์มีดาว (stars) บน GitHub ราว 33,000 ดาว และอ้างว่าเป็น "free AI gateway" พร้อมระบบจัดเส้นทางอัตโนมัติด้วย 19 กลยุทธ์ และเป็น repository อันดับ 1 ของวัน - วิดีโอสอนติดตั้ง OmniRoute ทีละขั้นตอนบน Kaggle แบบฟรี 100% โดยไม่ต้องใช้ GPU หรือซื้อ virtual private machine - ขั้นตอนแรก: ติดตั้ง NPM สำหรับ Node.js (ต้องเป็นเวอร์ชันใหม่กว่า 24 ขึ้นไป เช่น 25) จากนั้นติดตั้งและเริ่มรัน Nginx - ตั้งค่า Nginx ให้ route ทราฟฟิกไปที่พอร์ต 2128 และพอร์ตสตรีมมิง (live socket port) ไปที่พอร์ต 2132 - บน Kaggle ต้องติดตั้ง local terminal เพื่อเปิดลิงก์สาธารณะ แล้วคัดลอก public URL ไปใส่ใน environment ของ OmniRoute ทั้ง next public base URL และ next public live web socket URL (ใช้ WSS) - เมื่อรันบน production ต้องเปลี่ยน initial password ก่อนล็อกอินเข้าสู่แพลตฟอร์ม - รัน npm run build เพื่อสร้าง production build (Kaggle ให้แรมฟรี 30 กิกะไบต์) แล้วเช็คว่า build ID พร้อม จากนั้นรัน npm run start เพื่อเปิดใช้งาน - เพิ่มผู้ให้บริการได้ที่ส่วน provider เช่น Llama, Grok, Kimiko, Amazon, Claude Code client, Tech Gravity, Minimax, GLN รวมราว 296 ผู้ให้บริการ - ทดสอบได้โดยระบุ model เป็น auto ระบบจะเลือกโมเดลให้อัตโนมัติ เช่น felo chat หรือ north mini code free หรือระบุโมเดลเจาะจงอย่าง Minimax M3 โดยต้องตั้งค่า prefix สำหรับโมเดลแบบกำหนดเอง - verdict: วิดีโอแนะนำโปรเจกต์ที่ใช้งานได้จริงและติดตั้งง่าย เหมาะกับคนที่อยากลองใช้ AI gateway รวมศูนย์ฟรีบน Kaggle โดยไม่ต้องเสียเงิน
คำแปลเต็ม
แปลตามบทสนทนาต้นฉบับ ปรับเป็นภาษาไทยธรรมชาติ
สวัสดีครับทุกคน ยินดีต้อนรับสู่วิดีโออีกคลิปหนึ่ง วันนี้ในบทช่วยสอน เราจะมาแนะนำโปรเจกต์ที่เจ๋งมาก ๆ ชื่อว่า OmniRoute ครับ ซึ่งเป็นแพลตฟอร์มรวมศูนย์สำหรับผู้ให้บริการ AI ทุกราย ถ้าคุณใช้ Claude, OpenAI, Llama หรือผู้ให้บริการรายอื่น ๆ นี่คือแพลตฟอร์มเดียวที่คุณเสียบเข้าไปแล้วใช้ endpoint (จุดเชื่อมต่อ) เดียวกันเพื่อเข้าถึงผู้ให้บริการทั้งหมดของคุณ ทั้งแบบฟรีและแบบเสียเงิน ฯลฯ
เป็นโปรเจกต์ที่ยอดเยี่ยม และคุณจะเห็นว่าตอนนี้มีดาว (stars) บน GitHub ราว 33,000 ดาวแล้ว ผู้คนชอบโปรเจกต์นี้มาก และในบทช่วยสอนวันนี้ เราจะมาโชว์วิธีใช้งานและวิธีติดตั้งทีละขั้นตอนบน Kaggle ซึ่งฟรี 100% ไม่มีเงื่อนไขแอบแฝง เอาล่ะ มาเริ่มกันเลยครับ
ถ้าดูที่ readme (ไฟล์คำอธิบายโปรเจกต์) จะเห็นว่ามีบทนำที่ค่อนข้างดีว่าโปรเจกต์นี้หน้าตาเป็นยังไง และมันอ้างว่าเป็น AI gateway ฟรี มันคือเกตเวย์ที่คุณมี endpoint เดียวสำหรับเสียบเข้าระบบของคุณ แล้วใช้ผู้ให้บริการทั้งหมดได้ โดยระบบจัดเส้นทาง (route) ให้อัตโนมัติ
และคุณจะเห็นว่าตามเอกสาร นี่คือโทเคนฟรีที่คุณประหยัดได้ต่อเดือน และยังเห็นว่ามันเป็น repository (คลังโค้ด) อันดับ 1 ของวันด้วย และยังมีวิธีการที่มันรองรับหลากหลาย มันบอกว่ามี 19 กลยุทธ์ นี่คือวิธีที่ระบบจัดเส้นทางการรับส่งข้อมูล (traffic) ไปยังผู้ให้บริการแต่ละรายโดยอัตโนมัติ ดูรายละเอียดในคำอธิบายได้ว่ามันจัดเส้นทางยังไง แต่ทุกอย่างควรทำงานอัตโนมัติ เป็นโปรเจกต์ที่ดีจริง ๆ ครับ
พอ clone (คัดลอก) โปรเจกต์นี้ได้แล้ว ผมจะโชว์วิธีติดตั้งทีละขั้นตอนให้ดู ซึ่งติดตั้งบน Kaggle เขามี GPU แต่กรณีนี้ไม่ต้องใช้ GPU ใช้ environment (สภาพแวดล้อม) CPU ทั่วไปได้เลย และอย่างแรกต้องติดตั้ง NPM สำหรับ Node.js ก่อน โดย Node.js ต้องเป็นเวอร์ชันที่ใหม่กว่า 24 ขึ้นไป ต้องค่อนข้างใหม่ ให้ติดตั้งเวอร์ชัน 25 ในกรณีนี้ก็ได้ แล้วเช็คเวอร์ชันให้แน่ใจ ซึ่งเวอร์ชันก็คือ 25
จากนั้นต้องติดตั้ง Nginx และเริ่มรัน Nginx จากนั้นก็เข้าไปที่โฟลเดอร์ OmniRoute หลังจาก clone แล้วรันคำสั่ง npm install ต่อมาเพราะอยู่บน Kaggle เราจำเป็นต้องมีเทอร์มินัล ให้ติดตั้ง local terminal ซึ่งเป็นวิธีที่ง่ายที่สุดในกรณีนี้ ต้องแน่ใจว่าได้ route ทุกอย่างไปที่ local file เพื่อให้ผมเช็คลิงก์ได้ นี่คือลิงก์ที่เราใช้ ชื่อ hotdog pick [ฟังไม่ชัด] แล้วก็ตั้งรหัสผ่านสำหรับเทอร์มินัลนี้
หลังจากนั้นก็ต้องตั้งค่า Nginx ซึ่งนี่คือ configuration (ไฟล์ตั้งค่า) ของ Nginx ที่เราใช้ ค่อนข้างตรงไปตรงมา ต้อง route ทราฟฟิกไปที่พอร์ต 2128 และ route พอร์ตสตรีมมิง ซึ่งก็คือ live socket port ไปที่พอร์ต 2132 เท่านั้นเอง
จากนั้นก็ตั้งค่า environment ของ OmniRoute ทุกอย่างควรใช้ค่า default แต่ต้องคัดลอก public URL ที่ตั้งไว้สำหรับ local terminal ไปใส่ในจุดต่าง ๆ ทั้ง next public base URL และ next public live web socket public URL ซึ่งต้องใช้ WSS สำหรับรายการนี้ จากนั้นก็ต้องตั้งค่าจุดอื่น ๆ ที่ใช้พอร์ต 2128 ด้วย หมายความว่ามีบางอย่างต้องเปลี่ยน นั่นคือรายการนี้พิเศษสำหรับ public terminal URL แล้วก็ต้องตั้งค่า next public special ด้วย เท่านี้ก็จบเรื่อง configuration ครับ
อีกอย่าง ถ้ารันบน production ให้เช็ครหัสผ่านเริ่มต้นด้วย เพราะคุณต้องล็อกอินเข้าผู้ให้บริการเทอร์มินัล นี่คือ initial password และคุณต้องเปลี่ยนมัน เมื่อโหลดโปรเจกต์แล้ว ให้คัดลอกรหัสผ่านนี้เพื่อล็อกอินเข้าสู่แพลตฟอร์ม
เอาล่ะ ผมตั้งค่าทุกอย่างเรียบร้อยแล้ว พอ configuration พร้อมหมด ก็เข้าไปที่โฟลเดอร์ omniroute ดั้งเดิม แล้วรันคำสั่ง npm run build มันต้องใช้หน่วยความจำพอสมควร ควรมีแรมสัก 10 หรือ 20 กิกะไบต์ ซึ่ง Kaggle ให้แรมฟรี 30 กิกะไบต์ ใช้ได้เลย รัน npm run build แล้วน่าจะได้ production build (เวอร์ชันสำหรับใช้งานจริง) สำเร็จ ต้องรัน build แบบ production บน Kaggle นะครับ เพราะ dev mode อาจมีปัญหา แล้วเช็คว่า build ID พร้อมหรือยัง จะเห็นว่า build ID พร้อมแล้ว แปลว่าการ build สำเร็จ
จากนั้นก็รันคำสั่ง npm run start ซึ่งนี่คือเหตุผลว่าทำไมต้องมี production build แล้วจะเห็นว่าทุกอย่างเริ่มทำงานขึ้น และเข้าถึง local terminal ได้ ซึ่งมันจะเปิดแบบสาธารณะให้ผมเห็นว่าทุกอย่างรันถูกต้อง
ถ้ามีผู้ให้บริการที่อยากตั้งค่า ก็ไปที่ส่วน provider แล้วเพิ่ม provider ได้เลย ในกรณีนี้เราเพิ่ม Llama เราสามารถเพิ่ม Grok หรือผู้ให้บริการอื่น ๆ ได้ นี่น่าจะเป็นวิธีทดสอบที่ง่ายที่สุด และเพิ่มได้เยอะมาก เพราะระบบมีผู้ให้บริการตั้งไว้แล้วเยอะ เห็นว่ามี Kimiko, Amazon, Claude Code client, Tech Gravity และยังมีแพลตฟอร์มอื่น ๆ อีก ใช้ API ของพวกเขาเชื่อมต่อได้เลย ซึ่งมันจะรวมผู้ให้บริการทั้งหมดนั้นเข้าด้วยกัน และจัดเส้นทางคำขอต่าง ๆ ไปยังผู้ให้บริการตามกรณีการใช้งานของคุณโดยอัตโนมัติ เจ๋งมากจริง ๆ ครับ
คุณไม่ต้องกังวลว่าต้องสลับไปใช้ผู้ให้บริการรายไหน OmniRoute ทำทุกอย่างให้คุณเอง แค่นั่งสบาย ๆ ก็พอ เป็นโปรเจกต์ที่ดีมาก เห็นจำนวน provider ที่ผมมีไหมครับ อันนี้มี Llama ไว้สาธิตเฉย ๆ คุณเพิ่ม provider ที่มีหรือที่ชอบได้ทั้งหมด คิดว่ามีราว 296 ผู้ให้บริการ เจ๋งมากครับ
ย้ำอีกทีว่าติดตั้งง่ายมาก และถ้าไม่มี provider ก็ไม่ต้องกังวล เพราะเขามี free models tiers (ระดับโมเดลฟรี) ไปที่ v1/models แล้วดูผู้ให้บริการต่าง ๆ ที่ผสานรวมไว้แล้วได้เลย และที่น่าสนใจก็คือมี Sidance v03.1 ด้วย เจ๋งมาก และยังมีผู้ให้บริการอื่น ๆ รวมถึง Minimax และ GLN ด้วย เป็นโปรเจกต์ที่ยอดเยี่ยมมากครับ
ลองใช้ได้ฟรี 100% บน Kaggle ไม่ต้องซื้อ virtual private machine (เครื่องเสมือนส่วนตัว) ด้วยซ้ำ มาลองทดสอบกันดู หลังทุกอย่างรันขึ้นแล้ว ก็ลองใช้ตัวอย่างที่ให้ไว้ใน readme เช่น ถ้าระบุ model (โมเดล) เป็น auto ซึ่งนี่คือ URL ที่เราเปิดขึ้นมาด้วย local terminal เป็นตัวอย่าง ถ้าเลือก auto แล้วสั่งให้พูดทักทายเป็นประโยคสั้น ๆ ประโยคเดียว ก็ดูคำตอบได้เลย ระบบจะเลือกโมเดลขึ้นมาหนึ่งตัว เช่นอาจสุ่มเลือกโมเดล เรามีของ Minimax อยู่ตัวหนึ่ง และอาจเลือกตัวอื่น ๆ ที่อยู่ในรายการก็ได้ รอสักครู่ จะเห็นว่าระบบเลือกโมเดลเป็น felo chat มาดูเนื้อหาคำตอบกัน คำตอบโอเค แต่ไม่ได้ตอบตรงตามที่เราพิมพ์เป๊ะ เขามีเครื่องหมายตกใจ (exclamation mark) เพิ่มเข้ามา แต่ผมเลือกโมเดลอัตโนมัตินะ ลองอีกครั้งแล้วลองตัวอื่นดู
มันอัตโนมัติมาก บางครั้งระบบเลือกโมเดลอย่าง north mini code free บางครั้งก็เลือกตัวอื่น และถ้าคุณระบุโมเดล เช่น Minimax M3 ระบบก็จะใช้โมเดลที่คุณเลือกนั้นโดยเฉพาะ ถ้าอยากตั้งค่าโมเดลแบบกำหนดเอง อาจต้องตั้งค่า prefix (คำนำหน้า) ของชื่อด้วย ที่ผมหมายถึงคือระบบใช้ทั้งชื่อและ prefix เมื่อใช้โมเดลแบบกำหนดเอง จำเป็นต้องมี prefix เช่น ถ้าอยากใช้ Llama หรือ Minimax M3 ก็ระบุ prefix แล้วตามด้วยชื่อโมเดล เท่านั้นเอง ลองตัวนี้ดู ขอโชว์ให้เห็นว่ามันหน้าตาเป็นยังไง รัน Minimax 3 แล้วลองดู จะเห็นว่า Minimax 3 ก็ตอบกลับมาด้วยประโยคทักทาย ขอให้มีวันที่ดีเช่นกัน นั่นแหละครับ
นี่คือวิธีติดตั้งและใช้งาน OmniRoute หวังว่าจะเป็นประโยชน์นะครับ ถ้าชอบวิดีโอนี้ ช่วย subscribe, like หรือคอมเมนต์ได้ถ้ามีคำถาม ขอบคุณมากที่สนับสนุนช่อง แล้วเจอกันวิดีโอหน้า ครับ
หมายเหตุการแปล
ความโปร่งใสเกี่ยวกับความไม่แน่นอนในต้นฉบับ
- ## จุดที่ฟังไม่ชัด ([ฟังไม่ชัด])
- 1. ชื่อลิงก์เทอร์มินัล "hotdog pick" (ช่วงแนะนำ local terminal บน Kaggle) — คำบรรยายอัตโนมัติถอดเป็น "a hotdog pick" ไม่ชัดเจนว่าคือชื่อบริการ/โดเมนอะไร ระบุเป็น "[ฟังไม่ชัด]" ในการแปล
อภิธานศัพท์เทคนิค
คำศัพท์และชื่อผลิตภัณฑ์ที่คงรูปภาษาอังกฤษ
| ศัพท์ | คำแปล / คำอธิบาย |
|---|---|
| OmniRoute | ชื่อโปรเจกต์ AI gateway แบบโอเพนซอร์ส (คงชื่อภาษาอังกฤษ) |
| AI gateway | ประตูเชื่อมต่อ AI — ตัวกลางที่รวมผู้ให้บริการ AI หลายรายไว้ที่ endpoint เดียว |
| provider | ผู้ให้บริการ AI (เช่น OpenAI, Llama) |
| endpoint | จุดเชื่อมต่อปลายทางที่ใช้เรียกใช้งาน API |
| OpenAI | ผู้ให้บริการโมเดล AI (คงชื่อภาษาอังกฤษ) |
| Claude | โมเดล AI จาก Anthropic (คงชื่อภาษาอังกฤษ) |
| Llama | โมเดล AI โอเพนซอร์สจาก Meta (คงชื่อภาษาอังกฤษ) |
| Kaggle | แพลตฟอร์มสำหรับทำ data science ที่มี resource ฟรี (คงชื่อภาษาอังกฤษ) |
| GitHub stars | ดาว/คะแนนชื่นชอบบน GitHub ที่แสดงความนิยมของโปรเจกต์ |
| readme | ไฟล์คำอธิบายโปรเจกต์ที่มากับ repository |
| repository | คลังโค้ด/ที่เก็บซอร์สโค้ดของโปรเจกต์ |
| strategies | กลยุทธ์ — วิธีที่ระบบจัดเส้นทางทราฟฟิกไปยังผู้ให้บริการ |
| traffic | การรับส่งข้อมูล/คำขอที่ส่งไปยังผู้ให้บริการ |
| route | จัดเส้นทาง — ส่งคำขอไปยังผู้ให้บริการเป้าหมาย |
| clone | คัดลอก repository มาไว้ในเครื่อง |
| NPM | package manager ของ Node.js (คงชื่อภาษาอังกฤษ) |
| Node.js | รันไทม์สำหรับรัน JavaScript ฝั่งเซิร์ฟเวอร์ (คงชื่อภาษาอังกฤษ) |
| Nginx | เว็บเซิร์ฟเวอร์/ตัว reverse proxy (คงชื่อภาษาอังกฤษ) |
| local terminal | เทอร์มินัลเฉพาะที่เปิดลิงก์สาธารณะบน Kaggle |
| configuration | ไฟล์ตั้งค่า/การกำหนดค่า |
| port | พอร์ต — ช่องทางสื่อสารของเซิร์ฟเวอร์ |
| streaming port | พอร์ตสำหรับสตรีมมิงข้อมูล |
| live socket port | พอร์ตสำหรับเชื่อมต่อแบบ live socket (WebSocket) |
| environment | ตัวแปรสภาพแวดล้อม/ค่าตั้งค่าของระบบ |
| public URL | ลิงก์สาธารณะที่เข้าถึงได้จากภายนอก |
| next public base URL | ตัวแปร environment ที่กำหนด URL พื้นฐานของแอป |
| WSS | WebSocket Secure — โปรโตคอล WebSocket แบบเข้ารหัส |
| initial password | รหัสผ่านเริ่มต้นที่ต้องเปลี่ยนก่อนใช้งาน |
| production build | เวอร์ชัน build สำหรับใช้งานจริง |
| build ID | รหัสระบุผลการ build ที่แสดงว่าสำเร็จ |
| dev mode | โหมดพัฒนาโปรเจกต์ (ต่างจาก production) |
| npm install / npm run build / npm run start | คำสั่งติดตั้ง dependencies, สร้าง build และเริ่มรันโปรเจกต์ |
| provider section | ส่วน/เมนูสำหรับจัดการผู้ให้บริการในแอป |
| Grok | โมเดล AI จาก xAI (คงชื่อภาษาอังกฤษ) |
| Kimiko | ชื่อผู้ให้บริการ AI ที่ผสานรวมใน OmniRoute (คงชื่อภาษาอังกฤษ) |
| Amazon | ผู้ให้บริการ AI จาก Amazon (คงชื่อภาษาอังกฤษ) |
| Claude Code client | เครื่องมือ/ผู้ให้บริการที่เชื่อมกับ Claude Code (คงชื่อภาษาอังกฤษ) |
| Tech Gravity | ชื่อผู้ให้บริการ AI ที่ผสานรวมใน OmniRoute (คงชื่อภาษาอังกฤษ) |
| Minimax | ผู้ให้บริการโมเดล AI (คงชื่อภาษาอังกฤษ) |
| GLN | ชื่อผู้ให้บริการโมเดล AI ที่ผสานรวมใน OmniRoute (คงชื่อภาษาอังกฤษ) |
| API | ชุดคำสั่ง/อินเทอร์เฟซสำหรับเชื่อมต่อกับบริการ (Application Programming Interface) |
| v1/models | endpoint สำหรับดูรายชื่อโมเดลและผู้ให้บริการที่พร้อมใช้ |
| free models tiers | ระดับ/แพ็กเกจโมเดลฟรีที่ใช้ได้โดยไม่ต้องมี provider |
| auto | โหมดที่ให้ระบบเลือกโมเดลให้อัตโนมัติ |
| felo chat | ชื่อโมเดลที่ระบบเลือกแบบอัตโนมัติ (คงชื่อภาษาอังกฤษ) |
| north mini code free | ชื่อโมเดลที่ระบบเลือกแบบอัตโนมัติ (คงชื่อภาษาอังกฤษ) |
| Minimax M3 | โมเดลเจาะจงจาก Minimax (คงชื่อภาษาอังกฤษ) |
| prefix | คำนำหน้า (ของชื่อโมเดล) ที่ใช้ระบุโมเดลแบบกำหนดเอง |
| virtual private machine | เครื่องเสมือนส่วนตัวที่ต้องเช่า/ซื้อ (VPS) |
| Sidance v03.1 | ชื่อผู้ให้บริการ/โมเดลที่ฟังไม่ชัดเจนในวิดีโอ (คงตามคำบรรยายต้นฉบับ) |
ซับไตเติ้ลภาษาไทย
ดาวน์โหลดหรือดูซับทั้งหมด
1 00:00:00,000 --> 00:00:01,545 สวัสดีครับทุกคน 2 00:00:01,545 --> 00:00:04,944 ยินดีต้อนรับสู่วิดีโออีกคลิปหนึ่ง 3 00:00:04,944 --> 00:00:06,695 วันนี้ในบทช่วยสอน 4 00:00:06,695 --> 00:00:09,991 เราจะมาแนะนำโปรเจกต์ที่เจ๋งมาก ๆ
เปิดดูซับไตเติ้ลทั้งหมด (160 segments)
1 00:00:00,000 --> 00:00:01,545 สวัสดีครับทุกคน 2 00:00:01,545 --> 00:00:04,944 ยินดีต้อนรับสู่วิดีโออีกคลิปหนึ่ง 3 00:00:04,944 --> 00:00:06,695 วันนี้ในบทช่วยสอน 4 00:00:06,695 --> 00:00:09,991 เราจะมาแนะนำโปรเจกต์ที่เจ๋งมาก ๆ 5 00:00:09,991 --> 00:00:19,672 ชื่อว่า OmniRoute ครับ ซึ่งเป็นแพลตฟอร์มรวมศูนย์สำหรับผู้ให้บริการ AI ทุกราย ถ้าคุณใช้ Claude, 6 00:00:19,672 --> 00:00:23,689 OpenAI, Llama หรือผู้ให้บริการรายอื่น ๆ 7 00:00:23,689 --> 00:00:28,221 นี่คือแพลตฟอร์มเดียวที่คุณเสียบเข้าไปแล้วใช้ 8 00:00:28,221 --> 00:00:30,590 endpoint (จุดเชื่อมต่อ) 9 00:00:30,590 --> 00:00:35,224 เดียวกันเพื่อเข้าถึงผู้ให้บริการทั้งหมดของคุณ 10 00:00:35,224 --> 00:00:38,108 ทั้งแบบฟรีและแบบเสียเงิน ฯลฯ 11 00:00:38,108 --> 00:00:40,580 เป็นโปรเจกต์ที่ยอดเยี่ยม 12 00:00:40,580 --> 00:00:45,112 และคุณจะเห็นว่าตอนนี้มีดาว (stars) บน GitHub 13 00:00:45,112 --> 00:00:49,335 ราว 33,000 ดาวแล้ว ผู้คนชอบโปรเจกต์นี้มาก 14 00:00:49,335 --> 00:00:51,394 และในบทช่วยสอนวันนี้ 15 00:00:51,394 --> 00:00:56,338 เราจะมาโชว์วิธีใช้งานและวิธีติดตั้งทีละขั้นตอนบน 16 00:00:56,338 --> 00:01:01,076 Kaggle ซึ่งฟรี 100% ไม่มีเงื่อนไขแอบแฝง เอาล่ะ 17 00:01:01,076 --> 00:01:04,475 มาเริ่มกันเลยครับ ถ้าดูที่ readme 18 00:01:04,475 --> 00:01:06,741 (ไฟล์คำอธิบายโปรเจกต์) 19 00:01:06,741 --> 00:01:12,611 จะเห็นว่ามีบทนำที่ค่อนข้างดีว่าโปรเจกต์นี้หน้าตาเป็นยังไง 20 00:01:12,611 --> 00:01:15,907 และมันอ้างว่าเป็น AI gateway ฟรี 21 00:01:15,907 --> 00:01:18,997 มันคือเกตเวย์ที่คุณมี endpoint 22 00:01:18,997 --> 00:01:22,087 เดียวสำหรับเสียบเข้าระบบของคุณ 23 00:01:22,087 --> 00:01:25,074 แล้วใช้ผู้ให้บริการทั้งหมดได้ 24 00:01:25,074 --> 00:01:28,988 โดยระบบจัดเส้นทาง (route) ให้อัตโนมัติ 25 00:01:28,988 --> 00:01:31,460 และคุณจะเห็นว่าตามเอกสาร 26 00:01:31,460 --> 00:01:35,373 นี่คือโทเคนฟรีที่คุณประหยัดได้ต่อเดือน 27 00:01:35,373 --> 00:01:39,699 และยังเห็นว่ามันเป็น repository (คลังโค้ด) 28 00:01:39,699 --> 00:01:41,656 อันดับ 1 ของวันด้วย 29 00:01:41,656 --> 00:01:45,261 และยังมีวิธีการที่มันรองรับหลากหลาย 30 00:01:45,261 --> 00:01:47,527 มันบอกว่ามี 19 กลยุทธ์ 31 00:01:47,527 --> 00:01:51,853 นี่คือวิธีที่ระบบจัดเส้นทางการรับส่งข้อมูล 32 00:01:51,853 --> 00:01:52,951 (traffic) 33 00:01:52,951 --> 00:01:56,762 ไปยังผู้ให้บริการแต่ละรายโดยอัตโนมัติ 34 00:01:56,762 --> 00:02:01,500 ดูรายละเอียดในคำอธิบายได้ว่ามันจัดเส้นทางยังไง 35 00:02:01,500 --> 00:02:04,383 แต่ทุกอย่างควรทำงานอัตโนมัติ 36 00:02:04,383 --> 00:02:09,121 เป็นโปรเจกต์ที่ดีจริง ๆ ครับ พอ clone (คัดลอก) 37 00:02:09,121 --> 00:02:10,975 โปรเจกต์นี้ได้แล้ว 38 00:02:10,975 --> 00:02:14,580 ผมจะโชว์วิธีติดตั้งทีละขั้นตอนให้ดู 39 00:02:14,580 --> 00:02:17,670 ซึ่งติดตั้งบน Kaggle เขามี GPU 40 00:02:17,670 --> 00:02:21,790 แต่กรณีนี้ไม่ต้องใช้ GPU ใช้ environment 41 00:02:21,790 --> 00:02:24,879 (สภาพแวดล้อม) CPU ทั่วไปได้เลย 42 00:02:24,879 --> 00:02:29,617 และอย่างแรกต้องติดตั้ง NPM สำหรับ Node.js ก่อน 43 00:02:29,617 --> 00:02:33,943 โดย Node.js ต้องเป็นเวอร์ชันที่ใหม่กว่า 24 44 00:02:33,943 --> 00:02:38,578 ขึ้นไป ต้องค่อนข้างใหม่ ให้ติดตั้งเวอร์ชัน 25 45 00:02:38,578 --> 00:02:42,595 ในกรณีนี้ก็ได้ แล้วเช็คเวอร์ชันให้แน่ใจ 46 00:02:42,595 --> 00:02:47,229 ซึ่งเวอร์ชันก็คือ 25 จากนั้นต้องติดตั้ง Nginx 47 00:02:47,229 --> 00:02:51,761 และเริ่มรัน Nginx จากนั้นก็เข้าไปที่โฟลเดอร์ 48 00:02:51,761 --> 00:02:55,984 OmniRoute หลังจาก clone แล้วรันคำสั่ง npm 49 00:02:55,984 --> 00:02:59,177 install ต่อมาเพราะอยู่บน Kaggle 50 00:02:59,177 --> 00:03:03,503 เราจำเป็นต้องมีเทอร์มินัล ให้ติดตั้ง local 51 00:03:03,503 --> 00:03:07,931 terminal ซึ่งเป็นวิธีที่ง่ายที่สุดในกรณีนี้ 52 00:03:07,931 --> 00:03:12,669 ต้องแน่ใจว่าได้ route ทุกอย่างไปที่ local file 53 00:03:12,669 --> 00:03:17,098 เพื่อให้ผมเช็คลิงก์ได้ นี่คือลิงก์ที่เราใช้ 54 00:03:17,098 --> 00:03:19,982 ชื่อ hotdog pick [ฟังไม่ชัด] 55 00:03:19,982 --> 00:03:23,793 แล้วก็ตั้งรหัสผ่านสำหรับเทอร์มินัลนี้ 56 00:03:23,793 --> 00:03:28,015 หลังจากนั้นก็ต้องตั้งค่า Nginx ซึ่งนี่คือ 57 00:03:28,015 --> 00:03:31,826 configuration (ไฟล์ตั้งค่า) ของ Nginx 58 00:03:31,826 --> 00:03:35,843 ที่เราใช้ ค่อนข้างตรงไปตรงมา ต้อง route 59 00:03:35,843 --> 00:03:40,581 ทราฟฟิกไปที่พอร์ต 2128 และ route พอร์ตสตรีมมิง 60 00:03:40,581 --> 00:03:44,907 ซึ่งก็คือ live socket port ไปที่พอร์ต 2132 61 00:03:44,907 --> 00:03:49,438 เท่านั้นเอง จากนั้นก็ตั้งค่า environment ของ 62 00:03:49,438 --> 00:03:53,043 OmniRoute ทุกอย่างควรใช้ค่า default 63 00:03:53,043 --> 00:03:57,266 แต่ต้องคัดลอก public URL ที่ตั้งไว้สำหรับ 64 00:03:57,266 --> 00:04:01,489 local terminal ไปใส่ในจุดต่าง ๆ ทั้ง next 65 00:04:01,489 --> 00:04:05,609 public base URL และ next public live web 66 00:04:05,609 --> 00:04:09,007 socket public URL ซึ่งต้องใช้ WSS 67 00:04:09,007 --> 00:04:13,642 สำหรับรายการนี้ จากนั้นก็ต้องตั้งค่าจุดอื่น ๆ 68 00:04:13,642 --> 00:04:15,805 ที่ใช้พอร์ต 2128 ด้วย 69 00:04:15,805 --> 00:04:19,101 หมายความว่ามีบางอย่างต้องเปลี่ยน 70 00:04:19,101 --> 00:04:23,530 นั่นคือรายการนี้พิเศษสำหรับ public terminal 71 00:04:23,530 --> 00:04:28,267 URL แล้วก็ต้องตั้งค่า next public special ด้วย 72 00:04:28,267 --> 00:04:32,902 เท่านี้ก็จบเรื่อง configuration ครับ อีกอย่าง 73 00:04:32,902 --> 00:04:34,859 ถ้ารันบน production 74 00:04:34,859 --> 00:04:37,640 ให้เช็ครหัสผ่านเริ่มต้นด้วย 75 00:04:37,640 --> 00:04:42,275 เพราะคุณต้องล็อกอินเข้าผู้ให้บริการเทอร์มินัล 76 00:04:42,275 --> 00:04:46,807 นี่คือ initial password และคุณต้องเปลี่ยนมัน 77 00:04:46,807 --> 00:04:48,969 เมื่อโหลดโปรเจกต์แล้ว 78 00:04:48,969 --> 00:04:53,913 ให้คัดลอกรหัสผ่านนี้เพื่อล็อกอินเข้าสู่แพลตฟอร์ม 79 00:04:53,913 --> 00:04:58,033 เอาล่ะ ผมตั้งค่าทุกอย่างเรียบร้อยแล้ว พอ 80 00:04:58,033 --> 00:05:02,359 configuration พร้อมหมด ก็เข้าไปที่โฟลเดอร์ 81 00:05:02,359 --> 00:05:07,097 omniroute ดั้งเดิม แล้วรันคำสั่ง npm run build 82 00:05:07,097 --> 00:05:11,525 มันต้องใช้หน่วยความจำพอสมควร ควรมีแรมสัก 10 83 00:05:11,525 --> 00:05:15,748 หรือ 20 กิกะไบต์ ซึ่ง Kaggle ให้แรมฟรี 30 84 00:05:15,748 --> 00:05:19,456 กิกะไบต์ ใช้ได้เลย รัน npm run build 85 00:05:19,456 --> 00:05:22,443 แล้วน่าจะได้ production build 86 00:05:22,443 --> 00:05:26,666 (เวอร์ชันสำหรับใช้งานจริง) สำเร็จ ต้องรัน 87 00:05:26,666 --> 00:05:31,094 build แบบ production บน Kaggle นะครับ เพราะ 88 00:05:31,094 --> 00:05:35,214 dev mode อาจมีปัญหา แล้วเช็คว่า build ID 89 00:05:35,214 --> 00:05:39,437 พร้อมหรือยัง จะเห็นว่า build ID พร้อมแล้ว 90 00:05:39,437 --> 00:05:44,072 แปลว่าการ build สำเร็จ จากนั้นก็รันคำสั่ง npm 91 00:05:44,072 --> 00:05:48,089 run start ซึ่งนี่คือเหตุผลว่าทำไมต้องมี 92 00:05:48,089 --> 00:05:49,736 production build 93 00:05:49,736 --> 00:05:54,474 แล้วจะเห็นว่าทุกอย่างเริ่มทำงานขึ้น และเข้าถึง 94 00:05:54,474 --> 00:05:56,328 local terminal ได้ 95 00:05:56,328 --> 00:06:01,787 ซึ่งมันจะเปิดแบบสาธารณะให้ผมเห็นว่าทุกอย่างรันถูกต้อง 96 00:06:01,787 --> 00:06:06,216 ถ้ามีผู้ให้บริการที่อยากตั้งค่า ก็ไปที่ส่วน 97 00:06:06,216 --> 00:06:09,717 provider แล้วเพิ่ม provider ได้เลย 98 00:06:09,717 --> 00:06:14,146 ในกรณีนี้เราเพิ่ม Llama เราสามารถเพิ่ม Grok 99 00:06:14,146 --> 00:06:16,824 หรือผู้ให้บริการอื่น ๆ ได้ 100 00:06:16,824 --> 00:06:20,326 นี่น่าจะเป็นวิธีทดสอบที่ง่ายที่สุด 101 00:06:20,326 --> 00:06:22,180 และเพิ่มได้เยอะมาก 102 00:06:22,180 --> 00:06:26,094 เพราะระบบมีผู้ให้บริการตั้งไว้แล้วเยอะ 103 00:06:26,094 --> 00:06:30,728 เห็นว่ามี Kimiko, Amazon, Claude Code client, 104 00:06:30,728 --> 00:06:35,260 Tech Gravity และยังมีแพลตฟอร์มอื่น ๆ อีก ใช้ 105 00:06:35,260 --> 00:06:38,144 API ของพวกเขาเชื่อมต่อได้เลย 106 00:06:38,144 --> 00:06:42,882 ซึ่งมันจะรวมผู้ให้บริการทั้งหมดนั้นเข้าด้วยกัน 107 00:06:42,882 --> 00:06:45,251 และจัดเส้นทางคำขอต่าง ๆ 108 00:06:45,251 --> 00:06:51,945 ไปยังผู้ให้บริการตามกรณีการใช้งานของคุณโดยอัตโนมัติ เจ๋งมากจริง ๆ 109 00:06:51,945 --> 00:06:53,044 ครับ 110 00:06:53,044 --> 00:06:58,091 คุณไม่ต้องกังวลว่าต้องสลับไปใช้ผู้ให้บริการรายไหน 111 00:06:58,091 --> 00:07:02,519 OmniRoute ทำทุกอย่างให้คุณเอง แค่นั่งสบาย ๆ 112 00:07:02,519 --> 00:07:11,583 ก็พอ เป็นโปรเจกต์ที่ดีมาก เห็นจำนวน provider ที่ผมมีไหมครับ อันนี้มี Llama ไว้สาธิตเฉย ๆ 113 00:07:11,583 --> 00:07:16,012 คุณเพิ่ม provider ที่มีหรือที่ชอบได้ทั้งหมด 114 00:07:16,012 --> 00:07:20,132 คิดว่ามีราว 296 ผู้ให้บริการ เจ๋งมากครับ 115 00:07:20,132 --> 00:07:24,869 ย้ำอีกทีว่าติดตั้งง่ายมาก และถ้าไม่มี provider 116 00:07:24,869 --> 00:07:29,298 ก็ไม่ต้องกังวล เพราะเขามี free models tiers 117 00:07:29,298 --> 00:07:32,491 (ระดับโมเดลฟรี) ไปที่ v1/models 118 00:07:32,491 --> 00:07:34,963 แล้วดูผู้ให้บริการต่าง ๆ 119 00:07:34,963 --> 00:07:39,495 ที่ผสานรวมไว้แล้วได้เลย และที่น่าสนใจก็คือมี 120 00:07:39,495 --> 00:07:42,172 Sidance v03.1 ด้วย เจ๋งมาก 121 00:07:42,172 --> 00:07:46,807 และยังมีผู้ให้บริการอื่น ๆ รวมถึง Minimax และ 122 00:07:46,807 --> 00:07:50,927 GLN ด้วย เป็นโปรเจกต์ที่ยอดเยี่ยมมากครับ 123 00:07:50,927 --> 00:07:54,944 ลองใช้ได้ฟรี 100% บน Kaggle ไม่ต้องซื้อ 124 00:07:54,944 --> 00:07:59,682 virtual private machine (เครื่องเสมือนส่วนตัว) 125 00:07:59,682 --> 00:08:02,050 ด้วยซ้ำ มาลองทดสอบกันดู 126 00:08:02,050 --> 00:08:04,419 หลังทุกอย่างรันขึ้นแล้ว 127 00:08:04,419 --> 00:08:08,436 ก็ลองใช้ตัวอย่างที่ให้ไว้ใน readme เช่น 128 00:08:08,436 --> 00:08:13,174 ถ้าระบุ model (โมเดล) เป็น auto ซึ่งนี่คือ URL 129 00:08:13,174 --> 00:08:16,779 ที่เราเปิดขึ้นมาด้วย local terminal 130 00:08:16,779 --> 00:08:19,457 เป็นตัวอย่าง ถ้าเลือก auto 131 00:08:19,457 --> 00:08:23,164 แล้วสั่งให้พูดทักทายเป็นประโยคสั้น ๆ 132 00:08:23,164 --> 00:08:25,945 ประโยคเดียว ก็ดูคำตอบได้เลย 133 00:08:25,945 --> 00:08:29,035 ระบบจะเลือกโมเดลขึ้นมาหนึ่งตัว 134 00:08:29,035 --> 00:08:32,949 เช่นอาจสุ่มเลือกโมเดล เรามีของ Minimax 135 00:08:32,949 --> 00:08:36,348 อยู่ตัวหนึ่ง และอาจเลือกตัวอื่น ๆ 136 00:08:36,348 --> 00:08:39,438 ที่อยู่ในรายการก็ได้ รอสักครู่ 137 00:08:39,438 --> 00:08:43,248 จะเห็นว่าระบบเลือกโมเดลเป็น felo chat 138 00:08:43,248 --> 00:08:46,235 มาดูเนื้อหาคำตอบกัน คำตอบโอเค 139 00:08:46,235 --> 00:08:49,634 แต่ไม่ได้ตอบตรงตามที่เราพิมพ์เป๊ะ 140 00:08:49,634 --> 00:08:53,651 เขามีเครื่องหมายตกใจ (exclamation mark) 141 00:08:53,651 --> 00:08:57,565 เพิ่มเข้ามา แต่ผมเลือกโมเดลอัตโนมัตินะ 142 00:08:57,565 --> 00:09:01,994 ลองอีกครั้งแล้วลองตัวอื่นดู มันอัตโนมัติมาก 143 00:09:01,994 --> 00:09:06,422 บางครั้งระบบเลือกโมเดลอย่าง north mini code 144 00:09:06,422 --> 00:09:11,160 free บางครั้งก็เลือกตัวอื่น และถ้าคุณระบุโมเดล 145 00:09:11,160 --> 00:09:12,705 เช่น Minimax M3 146 00:09:12,705 --> 00:09:16,722 ระบบก็จะใช้โมเดลที่คุณเลือกนั้นโดยเฉพาะ 147 00:09:16,722 --> 00:09:21,357 ถ้าอยากตั้งค่าโมเดลแบบกำหนดเอง อาจต้องตั้งค่า 148 00:09:21,357 --> 00:09:24,343 prefix (คำนำหน้า) ของชื่อด้วย 149 00:09:24,343 --> 00:09:28,463 ที่ผมหมายถึงคือระบบใช้ทั้งชื่อและ prefix 150 00:09:28,463 --> 00:09:32,995 เมื่อใช้โมเดลแบบกำหนดเอง จำเป็นต้องมี prefix 151 00:09:32,995 --> 00:09:37,527 เช่น ถ้าอยากใช้ Llama หรือ Minimax M3 ก็ระบุ 152 00:09:37,527 --> 00:09:41,544 prefix แล้วตามด้วยชื่อโมเดล เท่านั้นเอง 153 00:09:41,544 --> 00:09:46,281 ลองตัวนี้ดู ขอโชว์ให้เห็นว่ามันหน้าตาเป็นยังไง 154 00:09:46,281 --> 00:09:50,710 รัน Minimax 3 แล้วลองดู จะเห็นว่า Minimax 3 155 00:09:50,710 --> 00:09:53,491 ก็ตอบกลับมาด้วยประโยคทักทาย 156 00:09:53,491 --> 00:09:57,096 ขอให้มีวันที่ดีเช่นกัน นั่นแหละครับ 157 00:09:57,096 --> 00:10:00,804 นี่คือวิธีติดตั้งและใช้งาน OmniRoute 158 00:10:00,804 --> 00:10:05,232 หวังว่าจะเป็นประโยชน์นะครับ ถ้าชอบวิดีโอนี้ 159 00:10:05,232 --> 00:10:06,777 ช่วย subscribe, 160 00:10:06,777 --> 00:10:15,120 like หรือคอมเมนต์ได้ถ้ามีคำถาม ขอบคุณมากที่สนับสนุนช่อง แล้วเจอกันวิดีโอหน้า ครับ