Needle - โมเดล 26 ล้านพารามิเตอร์ที่กลั่นการเรียกใช้เครื่องมือของ Gemini
(github.com/cactus-compute)- Needle เป็นโมเดลทดลองที่กลั่นจาก Gemini 3.1 มาเป็น Simple Attention Network ขนาด 26 ล้านพารามิเตอร์ และสามารถทำโลคัลไฟน์จูนบน Mac/PC ได้
- เป้าหมายคือการนิยามใหม่ของ AI ขนาดเล็กสำหรับใช้งานบน อุปกรณ์ผู้บริโภค เช่น โทรศัพท์ นาฬิกา และแว่นตา โดยโฟกัสที่การเรียกใช้เครื่องมือแบบรันครั้งเดียวสำหรับ AI ส่วนบุคคล
- ในโปรดักชัน โมเดลทำงานอยู่บน Cactus และทำความเร็วได้ prefill 6000 toks/sec, decode 1200
- เวตถูกเปิดสู่สาธารณะทั้งหมดที่ Cactus-Compute/needle และมีการเปิดเผยขั้นตอน การสร้างชุดข้อมูล มาพร้อมกัน
- การพรีเทรนทำบน 16 TPU v6e ด้วยโทเค็น 200B เป็นเวลา 27 ชั่วโมง และการเทรนต่อภายหลังใช้เวลา 45 นาทีด้วยชุดข้อมูลการเรียกฟังก์ชันแบบรันครั้งเดียวขนาด 2B โทเค็น
- สำหรับการเรียกฟังก์ชันแบบรันครั้งเดียว มีการระบุว่าทำได้ดีกว่า FunctionGemma-270m, Qwen-0.6B, Graninte-350m, LFM2.5-350m แต่โมเดลเหล่านั้นมีขอบเขตและขนาดที่กว้างกว่า และเด่นกว่าในสภาพแวดล้อมแบบสนทนา
- โมเดลขนาดเล็กอาจใช้งานได้ยาก จึงแนะนำเวิร์กโฟลว์ให้ทดสอบด้วยเครื่องมือของตนเองผ่าน เว็บ UI ที่ให้มา และทำการไฟน์จูนแบบปรับแต่งเองได้ด้วยการคลิกปุ่ม
needle playgroundจะเปิดเว็บ UI ที่http://127.0.0.1:7860โดยจะดาวน์โหลดเวตให้อัตโนมัติเพื่อใช้ทดสอบและไฟน์จูน- หากใช้ Python สามารถใส่คำค้นและสคีมาเครื่องมือผ่าน
SimpleAttentionNetwork,load_checkpoint,generate,get_tokenizerเพื่อสร้าง JSON การเรียกใช้เครื่องมือ อย่างget_weatherได้ - CLI มี
playground,finetune,run,train,pretrain,eval,tokenize,generate-data,tpuสำหรับงานอนุมาน การเทรน การประเมิน การสร้างข้อมูล และการจัดการ TPU - การตั้งค่าโมเดลคือ
d=512,8H/4KV,BPE=8192และใช้เอนโค้ดเดอร์ 12 ชั้นกับดีโค้ดเดอร์ 8 ชั้น พร้อม GQA+RoPE, cross attention, gated residual, tied linear, shared embedding
1 ความคิดเห็น
ความเห็นจาก Hacker News
สงสัยว่ามีตัวอย่างหรือข้อมูลเกี่ยวกับความสามารถในการแยกแยะของโมเดลที่ใช้เครื่องมือไหม
ตัวอย่างเช่น “อากาศที่ซานฟรานซิสโกเป็นยังไง” และเครื่องมือที่ส่งให้ก็ประมาณ
tools='[{"name":"get_weather","parameters":{"location":"string"}}]'เมื่อกว่า 10 ปีก่อนเคยสร้างสิ่ง[1]ที่จัดการปัญหาแบบนี้ด้วย SPARQL และ knowledge graph
สิ่งที่อยากรู้จริง ๆ คือมันจัดการกับความกำกวมได้ดีแค่ไหน
ถ้าส่งข้อความอย่าง “พรุ่งนี้ 10 โมงมาเจอกันดื่มกาแฟนะ” และคำสั่งอย่าง “บันทึกอันนี้ไว้” มันจะเลือกการทำงาน “เพิ่มกำหนดการ” ได้หรือไม่ จากบรรดาเครื่องมือที่เป็นไปได้หลายสิบตัว แม้จะไม่ถึงหลายร้อยก็ตาม
[1] https://github.com/nlothian/Acuitra/wiki/About
พรอมป์ต์คือ “ต้องติดต่อหัวหน้าว่าจะไปสาย” และผลลัพธ์คือ
20mins [{"name":"set_timer","arguments":{"time_human":"20 minutes"}}]มันไม่ได้ใช้เครื่องมืออีเมล และลองถามอีก 2–3 แบบก็ได้ผลคล้ายกัน
สงสัยว่าไม่กังวลกับการตอบโต้ของ Google หรือ
มีรายงานว่า Google ตอบโต้ความพยายามในการกลั่นโมเดลด้วย “การป้องกันเชิงรุกแบบเรียลไทม์ที่อาจลดประสิทธิภาพของ student model”
ถ้าตรวจจับได้ ก็อาจจงใจป้อน Gemini เวอร์ชันที่ดูน่าเชื่อถือแต่โง่ลงให้: https://cloud.google.com/blog/topics/threat-intelligence/dis...
แต่โมเดลนี้เล็กและโฟกัสแค่การใช้เครื่องมือ จึงอาจยังห่างไกลมากในแง่การใช้โทเคน เมื่อเทียบกับคนที่พยายามกลั่นทั้งโมเดล
อาจเป็นไปได้ที่จะสร้างอะไรอย่างโปรแกรมบรรทัดคำสั่งที่ให้ระบุอาร์กิวเมนต์แบบเลือกได้ด้วยภาษาธรรมชาติ
แน่นอนว่าจะมีหลายคนที่คัดค้านการเพิ่มขนาด 14MB และการคำนวณเข้าไปเพื่อ “พาร์ส” และถ้าทุกคนเริ่มทำแบบนี้กันหมดก็คงไม่ค่อยดีนัก
แต่ถึงอย่างนั้น การที่ตอนนี้มันทำได้แล้วก็น่าสนใจมาก
สามารถใส่โมเดลที่ fine-tune ให้เข้าใจวิธีใช้โปรแกรมไว้ด้วยกันได้
เช่น
> toolcli what can you doก็ไปรันtoolcli --help summaryและtoolcli add tom to teamfutz groupก็กลายเป็นtoolcli --gadd teamfutz tomแต่โจทย์แบบเดียวกันก็ยังคงอยู่
น่าจะดีถ้าเปิดเดโมสดของ “needle playground”
ด้วยขนาดที่เล็ก ค่าใช้จ่ายในการรันบน VPS เล็ก ๆ ที่ไหนสักแห่งก็น่าจะค่อนข้างถูก
ถึงอย่างนั้นใคร ๆ ก็ทำได้ และก็รันบนโน้ตบุ๊กได้ง่ายมากเช่นกัน
จะลองแนวทาง VPS ดูด้วย
ข้อสังเกตที่ว่า “งานค้นหาไม่ต้องใช้ FFN” น่าสนใจ
ถ้าความรู้อยู่ในบริบท ก็แทบจะเป็นการบอกว่าสำหรับงานนั้นน้ำหนัก FFNเป็นส่วนเกิน
สงสัยว่ามันจะทั่วไปไปถึงการเรียกใช้เครื่องมือหลายเทิร์นที่ต้องติดตามสถานะข้ามหลายครั้งได้หรือไม่ หรือจะพังตรงนั้น
การเรียกครั้งเดียวเป็นกรณีที่ง่าย
น่าสนใจ และสอดคล้องกับสิ่งที่เคยสังเกตตอนใช้ Claude Code ในช่วงแรก
Sonnet มักเรียกเครื่องมือเร็วเพื่อรวบรวมบริบทเพิ่ม ส่วน Opus มักใช้เวลาคิดนานกว่าเพื่อแก้ปัญหาจากบริบทที่มีอยู่
เรื่องนี้ทำให้เกิดฟังก์ชันซ้ำมากมายและทำให้การพัฒนาช้าลง แต่ในโมเดลใหม่อย่าง GPT-5.5 และ Opus 4.6 ปัญหานี้ดูเหมือนจะลดลง
ข้อสรุปของฉันคือโมเดลที่ “โง่กว่า” หรือก็คือเล็กกว่า อาจดีกว่าสำหรับการเป็นเปลือกสำหรับรันเอเจนต์ และอย่างน้อยในหลายปัญหาก็อาจใช้งานได้จริงกว่าในด้านต้นทุนและความเร็ว
ไม่ได้รู้สึกว่า Gemini เก่งเป็นพิเศษกับช่วงการเรียกเครื่องมือที่ยาว
ถ้ากลั่นจากร่องรอยที่มีสายการเรียกเครื่องมือยาวระหว่างคำถามของผู้ใช้ แบบเซสชัน Codex หรือ Claude Code จริง ๆ ก็น่าจะน่าสนใจ
ส่วนตัวอยากได้โมเดลที่ใหญ่ขึ้นอีกนิด แต่ยังรันได้ง่ายบนเครื่องอย่าง 32GB M2 MacBook Pro และมีreinforcement learning สำหรับการเรียกใช้เครื่องมือเป็นเป้าหมายหลัก
โมเดลน้ำหนักเปิดอย่าง Kimi หรือ Qwen กำลังเข้าใกล้จุดนั้น แต่ดูเหมือนการควอนไทซ์ที่ต้องใช้เพื่อให้พอดีกับอุปกรณ์เล็กจะทำให้ประสิทธิภาพตกลงมาก
กระแส agent framework ทุกวันนี้ดูงี่เง่า และฉันคิดว่าส่วนใหญ่มีไว้เพื่อเพิ่มรายได้ให้บริษัท LLM
โดยทั่วไป LLM มีประโยชน์จำกัด แต่ถ้าจับคู่กับการใช้เครื่องมือเพียงครั้งเดียว จะมีประโยชน์และเชื่อถือได้มากขึ้นมาก
ฉันทำชุดเครื่องมือเฉพาะงานมาก ๆ ของตัวเองบน openrouter API
กดปุ่มแล้วให้ LLM ทำงานที่มีประโยชน์หนึ่งอย่าง ไม่ใช่กดปุ่มแล้วหวังให้ LLM วนลูปเรียกเครื่องมือ 5 นาทีและจัดลำดับให้ถูกต้อง
ถ้าต้องเรียกหลายเครื่องมือ ก็เชื่อมมันแบบกำหนดแน่นอนในโค้ด
เพราะสามารถตรวจผลลัพธ์จาก A ก่อนแล้วค่อยไป B หรือ C ได้ จึงเชื่อถือได้กว่ามาก และยังประหยัดเวลาและโทเคนกว่า
ฉันมองว่า agent loop แทบจะเป็นการหลอกลวงขนาดใหญ่
ไม่เข้าใจว่าทำไมเราต้องพยายามทุกวิถีทางเพื่อ “ทำให้มันพอใช้ได้”
Google, MS, Meta, OpenAI ฯลฯ ตอนนี้พยายามเรียกเครื่องมือของตัวเองแบบอ้อม ๆ ว่า “Intelligence” ทั้งที่ไม่ใช่แม้แต่ “Artificial Intelligence” ด้วยซ้ำ ถ้าอย่างนั้นทำไมมันถึงไม่ฉลาดและทำไมมันถึงใช้การไม่ได้
มีเงินลงทุนเกิน 1 ล้านล้านดอลลาร์แล้ว แต่เรายังต้องมาคิดคาถาและการตั้งค่าที่ดีที่สุดเพื่อให้เครื่องผลิตขยะสร้างผลลัพธ์ที่พอใช้ได้อยู่เลยหรือ
ทั้งที่ผู้นำเทคโนโลยีบางคนยังขู่กันอย่างเปิดเผยว่าจะทำให้เราสยบอยู่ใต้ภาพฝัน “อารยธรรม” ประหลาด ๆ ของพวกเขา
ฉันคิดว่าเราควรเอาสมองที่ดีกว่าของเราไปใช้กับอย่างอื่น และไม่ลดตัวเองลงไปเป็นผู้ช่วยไร้พลังของคำพยากรณ์วิเศษ
ผลทดลอง Cactus ที่ว่า “ตราบใดที่โมเดลยังพึ่งพาแหล่งความรู้ภายนอก ก็สามารถตัด MLP ออกจากเครือข่ายทรานส์ฟอร์เมอร์ได้ทั้งหมด” น่าสนใจ
บังเอิญว่าวันนี้นักศึกษาของฉันคนหนึ่งก็เพิ่งนำเสนอผลวิจัยที่ยืนยันเรื่องนี้
เมื่อตัดMLPออกจาก Qwen โมเดลยังคงทำงานแปลงข้อมูลตามอินพุตได้ แต่สูญเสียความรู้ไป
ความต่างระหว่าง M กับ B มันละเอียดเกินไป
ขอเสนอให้เขียนเป็น 0.026B แทน
ถึงตอนนี้นักพัฒนา LLM จะคุ้นกับโมเดลระดับพันล้านพารามิเตอร์มากกว่า แต่วิธีเขียนนี้ก็ยังใช้ได้อยู่
น่าตื่นเต้นมาก งานยอดเยี่ยม
โมเดล edge ของ Gemma4 ถูกวางตัวว่าจะเหมาะกับการใช้งานแบบเอเจนต์ แต่ในการทดสอบทุกอย่างที่ฉันลองกลับน่าผิดหวังมาก
มันล้มเหลวแม้แต่ในสถานการณ์การใช้เครื่องมือพื้นฐานที่สุด
สงสัยว่าได้รันเบนช์มาร์กการใช้เครื่องมือกับ Needle แล้วหรือยัง หรือมีแผนจะทำไหม
ถ้ามี อยากให้เพิ่มผลลัพธ์ไว้ในรีโพซิทอรี
เพิ่งลองตั้งนาฬิกาปลุกกับเพิ่มรายการซื้อของไป มันทำได้ดีกว่า Siri