1 คะแนน โดย GN⁺ 2026-02-20 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • เป็นบทความที่นำเสนอขั้นตอนการสร้าง แอปพลิเคชัน RAG บน SQL โดยใช้ชุดข้อมูล Harry Potter ที่ถูกอัปโหลดอย่างผิดกฎหมายบน Kaggle แต่ถูกลบไปแล้ว
  • Azure SQL และ Microsoft Fabric SQL DB รองรับ การค้นหาเวกเตอร์แบบเนทีฟ และสามารถจัดการ Vector Store ได้ด้วย langchain-sqlserver
  • วางโฟลว์ตั้งแต่โหลดจาก Azure Blob Storage, แบ่งข้อความเป็นชังก์, สร้าง Azure OpenAI embeddings แล้ว จัดเก็บเวกเตอร์ลงใน SQL
  • ใช้การค้นหาความคล้ายคลึงของเวกเตอร์และตัวกรองเมทาดาทาเพื่อสร้าง ระบบถาม-ตอบที่แม่นยำ
  • ขยายต่อจาก Vector Store เดิมไปสู่ฟีเจอร์ สร้างแฟนฟิกชัน บน GPT4o ได้อีกด้วย
  • ลิงก์ Archive.is

การรองรับเวกเตอร์แบบเนทีฟของ Azure SQL และการผสานรวมกับ LangChain

  • Azure SQL และ Microsoft Fabric SQL DB เปิดพรีวิวสาธารณะของ ฟังก์ชันค้นหาเวกเตอร์แบบเนทีฟ
  • มีการเผยแพร่แพ็กเกจ langchain-sqlserver ทำให้สามารถจัดการ SQL Server เป็น LangChain Vector Store ได้
    • มีให้ติดตั้งและมีตัวอย่างโค้ดผ่านที่เก็บบน PyPI และ GitHub
  • เมื่อรวม Azure SQL DB, LangChain และ LLM เข้าด้วยกัน ก็สามารถ เพิ่มความสามารถ Generative AI ได้ด้วยโค้ดเพียงไม่กี่บรรทัด

การจัดเตรียมชุดข้อมูลตัวอย่าง

  • ใช้ชุดข้อมูลข้อความจาก Harry Potter ทั้ง 7 เล่มที่มีบน Kaggle
    • มีไฟล์ .txt ทั้งหมด 7 ไฟล์
    • ในเดโมใช้เพียงเล่ม 1 Harry Potter and the Sorcerer’s Stone
  • ใช้ชุดข้อมูลที่ผู้คนคุ้นเคยเพื่อสร้าง ตัวอย่างที่เข้าใจง่าย

ขั้นตอนการสร้างแอปพลิเคชันตัวอย่าง

1. ติดตั้งแพ็กเกจ langchain-sqlserver

  • ติดตั้งแพ็กเกจสำหรับการผสานรวมด้วยคำสั่ง pip install langchain-sqlserver==0.1.1
  • เปิดใช้งานฟังก์ชัน Vector Store บน SQL

2. โหลดข้อมูลจาก Azure Blob Storage และแบ่งเป็นชังก์

  • บันทึกไฟล์ข้อความ Harry Potter ลงใน Azure Blob Storage แล้วโหลดออกมา
  • ใช้ ความสามารถผสานรวม AzureBlobStorage ของ LangChain
  • ใช้ langchain-text-splitter แบ่งข้อความยาวออกเป็นชังก์ขนาดเล็ก
    • เพื่อรองรับข้อจำกัดจำนวน input token ของ Azure OpenAI embeddings

3. กำหนด Embeddings และ Chat Completion

  • ใช้ Azure OpenAI เพื่อ สร้าง text embeddings สำหรับแต่ละชังก์
  • สามารถสลับไปใช้โมเดล embeddings อื่น ๆ ที่ LangChain รองรับได้
  • เตรียมการประมวลผลถาม-ตอบผ่านการตั้งค่า Chat Completion

4. เริ่มต้น Vector Store และแทรกเอกสาร

  • เริ่มต้น Vector Store พร้อมกับ AzureOpenAI embeddings
  • ใช้ฟังก์ชัน add_documents เพื่อบันทึกเอกสารและ embeddings ลงใน Azure SQL
  • สร้างและจัดเก็บเวกเตอร์ได้ด้วยโค้ดไม่มาก

5. ทำการค้นหาความคล้ายคลึง

  • ใช้ฟังก์ชัน similarity_search_with_score เพื่อค้นหาความคล้ายคลึงของเวกเตอร์
  • รองรับตัวกรองเมทาดาทา
    • สามารถจำกัดขอบเขตการค้นหาตามคุณสมบัติเมทาดาทาเฉพาะได้

Use Case 1: สร้างระบบถาม-ตอบ

  • สร้าง ระบบถาม-ตอบเนื้อเรื่อง ด้วย SQL Vector Store และ LangChain
  • เมื่อมีคำถามจากผู้ใช้ จะค้นหาเอกสารที่เกี่ยวข้องสูงสุด 10 รายการแล้วสร้างคำตอบ
  • สร้าง retriever จาก vector_store
  • ใช้ create_stuff_documents_chain เพื่อประกอบ chain สำหรับถาม-ตอบ
  • ใช้ ChatPromptTemplate เพื่อกำหนดรูปแบบคำตอบอย่างมีโครงสร้าง
  • เมื่อใช้ create_retrieval_chain จะส่งคืนเอกสารที่ค้นพบพร้อมกันในคีย์ "context"
    • รองรับ การแสดงแหล่งที่มา ที่ใช้ในการสร้างคำตอบ

Use Case 2: สร้างแฟนฟิกชัน Harry Potter

  • สร้างฟีเจอร์ AI สร้างแฟนฟิกชันใหม่ บนพื้นฐานของ Vector Store
  • เมื่อผู้ใช้ป้อนพรอมป์ต์ จะค้นหาย่อหน้าที่เกี่ยวข้อง
    • ค้นหาความใกล้เคียงของบริบทจาก embeddings ที่เก็บไว้ใน SQL Vector Store
  • รวบรวมย่อหน้าที่ค้นพบเป็นสตริงเดียวเพื่อใช้เป็นคอนเท็กซ์สำหรับอินพุตของโมเดล
  • ส่งทั้งคอนเท็กซ์และพรอมป์ต์ของผู้ใช้ไปยังโมเดล GPT4o
    • เพื่อสร้างเรื่องราวใหม่ที่สะท้อนองค์ประกอบจากบริบทเดิม
  • แสดงผลลัพธ์ที่สร้างขึ้นพร้อมข้อมูลแหล่งที่มาของเวกเตอร์ที่อ้างอิง

สถานการณ์การใช้งานแบบบูรณาการ

  • การรวมระบบถาม-ตอบกับฟีเจอร์สร้างแฟนฟิกชันช่วยมอบ ประสบการณ์การอ่านแบบโต้ตอบ
    • ใช้ระบบถาม-ตอบเมื่อจำเป็นต้องทำความเข้าใจเนื้อหาในหนังสือ
    • สามารถขยายฉากเฉพาะหรือสร้างตอนจบทางเลือกได้

ตัวอย่างโค้ดและทรัพยากร

  • มีที่เก็บ GitHub ของโน้ตบุ๊ก LangChain-SQL-RAG
  • สามารถส่งคำขอปรับปรุงฟีเจอร์ได้ผ่านพอร์ทัล feedback ของ Azure SQL และ SQL Server

1 ความคิดเห็น

 
GN⁺ 2026-02-20
ความคิดเห็นบน Hacker News
  • เหตุการณ์ครั้งนี้ของ Microsoft ดูเหมือนจะแสดงให้เห็นถึง ความล้มเหลวของกระบวนการ ที่ลึกกว่าแค่ ปัญหาลิขสิทธิ์
    ถ้าแม้แต่เอกสารยังไม่ถูกตรวจทาน ก็อดสงสัยไม่ได้ว่าโค้ดใหม่ ๆ ได้รับการรีวิวอย่างเหมาะสมแค่ไหน
    อยากถามฝ่ายบริหารว่า ระหว่างความปลอดภัย คุณภาพ และนวัตกรรม AI ซึ่งเป็นสามเสาหลักนั้น จะเลือกอะไร
    (Scott Hanselman ผมชอบคุณนะ แต่เรื่องนี้อย่าตอบเองเลย ช่วยส่งต่อให้ฝ่ายผู้นำด้วย)

    • ผมเคยทำงานที่ Microsoft อยู่นานและเคยทำบล็อกด้วย
      ตอนนั้นสามารถโพสต์บทความส่วนตัวได้โดยไม่ต้องผ่านขั้นตอนอนุมัติ ทำให้บล็อกเป็นพื้นที่ที่ เป็นธรรมชาติและจริงใจ มากกว่า
      เหตุการณ์นี้ดูเหมือนเป็นแค่การตัดสินใจผิดพลาดของใครสักคน และการเอาบทความลงก็ดูเป็นการจัดการที่เหมาะสมแล้ว
      แต่สิ่งที่สำคัญกว่าคือ ทีมของผู้เขียนคนนั้นกำลัง ทำให้การละเมิดลิขสิทธิ์เพื่อฝึก AI ดูเป็นเรื่องชอบธรรม อยู่หรือไม่
      ดูแล้วคงไม่ใช่แค่ทนายภายในองค์กร แต่คนนอกก็น่าจะเข้ามาตรวจสอบเรื่องนี้ด้วย
    • คงสรุปไม่ได้ว่า การตรวจทานเอกสารสำคัญน้อยกว่าการรีวิวโค้ด
      โค้ดมีความเสี่ยงก่อปัญหาร้ายแรงจากบั๊ก จึงมี ขั้นตอนรีวิวอย่างเป็นทางการ อยู่แล้ว แต่
      เอกสารไม่ได้ส่งผลโดยตรงต่อการทำงานของซอฟต์แวร์ จึงไม่ได้ใช้ความเข้มงวดระดับเดียวกัน
      การที่เอกสารไม่ได้รับการตรวจทาน ไม่ได้แปลว่าโค้ดก็ไม่ได้รับการตรวจทาน
    • เรื่องแบบนี้สะท้อนปัญหาบางอย่างภายในองค์กรจริง แต่จะเหมารวมไปถึงทั้ง codebase ก็มากเกินไป
      ในองค์กรขนาดใหญ่ แต่ละแผนกมี ระดับการตรวจสอบที่ต่างกัน และโค้ดก็มักถูกควบคุมเข้มงวดกว่าเอกสารมาก
    • ก่อนหน้านี้ผมก็รู้สึกมาตลอดว่าบล็อกสำหรับนักพัฒนาของ Microsoft ส่วนใหญ่ขับเคลื่อนโดย นักพัฒนาแต่ละคน
    • ผมก็เคยเห็นบทความใน devblogs ที่คุณภาพประมาณนี้เหมือนกัน
      แทบจะคัดลอกคำตอบจาก Stack Overflow มาเกือบทั้งดุ้น และตอนที่เจอมันตอนค้นหาข้อความ error
      ก็ไม่ได้โกรธเท่าไร แค่ ผิดหวัง
  • บทความบล็อกของ Microsoft ลิงก์ไปยัง หน้าชุดข้อมูล Harry Potter บน Kaggle
    หน้านั้นอ้างว่าเป็น CC0 หรือ สาธารณสมบัติ แต่เห็นได้ชัดว่ามีปัญหาเรื่องลิขสิทธิ์
    แถมบทความนั้นออนไลน์มาตั้งแต่เดือนพฤศจิกายน 2024 และที่น่าตกใจก็คือยังไม่ถูกลบออก

    • ผมลองเช็กหน้า Kaggle เองแล้ว พบว่ามันยังอยู่เหมือนเดิมมา 2 ปีแล้ว
      พอลองกดใช้ฟังก์ชัน “Report Dataset” เพื่อรายงาน ก็ถูกรีไดเรกต์ไปยัง หน้ารายงานลิขสิทธิ์ของ Google
      แต่กลับถูกปฏิเสธด้วยข้อความว่า “หากคุณไม่ใช่เจ้าของลิขสิทธิ์หรือตัวแทน คุณจะรายงานไม่ได้”
      เป็นสถานการณ์ที่ ตลกร้ายสุด ๆ ชุดข้อมูลนั้นชัดเจนว่าเป็นของขโมย
    • แค่ใส่ลิงก์ไว้ไม่ได้แปลว่า Microsoft ต้องรับผิดโดยตรงทันที
      ที่จริงคนที่น่าจะต้องรับผิดมากกว่าคือ คนที่อัปโหลดด้วยไลเซนส์ผิด
      แต่พอเห็นชื่อ “Harry Potter” ใครก็รู้ว่าไม่น่าใช่สาธารณสมบัติ
      ในแง่สามัญสำนึก Microsoft ก็คงเลี่ยงความรับผิดได้ยาก
  • ในที่สุด Microsoft ก็ลบหน้านั้นออก
    แต่ยังมี สำเนาที่เก็บไว้บน archive.is

    • แต่บทความนั้นโพสต์ตั้งแต่ปี 2024 เลยดูเหมือนว่าจะมีใครมาเห็นเธรดนี้แล้วค่อยดำเนินการ
    • สงสัยว่า บทความนี้ ถูกลบไปด้วยหรือยัง
      เป็นตัวอย่างชื่อ “สร้างแอป RAG ใน 5 นาที” โดยใช้ Azure และ GPT
    • นี่เป็น หลักฐานการละเมิดลิขสิทธิ์ อย่างชัดเจน ถ้า Rowling ต้องการก็น่าจะฟ้องได้
    • archive.is มีประเด็นถกเถียงว่าใช้ CAPTCHA เพื่อ นำเบราว์เซอร์ของผู้ใช้ไปใช้ใน DDoS
      น่าผิดหวังที่คนยังใช้เว็บนั้นอยู่
    • ฝั่งผมหน้ายังเปิดดูได้ตามปกติ
  • ภาพ thumbnail ที่สร้างด้วย AI ของบล็อกนั้น (ลิงก์รูปภาพ)
    เป็นภาพ Harry ตอนเด็กกับเพื่อนยืนอยู่หน้าโลโก้ Microsoft น่าตกใจมากจริง ๆ

    • AI มักมี บั๊กวาดรถไฟออกมาแปลก ๆ อยู่เสมอ
      ถ้าเฟรมกว้างกว่านี้หน่อย ก็อาจจะไม่มีส่วนเชื่อมระหว่างตู้รถไฟเลยก็ได้
  • ผมไม่ชอบ Microsoft ก็จริง แต่การเรียกเหตุการณ์นี้ว่า “คู่มือเถื่อน” ก็ดูเกินไป
    นี่เป็นแค่ ตัวอย่างเพื่อการวิจัย ไม่ใช่การรวมเข้าเป็นผลิตภัณฑ์
    ปฏิกิริยาที่เกินเลยเรื่องการผูกขาดลิขสิทธิ์และ fair use ก็ดูน่าอายเหมือนกัน

    • ถึงอย่างนั้น Microsoft ก็มีมูลค่าตลาดเกือบ 3 ล้านล้านดอลลาร์
      ต่อให้เป็นงานวิจัย ก็มีศักยภาพมากพอที่จะจ่ายค่าตอบแทนอย่างเหมาะสมสำหรับข้อความที่นำมาใช้
    • จริง ๆ แล้วเรื่องแบบนี้ไม่ได้เป็นปัญหาเฉพาะของ Microsoft
      บริษัท LLM เชิงพาณิชย์ส่วนใหญ่ก็ทำคล้าย ๆ กัน
    • ชื่อเรื่องไม่ได้เกินจริง เพราะมันคือ บทความที่สอนวิธีดาวน์โหลดและใช้ข้อมูลผิดกฎหมาย จริง ๆ
      เท่ากับว่าบริษัทออกคู่มือบนบล็อกทางการให้ทำสิ่งที่ถ้าเป็นคนทั่วไปทำจะผิดกฎหมาย
      Anthropic ก็เคยมีกรณียอมความคดีละเมิดลิขสิทธิ์เป็นเงิน 1.5 พันล้านดอลลาร์
      ผมเองก็ไม่ชอบระบบลิขสิทธิ์ปัจจุบัน แต่จะยอมให้มี คนละมาตรฐานระหว่างบริษัทกับปัจเจกชน ไม่ได้
  • นี่ไม่ใช่คู่มือเถื่อน แต่เป็นบทความที่อธิบายแค่ว่า จะนำชุดข้อมูลเข้า SQL อย่างไร
    ถ้าจะโทษ ใครที่ควรรับผิดก็คือ Kaggle หรือ Shubham Maindola ผู้เป็นคนอัปโหลดมากกว่า
    คำอธิบายแหล่งที่มาของข้อมูลที่ว่า “แปลง Harry Potter ฉบับ e-book เป็น txt” ฟังดูหลอนมาก
    ทั้งที่เป็นแบบนั้น คะแนนบน Kaggle ยังได้ถึง 10.0 ก็น่าตกใจ

    • แถมคำแรกของข้อความก็สะกดผิดแล้วด้วย — “M r.” …
  • บทความนี้ถูกโพสต์ในปี 2024 และ Kaggle ก็ยังโฮสต์ข้อมูลอยู่
    เลยอดสงสัยไม่ได้ว่าทำไมฝั่ง Rowling ยังไม่ลงมือทำอะไร

    • น่าจะเป็นเพราะ มันยังไม่อยู่ในความสนใจ
      ยอดดาวน์โหลดบน Kaggle มีราว 10,000 ครั้ง เลยอาจยังไม่เป็นที่จับตา
      แต่เรื่องนี้ชัดเจนว่าข้ามเส้นไปแล้ว
      ก่อนหน้านี้ก็เคยมีกรณี การลอกผลงานที่เกี่ยวกับ AI ของ Microsoft
      ตอนนั้นก็มีเสียงวิจารณ์ว่ากระบวนการตรวจสอบภายในแทบไม่มีเลย
      เธรดที่เกี่ยวข้อง: “Microsoft morged my diagram”
    • ผมติดต่อ Rowling ทาง Twitter โดยตรงแล้ว และ แจ้งทีมกฎหมายเรียบร้อย
    • ในอดีต การทำ text mining กับข้อความเพื่อการวิจัยเชิงวิชาการนั้นผิดกฎหมาย แต่ก็มักถูกมองข้าม
      แต่ตอนนี้เมื่อมีโมเดลเชิงพาณิชย์เกิดขึ้น สถานการณ์ก็เปลี่ยนไปอย่างสิ้นเชิง
      ก่อนหน้านี้ก็เคยมีการเผยแพร่ชุดข้อมูลอย่าง Books3 ที่รวมหนังสือลิขสิทธิ์หลายแสนเล่ม
  • หน้านี้ถูกลบไปแล้ว แต่ยังมี สำเนาในเว็บอาร์ไคฟ์ เหลืออยู่
    น่ากังวลที่ คนที่ขาดจริยธรรม กำลังเป็นผู้สร้างเทคโนโลยีอนาคต

    • ที่น่ากังวลยิ่งกว่าคือ พวกเขาอาจไม่คิดด้วยซ้ำว่าการเผยแพร่บทความแบบนี้เป็นปัญหา
      ถ้าคนที่ผ่านกระบวนการคัดเลือกอันเข้มงวดขนาดนั้นยังตัดสินใจแบบนี้ได้
      ก็อดสงสัยไม่ได้ว่าการตัดสินใจที่สำคัญจริง ๆ จะอันตรายแค่ไหน
    • แน่นอนว่าการละเมิดลิขสิทธิ์อาจดูเป็นเรื่องเล็ก เมื่อเทียบกับพฤติกรรมไร้จริยธรรมอื่น ๆ ของบริษัทยักษ์ใหญ่
      แต่นั่นก็ไม่ใช่ข้ออ้างให้พ้นผิดได้
  • ตอนนี้เหมือนเราอยู่ในโลกที่ ทรัพย์สินทางปัญญาไร้ความหมายไปแล้ว
    เลยมีคนแซวว่าอยากหาคนลงทุนใน “สตาร์ตอัปนิยายที่ AI พ่น Harry Potter ออกมาตรง ๆ”

    • มีคนตอบกลับแบบขำ ๆ ว่า “ถ้าเป็นกระบวนการสร้างทาสหุ่นยนต์ ผมลงทุนนะ”
    • ถ้าจะทำจริง สู้ทำ AI เครื่องสร้างแฟนฟิกไม่รู้จบ น่าจะสนุกกว่า
      จนถึงตอนนี้ สิ่งที่ AI ทำได้ดีสม่ำเสมอที่สุดก็คือเรื่องตลก
    • มีการเสนอไอเดีย สตาร์ตอัป AI ที่ขยายได้ไม่สิ้นสุด โดยเอา “Bee Movie” ไปแปลงเป็นสไตล์ Ghibli แล้วแปลงเสียงเป็นข้อความก่อนสร้างกลับเป็น TTS อีกรอบ
    • ยังมีมุกว่าได้สร้างระบบปฏิบัติการใหม่ชื่อ “Vindows”
      พร้อมเสียดสีว่าความคล้ายกับผลิตภัณฑ์เดิมนั้น “เป็นเรื่องบังเอิญล้วน ๆ”
    • แน่นอนว่าเรื่องแบบนี้คือ อภิสิทธิ์ที่มีให้เฉพาะมหาเศรษฐี
      ถ้าเป็นคนธรรมดาทำ ก็ยังเสี่ยงหมดตัวและติดคุกเหมือนเดิม
  • จากทิศทางของ Microsoft ในตอนนี้ เหตุการณ์แบบนี้ไม่ได้น่าแปลกใจเลย
    Microsoft ในปี 2026 ให้ความรู้สึกราวกับว่า กฎหมายลิขสิทธิ์และทรัพย์สินทางปัญญาใช้บังคับไม่ได้อีกต่อไป