kongdeqiang
2026-03-13 28ccfbfc51068a663a80764e14074df5edf2b5ba
runtime/tools/fst/ctc_token_fst.py
@@ -4,21 +4,20 @@
import sys
with open(sys.argv[1], 'r') as fread:
    print('0 0 <blank> <eps>')
with open(sys.argv[1], "r") as fread:
    print("0 0 <blank> <eps>")
    nodeX = 1
    for entry in fread.readlines():
        entry = entry.replace('\n', '').strip()
        fields = entry.split(' ')
        entry = entry.replace("\n", "").strip()
        fields = entry.split(" ")
        phone = fields[0]
        if phone == '<eps>' or phone == '<blank>':
        if phone == "<eps>" or phone == "<blank>":
            continue
        if '#' in phone:
            print(str(0) + ' ' + str(0) + ' ' + '<eps>' + ' ' + phone)
        if "#" in phone:
            print(str(0) + " " + str(0) + " " + "<eps>" + " " + phone)
        else:
            print(str(0) + ' ' + str(nodeX) + ' ' + phone + ' ' + phone)
            print(str(nodeX) + ' ' + str(nodeX) + ' ' + phone + ' <eps>')
            print(str(nodeX) + ' ' + str(0) + ' ' + '<eps> <eps>')
            print(str(0) + " " + str(nodeX) + " " + phone + " " + phone)
            print(str(nodeX) + " " + str(nodeX) + " " + phone + " <eps>")
            print(str(nodeX) + " " + str(0) + " " + "<eps> <eps>")
        nodeX += 1
    print('0')
    print("0")