System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种控制模型输出结构化数据的方法技术_技高网

一种控制模型输出结构化数据的方法技术

技术编号:41133770 阅读:2 留言:0更新日期:2024-04-30 18:04
本发明专利技术提供一种控制模型输出结构化数据的方法,包括:获取要生成文本的结构和内容要求;基于生成文本的结构和内容要求,构建语法自动机和Tokenizer前缀树;初始化字符级解析器;基于所述语法自动机、Tokenizer前缀树及字符解析器,采用自回归语言模型,生成候选token;基于所述候选token,采用智能token过滤机制,过滤不合法token,选择合法token;基于所述合法token,更新语法自动机状态;基于所述合法token,生成文本片段;验证和生成所述文本片段,得到最终文本。针对现有技术在生成遵循严格格式或结构规则的文本时存在格式不准确、灵活性差、自动化程度不高等诸多限制,导致生成的文本需要大量的人工校对和修改,影响生产效率和成本控制等问题。本发明专利技术通过结合语法自动机或类似机制,旨在提供一种提高自回归语言模型输出内容的可解析化程度的方法,确保在生成过程中每个token的选择都符合预定义的格式规则,从而解决了生成文本在格式正确性上的问题。

【技术实现步骤摘要】

本专利技术属于计算机应用,特别是人工智能领域中的自然语言处理(nlp)技术。


技术介绍

1、自回归语言模型,如gpt系列、glm系列和llama系列,是通过在大规模文本数据集上进行训练,以学习语言的统计规律。这些模型在处理自然语言生成任务时,因为它们可以捕获和模拟人类语言的复杂模式和上下文关联,故而有着出色的表现。

2、但是,这些模型主要通过学习大量的文本数据来理解语言的统计规律,而不是通过理解和遵循严格的语法和格式规则。导致这些模型在处理需要遵循严格语法或格式规则的任务时,表现出了一定的局限性。例如,编程语言的生成需要严格遵守特定的语法规则,而诗歌创作则需要遵循特定的韵律和节奏。这些模型通常难以保证生成的文本在格式和结构上的正确性,可能无法生成完全符合特定格式或结构规则的文本,导致生成的代码或文档需要后续的人工校对和修改。

3、此外,这些模型在生成过程中,往往缺乏对特定格式规则的内在理解。这种缺乏深度理解的问题可能会降低生成文本的可用性和准确性,因为模型可能无法正确地应用或遵循特定的格式规则。


技术实现思路

1、针对现有技术在生成遵循严格格式或结构规则的文本时存在格式不准确、灵活性差、自动化程度不高等诸多限制,导致生成的文本需要大量的人工校对和修改,影响生产效率和成本控制等问题。

2、本专利技术旨在提供一种控制模型输出结构化数据的方法,通过结合语法自动机或类似机制,确保在生成过程中每个token的选择都符合预定义的格式规则,从而解决了生成文本在格式正确性上的问题,进而显著提高了文本的格式准确性,提升了文本生成的效率和可靠性,降低维护成本,并节省计算资源。

3、本专利技术提出了一种控制模型输出结构化数据的方法,用于控制自回归语言模型生成的文本格式。该方法通过定义严格的语法规则,并将其与语言模型的生成过程相结合,以确保生成的文本严格符合预先设定的格式要求。

4、s1:构建语法自动机;

5、优选的,语法自动机是一种有限状态机,它定义了文本格式的规则。例如,若要生成一个电子邮件,语法自动机会定义电子邮件的结构,包括开头的问候语、主体、结尾的签名等,并且对每个部分的文本格式都有明确的规则,比如主体部分可能需要包含特定的关键字或短语。

6、s2:构建tokenizer前缀树;

7、优选的,tokenizer前缀树是一种数据结构,用于存储和检索与当前生成的文本内容相关的tokens。并且可以快速确定哪些tokens是在当前上下文中合法的。

8、s3:初始化字符级解析器;

9、优选的,字符级解析器负责在生成过程中解析每一个字符或token,并确定其是否符合语法自动机定义的规则,并会检查当前的解析状态,同时预测下一个允许的字符或token。

10、s4:自回归语言模型提供一系列候选token。

11、优选的,自回归语言模型生成token序列后,这些序列会被提交给语法自动机进行验证。如果序列不符合规则,模型可能会回退到之前的状态,选择不同的token继续尝试,或者重新开始生成过程,直到生成的文本完全符合格式要求。

12、s5:基于智能的token过滤机制,对已生成候选tokens进行验证;

13、优选的,智能的token过滤机制:在每个生成步骤中,自回归语言模型会提出一系列候选tokens。这些tokens会通过字符级解析器和tokenizer前缀树进行过滤。只有当一个token同时符合语法自动机定义的下一个合法状态,且是tokenizer前缀树中的一个有效续接两个条件时,才会被选中。

14、s6:基于验证结果,选择合法token;

15、s7:基于合法token,更新语法自动机状态;

16、s8:基于所选token和更新后的语法自动机,生成文本片段;

17、s9:基于生成文本片段,对其进行验证,判断是否已经生成了满足格式要求的完整文本,生成的完整文本;

18、s10:基于生成的完整文本,对其进行验证,使用语法自动机验证生成的文本是否符合预设格式;

19、s11:输出最终文本。

20、与现有技术相比,本专利技术的有益效果在于:

21、1.如上下文无关文法cfg,通过定义形式语法,确保了输出文本的结构严谨性和格式一致性。

22、2.设计的语法自动机能够在生成过程中实时地筛选符合语法规则的token,从而提高了生成文本的质量和准确性。

23、3.集成语言模型与语法自动机后,模型在预测下一个token时仅考虑符合语法规则的候选,减少了后续处理和验证的工作量。

24、4.后处理和验证环节确保了即使是在使用语法自动机的情况下,生成的文本也能满足最终的格式要求。

本文档来自技高网...

【技术保护点】

1.一种控制模型输出结构化数据的方法,其特征在于,通过自回归语言模型和语法自动机进行生成和验证循环的方式,控制自回归语言模型生成的文本格式,包括:

2.如权利要求1所述的控制模型输出结构化数据的方法,其特征在于,所述语法自动机是一种有限状态机定义文本格式的规则,能够在生成过程中实时地筛选符合语法规则的token。

3.如权利要求2所述的控制模型输出结构化数据的方法,其特征在于,所述定义文本格式的规则是指在上下文无关文法时,通过定义形式语法,以确保输出文本的结构严谨性和格式一致性。

4.根据权利要求1所述的控制模型输出结构化数据的方法,其特征在于,所述Tokenizer前缀树是一种数据结构,用于存储和检索与当前生成的文本内容相关的tokens,以快速确定在当前上下文中合法的tokens。

5.如权利要求1所述的控制模型输出结构化数据的方法,其特征在于,所述字符级解析器用于解析在生成过程中每一个字符或token,以确定它们是否符合语法自动机定义的规则;并且所述字符级解析器会检查当前的解析状态,同时预测下一个允许的字符或token。>

6.如权利要求1所述的控制模型输出结构化数据的方法,其特征在于,所述自回归语言模型是指通过在大规模文本数据集上进行训练,以学习语言的统计规律,达到捕获和模拟人类语言的复杂模式和上下文关联的效果。

7.如权利要求6所述的控制模型输出结构化数据的方法,其特征在于,所述自回归语言模型生成token序列后,所述序列会被提交给所述语法自动机进行验证;

8.如权利要求1所述的控制模型输出结构化数据的方法,其特征在于,所述智能的token过滤机制是指在每个所述生成步骤中,通过字符级解析器和tokenizer前缀树,对自回归语言模型提出一系列候选tokens进行过滤;

9.如权利要求1所述的控制模型输出结构化数据的方法,其特征在于,所述生成文本片段是指判断验证和生成所述文本片段,是否已经生成了满足格式要求的完整文本。

10.如权利要求1所述的控制模型输出结构化数据的方法,其特征在于,所述验证和生成所述文本是指通过语法自动机验证,生成的所述文本是否符合预设格式。

...

【技术特征摘要】

1.一种控制模型输出结构化数据的方法,其特征在于,通过自回归语言模型和语法自动机进行生成和验证循环的方式,控制自回归语言模型生成的文本格式,包括:

2.如权利要求1所述的控制模型输出结构化数据的方法,其特征在于,所述语法自动机是一种有限状态机定义文本格式的规则,能够在生成过程中实时地筛选符合语法规则的token。

3.如权利要求2所述的控制模型输出结构化数据的方法,其特征在于,所述定义文本格式的规则是指在上下文无关文法时,通过定义形式语法,以确保输出文本的结构严谨性和格式一致性。

4.根据权利要求1所述的控制模型输出结构化数据的方法,其特征在于,所述tokenizer前缀树是一种数据结构,用于存储和检索与当前生成的文本内容相关的tokens,以快速确定在当前上下文中合法的tokens。

5.如权利要求1所述的控制模型输出结构化数据的方法,其特征在于,所述字符级解析器用于解析在生成过程中每一个字符或token,以确定它们是否符合语法自动机定义的规则;并且所述字符级解析器会检查当前的解析状态,同时...

【专利技术属性】
技术研发人员:李帅帅蔡华徐清史可欢王浩然夏天赵爽
申请(专利权)人:华院计算技术上海股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1