German_Transliterate เป็นโมดูล Python ในการทำความสะอาดและเป็นตัวพิมพ์ (เช่นปกติ) ข้อความภาษาเยอรมันรวมถึงตัวย่อตัวเลขการประทับเวลา ฯลฯ มันสามารถใช้ทำความสะอาดข้อความที่ยุ่งเหยิง (เช่นการเข้ารหัส Unicode ที่แปลกประหลาดเป็น ASCII) หรือแทนที่ตัวย่อทั่วไป
อย่างไรก็ตามมันมีประโยชน์อย่างยิ่งสำหรับการประมวลผลล่วงหน้าแบบ text-to-speech (TTS) (ทั้งในการฝึกอบรมและการอนุมาน) และมีคุณสมบัติที่จะสนับสนุนการเข้ารหัสสัทศาสตร์ของผลลัพธ์ (เช่นกับ ESPEAK-NG) หลังจากขั้นตอนต่อไปในขั้นตอนการประมวลผล
ได้รับการนำไปใช้อย่างประสบความสำเร็จในการประมวลผลล่วงหน้ากับ Mozilla TTS ร่วมกับ phonemes espeak-ng เป็นข้อมูลอินพุตทั้งการฝึกอบรมและการอนุมานไปป์ไลน์
งานนี้ได้รับใบอนุญาตภายใต้ใบอนุญาต Creative Commons Attribution 4.0 International หากต้องการดูสำเนาของใบอนุญาตนี้โปรดไปที่ http://creativecommons.org/licenses/by/4.0/ หรือส่งจดหมายถึง Creative Commons, PO Box 1866, Mountain View, CA 94042, สหรัฐอเมริกา
เพื่อให้ การระบุแหล่งที่มาหรืออ้างถึงงานนี้ โปรดใช้ตัวอย่างข้อความต่อไปนี้:
german_transliterate, Copyright 2020 by repodiac, see https://github.com/repodiac for updates and further information
0.1.3 - แก้ไขข้อผิดพลาดบางอย่างใน OPS ต่าง ๆ : weekday month , amount_money และตัวย่อนอกจากนี้ยังมีบางสิ่งเล็กน้อยที่ได้รับการแก้ไขที่นี่และที่นั่น ( แนะนำเป็นอย่างยิ่ง0.1.2 ลบ OPs ต่อไปนี้ออกจากรายการ OPS เริ่มต้นเนื่องจาก (ดังที่กล่าวไว้ในเอกสารด้านล่าง) พวกเขามีข้อผิดพลาดอย่างมาก คุณยังสามารถใช้งานได้ผ่านรายการอย่างชัดเจนในรายการ transliterate_ops=[...] OPS ลบออกคือ:monthweekdaymath_symbol0.1.1 - เพิ่มอินเทอร์เฟซบรรทัดคำสั่งสำหรับการใช้งานเริ่มต้น (ไม่มีการเข้ารหัสฟอนิมและสิ่งที่ต้องทดลองใช้)release 0.1 - การเปิดตัวซอฟต์แวร์เริ่มต้นยังคงมี ToDo มากและคุณสมบัติการทดลองเพิ่มเติม (ดูเอกสาร); นอกจากนี้ยังสามารถปรับปรุงการจัดการข้อยกเว้นได้ ปัจจุบันมีการพึ่งพาภายนอกเพียงครั้งเดียวเท่านั้น NUM2WORDS การพึ่งพาทั้งหมดจะพบได้ใน requirements.txt และรวมอยู่ใน setup.py เช่นกันในขณะนี้
การติดตั้งเป็นเรื่องง่ายโดยใช้ pip และการติดตั้งแพ็คเกจ git ในตัวตาม setup.py :
pip install git+https://github.com/repodiac/german_transliterateการตั้งค่า:
import german_transliterate.core ) ไปยังสภาพแวดล้อม Python ปัจจุบันของคุณเป็นแพ็คเกจ pip อื่น ๆ (ในกรณีที่สร้างสภาพแวดล้อมเสมือนจริงด้วย virtualenv หรือ conda มาก่อน)ในรหัส Python หรือเป็นไลบรารี:
from german_transliterate.core import GermanTransliterate
text = 'Um 13:15h kaufte Hr. Meier (Mitarbeiter der Firma ABC) 1.000 Luftballons für 250€.'
print('ORIGINAL:', text, 'n')
ops = {'acronym_phoneme', 'accent_peculiarity', 'amount_money', 'date', 'timestamp',
'weekday', 'month', 'time_of_day', 'ordinal', 'special', 'math_symbol', 'spoken_symbol'}
# use these setting for PHONEMIC ENCODINGS as input (e.g. with TTS)
print('TRANSLITERATION with phonemic encodings:',
GermanTransliterate(replace={';': ',', ':': ' '}, sep_abbreviation=' -- ').transliterate(text), 'n')
# use none or your own for other purposes than phonemic encoding and do not use 'spoken_symbol' or 'acronym_phoneme'
print('TRANSLITERATION (default):',
GermanTransliterate(transliterate_ops=list(ops-{'spoken_symbol', 'acronym_phoneme'})).transliterate(text), 'n')
ใหม่ จากบรรทัดคำสั่ง (ในเชลล์):
python core.py '1, 2, 3 - alles ist dabei'
ขณะนี้มีเพียงวิธี เดียว ที่จะใช้: transliterate('Das ist der Text.')
มันมีพารามิเตอร์อินพุตต่อไปนี้:
transliterate_ops ของคำหลักดูรายละเอียดด้านล่างreplace dict ของ tuples สตริง "Original: Original: Replacement" ที่จะใช้เป็นแบบธรรมดาและเรียบง่าย "on-the-fly" เพิ่มเติมด้วยข้อความเช่นแทนที่ = {'-': ''} แทนที่เส้นประทั้งหมดด้วย whitespace; empty สำหรับ การใช้งานปกติ และใช้ {';': ',', ':': ' '} ด้วย การเข้ารหัสสัทศาสตร์sep_abbreviation ตัวคั่นพิเศษที่ใช้สำหรับการแปลตัวย่อ; สิ่งนี้ส่วนใหญ่มีประโยชน์เฉพาะกับการเข้ารหัสการออกเสียงของข้อความเป็นขั้นตอนต่อไปในท่อ TTS; empty สำหรับ การใช้งานปกติ และใช้ ' -- ' ด้วย การเข้ารหัสสัทศาสตร์make_lowercase ถ้าเป็นจริงข้อความจะถูกสร้างตัวพิมพ์เล็ก ( empty โดยค่าเริ่มต้น) หมายเหตุ : การดำเนินการของผู้แปลส่วนใหญ่ ทำงาน กับ make_lowercase=True - นี่เป็นเพราะพจนานุกรมต่างๆที่ทำงานด้วยตัวพิมพ์เล็กเท่านั้น โปรดใช้ make_lowercase=False เฉพาะเมื่อไม่ได้ใช้ transliterate_ops มากเกินไปมิฉะนั้นส่วนใหญ่จะไม่ทำงาน! พารามิเตอร์ที่ใช้สำหรับพารามิเตอร์ config parameter transliterate_ops มีดังนี้:
acronym_phoneme ตัวย่อเช่น ABC เป็นเวอร์ชันสัทศาสตร์ ah beh zeeaccent_peculiarity ลบการเข้ารหัส Unicode ที่แปลกประหลาดและแมปให้เข้ากับรุ่น ASCII ที่เข้ากันได้ (การทำความสะอาด OP)amount_money พยากรณ์สกุลเงินและเงินเช่น $, €, EUR ฯลฯdate แปลวันที่เช่น 12.10.2019timestamp Tranderates Timestamps เช่น 13H: 15M: 45Sweekday ( การทดลอง ), ตัวย่อ Mo แปลนmonth Dez การทดลอง ), ตัวย่อ Jan แปลนtime_of_day PRONTRITERATES เวลาของวันเช่น 13: 15Hordinal Transliterates หมายเลขลำดับเช่น 2. เป็น zweite (พยายามค้นหาการแลกเปลี่ยนสำหรับคำต่อท้ายกรณีที่ถูกต้องเช่น zweiten หรือ zweitem )special และคำศัพท์พิเศษเช่น 8/10 เป็น acht von zehnmath_symbol ( ทดลอง ), แปลตัวเลือกสัญลักษณ์คณิตศาสตร์เล็ก ๆ เช่น plus , minus ฯลฯ (ใช้ที่นี่: สามารถมี positives ปลอมจำนวนมากดังนั้นใช้ด้วยความระมัดระวัง)spoken_symbol อนุญาตให้มีการถอดรหัสวงเล็บหรือเครื่องหมายการอ้างอิงเป็นภาษาพูดเช่น '(ข้อความ)' ลง - ใน -- in klammern -- text -- (ถ้า sep_abbreviation ถูกตั้งค่าเป็น ' -') ส่วนใหญ่มีประโยชน์สำหรับงาน TTS สถานะปัจจุบันส่วนใหญ่ขึ้นอยู่กับการใช้การแมปด้วยตนเองและการแสดงออกปกติสำหรับการทดแทนและการขยายตัวของสตริง (คำหรือคำศัพท์) ดังนั้นประสิทธิภาพในปัจจุบันควรดีพอที่จะใช้กับการอนุมานออนไลน์หรือการใช้งาน "เรียลไทม์" ในไปป์ไลน์การประมวลผลข้อความ เมื่อเพิ่มโมดูลหรือ OPS เพิ่มเติมเมื่อเวลาผ่านไปอาจมีวิธีการค่อนข้างช้าในการคำนวณอย่างหนักและเหมาะสำหรับการฝึกอบรมหรือการประมวลผลออฟไลน์เป็นหลัก
กรุณาเปิดปัญหาเกี่ยวกับ GitHub สำหรับข้อบกพร่องหรือคำขอคุณสมบัติ คุณสามารถติดต่อฉันทางอีเมล