ASR语音转录Prompt优化

ASR语音转录Prompt优化

一、前言

在ASR转录的时候,我们能很明显的感受到有时候语音识别不是很准确,这过程中常见的文本错误主要可以归纳为以下几类:

  1. 同音错误(Homophone Errors)

    同音错误发生在不同词语发音相似或相同的情况下。ASR系统可能难以区分这些词语的具体含义,从而导致错误的词语被识别。例如,中文里的"海"和"还"在某些方言或口音中发音相近,可能会被错误地互换。

  2. 语法错误(Grammatical Errors)

    语法错误是指识别出的文本在语法结构上的错误。这可能是因为ASR系统在处理不完整的句子、口语化的表达或语言习惯上的差异时,未能准确地构建出符合语法规则的句子。

  3. 拼写错误(Spelling Errors)

    尽管在一些语言(如中文)中拼写错误不像英语那样常见,但在需要将声音转换为拼写形式的语言中,ASR系统可能会将某个声音错误地转换为一个或多个不正确的字母或字符。

  4. 词序错误(Word Order Errors)

    词序错误涉及到词语排列的顺序不当,这在将口语转换为书面文本的过程中尤其常见。口语中的非正式表达和句子结构可能导致ASR系统无法准确地识别正确的词序。

  5. 缺失或多余的词汇(Missing or Extra Words)

    有时,ASR系统可能会遗漏用户实际说出的词汇,或者错误地在文本中添加了并未说出的词汇。这种情况可能由背景噪音、说话者的语速过快,或是ASR系统的语言模型不够准确所导致。

  6. 语境理解错误(Contextual Understanding Errors)

    语境理解错误是指ASR系统未能准确理解词语在特定语境中的含义。由于缺乏对整个对话或语境的理解,ASR系统可能会选择错误的词语,尤其是在多义词的识别上。

  7. 口音和方言(Accents and Dialects)

    不同地区的口音和方言差异也是导致识别错误的一个重要因素。ASR系统可能在特定口音或方言的识别上表现不佳,尤其是当系统训练数据中缺乏足够多样性时。

我们在这里可以通过大模型的后处理来提高识别的准确度。

二、实战例子

1、具体代码

下面是一个具体的例子

python 复制代码
# -*- coding:utf-8 -*-
"""
@Author: 风吹落叶
@Contact: waitKey1@outlook.com
@Version: 1.0
@Date: 2024/4/29 13:25
@Describe: 转录助手
"""
system_prompt = '你是洞墟科技的得力助手。你的任务仅使用提供的上下文纠正语音转文本后转录文本中的拼写错误,而不是对用户的内容进行回复!无论你多想回复都不要回复,禁止回复与纠正错误无关的内容。转录过程中错误通常有七种:同音错误、 语法错误、拼写错误、词序错误、缺失或多余的词汇、语境理解错误、口音和方言差异。你需要准确识别修改错误并输出正确的意思。下面是示例:用户输入:拟过的怎么样。你输出:{"rowText":"拟过的怎么样?","correctText":"你过得怎么样?"}'

import openai
import os
import os
from openai import OpenAI
def openai_reply(content, apikey):
    client = OpenAI(
        # This is the default and can be omitted
        api_key=apikey,
    )

    chat_completion = client.chat.completions.create(
        messages=[
            {
                "role": "system",
                "content": system_prompt
            },
            {
                "role": "user",
                "content": content,
            }
        ],
        model="gpt-3.5-turbo",
    )
    print(chat_completion)
    return chat_completion.choices[0].message.content


if __name__ == '__main__':
    while True:
        content = input("人类:")
        apikey = 'your apikey'
        text1 = openai_reply(content, apikey)

        print("AI:" + text1)

2、运行结果

可以看到确实是纠正了一些,如果对准确度有更高的要求,可以尝试使用gpt4进行纠正,这样价格可能会更高一些

相关推荐
Pocker_Spades_A3 分钟前
Python快速入门专业版(五十七)——POST请求与模拟登录:从表单分析到实战(以测试网站为例)
开发语言·python
Highcharts.js6 分钟前
企业级数据可视化|BI 仪表板数据中台工业监控平台的选择分析
人工智能·python·信息可视化·数据挖掘·数据分析·highcharts
橙露11 分钟前
Seaborn 高级可视化:统计图表制作与报告导出
python
2601_9544345512 分钟前
2026年专业深度测评:入门电钢琴品牌排名前五权威发布
大数据·人工智能·python
道清茗16 分钟前
【RH294知识点汇总】第 3 章 《 管理变量和事实 》1
开发语言·python
shy^-^cky19 分钟前
Python OpenCV 边缘检测效果对比
python·opencv·计算机视觉·边缘检测·sobel·canny·roberts
老歌老听老掉牙24 分钟前
从芯厚误差到几何约束:一个核心误差函数的深度重构与解析
python
阿Y加油吧26 分钟前
栈的经典应用:从「有效括号」到「寻找两个正序数组的中位数」深度解析
开发语言·python·算法
独隅27 分钟前
PyTorch 文本生成完整代码模板与深度解析
人工智能·pytorch·python
阿_旭31 分钟前
基于YOLO26深度学习的骑行安全检测与语音提示系统【python源码+Pyqt5界面+数据集+训练代码】
人工智能·python·深度学习·骑行安全检测