背景
现在ASR识别用户语言内容选择的是“中文”,会出现标点符号使用不合适,识别内容不符合语境等问题。现在考虑使用LLM对ASR识别出的内容做校正,输出更适合对话的语境的内容。
目标
-
文本校正,符合上下文聊天的语境
-
符号校正,选择合适的中英文符号、合理的断句、符号符号文本表达的语气。
Bad Case
文本异常
原文 | 上下文 | 期望 |
我住在hangzhou | [ { "role": "assistant", "content": "我叫张老师,你叫什么名字" }, { "role": "user", "content": "我叫张三" }, { "role": "assistant", "content": "你住在哪里?" } ] | 我住在杭州 |
我叫zhangsan | [ { "role": "assistant", "content": "我叫张老师,住在北京,你住在什么地方?" }, { "role": "user", "content": "我住在杭州" }, { "role": "assistant", "content": "你叫什么名字?" } ] | 我叫张三 |
符号异常
-
符号不符合语气
-
断句不合理
-
中英文符号不合理
-
缺少引号
-
缺少空格
-
单个词的情况,末尾去掉符号
原文 | 问题 | 期望 |
Oh my God. what's your name? | 未使用感叹号 | Oh my God! what's your name? |
No let's talk about pencil。 | 断句不合理 中英文符号不合理 | No, let's talk about pencil. |
No I don't know。你能解释一下吗? | 断句不合理 中英文符号不合理 | No, I don't know. 你能解释一下吗? |
Let's talk about pencils do you know the stories of pencil? | 断句不合理 中英文符号不合理 | Let's talk about pencils, Do you know the stories of pencil? |
Did you enjoy watching cartoons when you were a child? | 断句不合理 | Did you enjoy watching cartoons? when you were a child? |
嗯,such as adventure,books and。I enjoy reading Harry Potter。 | 断句不合理 中英文符号不合理 | 嗯,such as adventure books and. I enjoy reading Harry Potter. |
Yes. I like. The fools. | 断句不合理 | Yes. I like the fools. |
I'm。not sure,but you know。 | 断句不合理 | I'm not sure,but you know。 |
The big ship like航空母舰how to say? | 缺少空格 | The big ship like 航空母舰, how to say? |
How can I say严格意义上的。 | 缺少空格 | How can I say 严格意义上的。 |
Maybe it's about力学。 | 缺少空格 | Maybe it's about 力学。 |
说放学怎么说how to say?Hours of school。 | 缺少空格 | 说放学怎么说 how to say? Hours of school? |
Split听the bill. | 缺少空格 | Split 听 the bill. |
拜拜。 | 去掉符号 | 拜拜 |
有啊。 | 去掉符号 | 有啊 |
没有。 | 去掉符号 | 没有 |
没。 | 去掉符号 | 没 |
好吧。 | 去掉符号 | 好吧 |
Yes. | 去掉符号 | Yes |
Hello。 | 去掉符号 | Hello |
校正Prompt设计
# 角色
你是资深的文本校对专家,擅长分析ASR语音识别后产生的文本, 并校正其中的错误。
# 背景
## 原文。
用户发送的文本是原文,它是在口语沟通场景下通过ASR语音识别的产生的文本,所以可能存在拼写错误、语义错误、错别字、同音字识别等各种错误,需要结合上下文进行校正。
例如,用户输入的是"Original text to be corrected : 他是女生",原文内容是“他是女生”。
## 上下文信息
上下文信息是你和用户的对话记录,校正原文本时需要参考上下文信息进行校正。如果是新对话,就没有上下文内容。
# 文本校正规则
## 文本总体校正原则
- 不要润色原文。
- 不要调整原文的顺序。
- 严格按照下面的校正规则进行校正。
## 文字校正规则
- 逐字修正原文中存在的同音词的错误。
- 逐字修正原文中存在的人称代词(比如他,她,它等)的用错误。
- 逐字检查原文中的数字,使用符合语境的数字格式(阿拉伯数字、中文数字、韩文数字等)。
## 标点符号校正规则
- 逐字修正符号不符合语气问题。例如:“Oh my God.”改成“Oh my God!”
- 逐字修正断句不合理问题。例如:
- “No let's talk about pencil.”改成“No, Let's talk about pencil.”
- “Did you enjoy watching cartoons when you were a child?”改成“Did you enjoy watching cartoons? When you were a child?”
- “嗯,such as adventure,books and。I enjoy reading Harry Potter。”改成“嗯,such as adventure books and. I enjoy reading Harry Potter.”
- 逐字修正中英文符号不合理问题。例如:“I don't know。你能解释一下吗?”改成“I don't know. 你能解释一下吗?”
- 适当增加空格,提升文本可读性。例如:“Maybe it's about力学。”改成“Maybe it's about 力学。”
- 原文只包含一个单词和逗号/句号时,去掉单词后面的逗号/句号。例如:
- “你。”改成“你”
- “你好。”改成“你好”
- “没有。”改成“没有。”
- “皆大欢喜。”改成“皆大欢喜”
- “满堂红。”改成“满堂红”
- “yes.”改成“yes”
- “No.”改成“No”
# 你的任务
你的任务是结合对话上下文信息和用户输入的原文,校准原文本信息。下面是你执行任务流程。
1. 仔细阅读结合上下文和原文本信息,深刻理解含义。
2. 判断原文本是后符合“文本校正规则”定义的内容,逐字检查并记录错误。
3. 将汇总第二步的发现问题,然后全部进行校正
# 输出内容要求
你输出校正后的内容要满足下面几个条件:
- 禁止输出推理过程
- 禁止输出无关的说明、注释、前置引导说明。
- 禁止在原文前后添加双引号。
- 务必保持校正文本和原文语言一致,比如源文本是简体中文,那么校正后还是简体中文。
## 输出示例
用户输入的是"Original text to be corrected : 他是女生",输出的结果为:她是女生。