spoteno是一个用于ASR口语文本规范化的库
spoteno的Python项目详细描述
斯波特诺
spoteno(口语文本规范化)是一个清理语音识别系统文本文本的工具。 这些系统通常希望目标转录本只包含受限集合中的字符。在
安装
安装最新的开发版本:
pip install git+https://github.com/ynop/spoteno.git
示例
默认的用例是规范化一个句子。 这将强制输出字符串仅包含有效字符(由配置定义)。在
^{pr2}$使用force=False
,可以禁用最终清理。
这样,输出中可能会出现无效字符,
如果配置没有具体处理它们。在
outsent=norm.normalize(sentence,force=False)print(outsent)# >>> am elfte januar geht er um fünf m nach links weshalb er $d schon ziemlich müde ist
使用debug方法,可以在最终输出中检索一组无效字符。 这可用于创建或调试配置。 可以打印不同步骤的输出。在
outsent,error=norm.debug(sentence)print(error)# >>> START Am 11. Januar geht er um 5m nach links,weshalb er $d schon "ziemlich" müde ist.# >>> Strip ['Am 11. Januar geht er um 5m nach links,weshalb er $d schon "ziemlich" müde ist.']# >>> Lower ['am 11. januar geht er um 5m nach links,weshalb er $d schon "ziemlich" müde ist.']# >>> StripChar ['am 11. januar geht er um 5m nach links,weshalb er $d schon "ziemlich" müde ist']# >>> ReplaceIfNotSurroundedByDigits['am 11. januar geht er um 5m nach links weshalb er $d schon "ziemlich" müde ist']# >>> ReplaceIfNotPrecededByDigit['am 11. januar geht er um 5m nach links weshalb er $d schon "ziemlich" müde ist']# >>> ReplaceRegex ['am 11. januar geht er um 5m nach links weshalb er $d schon "ziemlich" müde ist']# >>> ReplaceChar ['am 11. januar geht er um 5m nach links weshalb er $d schon ziemlich müde ist']# >>> ReplaceChar ['am 11. januar geht er um 5m nach links weshalb er $d schon ziemlich müde ist']# >>> WhitespaceTokenize ['am', '11.', 'januar', 'geht', 'er', 'um', '5m', 'nach', 'links', 'weshalb', 'er', '$d', 'schon', 'ziemlich', 'müde', 'ist']# >>> SplitNumberSuffix ['am', '11.', 'januar', 'geht', 'er', 'um', '5', 'm', 'nach', 'links', 'weshalb', 'er', '$d', 'schon', 'ziemlich', 'müde', 'ist']# >>> NumberToWords ['am', '11.', 'januar', 'geht', 'er', 'um', 'fünf', 'm', 'nach', 'links', 'weshalb', 'er', '$d', 'schon', 'ziemlich', 'müde', 'ist']# >>> OrdinalNumberToWords['am', 'elfte', 'januar', 'geht', 'er', 'um', 'fünf', 'm', 'nach', 'links', 'weshalb', 'er', '$d', 'schon', 'ziemlich', 'müde', 'ist']# >>> ReplaceChar ['am', 'elfte', 'januar', 'geht', 'er', 'um', 'fünf', 'm', 'nach', 'links', 'weshalb', 'er', '$d', 'schon', 'ziemlich', 'müde', 'ist']# >>> ReplaceFull ['am', 'elfte', 'januar', 'geht', 'er', 'um', 'fünf', 'm', 'nach', 'links', 'weshalb', 'er', '$d', 'schon', 'ziemlich', 'müde', 'ist']# >>> RemoveDiacritics ['am', 'elfte', 'januar', 'geht', 'er', 'um', 'fünf', 'm', 'nach', 'links', 'weshalb', 'er', '$d', 'schon', 'ziemlich', 'müde', 'ist']# >>> Strip ['am', 'elfte', 'januar', 'geht', 'er', 'um', 'fünf', 'm', 'nach', 'links', 'weshalb', 'er', '$d', 'schon', 'ziemlich', 'müde', 'ist']# >>> END ['am', 'elfte', 'januar', 'geht', 'er', 'um', 'fünf', 'm', 'nach', 'links', 'weshalb', 'er', '$d', 'schon', 'ziemlich', 'müde', 'ist']k# >>> {'$'}
发展
先决条件
建议在开发spoteno时使用虚拟环境。 要创建一个,请在项目的根目录中执行以下命令:
python -m venv .
要安装spoteno及其所有依赖项,请执行:
pip install -e .
运行测试套件
pip install -e .[dev]
python setup.py test
使用PyCharm,您可能需要更改默认的测试运行程序。否则,它可能只建议使用鼻子。为此, 转到“文件”>;“设置”>;“工具”>;“Python集成工具”(在Mac上是“PyCharm”>;“首选项”>;“设置”>;“工具”>; Python集成工具),并将测试运行器更改为py.测试. 在
版本
使用bump2version处理版本。要更改版本:
bump2version [major,minor,patch,release,num]
为了直接转到最终版本(skip.dev/.rc/…):
bump2version [major,minor,patch] --new-version x.x.x
释放
用于在pypi上创建新版本的命令。在
rm -rf build
rm -rf dist
python setup.py sdist
python setup.py bdist_wheel
twine upload dist/*
- 项目
标签: