RuleChef:将LLM任务知识锚定在人类可编辑规则中

arXiv cs.CL 论文

摘要

RuleChef 是一个框架,利用大型语言模型(LLM)为自然语言处理任务(如文本分类、命名实体识别或关系抽取)生成人类可编辑、可执行的规则。它基于任务描述和一组标注示例生成规则,然后根据更多示例和人类对现有规则的反馈进行迭代改进。RuleChef 还可以通过观察任何现有模型在给定任务上的输入-输出对来引导规则生成。LLM 仅在训练阶段使用,合成规则并根据在留出集上测量的失败进行迭代修补。这个过程最终产生一个快速、确定且可审查的规则系统。初步评估在分类和命名实体识别任务上进行。我们将 RuleChef 作为开源软件发布,采用 Apache 2.0 许可。

arXiv:2607.01293v1 公告类型:新 摘要:我们提出 RuleChef,这是一个利用大型语言模型(LLM)为自然语言处理任务(如文本分类、命名实体识别(NER)或关系抽取)生成可执行规则的框架。规则基于任务描述和一组标注示例生成,然后根据更多示例和人类对现有规则的反馈进行迭代改进。RuleChef 还可以通过观察任何现有模型在给定任务上的输入-输出对来引导规则生成。LLM 仅在训练阶段使用,合成规则并根据在留出集上测量的失败进行迭代修补。这个过程最终产生一个快速、确定且可审查的规则系统。初步评估在分类和命名实体识别任务上进行。我们将 RuleChef 作为开源软件发布,采用 Apache 2.0 许可。
查看原文
查看缓存全文

缓存时间: 2026/07/03 05:39

# RuleChef:将LLM任务知识扎根于可人工编辑的规则

来源:https://arxiv.org/html/2607.01293
Ádám Kovács¹, Nadia Verdha², Gábor Recski¹,² ¹KR Labs, ²TU Wien 通讯作者:[email protected] (https://arxiv.org/html/2607.01293v1/mailto:[email protected])

###### 摘要

我们提出了 RuleChef,一个利用大型语言模型 (LLMs) 为 NLP 任务(如文本分类、命名实体识别 (NER) 或关系抽取)生成可执行规则的框架。规则基于任务描述和一组带标签的示例生成,然后根据更多示例和人类对现有规则的反馈进行迭代改进。RuleChef 还可以通过观察任何现有模型在给定任务上的输入-输出对来引导规则生成。LLM 仅在训练阶段使用,用于合成规则并根据在预留测试集上衡量的失败模式进行迭代修补。此过程的结果是一个快速、确定且可检查的规则系统。我们在分类和 NER 任务上进行了初步评估。我们以 Apache 2.0 许可证¹¹发布 RuleChef 作为开源软件。

RuleChef:将LLM任务知识扎根于可人工编辑的规则

Ádám Kovács¹, Nadia Verdha², Gábor Recski¹,² ¹KR Labs, ²TU Wien 通讯作者:[email protected] (https://arxiv.org/html/2607.01293v1/mailto:[email protected])

## 1 引言

早期的 NLP 系统主要是基于规则的:手工制作的模式和模板语法提供了透明、确定的模型,可以被检查、调试并向最终用户解释 (Chiticariu 等, 2013 (https://arxiv.org/html/2607.01293#bib.bib62); Valenzuela-Escárcega 等, 2020 (https://arxiv.org/html/2607.01293#bib.bib27); Kovács 等, 2022 (https://arxiv.org/html/2607.01293#bib.bib21))。转向基于特征的分类器,再到预训练的 Transformer (Devlin 等, 2019 (https://arxiv.org/html/2607.01293#bib.bib63)) 和大型语言模型 (LLMs),带来了覆盖率和灵活性的显著提升,但也将决策逻辑移到了难以直接审计或编辑的潜在参数中 (Lipton, 2018 (https://arxiv.org/html/2607.01293#bib.bib61))。对于医疗、法律或金融等敏感且高度监管领域的 NLP 应用,无法追溯到显式模式的预测是无法认证的。对于许多现实世界的 NLP 任务,特别是那些具有重复词汇或结构模式的任务,显式规则仍然具有吸引力:运行成本低、确定性高、易于版本控制且易于检查。规则的主要问题不在于准确性;而在于手工编写和维护它们劳动强度大,并且需要大量领域专业知识 (Chiticariu 等, 2013 (https://arxiv.org/html/2607.01293#bib.bib62); Snare 等, 2017 (https://arxiv.org/html/2607.01293#bib.bib23); Kovács 等, 2022 (https://arxiv.org/html/2607.01293#bib.bib21))。

RuleChef 通过使用 LLM 进行*规则学习*来解决这一差距:神经模型不在推理时使用,而是将监督信号转换为可执行的符号规则。给定任务规范和监督信号SS,RuleChef 合成一个规则集R=\{r_1,\ldots,r_k\},在预留的开发集上评估它,对失败进行聚类,并提示 LLM 改进规则。仅当补丁能提高留在开发集上的质量时才会被接受,并且每个幸存的规则会记录其达到的精度。规则也可以由人类领域专家审查,他们的反馈以及显式纠正也可以用来提示 LLM 进行更新。

本文的主要贡献如下:

- • 一个从任务监督(示例、纠正、自由文本反馈或观察到的模型行为)中合成可执行规则的系统,将训练时的 LLM 使用与推理时的确定性执行分开。
- • 一个迭代改进规则系统的精炼循环,测量更改对留在开发数据上的影响,并根据开发集精度解决规则间的冲突。
- • 在两个任务上的评估,将学习到的规则与提示同一 LLM 以及专用神经抽取器进行比较,并通过消融研究分离出管线相对于一次性规则提示的贡献。
- • 关于人在环修复过程以及从外部模型行为中学习规则的无监督观察模式的额外实验。

本文的其余部分结构如下。第 2 节 (https://arxiv.org/html/2607.01293#S2) 回顾了关于规则合成、弱监督和基于 LLM 的程序生成的相关工作。第 3 节 (https://arxiv.org/html/2607.01293#S3) 描述了 RuleChef 框架。第 4 节 (https://arxiv.org/html/2607.01293#S4) 介绍了我们的实验设置。第 5 节 (https://arxiv.org/html/2607.01293#S5) 报告了在一个简单的意图分类数据集和一个更具挑战性的 NER 任务上的初步评估结果。第 6 节 (https://arxiv.org/html/2607.01293#S6) 讨论了主要发现并提出了未来工作的机会。

## 2 相关工作

在本节中,我们回顾与 RuleChef 相关的四个领域的前期工作:自动规则和正则表达式合成、交互式规则系统、弱监督以及基于 LLM 的代码和规则生成。从示例中自动合成正则表达式已通过进化方法 (Bartoli 等, 2016 (https://arxiv.org/html/2607.01293#bib.bib3), 2018 (https://arxiv.org/html/2607.01293#bib.bib5))、神经序列到序列模型 (Locascio 等, 2016 (https://arxiv.org/html/2607.01293#bib.bib6); Zhong 等, 2018 (https://arxiv.org/html/2607.01293#bib.bib7)) 以及将自然语言描述与正负示例结合的系统 (Chen 等, 2020 (https://arxiv.org/html/2607.01293#bib.bib10); Li 等, 2021 (https://arxiv.org/html/2607.01293#bib.bib11)) 进行了研究。这些方法从示例中产生单个规则或小的规则集,但不包含迭代验证或人在环组件。

交互式规则系统,如 HEIDL (Sen 等, 2019 (https://arxiv.org/html/2607.01293#bib.bib22))、GrASP (Snare 等, 2017 (https://arxiv.org/html/2607.01293#bib.bib23); Lertvittayakumjorn 等, 2022 (https://arxiv.org/html/2607.01293#bib.bib24))、Odinson (Valenzuela-Escárcega 等, 2020 (https://arxiv.org/html/2607.01293#bib.bib27)) 和 POTATO (Kovács 等, 2022 (https://arxiv.org/html/2607.01293#bib.bib21)) 帮助用户在文本以及基于语义和句法的图表示(如抽象意义表示 (Banarescu 等, 2013 (https://arxiv.org/html/2607.01293#bib.bib28)) 和通用依赖 (Nivre and others, 2018 (https://arxiv.org/html/2607.01293#bib.bib29)))上构建模式,但仍需要大量的人工编写。RuleChef 通过创建各种监督源(示例、纠正、对规则的反馈)与执行规则更新的 LLM 之间的接口,减少了这种手动工作。

弱监督系统,如 Snorkel (Ratner 等, 2017 (https://arxiv.org/html/2607.01293#bib.bib30)) 和 Snuba (Varma and Ré, 2018 (https://arxiv.org/html/2607.01293#bib.bib31)),使用标注函数创建训练标签,最近的工作也使用 LLM 提示作为标注函数 (Smith 等, 2024 (https://arxiv.org/html/2607.01293#bib.bib35); Yu and Bach, 2023 (https://arxiv.org/html/2607.01293#bib.bib34))。与这些系统不同,RuleChef 将规则作为最终模型,而不是作为下游分类器的噪声标签来源。LLM 也被用于从示例中合成可执行程序,包括 Evaporate-Code+ (Arora 等, 2023 (https://arxiv.org/html/2607.01293#bib.bib37)) 和 Hypothesis Search (Wang 等, 2024 (https://arxiv.org/html/2607.01293#bib.bib41)),更广泛的调查讨论了基于 LLM 的规则和假设生成 (Sivasothy 等, 2024 (https://arxiv.org/html/2607.01293#bib.bib42); He and Chen, 2025 (https://arxiv.org/html/2607.01293#bib.bib43))。RuleChef 也可以被视为 LLM 知识蒸馏的符号替代方案 (West 等, 2022 (https://arxiv.org/html/2607.01293#bib.bib44); Zhou 等, 2024 (https://arxiv.org/html/2607.01293#bib.bib45); Hsieh 等, 2023 (https://arxiv.org/html/2607.01293#bib.bib46)),以最大化可解释性并最小化推理成本。对于本文评估的两个任务,相关的神经基线是用于零样本文本跨度抽取的 GLiNER (Zaratiana 等, 2024 (https://arxiv.org/html/2607.01293#bib.bib48)) 及其受模式驱动的后继者 GLiNER2 (Zaratiana 等, 2025 (https://arxiv.org/html/2607.01293#bib.bib66)),以及用于意图检测的双重句子编码器 (Casanueva 等, 2020 (https://arxiv.org/html/2607.01293#bib.bib49); Zhang 等, 2021 (https://arxiv.org/html/2607.01293#bib.bib67))。

## 3 RuleChef 框架

在本节中,我们描述 RuleChef 框架的主要功能,包括任务定义、规则合成、精炼循环、冲突解决以及允许在存在预先训练模型的情况下自主运行的观察模式。图 1 (https://arxiv.org/html/2607.01293#S3.F1) 给出了高级概述。我们在此节中从文本匿名化基准数据集(TAB,见第 4 节 (https://arxiv.org/html/2607.01293#S4))中提取示例,这是我们主要的测试平台。对应于此处描述的各种规则学习策略的提示模板在附录 A (https://arxiv.org/html/2607.01293#A1) 中给出。

训练阶段(涉及LLM)  
监督信号(示例、纠正、反馈、观察)  
→ 合成(每类,grex提示)  
→ 评估(在开发集上)  
→ 聚类失败模式  
→ 修补 + 批评、审计  
→ 接受(如果开发集F1提高)  
→ 标注已验证的精度、支持度  
推理:仅规则(≈1 ms/文档)  
迭代

图 1:RuleChef 管线。橙色组件调用 LLM;蓝色组件是确定性的。LLM 提出规则和补丁,但接受与否由在预留开发集上测量的质量决定,并且每个规则记录其在此集上的精度。推理时仅运行规则。

### 3.1 规则合成

我们将合成提示结构化为四个部分:(1) 包含输入/输出模式的任务定义,(2) 采样的训练示例和纠正,(3) 带有模式建议的数据证据,(4) 包含响应模式的格式指令。对于多类任务,我们为每个标签生成一个提示,包括正例和其他类别的反例,防止跨类干扰。

任务定义指定输入/输出模式以及四种任务类型之一:分类、NER、抽取(无类型跨度)或变换(结构化输出)。规则可以以三种格式之一请求,包括正则表达式(regex)、依赖词性标注和句法分析输出的 spaCy 规则,以及任意 Python 代码。虽然 RuleChef 支持这三种格式,但本文中的示例和评估仅关注正则表达式模式。每个生成的规则都带有元数据,指定其优先级并衡量其在预留开发集上的精度和匹配计数。

默认情况下,提供给 LLM 的数据证据包括带标签的示例,但 RuleChef 也可以通过从grex (Stahl, 2019 (https://arxiv.org/html/2607.01293#bib.bib55)) 获得的正则表达式建议来增强这些证据,grex 是一个从示例字符串推导结构模式的正则表达式生成器。此类模式作为提示而非约束,帮助 LLM 识别结构规律而不致过拟合。我们在接受之前验证每个生成的规则:正则表达式模式必须能编译,输出模板必须匹配任务模式,并且通过针对通用字符串进行探测来拒绝匹配任意文本的模式。

### 3.2 精炼

初始合成后,精炼循环评估当前规则,识别失败,并生成针对遗漏或误分类输入的*补丁规则*。数据被分为训练部分和开发部分(显式的用户纠正总是留在训练部分,因为它们是修补最有价值的信号),用于规则修补的合成步骤只能访问训练数据,而开发集用于决定新生成的规则是否被接受。只有当保留的开发集 F1 不会降低或精度提高时,补丁才会被保留。此过滤器防止记忆化:正如我们在第 5.2 节 (https://arxiv.org/html/2607.01293#S5.SS2) 中所示,没有保留集接受的相同循环会漂移到适合其所见失败的模式,而不是泛化到其他模式。

当有数百个训练文档时,中间规则集的失败数量可达数千,远远超过补丁提示所能容纳的。RuleChef 根据失败特征对失败进行聚类。对于 NER 类型的任务,失败模式包括遗漏跨度、虚假跨度和错误类型。LLM 会看到完整的失败模式分布以及每个聚类中失败实例的样本。补丁提示还包含当前规则集及其每个规则的指标和所有累积的反馈,图 2 (https://arxiv.org/html/2607.01293#S3.F2) 显示了一个示例。LLM 可以修改现有规则、添加新规则或删除过于宽泛的规则(同时提供更窄的替代规则)。

规则: "case_and_echr_numbers", 开发集精度 P=86%  
失败模式: 已编码遗漏跨度 (84 例), 例如 "nos. 6210/73 and 6877/75"

图 2:精炼步骤的输入规则示例。规则通过其名称引用,后跟其在开发集上的精度、失败类型和匹配数量。

对于流式或批次数据,RuleChef 可以跳过初始合成步骤并直接更新现有规则集:我们提交新的示例、纠正和反馈,评估当前规则,并使用由此产生的失败来驱动补丁合成,同时保留规则集的其余部分。这是第 5.3 节 (https://arxiv.org/html/2607.01293#S5.SS3) 中描述的人类反馈实验背后的机制。

#### 智能体协调。

该循环可以由固定调度驱动,也可以由对当前状态进行推理的 LLM 驱动。*简单协调器*运行固定数量的迭代;*智能体协调器*则在每次迭代后读取每类的指标以指导下一个补丁,运行一个周期性的*批评者*,通过与人相同的方式添加规则级别的反馈,并运行一个周期性的*审计者*,用于合并冗余规则或移除无效规则,撤销任何会降低测量质量的更改。附录 A (https://arxiv.org/html/2607.01293#A1) 显示了每个智能体的完整提示模板,第 5.2 节 (https://arxiv.org/html/2607.01293#S5.SS2) 测量了它们的效果。

### 3.3 冲突解决与剪枝

当学习结束时,我们在开发集上单独运行每个规则,并记录其精度以及匹配数量。当两个规则在某个跨度上重叠或产生分歧时,执行器保留来自更高优先级规则的匹配,并根据开发集精度打破平局。低支持度的估计通过 Wilson 下限 (Wilson, 1927 (https://arxiv.org/html/2607.01293#bib.bib68)) 进行折扣,因此一个在两次中正确两次的规则不会优于一个在 100 次中正确 95 次的规则。留一法遍历测量每个规则对集成 F1 的边际贡献,并删除那些移除后不影响 F1 的规则。

在规则未针对其调整的数据上测量精度,也能区分好规则和记忆化的规则。在 TAB 数据上,规则case_and_echr_numbers对应于正则表达式`(?:no\.?\s*)(\d{4,6}/\d{2,4})`,在开发集上达到 0.86 精度,有 22 个真阳性匹配。相比之下,过于通用的规则Quantity 仅匹配

相似文章

使用推理代理的大规模反例引导学习

arXiv cs.LG

本文提出将反例引导学习用于LLM执行正则表达式归纳,其中验证器提供反例以优化候选表达式。该方法显著提高了具有挑战性任务上的样本效率和成功率,表明LLM可以从结构化反馈中受益,而不仅仅是将其视为额外数据。