การเติบโตของการใช้งาน Large Language Models (LLMs) ได้จุดประกายความสนใจในเครื่องมือแปลง HTML เป็น Markdown อีกครั้ง โดยนักพัฒนากำลังมองหาวิธีที่มีประสิทธิภาพในการประมวลผลเนื้อหาเว็บไซต์ภายใต้ข้อจำกัดของโทเค็น เครื่องมือแปลงที่พัฒนาด้วยภาษา Go ได้กลายเป็นโซลูชันที่โดดเด่น โดยนำเสนอทั้งไลบรารีและบริการ API สำหรับการแปลงเนื้อหา HTML ให้เป็น Markdown ที่อ่านง่ายและสะอาด
![]() |
---|
โค้ดตัวอย่างนี้แสดงฟังก์ชันใน Go สำหรับการลงทะเบียนตัวเรนเดอร์แบบกำหนดเองในตัวแปลง HTML เป็น Markdown |
ประสิทธิภาพของโทเค็นสำหรับการประมวลผล LLM
หนึ่งในข้อดีที่น่าสนใจที่สุดของการแปลง HTML เป็น Markdown สำหรับการประมวลผล LLM คือการลดจำนวนการใช้โทเค็นอย่างมีนัยสำคัญ ดังที่แสดงในการทดสอบของชุมชน:
ใช้ https://tools.simonwillison.net/jina-reader เพื่อดึงข้อมูลหน้าแรกของ https://news.ycombinator.com/ เป็น Markdown และวางใน https://tools.simonwillison.net/claude-token-counter - ใช้ 1,550 โทเค็น ในขณะที่เนื้อหาเดียวกันในรูปแบบ HTML ใช้ถึง 13,367 โทเค็น
ความแตกต่างอย่างมากของจำนวนโทเค็นนี้ทำให้การแปลงเป็น Markdown มีคุณค่าอย่างยิ่งสำหรับนักพัฒนาที่ทำงานภายใต้ข้อจำกัดของบริบท LLM
การประยุกต์ใช้งานจริง
นักพัฒนาได้ค้นพบวิธีสร้างสรรค์ในการนำการแปลง HTML เป็น Markdown ไปใช้ในเวิร์กโฟลว์ของตน หนึ่งในการประยุกต์ใช้ที่น่าสนใจคือการใช้ Lambda functions เพื่อแปลงหน้าเว็บที่บุ๊กมาร์กไว้เป็น Markdown โดยอัตโนมัติและจัดเก็บใน S3 ทำให้เนื้อหาพร้อมใช้งานสำหรับเครื่องมืออย่าง Obsidian วิธีนี้พิสูจน์แล้วว่ามีประโยชน์อย่างมากสำหรับการจัดการความรู้ส่วนบุคคลและการเก็บถาวรเนื้อหา
ความพร้อมใช้งานของ API และความท้าทายในการขยายระบบ
แม้จะมีโซลูชัน API ฟรี แต่ก็เกิดความท้าทายในการขยายระบบ ผู้ดูแลโครงการต้องเพิ่มข้อกำหนดเรื่อง API key หลังจากพบการใช้งานที่ผิดปกติประมาณ 5 ล้านคำขอต่อวันบนบริการสาธิต ซึ่งชี้ให้เห็นถึงความจำเป็นในการจำกัดการใช้งานที่เหมาะสมสำหรับ API สาธารณะ
การผสานกับระบบอัตโนมัติของเบราว์เซอร์
สำหรับเว็บไซต์ที่ใช้ JavaScript มาก ชุมชนแนะนำให้รวมการแปลง HTML เป็น Markdown เข้ากับเครื่องมืออัตโนมัติของเบราว์เซอร์อย่าง Playwright หรือ Puppeteer วิธีนี้ช่วยให้มั่นใจได้ว่าจะสามารถดึงเนื้อหาจากหน้าเว็บแบบไดนามิกได้อย่างถูกต้องก่อนแปลงเป็น Markdown
การพัฒนาในอนาคต
ชุมชนได้ระบุพื้นที่สำหรับการพัฒนาที่อาจเกิดขึ้น ได้แก่:
- การขจัดความซ้ำซ้อนของ N-gram สำหรับการลบเนื้อหาส่วนหัวและส่วนท้ายที่ซ้ำกัน
- การจัดการกรณีพิเศษที่ดีขึ้นในเว็บไซต์ต่างๆ
- การผสานกับอัลกอริทึมการดึงเนื้อหาที่คล้ายกับ Mozilla's Readability
- การรองรับการแสดงผลเนื้อหาแบบไดนามิกที่ดีขึ้น
เครื่องมือเหล่านี้ยังคงพัฒนาต่อไปตามความต้องการของแอปพลิเคชัน LLM ที่เพิ่มขึ้น ทำให้เนื้อหาเว็บเข้าถึงและประมวลผลได้ง่ายขึ้นสำหรับระบบ AI ในขณะที่ยังคงรักษาประสิทธิภาพในการใช้โทเค็น
แหล่งที่มา: html-to-markdown แหล่งที่มา: Discussion Thread