สัปดาห์ของ embedding: Perplexity ปล่อย pplx-embed-v2-context-9b แบบเปิด (MIT) ที่ฝึกให้ดึงทั้งคำตอบและหลักฐาน, Cohere เปิด Embed 5 context 128K และ turbopuffer ฝังการทำ embedding ไว้ในฐานข้อมูล — แต่ในภาษาไทย Gemini ยังนำ
ในช่วง 29–30 ก.ย. 2026 มีของใหม่ด้าน retrieval ออกมาสามชิ้นที่เกี่ยวข้องกัน ทีมที่ทำ RAG ควรอ่านรวมกัน ชิ้นแรกคือ Perplexity Research ร่วมกับ turbopuffer ปล่อย pplx-embed-v2-context-9b-preview ซึ่งเป็นโมเดล contextual embedding แบบเปิดน้ำหนักภายใต้ MIT ชิ้นที่สองคือ Cohere เปิดตัว Embed 5 ในรุ่น Pro และ Fast ชิ้นที่สามคือ turbopuffer ประกาศ native embedding เป็น GA และเริ่มเปลี่ยนสถาปัตยกรรมเป็น v3 ในบทความชื่อ “RIP, vector database” ซึ่งขึ้นหน้าแรก Hacker News
ทั้งสามชิ้นสะท้อนเรื่องเดียวกัน: ความยากของ RAG ย้ายจาก “หา vector ที่ใกล้ที่สุด” ไปเป็น “chunk ที่ดึงมาได้มีบริบทพอให้เข้าใจและตรวจสอบได้หรือไม่” และ “ใครควรเป็นผู้รับผิดชอบ pipeline ของ embedding”
pplx-embed-v2-context-9b: ไม่ได้ดึงแค่ “gold passage”
โมเดล contextual embedding รับเอกสารเป็นลิสต์ของ chunk แล้ว encode ทั้งหมดพร้อมกัน embedding ของแต่ละ chunk จึงมีข้อมูลบริบทของเอกสารทั้งฉบับ ตามแนวทาง late chunking สิ่งที่ Perplexity ทำใหม่คือวิธีฝึก ชุดข้อมูลทั่วไปจะกำหนด “gold chunk” เพียงชิ้นเดียวต่อหนึ่ง query และนับ chunk อื่นทั้งหมดเป็น negative รวมถึง chunk ที่จำเป็นต่อการตรวจสอบคำตอบด้วย Perplexity ใช้โมเดล context compression ของตัวเองเป็น teacher ให้คะแนนความเกี่ยวข้องระดับ token แล้วรวมเป็นคะแนนระดับ chunk เพื่อสอนให้โมเดลดึงทั้งคำตอบและบริบทที่ใช้ยืนยันคำตอบ teacher ใช้เฉพาะตอนฝึก จึงไม่เพิ่ม latency ตอนใช้งาน
ข้อมูลจากบล็อกและ model card:
- ตั้งต้นจากโมเดล ColBERT 9B ของ Perplexity เอง (
config.jsonระบุmodel_typeเป็นpplx_contextual_qwen3_5คือโครงแบบ Qwen3.5 ที่มี linear attention สลับกับ full attention ทุก 4 ชั้น) - เอาต์พุต 2048 มิติ รองรับ Matryoshka ที่ 1024 และส่งออกเป็น int8 โดยตรง
- บน context-bench ของ turbopuffer (2,099 query, 38,894 เอกสารยาว, 21 โดเมน) ได้ answer recall@10 45.5% และ evidence recall@10 40.6% สูงกว่า voyage-context-4 อยู่ 14.4 และ 5.0 จุดตามลำดับ
- ที่ 1024 มิติ int8 ใช้พื้นที่ 1 KB ต่อ vector และได้คะแนน chunk retrieval สูงกว่า voyage-context-4 ที่ 2048 มิติ float32 (8 KB) เล็กน้อย หรือประหยัดพื้นที่เก็บ vector ราว 8 เท่า
- ได้ค่าเฉลี่ย nDCG@10 สูงสุดบน ConTEB แต่ไม่ได้ชนะทุก task: pplx-context-v1-4B ชนะบน NarrativeQA และ Nemotron-3-Embed-8B ชนะบน COVID-QA ในชุด query-to-chunk ที่ Perplexity รวบรวมเอง voyage-context-4 ยังชนะในหมวด finance และ multilingual ส่วน document retrieval ทำได้ต่ำกว่า voyage-context-4 เล็กน้อยโดยเฉลี่ย
ข้อควรระวัง: นี่เป็นรุ่น preview ซึ่ง model card ระบุว่าน้ำหนักและ interface อาจเปลี่ยนแบบไม่เข้ากันกับของเดิม ห้ามปน embedding จากรุ่นนี้กับรุ่นถัดไป ต้องใช้ trust_remote_code=True กับ transformers>=5.4.0 และต้องเรียก encode_queries สำหรับ query เสมอ ถ้าเรียก encode แทน คุณภาพจะลดลงโดยไม่มี error แจ้ง ตอนนี้ยังไม่มีบน Perplexity API
Cohere Embed 5: context 128K, multimodal, self-host ได้
Embed 5 มีสองรุ่น คือ Pro ($0.12 ต่อ 1M token ข้อความ) และ Fast ($0.08) ทั้งสองรุ่นรับ context 128K token รับข้อความ ภาพ และข้อความรวมกับภาพ รองรับมากกว่า 100 ภาษา และเลือกมิติได้ตั้งแต่ 256 ถึง 2048 ในรูปแบบ float, int8 หรือ binary ใช้ได้ผ่าน Cohere API, Microsoft Foundry และ Amazon SageMaker และ serve เองด้วย vLLM ได้ใน VPC หรือ on-premises Cohere รายงานว่า Pro ได้ 85.8 บน ViDoRe V3 สูงกว่า Voyage 4 Large (83.7), Gemini Embedding 2 (83.2) และ OpenAI text-embedding-3-large (75.5)
ตัวเลขที่คนไทยควรดู อยู่ในตารางหลายภาษาของ Cohere เอง ในแถว ภาษาไทย Embed 5 Pro ได้ 82, Fast ได้ 75 ขณะที่ Gemini Embedding 2 ได้ 88 และ Voyage 4 Large ได้ 84 (Embed 4 เดิมได้ 75 และ OpenAI text-embedding-3-large ได้ 67) กล่าวคือในตารางที่ Cohere จัดทำเอง Embed 5 ก็ยังไม่ชนะในภาษาไทย และรุ่น Fast ไม่ได้ดีขึ้นจาก Embed 4 เลยในภาษานี้
turbopuffer: ฐานข้อมูลทำ embedding ให้เอง และ vector ไม่ได้เป็นศูนย์กลางอีกต่อไป
turbopuffer ซึ่ง Cursor, Notion และ Linear ใช้ เปิด native embedding เป็น GA (29 ก.ย.) ให้ฐานข้อมูลเรียกโมเดล embedding เอง แทนที่จะให้ลูกค้าส่ง vector มาเอง ข้อดีที่ไม่ได้มีแค่ความสะดวกคือ query planner สามารถทำ embedding ขนานกับการอ่าน metadata จาก S3 ได้ turbopuffer อ้างว่า Linear ลดเวลาได้ 150ms และ Readwise ลด median latency ของ embedding ได้ 8 เท่า วันต่อมา (30 ก.ย.) บริษัทประกาศ turbopuffer v3 ซึ่งเลิกใช้ ANN index เป็น primary index ให้เป็นเพียง secondary index ตัวหนึ่ง เพราะการจัดเก็บที่ยึด vector เป็นหลักทำให้เกิด storage/write amplification กับ multi-vector และ late interaction และทำให้ GROUP BY กับ aggregation ทำงานช้า
มุมมอง AI Curator
ประเด็นที่ควรสังเกตคือ turbopuffer เป็นทั้งผู้ร่วมเขียนงานของ Perplexity และเจ้าของ context-bench ที่ไม่เปิดชุดข้อมูล แม้ Perplexity จะบอกว่าส่งผลแบบ blind และไม่เคยเห็นข้อมูลของ benchmark ระหว่างพัฒนาโมเดล แต่ผลที่ทำบน benchmark ซึ่งคนนอกตรวจซ้ำไม่ได้ และผู้สร้าง benchmark เป็นผู้ร่วมเขียน ควรถือเป็นข้อมูลประกอบ ไม่ใช่ข้อสรุป ส่วนที่ผมมองว่ามีคุณค่าจริงคือแนวคิดของวิธีฝึก (ใช้ teacher ระดับ token แทน gold chunk) และตัวเลข 1 KB ต่อ vector ซึ่งตรวจสอบได้เองเพราะน้ำหนักเป็น MIT
สำหรับทีมไทย ผมเห็นสามเรื่องที่ควรทำ หนึ่ง อย่าเลือก embedding จากตารางภาษาอังกฤษ ตารางของ Cohere เองแสดงว่า Gemini Embedding 2 นำในภาษาไทยอยู่ 6 จุด ส่วน pplx-embed-v2 บอกเพียงว่าข้อมูลฝึกครอบคลุม “มากกว่า 50 ภาษา” ไม่มีตัวเลขภาษาไทย และบล็อกของ Perplexity เองยอมรับว่าแพ้ voyage-context-4 ในหมวด multilingual จึงต้องวัดกับเอกสารภาษาไทยของตัวเองก่อนเสมอ สอง contextual embedding น่าจะเหมาะกับเอกสารไทยเป็นพิเศษ เพราะภาษาไทยไม่มีการเว้นวรรคระหว่างคำ การตัด chunk จึงมักตัดกลางประโยคหรือแยกประธานออกจากเนื้อหา โมเดลที่เห็นทั้งเอกสารช่วยลดปัญหานี้ได้ และควรทดสอบกับสัญญา ประกาศ หรือรายงานประจำปีที่มีการอ้างข้อมูลข้ามหน้าเยอะ สาม ถ้าองค์กรมีข้อกำหนดเรื่องข้อมูลห้ามออกนอกประเทศ ตอนนี้มีทั้ง pplx-embed-v2 (MIT, 9B; ไฟล์ checkpoint เป็น float32 ขนาดราว 33.6 GB) และ Embed 5 (Cohere ระบุว่า serve เองด้วย vLLM ได้สำหรับ private deployment) ให้เลือก ซึ่งเป็นตัวเลือกที่ปีก่อนยังไม่มี
แหล่งข่าว
- perplexity-ai/pplx-embed-v2-context-9b-preview — Hugging Face model card
- Contextual embedding beyond the gold passage — Perplexity Research & turbopuffer (30 ก.ย. 2026)
- Introducing Embed 5 — Cohere (30 ก.ย. 2026)
- RIP, vector database — turbopuffer (30 ก.ย. 2026) และ Why moving embedding inside turbopuffer drops search latency (29 ก.ย. 2026)
อ่านเพิ่มในหมวด เครื่องมือนักพัฒนา
Betelgeuse รัน Qwen3.8 Flash Next ขนาด 68GB บน RTX 3060 กับแรม 16GB ส่วน Basalt วัดให้เห็นว่าเอนจินที่เร่งด้วยแฟล็กลัดทำให้โมเดลลืมของ
Betelgeuse ฟอร์ก llama.cpp ที่เปิดเมื่อ 31 ต.ค. ดึง expert จาก NVMe เข้า VRAM ตามต้องการ อ้าง 22 tok/s แบบไม่ทิ้ง expert แต่ README เตือนเองว่ายังทดลองและตัวเลขมาจากคนละรอบ วันเดียวกันผู้พัฒนา Basalt เผยผลวัดว่าแฟล็กเร่งความเร็วทำคุณภาพ Q8 ตกไปใกล้ Q2
กฎห้ามโคลนเกมของ Claude Code เริ่มกระทบงานจริง บริษัทรับทำเกมกระดานร้องงานลูกค้าหยุด แต่รายงานหลายชิ้นปนกับตัวกรองไซเบอร์คนละเรื่อง
ต่อจากที่เราพบกฎนี้ในไบนารี Claude Code ผู้ใช้เริ่มรายงานว่างานเชิงพาณิชย์ถูกปฏิเสธ และ Tom's Hardware กับ Mashable หยิบไปรายงาน แต่เมื่อไล่ issue ที่อ้างถึง พบว่าหลายรายการเกิดก่อนกฎจะมา จึงน่าจะเป็นตัวกรองด้านไซเบอร์ ส่วน Anthropic ยังไม่ชี้แจง
Claude Code ส่ง transcript ของ background agent ให้โมเดลทุก ~30 วินาทีเพื่อเขียนสถานะ 3–5 คำ ผู้วัดรายงานกินราว 16% และยังปิดแบบทางการไม่ได้
รายงานอิสระพบว่าฟีเจอร์ agent_summary ของ Claude Code ส่ง transcript เต็มของ background agent ไปถามสถานะทุก ~30 วินาที คิดเป็น 16.4% ของค่าใช้จ่ายในระบบของผู้วัด Issue เปิดมาตั้งแต่ ส.ค. ยังไม่มีสวิตช์ปิดที่รองรับ เราตรวจพบโค้ดนี้ใน 2.1.314 และพบกฎใหม่เรื่องเกมที่ไม่อยู่ใน changelog