Kam Mueang recorderอัดเสียงคำเมือง
Old Lanna, as an image model pictures it: an illustration, not a photograph.ล้านนาในอดีต ตามที่โมเดลสร้างภาพวาดขึ้น เป็นภาพประกอบ ไม่ใช่ภาพถ่าย
Summary · 3 and 4 November 2026สรุปงาน · 3 และ 4 พฤศจิกายน 2569
Thank you, Pan: two more sittings, and all five questions answered. Your answers settle things only you could tell us.
ขอบคุณมาก Pan อัดเสียงอีกสองครั้ง และตอบคำถามครบทั้งห้าข้อ คำตอบของคุณช่วยตัดสินเรื่องที่มีแต่คุณบอกได้
The sittings of 3 and 4 Novemberการอัดเสียงวันที่ 3 และ 4 พฤศจิกายน
- 27 sentences recorded: 23 on Tuesday morning and 4 on Wednesday morning. None too loud, none cut off at the end, none needs recording again. On Tuesday the room was a little noisier than usual (the background about -46 dB, where under -50 is best); Wednesday's was quiet again. A quiet room helps your voice the most.อัดไป 27 ประโยค วันอังคารตอนเช้า 23 ประโยค และวันพุธตอนเช้า 4 ประโยค ไม่มีเสียงไหนดังจนแตก ไม่มีเสียงไหนถูกตัดท้าย ไม่ต้องอัดใหม่สักประโยค วันอังคารห้องมีเสียงรบกวนมากกว่าปกติเล็กน้อย (เสียงพื้นหลังประมาณ -46 dB ซึ่งต่ำกว่า -50 จะดีที่สุด) วันพุธห้องเงียบดีเหมือนเดิม ห้องที่เงียบช่วยเสียงของคุณได้มากที่สุด
- 20 sentences corrected. The writing rules learned from your earlier corrections held on every line you read.แก้ไป 20 ประโยค กฎการเขียนที่ได้จากการแก้ของคุณครั้งก่อน ๆ ใช้ได้ถูกต้องทุกประโยคที่คุณอ่าน
- Your notes explained more of your words, among them ฮู้กำ (รู้ความ), กั๊บไฟ (ไฟแซ็ก), ปุ๊ก (พวง), บะหนุน (ขนุน) and ฮ้องลุ๊ก (ปลุกให้ตื่น).บันทึกของคุณอธิบายคำของคุณเพิ่มอีก เช่น ฮู้กำ คือ รู้ความ, กั๊บไฟ คือ ไฟแซ็ก, ปุ๊ก คือ พวง, บะหนุน คือ ขนุน และ ฮ้องลุ๊ก คือ ปลุกให้ตื่น
- The listener the assistant uses heard these sentences, which it had never heard before, with about 7 letters in every 100 wrong, even in Tuesday's noisier room. Ordinary Whisper, not trained on Kam Mueang, got about 20 in 100 wrong.โปรแกรมฟังเสียงที่ผู้ช่วยใช้อยู่ ฟังประโยคเหล่านี้ซึ่งไม่เคยได้ยินมาก่อน ผิดประมาณ 7 ตัวอักษรในทุก 100 ตัว แม้ในห้องที่มีเสียงรบกวนมากกว่าปกติของวันอังคาร ส่วน Whisper ธรรมดาที่ไม่ได้ฝึกคำเมือง ผิดประมาณ 20 ใน 100
Your answers to the five questionsคำตอบห้าข้อของคุณ
- แห๋ม everywhere; เซียง becomes อ้าย for a young man and ลุง for an older one; บ่าว and อ้าย are both fine, and so are หน่อย and กำ (กำ sounds more Kam Mueang). The project owner now decides how the script and the cartoons change to follow them.เขียน แห๋ม ทุกที่ เซียง เปลี่ยนเป็น อ้าย สำหรับคนหนุ่ม และ ลุง สำหรับคนแก่ บ่าว กับ อ้าย ใช้ได้ทั้งสองแบบ หน่อย กับ กำ ก็เช่นกัน (กำ เป็นคำเมืองมากกว่า) ต่อจากนี้เจ้าของโครงการจะตัดสินว่าจะแก้ประโยคที่อัดและการ์ตูนตามคำตอบอย่างไร
The next tale you chose: the White Eel and Wiang Nong Lomนิทานเรื่องต่อไปที่คุณเลือก: ตำนานปลาไหลเผือก เวียงหนองหล่ม
You asked for more research, so viewers get the most accurate story. Here is what it found.
คุณบอกว่าต้องค้นคว้าเพิ่ม เพื่อให้ผู้ชมได้เรื่องที่ถูกต้องที่สุด นี่คือสิ่งที่พบ
- The oldest written telling is the Singhanavati chronicle (ตำนานสิงหนวติกุมาร, printed in 1936). In it the fish is a white barb, ปลาตะเพียนเผือก, as thick as a sugar palm and about 7 wa long, caught in the Kok river under King Mahachaichana. Nearly every telling today, and the shrine at Ko Mae Mai, says a white eel.เรื่องที่เขียนไว้เก่าที่สุดคือ ตำนานสิงหนวติกุมาร (พิมพ์ พ.ศ. 2479) ในนั้นปลาเป็น ปลาตะเพียนเผือก ใหญ่เท่าต้นตาล ยาวประมาณ 7 วา จับได้ในแม่น้ำกก สมัยพระองค์มหาชัยชนะ แต่เกือบทุกฉบับในปัจจุบัน รวมทั้งที่เกาะแม่ม่าย เล่าว่าเป็นปลาไหลเผือก
- When the city was founded, the naga Phanthu, dressed as a Brahman, gave the prince one piece of advice: have a heart that loves people and animals. The city sank the night it killed a great animal and left out the one old widow nobody fed.ตอนสร้างเมือง พญานาคพันธุแปลงเป็นพราหมณ์มาให้คำสอนเจ้าชายข้อเดียว คือ ให้มีใจรักคนและสัตว์ทั้งหลาย แล้วเมืองก็ล่มในคืนที่ฆ่าสัตว์ใหญ่ และไม่แบ่งให้แม่หม้ายเฒ่าคนเดียวที่ไม่มีใครเลี้ยงดู
- The young man who stayed at her house ate nothing and told her: whatever happens, unless you see my face, do not come down from the house. The chronicle never says who he was; later tellings call him a naga. She heard three roars in the night: at dusk, at midnight and before dawn.ชายหนุ่มที่มาขอพักบ้านนางไม่กินอะไรเลย และสั่งว่า ถ้ามีเหตุอะไร ถ้าไม่เห็นหน้าหลาน อย่าลงจากเรือน ในตำนานไม่ได้บอกว่าเขาเป็นใคร ฉบับหลัง ๆ เล่าว่าเป็นนาค คืนนั้นนางได้ยินเสียงดังสามครั้ง ตอนค่ำ เที่ยงคืน และใกล้รุ่ง
- In the morning the village heads found only water and her house. They said they had been wrong to look down on the old, took her in and cared for her, then chose a leader together and built a new town, Wiang Prueksa. The tale ends in hope, not only in loss.รุ่งเช้า ขุนพันนาและนายบ้านมาเห็นแต่น้ำกับเรือนของนาง พวกเขาบอกกันว่าผิดแล้วที่ประมาทคนเฒ่า จึงรับนางไปเลี้ยงดู แล้วเลือกผู้นำร่วมกันและสร้างเวียงใหม่ชื่อ เวียงปรึกษา เรื่องจึงจบด้วยความหวัง ไม่ใช่แค่ความสูญเสีย
- What is known for certain: the lake is natural and very old, much older than any town; the ground there does shake (the Mae Chan fault, with a large earthquake measured about 1,500 years ago); and no building older than 545 CE has been found in the swamp. Yonok itself is known only from the old chronicles.สิ่งที่รู้แน่: หนองน้ำเกิดเองตามธรรมชาติและเก่ามาก เก่ากว่าเมืองใด ๆ แผ่นดินแถวนั้นไหวจริง (รอยเลื่อนแม่จัน มีแผ่นดินไหวใหญ่ที่วัดอายุได้ราว 1,500 ปีก่อน) และไม่พบสิ่งก่อสร้างที่เก่ากว่า พ.ศ. 1088 ในหนองน้ำ เมืองโยนกเองรู้จักได้จากตำนานเก่าเท่านั้น
- Still to choose for the film: the eel or the barb, and whether the young man stays a mystery or shows a naga's tail as he leaves. If your family tells it differently, please tell the owner.ยังต้องเลือกสำหรับการ์ตูน: จะเป็นปลาไหลหรือปลาตะเพียน และชายหนุ่มจะเป็นปริศนาต่อไป หรือจะเห็นหางนาคตอนเขาจากไป ถ้าครอบครัวของคุณเล่าต่างไปจากนี้ ช่วยบอกเจ้าของโครงการด้วย
What your work has built so farสิ่งที่งานของคุณสร้างขึ้นมาแล้ว
- 568 sentences recorded, in 19 sittings: 53 minutes of your voice.อัดเสียงแล้ว 568 ประโยค จากการอัด 19 ครั้ง รวมเสียงของคุณ 53 นาที
- 436 sentences corrected. From them came the 45 writing rules the computer uses whenever it writes Kam Mueang, and your words in the word list.แก้ประโยคแล้ว 436 ประโยค จากการแก้เหล่านี้ได้กฎการเขียน 45 ข้อ ที่คอมพิวเตอร์ใช้ทุกครั้งที่เขียนคำเมือง และคำของคุณในรายการคำ
- A listener that understands Kam Mueang. Trained on your recordings together with other Northern speakers', it hears seven Northern speakers it had never heard with about 7 letters in 100 wrong.โปรแกรมฟังเสียงที่ฟังคำเมืองได้ ฝึกจากเสียงของคุณร่วมกับเสียงของคนเหนือคนอื่น ๆ และฟังคนเหนือเจ็ดคนที่ไม่เคยได้ยินมาก่อน ผิดประมาณ 7 ตัวอักษรใน 100
- A writer that puts answers into Kam Mueang, which has now learned from 465 of your sentences.โปรแกรมเขียนคำเมือง ซึ่งตอนนี้เรียนจากประโยคของคุณแล้ว 465 ประโยค
- The first cartoon tale speaks every line in your own voice.การ์ตูนนิทานเรื่องแรกเล่าทุกประโยคด้วยเสียงของคุณเอง
How your recordings will be usedเสียงที่คุณอัดจะนำไปใช้อย่างไร
Each sentence you read is kept as a pair: the sound, and the exact words on the screen. The pairs teach three computer models Kam Mueang:
ทุกประโยคที่คุณอ่านจะเก็บไว้เป็นคู่ คือเสียงพูด กับข้อความบนจอทุกตัวอักษร คู่เหล่านี้ใช้สอนโมเดลคอมพิวเตอร์สามตัวให้รู้จักคำเมือง:
- A voice that speaks Kam Mueang in your voice. It learns which sounds go with which letters, so it can then read sentences you never read.
- A listener that hears Kam Mueang and writes it down.
- A text model. Your sentences, as you correct them, with their meaning in Central Thai and English, teach the assistant to write Kam Mueang the way people say it. If you change what a sentence means, write the new meaning in the note.
- เสียงพูด ที่พูดคำเมืองด้วยเสียงของคุณ โมเดลจะเรียนว่าตัวอักษรแบบไหนออกเสียงอย่างไร จึงอ่านประโยคที่คุณไม่เคยอ่านได้
- ตัวฟัง ที่ฟังคำเมืองแล้วเขียนออกมาเป็นข้อความ
- โมเดลข้อความ ประโยคของคุณตามที่คุณแก้ พร้อมความหมายภาษาไทยกลางและภาษาอังกฤษ จะสอนผู้ช่วยให้เขียนคำเมืองแบบที่คนพูดกันจริง ถ้าแก้จนความหมายเปลี่ยน ให้เขียนความหมายใหม่ไว้ในหมายเหตุ
The models copy exactly what they hear and read. So read each sentence as it is written, gently and the same way every time, and change the sentence before you record it if it is not how you would say it. A few sentences are kept out of the training, to test the finished voice against your own reading. The recordings stay private. The finished voice will be given away free, for non-commercial use only, and may not be used to pretend to be anyone.
โมเดลจะเลียนแบบสิ่งที่ได้ยินและได้อ่านทุกอย่าง จึงขอให้อ่านตามที่เขียนไว้ ด้วยน้ำเสียงนุ่มนวลแบบเดียวกันทุกครั้ง ถ้าประโยคไหนไม่ใช่แบบที่คุณพูด ให้แก้ประโยคก่อนอัด ประโยคจำนวนหนึ่งจะไม่ใช้สอนโมเดล แต่เก็บไว้ทดสอบเสียงพูดที่ได้ เทียบกับเสียงอ่านจริงของคุณ เสียงที่อัดเก็บไว้เป็นความลับ เสียงพูดที่ได้จะแจกให้ใช้ฟรี เฉพาะการใช้ที่ไม่ใช่เชิงพาณิชย์ และห้ามนำไปใช้แอบอ้างเป็นผู้อื่น
Who is recording: Pan 🐼 is chosen when the page opens: her takes are the real recordings that train the voice. To try the page out, choose Tester: those takes go to a separate folder and are never used for training. Either way the page carries on from the first sentence not yet recorded, and you can switch at any time. Pan's saved takes stay private: listen to a take before you save it.ใครอัดเสียง: หน้านี้เลือก Pan 🐼 ไว้ตั้งแต่เปิด เสียงที่เธออัดคือเสียงจริงที่ใช้สอนเสียงพูด ถ้าจะลองใช้หน้านี้ ให้เลือก ผู้ทดสอบ เสียงที่อัดจะเก็บแยกไว้อีกโฟลเดอร์ และไม่นำไปใช้สอนโมเดล ไม่ว่าเลือกแบบไหน หน้านี้จะอัดต่อจากประโยคแรกที่ยังไม่ได้อัด และเปลี่ยนได้ทุกเมื่อ เสียงที่ Pan บันทึกไว้แล้วเก็บเป็นความลับ ให้ฟังก่อนกดบันทึก
Choose folder: where each take is saved as a sound file named after its sentence (K0001.wav, K0002.wav, …), with a log of every take. Use the same folder every time: the page counts the files already there and carries on.เลือกโฟลเดอร์: ที่เก็บเสียงแต่ละประโยคเป็นไฟล์ ตั้งชื่อตามประโยค (K0001.wav, K0002.wav, …) พร้อมบันทึกการอัดทุกครั้ง ใช้โฟลเดอร์เดิมทุกครั้ง หน้านี้จะนับไฟล์ที่มีอยู่แล้วและอัดต่อ
Start microphone: lets the page use the microphone. If a list appears, pick the USB microphone; the page then shows its name and sample rate (44,100 or 48,000 Hz). Nothing is cleaned up or made louder: your voice is saved as you speak.เปิดไมค์: ให้หน้านี้ใช้ไมโครโฟน ถ้ามีรายการให้เลือก ให้เลือกไมค์ USB แล้วหน้านี้จะแสดงชื่อไมค์และอัตราสุ่มสัญญาณ (44,100 หรือ 48,000 Hz) ไม่มีการลดเสียงรบกวนหรือเพิ่มความดัง เสียงของคุณจะเก็บไว้ตามที่พูดจริง
Room check: nobody speaks for 5 seconds while the page measures the room's background noise. About -60 dB or lower is very quiet; above -50 dB, find the noise (a fan, a fridge, the air conditioner) and stop it. The result is saved with your recordings, so the people training the models know how quiet each sitting was.ตรวจเสียงห้อง: ทุกคนเงียบ 5 วินาที ระหว่างที่หน้านี้วัดเสียงรบกวนในห้อง ประมาณ -60 dB หรือต่ำกว่าคือเงียบมาก ถ้าเกิน -50 dB ให้หาต้นเสียง (พัดลม ตู้เย็น แอร์) แล้วปิด ผลการตรวจจะเก็บไว้กับเสียงที่อัด เพื่อให้คนที่ฝึกโมเดลรู้ว่าแต่ละครั้งที่อัดเงียบแค่ไหน
How to useวิธีใช้
- Use Chrome or Edge. Plug in the USB microphone before you open this page.ใช้ Chrome หรือ Edge เสียบไมค์ USB ก่อนเปิดหน้านี้
- Choose the folder for the recordings. Use the same folder every time: the page carries on from the first sentence not yet recorded.เลือกโฟลเดอร์เก็บไฟล์เสียง ใช้โฟลเดอร์เดิมทุกครั้ง หน้านี้จะอัดต่อจากประโยคที่ยังไม่ได้อัด
- Start the microphone. If there is a list, pick the USB microphone. Then do the room check: nobody speaks for 5 seconds. Record works only after these three steps.เปิดไมค์ ถ้ามีรายการให้เลือก ให้เลือกไมค์ USB แล้วตรวจเสียงในห้อง ทุกคนเงียบ 5 วินาที ปุ่มอัดจะกดได้เมื่อทำครบสามขั้นนี้แล้ว
- Read the sentence first. If it is wrong, or not how people say it, press E (✎ Change this sentence) and write it the way you would say it. Add a note in Thai or English if it helps. If nobody would say it, tick "Leave this sentence out".อ่านประโยคก่อน ถ้าผิด หรือไม่ใช่แบบที่คนพูดกัน ให้กด E (✎ แก้ประโยคนี้) แล้วเขียนแบบที่คุณพูดจริง จะเขียนหมายเหตุเป็นภาษาไทยหรืออังกฤษก็ได้ ถ้าไม่มีใครพูดแบบนี้เลย ให้ติ๊ก "ไม่ใช้ประโยคนี้"
- Write a change in ordinary Thai letters, the way Kam Mueang is usually written: that is the spelling the voice learns. ⌨ Keyboard has the letters of the Kam Mueang alphabet and Lanna letters, for the note if you want them, and under the sentence the page shows the tone each syllable is read with.เขียนประโยคที่แก้ด้วยตัวอักษรไทยตามปกติ แบบที่คนมักเขียนคำเมืองกัน เพราะเสียงพูดเรียนรู้จากตัวสะกดแบบนั้น ⌨ แป้นพิมพ์มีตัวอักษรของอักษรคำเมือง และตัวเมือง ไว้ใช้ในหมายเหตุถ้าต้องการ และใต้ประโยค หน้านี้จะบอกว่าแต่ละพยางค์อ่านเป็นวรรณยุกต์อะไร
- For each sentence: press Space, wait for the red light, read the sentence as it is written, gently and the same way every time, wait a moment, press Space.ทุกประโยค: กด Space รอไฟแดง อ่านตามที่เขียนไว้ ด้วยน้ำเสียงนุ่มนวลแบบเดียวกันทุกครั้ง อ่านจบแล้วรอสักครู่ แล้วกด Space
- Press P to listen. Enter saves it and goes to the next sentence. R records it again. While a take is being recorded, ✕ Cancel (or Esc) throws it away.กด P เพื่อฟัง กด Enter เพื่อบันทึกแล้วไปประโยคต่อไป กด R เพื่ออัดใหม่ ระหว่างอัดอยู่ กด ✕ ยกเลิก (หรือ Esc) เพื่อทิ้งเทคนั้น
Check Kam Mueang translations (40 short passages)ตรวจคำแปลคำเมือง (40 ข้อ)
Each passage is in Central Thai, with Kam Mueang versions below it, written by people and by computer programs, in mixed order. For each version choose one: right (a Northern person would say this), close (some words are wrong), or wrong (this is not Kam Mueang). If none is right, write how you would say it. Your answers are kept with your recordings, not shown to anyone.แต่ละข้อเป็นข้อความภาษาไทยกลาง ข้างล่างมีคำแปลเป็นคำเมืองหลายแบบ บางแบบคนเขียน บางแบบคอมพิวเตอร์เขียน เรียงสลับกัน แต่ละแบบให้เลือกหนึ่งอย่าง: ถูก (คนเมืองพูดแบบนี้) พอได้ (มีบางคำผิด) หรือ ผิด (ไม่ใช่คำเมือง) ถ้าไม่มีแบบไหนถูก ให้พิมพ์แบบที่คุณพูด คำตอบจะเก็บไว้กับเสียงที่อัด ไม่แสดงให้ใครเห็น
How the recordings will be used: the technical detailsเสียงที่อัดจะนำไปใช้อย่างไร: รายละเอียดทางเทคนิค
Pan's first sitting was on 13 October 2026; no model has been trained on her voice yet. This is the plan as of 15 October 2026, and it will change as the work teaches us.
Pan อัดเสียงครั้งแรกเมื่อ 13 ตุลาคม 2569 ยังไม่มีโมเดลใดฝึกจากเสียงของเธอ นี่คือแผน ณ วันที่ 15 ตุลาคม 2569 และอาจเปลี่ยนไปตามสิ่งที่ได้เรียนรู้ระหว่างทำ
1 · Recording1 · การอัดเสียง
- Chrome or Edge records with the browser's echo cancelling, noise suppression and automatic gain switched off: a mono, 24-bit WAV at the microphone's own rate (44.1 or 48 kHz).
- The room check measures 5 seconds of silence (about -60 dB or lower is good), and between takes the page keeps measuring the room and shows it beside the level meter. While a take is recorded, the line under the meter shows its loudest moment so far, red once it passes -3 dB. Each take is checked for a level that is too high (the loudest word above -3 dB, or any sample at full scale, where the sound breaks up) or too low (below -20 dB); the band marked on the meter, -10 to -4 dB, is where the loudest words should land. It is also checked for a very short take, speech that starts before the red light, and a noisy room (a floor above -50 dB).
- Each take is cut to its speech, keeping 0.35 s of quiet before the first word and after the last, so the clicks of the Record and Stop keys and the waiting at both ends are not saved. How much was cut off each end is kept with the take's details.
- Each take goes to a small cloud function and is kept in a private, versioned storage bucket: the sound (K0001.wav) and its details (K0001.json): the exact text on the screen, the original text and the note if the sentence was changed, the length, the levels, the sample rate and the time. Every change to a sentence goes into one file of corrections, and a take recorded before its sentence was last changed is asked for again.
- Pan's takes and Tester's are kept in separate folders, and Tester's are never used for training. Pan's saved takes are never handed back out through this page.
- Chrome หรือ Edge อัดเสียงโดยปิดการตัดเสียงสะท้อน การลดเสียงรบกวน และการปรับความดังอัตโนมัติของเบราว์เซอร์ ได้ไฟล์ WAV เสียงโมโน 24 บิต ที่อัตราสุ่มของไมค์เอง (44.1 หรือ 48 kHz)
- การตรวจเสียงห้องวัดความเงียบ 5 วินาที (ประมาณ -60 dB หรือต่ำกว่าถือว่าดี) และระหว่างประโยค หน้านี้วัดเสียงห้องต่อเนื่องและแสดงไว้ข้างแถบระดับเสียง ระหว่างอัด บรรทัดใต้แถบระดับเสียงจะแสดงจุดที่ดังที่สุดของประโยคนั้น และเป็นสีแดงเมื่อเกิน -3 dB เสียงแต่ละประโยคจะถูกตรวจว่าดังเกินไป (คำที่ดังที่สุดเกิน -3 dB หรือมีจุดที่เสียงแตก) หรือเบาเกินไป (ต่ำกว่า -20 dB) ช่องที่ขีดไว้บนแถบ คือ -10 ถึง -4 dB เป็นระดับที่คำที่ดังที่สุดควรอยู่ นอกจากนี้ยังตรวจว่าสั้นมาก เริ่มพูดก่อนไฟแดง หรือห้องมีเสียงรบกวน (พื้นเสียงเกิน -50 dB)
- เสียงแต่ละประโยคจะถูกตัดให้เหลือเฉพาะช่วงที่พูด โดยเก็บความเงียบไว้ 0.35 วินาทีก่อนคำแรกและหลังคำสุดท้าย เสียงกดปุ่มอัดและปุ่มหยุด และช่วงรอที่หัวท้ายจึงไม่ถูกบันทึก ส่วนที่ตัดออกแต่ละด้านเก็บไว้ในรายละเอียดของประโยคนั้น
- เสียงแต่ละประโยคส่งไปยังโปรแกรมเล็ก ๆ บนคลาวด์ และเก็บไว้ในที่เก็บข้อมูลส่วนตัวที่เก็บไว้ทุกรุ่น คือไฟล์เสียง (K0001.wav) และรายละเอียด (K0001.json): ข้อความบนจอทุกตัวอักษร ข้อความเดิมและหมายเหตุถ้ามีการแก้ประโยค ความยาว ระดับเสียง อัตราสุ่ม และเวลา การแก้ประโยคทุกครั้งเก็บรวมไว้ในไฟล์เดียว และเสียงที่อัดก่อนประโยคถูกแก้ครั้งล่าสุด จะถูกขอให้อัดใหม่
- เสียงของ Pan กับของผู้ทดสอบเก็บแยกโฟลเดอร์กัน เสียงของผู้ทดสอบไม่นำไปใช้สอนโมเดล และหน้านี้จะไม่ส่งเสียงที่ Pan บันทึกไว้แล้วออกไปให้ใครอีก
2 · Checks, and the test set2 · การตรวจ และชุดทดสอบ
- After each sitting the takes are copied to a DGX Spark, the GPU computer that trains the models.
- 51 sentences are kept out of all training: K0001 to K0022, and every sentence whose number is a multiple of 50. Pan reads them like the others, and her own readings are what every trained voice is measured against.
- A Central Thai speech recogniser (Whisper large-v3) writes down every take. A take is listened to again when its errors are far above Pan's usual, or its speed far from her usual. A fixed limit cannot work: on real Northern speech this recogniser gets about 47% of the letters wrong.
- The audio is resampled for each model, and the silence at each end is trimmed.
- หลังอัดแต่ละครั้ง เสียงจะถูกคัดลอกไปที่ DGX Spark ซึ่งเป็นคอมพิวเตอร์การ์ดจอที่ใช้ฝึกโมเดล
- มี 51 ประโยคที่ไม่ใช้ฝึกเลย คือ K0001 ถึง K0022 และทุกประโยคที่เลขหารด้วย 50 ลงตัว Pan อ่านประโยคเหล่านี้เหมือนประโยคอื่น และเสียงอ่านจริงของเธอคือสิ่งที่ใช้วัดเสียงพูดที่ฝึกได้ทุกตัว
- เครื่องรู้จำเสียงภาษาไทยกลาง (Whisper large-v3) ถอดทุกเสียงเป็นข้อความ เสียงไหนที่ผิดมากกว่าปกติของ Pan มาก หรือเร็วช้าต่างจากปกติของเธอมาก จะมีคนฟังซ้ำ ใช้เกณฑ์ตายตัวไม่ได้ เพราะกับเสียงคำเมืองจริง เครื่องนี้ถอดตัวอักษรผิดประมาณ 47%
- เสียงจะถูกแปลงอัตราสุ่มให้ตรงกับแต่ละโมเดล และตัดช่วงเงียบหัวท้ายออก
3 · How a voice is trained from the pairs3 · เสียงพูดฝึกจากคู่เสียงกับข้อความอย่างไร
Every voice here starts as a finished open model that already speaks some language. Training means showing it Pan's pairs, one small batch at a time: the model makes its guess at the sound for the text, the difference between its guess and her real take is measured as one number, the loss, and the model's millions of internal numbers are nudged a little in the direction that would have made the loss smaller. One nudge is a step; one trip through all her takes is a pass. After enough passes the loss on sentences the model has never seen stops falling, and that is when training stops: beyond that point it only memorises her takes. The pairs are never stored inside the model; what remains is the pattern of how her voice says each sound and tone.
เสียงพูดทุกตัวที่นี่เริ่มจากโมเดลเปิดที่พูดภาษาใดภาษาหนึ่งได้อยู่แล้ว การฝึกคือการให้มันดูคู่เสียงกับข้อความของ Pan ทีละชุดเล็ก ๆ: โมเดลเดาเสียงจากข้อความ แล้ววัดความต่างระหว่างที่เดากับเสียงจริงของเธอออกมาเป็นตัวเลขหนึ่งตัว เรียกว่า loss จากนั้นขยับตัวเลขภายในนับล้านตัวของโมเดลไปทีละนิดในทางที่จะทำให้ loss เล็กลง การขยับหนึ่งครั้งคือหนึ่ง step การวนครบทุกเสียงของเธอหนึ่งรอบคือหนึ่ง pass เมื่อฝึกไปพอแล้ว loss ของประโยคที่โมเดลไม่เคยเห็นจะหยุดลด นั่นคือจุดที่หยุดฝึก เพราะเกินจากนั้นมันจะเริ่มจำเสียงของเธอแทนที่จะเรียน คู่เสียงกับข้อความไม่ได้ถูกเก็บไว้ในโมเดล สิ่งที่เหลืออยู่คือรูปแบบว่าเสียงของเธอออกเสียงและวรรณยุกต์แต่ละอย่างอย่างไร
- Getting the data ready. One list, one line per take: where the sound is, and the text exactly as it was on the screen when it was recorded, corrections included. The 51 test-set sentences are left off the list, and so is any take whose text the model's reader cannot handle, so the voice never learns sound for words it was not shown. Each model's trainer resamples the sound to its own rate: 16 kHz for VoxCPM2's encoder, 22.05 kHz for Piper. The reading script is ordered so that the first sentences cover the most different syllables and tones, so training can start before the whole script is read, and every sitting makes the next run better.
- Three text-to-speech models were tried before Pan recorded anything, each reading the same eight Kam Mueang passages untrained, and scored by how many letters a speech recogniser got wrong when it listened to them. The three are different kinds of machine, and that decides what each is for:
- VoxCPM2 is a large open model under the Apache licence, which allows any use. Inside it, a language model, the same kind of network that powers chat assistants, reads the Thai letters and predicts the speech as a sequence of sound tokens, and a second part, a diffusion head, turns those tokens into a waveform at 48 kHz. Because it reads letters directly, Pan's corrected text goes in as written. It needs a graphics card and about 1.25 seconds of computing for each second of speech.
- OmniVoice is another large open model, the clearest and fastest of the three untrained: a recogniser got 7.2% of letters wrong on its reading, against 8.2% for VoxCPM2, and it made speech ten times faster than real time. It can copy a voice from a few seconds of someone's speech, or invent one from a written description. Its drawbacks are the licences. Its weights are CC BY-NC, so anything made with it must be given away free, which fits this project; but the part of it that turns sound into tokens, its tokenizer, is borrowed from another model (Higgs Audio 2) under a licence whose terms carry over to any model trained on its output. So OmniVoice may become a third voice, and must never be used to make practice speech for training Piper.
- Piper is the opposite kind: a small open voice built for home assistants and single-board computers, on a design called VITS that goes from a string of sounds straight to a waveform in one network. A finished Piper voice is one file of about 63 MB that speaks on any computer's ordinary processor, even inside a browser. It cannot read letters, so every sentence must first be turned into sounds and tones by a separate step, and that step is where Kam Mueang needs its own work.
- VoxCPM2 is trained first, because it reads the text as written and the whole path has been rehearsed. It is not retrained from scratch. A LoRA fine-tune (low-rank adaptation) leaves the model's own numbers frozen and adds a small set of new ones beside them, rank 32 here, on the language model and the diffusion head; only those new numbers learn her voice, and the result is a small file loaded on top of the base model. Learning rate 1e-4, 16 takes a step. The number of steps follows the data: passes × takes ÷ 16, with one to three passes for a single speaker, so 1,200 takes read three times is about 225 steps, about 12 minutes on the DGX Spark. The rehearsal on 11 October 2026 used a stand-in voice reading 150 sentences: after 40 steps the model spoke the held-out sentences at the stand-in's pitch, 157 Hz against 156, where the untrained model spoke at 238. Two things learned there: about one generated clip in six comes out silent and must be caught and generated again, and the clips come out quiet and need their loudness normalised. VoxCPM2 speaks at 48 kHz but hears Pan at 16 kHz, so the detail above 8 kHz is the model's own, not hers.
- Piper is trained second, for the voice that runs anywhere. First the sound string: one symbol per sound, with the tone, 1 to 6, after each syllable. Thai's usual tool for that step (TLTK, a Thai language toolkit) loses Kam Mueang words without a warning, dropping คั้บ in all 49 sentences that have it, so the reader of the alphabet page does it instead, with the six Chiang Mai tones; on 1,969 Wiktionary words it gets the tone right 98.9% of the time (a list of 41 syllables, drawn from the same words, settles ◌้ on ก จ ต ป, where ordinary spelling writes two tones one way). Training warm-starts from Piper's clean English base (LibriTTS-R, CC BY 4.0): the network already knows how to make a human-sounding waveform, and learns Kam Mueang's sounds and Pan's voice on top. One speaker, full 32-bit precision, and hours, not minutes: about 50,000 steps a day at 32 takes a step. Progress is watched on the held-out sentences through two numbers, how far the generated spectrogram (the picture of the sound's frequencies over time) is from the real one, val_mel, and a predicted naturalness score, val_mos. The best checkpoint is exported to ONNX, a standard file format for a trained network that many programs can run without the training software. The rehearsal on 11 October 2026 gave, after 25 minutes and 172 passes on the stand-in, val_mel 0.312 and a voice at the stand-in's pitch, which then spoke Kam Mueang on a laptop with no graphics card. If her takes alone are too few for Piper, hours of extra sentences spoken by the trained VoxCPM2 in her voice can be added.
- Where it runs. Every run is a throwaway container on the DGX Spark, a GPU computer on a home network; the takes are copied to it after each sitting and nothing is sent to any outside service. Checkpoints are kept while a run is useful and deleted after.
- การเตรียมข้อมูล ทำรายการหนึ่งรายการ บรรทัดละหนึ่งเสียง: ไฟล์เสียงอยู่ที่ไหน และข้อความที่อยู่บนจอขณะอัดทุกตัวอักษร รวมที่แก้แล้ว ประโยคชุดทดสอบ 51 ประโยคไม่อยู่ในรายการ และเสียงที่ตัวอ่านของโมเดลอ่านข้อความไม่ได้ก็ไม่อยู่ เสียงพูดจึงไม่เคยเรียนเสียงของคำที่ไม่ได้เห็น ตัวฝึกของแต่ละโมเดลแปลงอัตราสุ่มเสียงเป็นของตัวเอง: 16 kHz สำหรับตัวเข้ารหัสของ VoxCPM2 และ 22.05 kHz สำหรับ Piper บทอ่านเรียงไว้ให้ประโยคแรก ๆ ครอบคลุมพยางค์และวรรณยุกต์ที่ต่างกันมากที่สุด จึงเริ่มฝึกได้ก่อนอ่านครบทั้งบท และการอัดแต่ละครั้งทำให้รอบฝึกถัดไปดีขึ้น
- โมเดลแปลงข้อความเป็นเสียงสามตัวถูกลองก่อนที่ Pan จะอัดเสียง แต่ละตัวอ่านข้อความคำเมืองชุดเดียวกันแปดตอนโดยยังไม่ได้ฝึก แล้วให้คะแนนจากจำนวนตัวอักษรที่เครื่องรู้จำเสียงฟังผิด ทั้งสามเป็นเครื่องคนละแบบ และนั่นคือสิ่งที่กำหนดว่าแต่ละตัวมีไว้ทำอะไร:
- VoxCPM2 เป็นโมเดลเปิดขนาดใหญ่ภายใต้สัญญาอนุญาต Apache ซึ่งอนุญาตให้ใช้ได้ทุกอย่าง ข้างในมีโมเดลภาษา ซึ่งเป็นโครงข่ายแบบเดียวกับที่อยู่เบื้องหลังผู้ช่วยแชต อ่านตัวอักษรไทยแล้วทำนายเสียงพูดออกมาเป็นลำดับของโทเค็นเสียง และส่วนที่สองคือ diffusion head แปลงโทเค็นเหล่านั้นเป็นคลื่นเสียงที่ 48 kHz เพราะมันอ่านตัวอักษรได้โดยตรง ข้อความที่ Pan แก้จึงเข้าไปตามที่เขียน มันต้องใช้การ์ดจอ และใช้เวลาคำนวณราว 1.25 วินาทีต่อเสียงพูดหนึ่งวินาที
- OmniVoice เป็นโมเดลเปิดขนาดใหญ่อีกตัว ที่ชัดที่สุดและเร็วที่สุดในสามตัวเมื่อยังไม่ฝึก: เครื่องรู้จำฟังตัวอักษรผิด 7.2% จากเสียงอ่านของมัน เทียบกับ 8.2% ของ VoxCPM2 และมันสร้างเสียงพูดได้เร็วกว่าเวลาจริงสิบเท่า มันเลียนเสียงใครก็ได้จากเสียงพูดไม่กี่วินาที หรือสร้างเสียงใหม่จากคำบรรยาย ข้อเสียอยู่ที่สัญญาอนุญาต น้ำหนักของมันเป็น CC BY-NC สิ่งที่ทำจากมันจึงต้องแจกฟรี ซึ่งเข้ากับโครงการนี้ แต่ส่วนที่แปลงเสียงเป็นโทเค็น คือ tokenizer ของมัน ยืมมาจากโมเดลอีกตัว (Higgs Audio 2) ภายใต้สัญญาอนุญาตที่เงื่อนไขติดไปถึงโมเดลใดก็ตามที่ฝึกจากผลลัพธ์ของมัน OmniVoice จึงอาจเป็นเสียงที่สามได้ แต่ห้ามใช้สร้างเสียงพูดสำหรับฝึก Piper
- Piper เป็นแบบตรงข้าม: เสียงพูดเปิดขนาดเล็กที่สร้างมาสำหรับผู้ช่วยในบ้านและคอมพิวเตอร์บอร์ดเดียว บนแบบที่เรียกว่า VITS ซึ่งไปจากสายของเสียงตรงเป็นคลื่นเสียงในโครงข่ายเดียว เสียง Piper ที่เสร็จแล้วเป็นไฟล์เดียวขนาดราว 63 MB ที่พูดได้บนหน่วยประมวลผลธรรมดาของคอมพิวเตอร์ทุกเครื่อง แม้ในเบราว์เซอร์ มันอ่านตัวอักษรไม่ได้ ทุกประโยคจึงต้องแปลงเป็นเสียงและวรรณยุกต์ก่อนด้วยขั้นตอนแยกต่างหาก และขั้นนั้นคือจุดที่คำเมืองต้องมีงานของตัวเอง
- VoxCPM2 ฝึกก่อน เพราะมันอ่านข้อความตามที่เขียน และซ้อมครบทั้งสายแล้ว ไม่ได้ฝึกใหม่ตั้งแต่ต้น การปรับจูนแบบ LoRA (low-rank adaptation) แช่แข็งตัวเลขเดิมของโมเดลไว้ แล้วเพิ่มตัวเลขชุดเล็ก ๆ ไว้ข้าง ๆ ที่นี่คือ rank 32 ที่โมเดลภาษาและ diffusion head เฉพาะตัวเลขใหม่เหล่านั้นที่เรียนเสียงของเธอ และผลลัพธ์คือไฟล์เล็ก ๆ ที่โหลดทับโมเดลฐาน learning rate 1e-4 และ 16 เสียงต่อ step จำนวน step ขึ้นกับข้อมูล: pass × จำนวนเสียง ÷ 16 โดยผู้พูดคนเดียวใช้ 1 ถึง 3 pass ดังนั้น 1,200 เสียงอ่านซ้ำสามรอบ คือราว 225 step ประมาณ 12 นาทีบน DGX Spark การซ้อมเมื่อ 11 ตุลาคม 2569 ใช้เสียงแทนที่อ่าน 150 ประโยค: หลัง 40 step โมเดลพูดประโยคที่กันไว้ด้วยระดับเสียงของเสียงแทน คือ 157 Hz เทียบกับ 156 ขณะที่โมเดลที่ยังไม่ฝึกพูดที่ 238 ได้บทเรียนสองข้อ: คลิปที่สร้างราวหนึ่งในหกออกมาเงียบ ต้องตรวจจับและสร้างใหม่ และคลิปออกมาเบา ต้องปรับความดังให้เท่ากัน VoxCPM2 พูดที่ 48 kHz แต่ฟัง Pan ที่ 16 kHz รายละเอียดเหนือ 8 kHz จึงเป็นของโมเดลเอง ไม่ใช่ของเธอ
- Piper ฝึกเป็นตัวที่สอง สำหรับเสียงที่ใช้ได้ทุกที่ เริ่มจากสายของเสียง: หนึ่งสัญลักษณ์ต่อหนึ่งเสียง และมีวรรณยุกต์ 1 ถึง 6 ตามหลังแต่ละพยางค์ เครื่องมือที่ใช้กันสำหรับภาษาไทยในขั้นนี้ (TLTK ชุดเครื่องมือภาษาไทย) ทำคำเมืองหายโดยไม่เตือน ทำคำว่า คั้บ หายทั้ง 49 ประโยคที่มีคำนี้ จึงใช้ตัวอ่านของหน้าอักษรคำเมืองแทน พร้อมวรรณยุกต์หกเสียงของเชียงใหม่ ซึ่งอ่านวรรณยุกต์ถูก 98.9% จากคำในวิกิพจนานุกรม 1,969 คำ (รายการพยางค์ 41 พยางค์ที่ดึงจากคำชุดเดียวกัน ตัดสินไม้โทบน ก จ ต ป ซึ่งการสะกดแบบทั่วไปเขียนสองเสียงด้วยวิธีเดียว) การฝึกเริ่มจากฐานภาษาอังกฤษที่สะอาดของ Piper (LibriTTS-R, CC BY 4.0): โครงข่ายรู้วิธีสร้างคลื่นเสียงที่ฟังเหมือนคนอยู่แล้ว และเรียนเสียงของคำเมืองกับเสียงของ Pan เพิ่มเข้าไป ผู้พูดคนเดียว ความละเอียด 32 บิตเต็ม และฝึกกันเป็นชั่วโมง ไม่ใช่นาที: ราว 50,000 step ต่อวันที่ 32 เสียงต่อ step ติดตามความคืบหน้าจากประโยคที่กันไว้ด้วยตัวเลขสองตัว คือสเปกโตรแกรมที่สร้าง (ภาพความถี่ของเสียงตามเวลา) ต่างจากของจริงแค่ไหน val_mel และคะแนนความเป็นธรรมชาติที่คาดไว้ val_mos checkpoint ที่ดีที่สุดถูกส่งออกเป็น ONNX ซึ่งเป็นรูปแบบไฟล์มาตรฐานของโครงข่ายที่ฝึกแล้ว ที่โปรแกรมหลายตัวรันได้โดยไม่ต้องมีซอฟต์แวร์ฝึก การซ้อมเมื่อ 11 ตุลาคม 2569 ให้ val_mel 0.312 หลัง 25 นาที 172 pass กับเสียงแทน และเสียงที่ระดับเสียงเดียวกับเสียงแทน ซึ่งจากนั้นพูดคำเมืองบนแล็ปท็อปที่ไม่มีการ์ดจอได้ ถ้าเสียงของเธออย่างเดียวน้อยไปสำหรับ Piper ก็เพิ่มประโยคอีกหลายชั่วโมงที่ VoxCPM2 ที่ฝึกแล้วพูดด้วยเสียงของเธอได้
- ที่ที่ฝึก ทุกรอบฝึกเป็นคอนเทนเนอร์ชั่วคราวบน DGX Spark คอมพิวเตอร์การ์ดจอในเครือข่ายบ้าน เสียงถูกคัดลอกไปที่นั่นหลังอัดแต่ละครั้ง และไม่มีอะไรส่งไปยังบริการภายนอก checkpoint เก็บไว้ตราบที่รอบฝึกนั้นยังมีประโยชน์ แล้วลบทิ้ง
4 · Testing a voice4 · การทดสอบเสียงพูด
- On the 51 sentences kept out, each voice is compared with Pan's own reading: the recogniser's errors on the voice minus its errors on her real take; how far the pitch, which carries the tones, strays from hers; and how alike the two voices sound.
- Then at least three native listeners who are not Pan judge the voices without knowing which is which, with real takes mixed in. They decide.
- กับ 51 ประโยคที่เก็บไว้ เสียงพูดแต่ละตัวจะเทียบกับเสียงอ่านจริงของ Pan: ความผิดของเครื่องรู้จำกับเสียงพูด ลบด้วยความผิดกับเสียงจริงของเธอ ระดับเสียงสูงต่ำ ซึ่งเป็นตัวบอกวรรณยุกต์ ต่างจากของเธอแค่ไหน และเสียงสองแบบคล้ายกันแค่ไหน
- จากนั้นเจ้าของภาษาอย่างน้อยสามคนที่ไม่ใช่ Pan จะฟังโดยไม่รู้ว่าเสียงไหนเป็นของอะไร โดยมีเสียงจริงปนอยู่ด้วย และเป็นผู้ตัดสิน
5 · Release5 · การเผยแพร่
- Only trained models are released, never the recordings: free for anyone, for non-commercial use only, and never to impersonate anyone or to deceive. Before that, the voice needs a way to read English words; its number reader (20 is ซาว, not ยี่สิบ; 7 is เจ๋ด) was built on 15 October 2026, from the words of the public transcripts.
- สิ่งที่เผยแพร่คือโมเดลที่ฝึกแล้วเท่านั้น ไม่ใช่เสียงที่อัด แจกฟรีสำหรับทุกคน ใช้ได้เฉพาะที่ไม่ใช่เชิงพาณิชย์ และห้ามใช้แอบอ้างเป็นผู้อื่นหรือหลอกลวง ก่อนถึงตอนนั้น เสียงพูดต้องมีวิธีอ่านคำภาษาอังกฤษ ส่วนตัวอ่านตัวเลขแบบคำเมือง (20 คือ ซาว ไม่ใช่ ยี่สิบ และ 7 คือ เจ๋ด) สร้างแล้วเมื่อ 15 ตุลาคม 2569 จากคำในบทถอดเสียงสาธารณะ
6 · What the recordings and the voice will be used for6 · เสียงที่อัดและเสียงพูดจะนำไปใช้ทำอะไร
The voice is the first product, not the only one. The same pairs of sound and exact text, and the voice itself, go into four more things, none of which is part of training the voice:
เสียงพูดคือผลงานชิ้นแรก ไม่ใช่ชิ้นเดียว คู่เสียงกับข้อความชุดเดียวกัน และตัวเสียงพูดเอง จะนำไปใช้ในอีกสี่สิ่ง ซึ่งไม่มีสิ่งใดเป็นส่วนหนึ่งของการฝึกเสียงพูด:
- A Kam Mueang voice for Chrome. The "Speak Kam Mueang" button under each sentence needs it: in a browser without it, the button brings you here. To install it (Chrome or Edge, on Windows, Mac or a Chromebook; it is not in the Chrome Web Store yet): 1. download kammuang_voice_chrome.zip (about 120 MB: the voice runs inside your browser, nothing is sent anywhere) and unzip it somewhere the folder can stay; 2. open
chrome://extensions(Edge:edge://extensions) and turn on Developer mode; 3. click Load unpacked and choose the folderkammuang_voice_chrome; 4. come back here and press the button: the first sentence takes a few seconds while the voice loads. The voice is Meta's Northern Thai model, free for non-commercial use, never for impersonation. Privacy: the extension collects nothing and makes no network requests. The text a page asks it to say becomes sound inside your browser; a short log of what it spoke is kept in the browser's memory for the session, to check it by, and is gone when the browser closes. No browser, phone or operating system speaks Kam Mueang of its own. Chrome lets an extension add a voice, the same way Chrome's own "Google" voices arrive, and once it is installed every web page that speaks can use it: this page's "Speak Kam Mueang" button, the alphabet page, any lesson. A prototype was built on 15 October 2026: in Edge and Chromium a page speaks through it at about twice real time, with Meta's ready-made Northern Thai voice (from its Massively Multilingual Speech project, a small VITS voice under CC BY-NC, so it fits the non-commercial rule) running inside the browser. Version 2 carries Pan's Piper voice, which is small enough to run the same way. VoxCPM2 and OmniVoice are too large for that. - A listener. The same pairs, the other way round. Whisper is an open speech recogniser trained on hundreds of thousands of hours of speech in nearly a hundred languages; its largest version, large-v3, writes Central Thai well and Kam Mueang badly, about 47% of letters wrong on real Northern speech. Fine-tuned on Pan's pairs, it learns to hear Kam Mueang and write her exact text, and its error on the test set is what the fine-tune is measured by. The alphabet page's converter can then turn what it writes into the Lanna script.
- A Kam Mueang assistant. No chat model speaks Kam Mueang today, and prompting the strong Thai models does not get there. The plan is in layers: understanding and reasoning stay in Central Thai, where the models are strong; a small fine-tuned step turns the answer into Kam Mueang; and the voice reads it aloud. Pan's corrected sentences, with their Central Thai and English, are that step's native-checked core and its test. The public sentence pairs fill out its training, because 1,468 sentences cannot teach a language on their own.
- The alphabet page and the recorder get the voice too, so a learner can hear each letter, tone and sentence said by a real Chiang Mai voice rather than by a Central Thai one.
- เสียงคำเมืองสำหรับ Chrome ปุ่ม "พูดคำเมือง" ใต้แต่ละประโยคต้องใช้เสียงนี้: ในเบราว์เซอร์ที่ยังไม่มี ปุ่มจะพามาที่ข้อนี้ วิธีติดตั้ง (Chrome หรือ Edge บน Windows, Mac หรือ Chromebook ยังไม่อยู่ใน Chrome Web Store): 1. ดาวน์โหลด kammuang_voice_chrome.zip (ราว 120 MB เสียงทำงานในเบราว์เซอร์ของคุณเอง ไม่ส่งอะไรไปที่ไหน) แล้วแตกไฟล์ไว้ในที่ที่โฟลเดอร์จะอยู่ได้ถาวร 2. เปิด
chrome://extensions(Edge:edge://extensions) แล้วเปิดโหมดนักพัฒนา 3. กด Load unpacked แล้วเลือกโฟลเดอร์kammuang_voice_chrome4. กลับมาหน้านี้แล้วกดปุ่ม ประโยคแรกใช้เวลาสองสามวินาทีระหว่างโหลดเสียง เสียงนี้คือโมเดลไทยเหนือของ Meta ใช้ฟรีเพื่อการไม่แสวงหากำไร ห้ามใช้แอบอ้างเป็นผู้อื่น ความเป็นส่วนตัว: ส่วนเสริมนี้ไม่เก็บข้อมูลใด ๆ และไม่ติดต่ออินเทอร์เน็ต ข้อความที่หน้าเว็บให้อ่านจะกลายเป็นเสียงภายในเบราว์เซอร์ของคุณเอง บันทึกสั้น ๆ ของสิ่งที่อ่านไปจะอยู่ในหน่วยความจำของเบราว์เซอร์ระหว่างใช้งานเพื่อใช้ตรวจสอบ และหายไปเมื่อปิดเบราว์เซอร์ ไม่มีเบราว์เซอร์ โทรศัพท์ หรือระบบปฏิบัติการใดพูดคำเมืองได้เอง Chrome ให้ส่วนเสริมเพิ่มเสียงพูดได้ แบบเดียวกับที่เสียง "Google" ของ Chrome เองเข้ามา และเมื่อติดตั้งแล้ว ทุกหน้าเว็บที่พูดได้จะใช้เสียงนั้นได้: ปุ่ม "พูดคำเมือง" ของหน้านี้ หน้าอักษรคำเมือง บทเรียนใดก็ได้ ต้นแบบสร้างเสร็จเมื่อ 15 ตุลาคม 2569: ใน Edge และ Chromium หน้าเว็บพูดผ่านส่วนเสริมได้เร็วราวสองเท่าของเวลาจริง ด้วยเสียงไทยเหนือสำเร็จรูปของ Meta (จากโครงการ Massively Multilingual Speech เป็นเสียง VITS ขนาดเล็กภายใต้ CC BY-NC จึงเข้ากับกติกาที่ไม่ใช้เชิงพาณิชย์) ที่รันอยู่ในเบราว์เซอร์เอง รุ่นที่ 2 ใช้เสียง Piper ของ Pan ซึ่งเล็กพอจะรันแบบเดียวกัน VoxCPM2 และ OmniVoice ใหญ่เกินไปสำหรับสิ่งนี้ - ตัวฟัง คู่เดียวกัน แต่กลับทาง Whisper เป็นเครื่องรู้จำเสียงแบบเปิดที่ฝึกจากเสียงพูดหลายแสนชั่วโมงในเกือบร้อยภาษา รุ่นใหญ่สุดของมัน large-v3 เขียนภาษาไทยกลางได้ดี แต่เขียนคำเมืองได้แย่ คือตัวอักษรผิดราว 47% กับเสียงคำเมืองจริง เมื่อปรับจูนด้วยคู่เสียงของ Pan มันจะเรียนฟังคำเมืองแล้วเขียนข้อความของเธอให้ตรงทุกตัวอักษร และความผิดบนชุดทดสอบคือสิ่งที่ใช้วัดการปรับจูน แล้วตัวแปลงของหน้าอักษรคำเมืองจะเปลี่ยนสิ่งที่มันเขียนเป็นอักษรธรรมล้านนาได้
- ผู้ช่วยคำเมือง วันนี้ไม่มีโมเดลแชตใดพูดคำเมืองได้ และการสั่งโมเดลภาษาไทยที่เก่งก็ยังไปไม่ถึง แผนเป็นชั้น ๆ: การทำความเข้าใจและการคิดยังเป็นภาษาไทยกลาง ซึ่งโมเดลเก่งอยู่แล้ว ขั้นเล็ก ๆ ที่ปรับจูนมาจะเปลี่ยนคำตอบเป็นคำเมือง แล้วเสียงพูดอ่านออกมา ประโยคที่ Pan แก้ พร้อมความหมายภาษาไทยกลางและภาษาอังกฤษ คือแกนที่เจ้าของภาษาตรวจแล้วของขั้นนั้น และเป็นชุดทดสอบของมัน คู่ประโยคสาธารณะช่วยเติมการฝึก เพราะ 1,468 ประโยคสอนภาษาทั้งภาษาเองไม่ได้
- หน้าอักษรคำเมืองและหน้าอัดเสียง จะได้เสียงพูดนี้ด้วย ผู้เรียนจึงได้ยินตัวอักษร วรรณยุกต์ และประโยคแต่ละอย่างจากเสียงเชียงใหม่จริง ไม่ใช่เสียงไทยกลาง
How much: 600 sentences (about 32 minutes of speech) is the minimum, and 1,200 (about 70 minutes) is the aim.
ต้องอัดเท่าไร: อย่างน้อย 600 ประโยค (เสียงพูดประมาณ 32 นาที) เป้าหมายคือ 1,200 ประโยค (ประมาณ 70 นาที)
Sentences:ที่มาของประโยค: Charatrit/KamMuang-Thai-English (MIT), Limkonchotiwat et al. 2025 (Thai_local_benchmark, CC BY-SA). How to write the sounds:วิธีเขียนให้ตรงเสียง: krueng.ai/kammuang_alphabet.html. Picture: made with Qwen-Image on a DGX Spark.ภาพ: สร้างด้วย Qwen-Image บน DGX Spark