บทนำ
- ในสังคมปัจจุบัน เทคโนโลยีปัญญาประดิษฐ์กำลังขับเคลื่อนนวัตกรรมในหลากหลายสาขา และความสำคัญของข้อมูลก็เพิ่มขึ้นอย่างต่อเนื่อง
- ฟอร์แมต HWP มีองค์ประกอบที่เอื้อต่อการฝึก AI
- ไม่ได้มีเพียงข้อความธรรมดาเท่านั้น แต่ยังประกอบด้วยองค์ประกอบหลากหลาย เช่น รูปภาพ ตาราง และแผนภูมิ จึงให้ข้อมูลที่สมบูรณ์ยิ่งขึ้น
- มีการจัดโครงสร้างด้วยรูปแบบต่างๆ เช่น หัวเรื่อง ย่อหน้า และตาราง ซึ่งอาจช่วยให้โมเดล AI เข้าใจและวิเคราะห์เอกสารได้
- บทความนี้จะพาไปดูโครงสร้างของฟอร์แมต HWP และวิธีการจัดเก็บข้อมูลของเอกสาร
HWP ฟอร์แมตคืออะไร?
- ฟอร์แมต HWP เป็นฟอร์แมตเอกสารที่พัฒนาโดย Hancom และเปิดเผยครั้งแรกในปี 1997
- ฟอร์แมตนี้ประกอบด้วย CFB (Compound File Binary File Format) ซึ่งเป็นวิธีจัดเก็บหลาย data stream ไว้ในไฟล์เดียว
- ภายในไฟล์ HWP มีข้อมูลอย่าง File Header, DocInfo, DocOptions, BodyText, Script, HwpSummaryInformation, PrvImage, PrvText เป็นต้น
1. File Header
- ส่วน file header ของไฟล์ HWP มีข้อมูลสำหรับการระบุว่าเป็นเอกสาร Hancom
- มีข้อมูลลายเซ็น เวอร์ชันเอกสาร และข้อมูลการระบุไฟล์ ซึ่งใช้ในการตัดสินประเภทของเอกสาร HWP
2. DocInfo
- เป็นสตรีมที่เก็บข้อมูลส่วนกลาง เช่น แบบอักษรที่ใช้ในเอกสาร คุณสมบัติของตัวอักษร และคุณสมบัติของย่อหน้า
- DocInfo ถูกบันทึกโดยบีบอัดด้วย zlib และเมื่อคลายการบีบอัดแล้วจะสามารถดูข้อมูลต้นฉบับได้
- ข้อมูลหลายประเภทถูกจัดเก็บในรูปแบบเรคอร์ด
3. DocOptions
- ข้อมูลอย่างเอกสารที่เชื่อมโยง เอกสารสำหรับการแจกจ่าย และใบรับรองดิจิทัล ถูกจัดเก็บเป็นสตรีม
4. BodyText (Section)
- เป็นที่จัดเก็บเนื้อหาจริงซึ่งเป็นส่วนเนื้อความของเอกสาร
- ประกอบด้วยหลาย Section stream ตามจำนวนส่วนของเนื้อหา
5. Script
- เป็นสตอเรจที่บันทึกข้อมูลสคริปต์ซึ่งกำหนดไว้ในฟังก์ชันแมโครสคริปต์
6. HwpSummaryInformation
- ใช้จัดเก็บข้อมูลสรุปของเอกสาร และมีโครงสร้างเป็น PropertySet ของ Microsoft
7. PrvImage
- เป็นภาพตัวอย่างของเอกสาร โดยเก็บภาพของหน้าที่หนึ่งไว้
8. PrvText
- เป็นข้อความตัวอย่างของเอกสาร โดยเก็บเนื้อหาของหน้าที่หนึ่งในรูปแบบสตริง Unicode
ทิ้งท้าย
- ฟอร์แมต HWP ถูกจัดเก็บในรูปแบบไบนารี ทำให้มนุษย์อ่านได้โดยตรงยาก และถูกออกแบบมาให้เปิดดูและแก้ไขได้เฉพาะในซอฟต์แวร์บางประเภท
- ในทางกลับกัน ฟอร์แมต HWPX เป็นฟอร์แมตที่อิงกับ Open XML โดยมีการจัดโครงสร้างข้อมูลไว้ จึงถูกออกแบบมาให้มนุษย์เข้าใจเนื้อหาได้ง่าย
- ในตอนถัดไป จะมาดูกันว่าฟอร์แมต HWPX จัดเก็บข้อมูลแตกต่างจากฟอร์แมต HWP อย่างไร
13 ความคิดเห็น
ผมคือ hahnlee ผู้พัฒนา hwp.js (https://github.com/hahnlee/hwp.js) ครับ :)
ตอนที่พัฒนาโปรเจ็กต์นั้นรวมถึงตอนนี้ด้วย ผมไม่ได้ชอบ hwp สักเท่าไรนัก โดยเฉพาะในแง่ระดับการเปิดเผยข้อมูล
อย่างไรก็ตาม ในส่วนที่ว่า "ฟอร์แมต HWP มีองค์ประกอบที่เอื้อต่อการฝึก AI" ผมเห็นด้วยในระดับหนึ่ง
ถ้าพูดจากประสบการณ์ตอนสร้าง RAG ในเกาหลีมีการใช้ตารางกันเยอะเป็นพิเศษครับ แต่ในกรณีของ PDF มันเป็นฟอร์แมตที่ทำขึ้นโดยตั้งสมมติฐานเพื่อการพิมพ์ ดังนั้นคำว่า "ตาราง" จึงไม่มีอยู่ใน PDF มีเพียงเส้นกับข้อความเท่านั้น
เพราะแบบนั้น การดึงข้อมูลจากข้อมูลตารางที่ซับซ้อนจึงทำได้ยากเมื่ออิงจากเอกสาร PDF โดยเฉพาะในกรณีที่ตารางต่อเนื่องข้ามหน้า
ถ้าเปรียบเทียบแบบหยาบ ๆ hwp ให้ความรู้สึกเหมือนเอกสาร rich text ชนิดหนึ่ง ส่วน pdf ให้ความรู้สึกเหมือนเอกสาร txt แน่นอนว่านี่เป็นการพูดเฉพาะในเรื่องของ "ตาราง"
แต่ถ้าถามว่านี่เป็นจุดเด่นเฉพาะของฟอร์แมต hwp ไหม? ผมคิดว่าไม่ใช่ เรื่องที่ไม่ซับซ้อนใช้ Markdown ก็เพียงพอแล้ว และถ้าซับซ้อนขึ้นอีกหน่อย ผมคิดว่าการนิยามด้วย html จะดีกว่า
และที่สำคัญคือ docx หรือ odt ก็มีข้อดีแบบเดียวกันนี้เช่นกัน
หลังจากที่ Netscape แพ้ให้กับ IE แบบหมดรูป ก็เพิ่งมาปล่อยซอร์สและทำอะไรต่อมิอะไรตามหลังอยู่ขะมักเขม้นนั่นแหละ
ผมไม่ชอบ hwp และคงพูดถึงผลิตภัณฑ์ของบริษัท Hancom ในปัจจุบันในแง่ดีไม่ได้ แต่คิดว่าในอดีต ตัวผลิตภัณฑ์เองเป็นซอฟต์แวร์ที่ยอดเยี่ยมกว่า Word มากทีเดียว
ผมก็คิดว่าเป็นซอฟต์แวร์ที่ยอดเยี่ยมอยู่เหมือนกัน จนกระทั่ง Han/Geul 97 ออกมา
อะไรเนี่ยจริงๆ เหรอ?
ชะตากรรมที่น่าเสียดายของรูปแบบไฟล์เอกสารที่ไม่ได้กลายเป็นมาตรฐานโลก
ฉันเคยเรียนการใช้โปรแกรมประมวลผลคำด้วย Arae-a Hangeul มาก็จริง แต่ตอนนี้มันน่าจะเป็นโบราณวัตถุที่ควรเลือนหายไปเพื่อการพัฒนาของเกาหลีใต้แล้ว
เมื่อเทียบกับ MS Word หรือ Libre Office แล้ว ผมรู้สึกว่า Hancom Hangul ใช้งานสะดวกกว่ามากในการทำเอกสารให้ออกมาตามรูปแบบที่ต้องการ ส่วนการเผยแพร่ก็ทำเป็น PDF ได้อยู่แล้ว
แน่นอนว่าอาจเป็นเพราะผมคุ้นเคยกับ Hancom Hangul มากกว่า เลยรู้สึกแบบนั้นด้วยครับ
"ฟอร์แมต HWP มีองค์ประกอบที่เอื้อต่อการฝึก AI"
นี่เรื่องจริงเหรอ..?
ก็น่าจะให้การฝึกของ AI เน้นไปที่ PDF แล้วทำตัวแปลงหรือทำเอกสาร Hancom Hangul เป็น PDF ให้ดี ๆ จะดีกว่าไหมครับ 555
ผมก็อ่านตรงนั้นแล้วรู้สึกแปลกใจเหมือนกัน แต่พอเห็นโดเมนของต้นฉบับก็เข้าใจเลย 555
อ๋อ.. เข้าใจแล้วครับ.. 55555555
ผมไม่ค่อยเห็นด้วยเท่าไหร่นะ ถ้าเป็น
hwpxที่ในเนื้อหาก็มีพูดถึงไว้ด้วยก็ว่าไปอย่าง...