- ในยุคของโมเดลขนาดใหญ่ คุณภาพของข้อมูลเป็นตัวกำหนดเพดานประสิทธิภาพของโมเดล
- คู่มือโอเพนซอร์ส ที่ให้ความรู้ด้าน วิศวกรรมข้อมูลอย่างเป็นระบบ เพื่อสิ่งนี้
- ครอบคลุมทั้งกระบวนการตั้งแต่ การทำความสะอาดข้อมูลพรีเทรน, การจัดแนวมัลติโมดัล, RAG data pipeline, การสร้างข้อมูลสังเคราะห์ เป็นต้น
- ประกอบด้วย 5 พาร์ต 13 บท และยังมี โปรเจ็กต์แคปสโตนเชิงปฏิบัติ 5 รายการ พร้อมโค้ดที่รันได้และการออกแบบสถาปัตยกรรมเพื่อสนับสนุนการเรียนรู้เชิงปฏิบัติ
- ใช้ เทคโนโลยีสแต็กสมัยใหม่ เช่น Ray, Spark, CLIP, DVC เพื่อประมวลผลข้อมูลข้อความ·ภาพ·วิดีโอ
- สามารถใช้เป็น เอกสารอ้างอิงเชิงปฏิบัติสำหรับผู้สร้าง AI data pipeline เช่น นักวิจัย LLM, วิศวกรข้อมูล, ผู้เชี่ยวชาญ MLOps
แนะนำ
- ในยุคของโมเดลขนาดใหญ่ คุณภาพของข้อมูลเป็นตัวกำหนดขีดจำกัดของประสิทธิภาพโมเดล
- จัดทำขึ้นเพื่อเติมเต็มข้อเท็จจริงที่ว่ายังขาดแคลนเอกสารเชิงระบบเกี่ยวกับวิศวกรรมข้อมูลสำหรับ LLM
- หนังสือเล่มนี้ครอบคลุมทั้งเทคโนโลยีสแต็ก ตั้งแต่ การทำความสะอาดข้อมูลพรีเทรนไปจนถึงการจัดแนวมัลติโมดัล, RAG และการสร้างข้อมูลสังเคราะห์
- การดึงคอร์ปัสคุณภาพสูงจากข้อมูลขนาดใหญ่ที่มีสัญญาณรบกวน เช่น Common Crawl
- การเก็บรวบรวม·ทำความสะอาด·จัดแนวข้อมูลภาพ-ข้อความ วิดีโอ และเสียง
- การสร้างข้อมูล SFT, RLHF, CoT แบบอัตโนมัติ
- การสร้าง RAG pipeline ที่รวมถึงการพาร์สเอกสารองค์กรและการแบ่งย่อยตามหน่วยความหมาย
- มอบการเรียนรู้ที่เน้นการลงมือทำผ่าน โปรเจ็กต์แคปสโตนแบบ end-to-end 5 รายการ
- อ่านออนไลน์ได้ที่: https://datascale-ai.github.io/data_engineering_book/en/
โครงสร้างของหนังสือ
- โครงสร้างทั้งหมดคือ data engineering pipeline ที่สมบูรณ์ตั้งแต่ข้อมูลดิบไปจนถึงแอปพลิเคชัน
- ประกอบด้วยทั้งหมด 6 พาร์ต 13 บท และ 5 โปรเจ็กต์
- Part 1: โครงสร้างพื้นฐานและแนวคิดหลัก
- Part 2: วิศวกรรมข้อมูลพรีเทรนสำหรับข้อความ
- Part 3: วิศวกรรมข้อมูลมัลติโมดัล
- Part 4: วิศวกรรมข้อมูลด้านการจัดแนวและข้อมูลสังเคราะห์
- Part 5: วิศวกรรมข้อมูลระดับแอปพลิเคชัน
- Part 6: โปรเจ็กต์แคปสโตน (Mini-C4, Legal SFT, LLaVA, Math/Code, Financial RAG)
คุณลักษณะเด่น
ทฤษฎีที่ครอบคลุม
- สะท้อนแนวคิด Data-Centric AI ตลอดทั้งเล่ม
- ครอบคลุม วงจรชีวิตข้อมูลของ LLM ทั้งหมด ตั้งแต่พรีเทรน → fine-tuning → RLHF → RAG
- รวมประเด็นเชิงลึก เช่น scaling laws, การประเมินคุณภาพข้อมูล และการจัดแนวมัลติโมดัล
เทคโนโลยีสแต็กสมัยใหม่
- การประมวลผลแบบกระจาย: Ray Data, Spark
- การจัดเก็บข้อมูล: Parquet, WebDataset, Vector Databases
- การประมวลผลข้อความ: Trafilatura, KenLM, MinHash LSH
- การประมวลผลมัลติโมดัล: CLIP, ColPali, img2dataset
- การจัดการเวอร์ชันข้อมูล: DVC, LakeFS
โปรเจ็กต์แคปสโตนที่เข้มข้น
- Mini-C4: สร้างคอร์ปัสข้อความคุณภาพสูงด้วย Trafilatura + Ray + MinHash
- Legal Expert SFT: ชุดข้อมูลคำสั่งเฉพาะโดเมนบนพื้นฐาน Self-Instruct + CoT
- LLaVA Multimodal: สร้างชุดข้อมูลคำสั่งเชิงภาพด้วยการจัดแนว Bbox และการสลับหลายภาพ
- Math Textbook: สร้างชุดข้อมูลการให้เหตุผลด้วย Evol-Instruct + การตรวจสอบใน sandbox
- Financial Report RAG: สร้างระบบถามตอบมัลติโมดัลด้วย ColPali + Qwen-VL
การพัฒนาในเครื่อง
- สภาพแวดล้อมที่จำเป็น: Python 3.8 ขึ้นไป, MkDocs Material, mkdocs-static-i18n
- การติดตั้งและพรีวิว
- โคลนรีโพซิทอรีด้วย
git clone แล้วติดตั้ง dependencies
- สามารถพรีวิวแบบโลคัลได้เมื่อรัน
mkdocs serve (รองรับการสลับภาษาจีน·อังกฤษ)
- การ build เว็บไซต์แบบ static: เมื่อรัน
mkdocs build จะสร้างผลลัพธ์ไว้ในไดเรกทอรี site/
โครงสร้างโปรเจ็กต์
- โฟลเดอร์
docs/ มีคอนเทนต์ภาษาจีน (zh/) และภาษาอังกฤษ (en/)
- ประกอบด้วยไดเรกทอรีทรัพยากร เช่น
images/, stylesheets/, javascripts/
- มีการตั้งค่า CI/CD ใน
.github/workflows/
- จัดการการตั้งค่าเว็บไซต์ด้วย
mkdocs.yml
- ใบอนุญาตคือ MIT License
ผู้อ่านเป้าหมาย
- วิศวกรวิจัยและพัฒนา LLM, วิศวกรข้อมูล, วิศวกร MLOps, AI PM สายเทคนิค, นักวิจัยด้าน LLM data pipeline
ใบอนุญาต
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
อ่านหนังสือเล่มนี้ด้วยความซาบซึ้งจริง ๆ คุณภาพการแปลสูงมาก
ผมเป็นมือใหม่มาก ๆ ในการฝึก LLM และกำลังทดลองสถาปัตยกรรมใหม่สำหรับการสร้างโค้ด Python บน Apple Silicon
แต่ก็รู้สึกอึดอัดเพราะเครื่องมือด้านข้อมูลมักโฟกัสที่ข้อความทั่วไปหรือรูปภาพ มากกว่าจะเน้นโค้ด
SGlang ใช้งานบน MacOS ไม่ได้ เลยไม่สามารถสร้างข้อมูลสังเคราะห์โดยใช้ EBNF constrained output ได้
ตอนนี้เลยดาวน์โหลดคอร์ปัสโค้ด Python มาจัดการเอง ทั้งปัญหา APFS, sharding, การจัดหมวดหมู่·การทำความสะอาด·การผสมแบบกำหนดเอง และก็แปลกใจที่ไม่มี ชุดข้อมูลที่แท็กไว้ล่วงหน้า สำหรับโค้ด
ถ้าเป็นหนังสือที่พูดถึง data engineering สำหรับ LLM ซึ่งเป็นสาขาเกิดใหม่ ก็ควรกล่าวถึงหมวดหมู่ใหม่ ๆ อย่าง storage format สำหรับวงจรชีวิต ML ทั้งหมด ด้วย
ตัวอย่างเช่น Lance เป็น columnar storage ที่ปรับให้เหมาะทั้งกับงานวิเคราะห์และเวิร์กโหลดแบบเวกเตอร์ พร้อมรองรับ versioning และ random access
สิ่งนี้สำคัญมากสำหรับการ sampling, การกรองอย่างมีประสิทธิภาพ และการจัดการข้อมูลมัลติโมดัล (เช่น วิดีโอ)
ตัวอย่างที่คล้ายกันก็มี vortex, nimble ของ Meta เป็นต้น
ผมคิดว่าชื่อ ‘Data Engineering for LLMs’ น่าจะเหมาะกว่า
อาจเป็นปัญหาจากการแปลก็ได้ แต่คำอธิบายเรื่อง “Modern Data Stack” ช่วงต้น ๆ ไม่ค่อยทำให้น่าเชื่อถือเท่าไร
ส่วน 1_2_data_infra.md ค่อนข้างคลุมเครือ แต่
หลังจากนั้น ส่วน การทำความสะอาดข้อมูล และ RAG pipeline ชัดเจนกว่ามาก
เวอร์ชันภาษาอังกฤษอยู่ที่ README_en.md
โพสต์นี้เคยติดตัวกรองสแปม แต่ผู้เขียนแจ้งมาทางอีเมล ผมเลยเชิญให้มาแชร์บริบทในคอมเมนต์ ตอนนี้ก็สะท้อนไว้ด้านบนแล้ว
น่าสนใจมาก เลยบุ๊กมาร์กไว้แล้ว แต่สงสัยว่า README เขียนด้วย ChatGPT หรือเปล่า
ประโยค “Data is the new oil, but only if you know how to refine it.” น่าประทับใจมาก
ปิโตรเลียมเองถ้าไม่กลั่นก็ไม่มีประโยชน์นัก ดังนั้นถ้าพูดว่า “ข้อมูลคือปิโตรเลียมยุคใหม่ และจะมีคุณค่าเมื่อผ่านการกลั่น” ก็น่าจะฟังเป็นธรรมชาติกว่า
ส่วน ‘Vector DB vs Keyword Search’ น่าสนใจมาก อยากรู้ว่าตอนทดลอง RAG pipeline วาง เส้นแบ่ง ไว้ตรงไหน
จากประสบการณ์ของเรา keyword search อย่าง BM25 แข็งแกร่งกับชื่อเอนทิตี·ID ส่วน vector search แข็งแกร่งกับคำถามเชิงแนวคิด อยากรู้ว่าหนังสือพูดถึง hybrid search หรือ reranking ด้วยไหม
หัวใจสำคัญคือ reranking ไม่ใช่แค่รวมผลลัพธ์เข้าด้วยกัน แต่ต้องให้ cross-encoder (เช่น Cohere หรือโมเดลคัสตอม) มาคำนวณคะแนนใหม่
จุดที่การค้นหาเชิงความหมายล้วน ๆ ได้เปรียบคือเวลาที่คำถามเน้นแนวคิดเชิงนามธรรม
รูปประกอบของแต่ละบทเป็นภาษาอังกฤษ (ยกเว้นรูปใน README_en.md)
ใช้แค่ Parquet อย่างเดียวไม่พอสำหรับ data engineering สมัยใหม่ ควรมี Delta และ Iceberg ด้วย