Fabric 模式解析:用 extract_ethical_framework 提取规范性文本中的隐性伦理框架
2026/9/10 6:59:26 网站建设 项目流程

Fabric 模式解析:用 extract_ethical_framework 提取规范性文本中的隐性伦理框架

【免费下载链接】FabricFabric is an open-source framework for augmenting humans using AI. It provides a modular system for solving specific problems using a crowdsourced set of AI prompts that can be used anywhere.项目地址: https://gitcode.com/GitHub_Trending/fa/Fabric

任何一份告诉人们"应该做什么、禁止做什么"的文本(服务条款、AI 系统说明、政策法规、宣言与提案),其背后都隐藏着一套未经言明的伦理预设——谁的利益被计入、什么算伤害、同意如何成立、权威从何而来。本篇技术指南基于 Fabric 仓库中 extract_ethical_framework 模式文档及其完整提示词实现,讲解如何让这套"隐性伦理"显性化:将其拆解为六个可作答的核心问题、映射价值冲突的层级,并用"不得制造非自愿受害者(no unwilling victims)"这一最小伦理底线与可证伪性标准加以检验。读完本文,你将能够独立审计任何一份规范性文档与 AI 对齐提案,识别其中潜藏的胁迫结构与内部矛盾,并产出结构化的伦理审查报告。

为什么值得显性化"隐性伦理"

该模式的核心论断是:每一份规范性文档都内含一套伦理学。Fabric 官方模式文档明确指出,以下四类文本是典型目标:

  • 服务条款(Terms of Service):服务商与用户之间的规则往往暗含"平台绝对权威、用户被迫接受"的预设;
  • AI 系统描述:对齐论文、系统卡、行为守则中"有益""符合人类价值观"的说法背后各有取舍;
  • 政策与法律:立法通常同时包含显性目标与隐性议程;
  • 宣言与意识形态文本:立场声明中定义了谁是"自己人"、谁是可牺牲的。

把它们显性化之后,可以获得四项直接能力(来源:extract_ethical_framework/README.md):

  1. 检查文本内部的一致性(原则之间是否互相矛盾);
  2. 用最小伦理标准评估它(是否制造了非自愿受害者);
  3. 识别隐性胁迫("为你好"式强制、连坐惩罚、无受害者的"罪行");
  4. 挑战未经言明的假设(哪些前提其实站不住脚)。

在仓库的模式一览文件 pattern_explanations.md 中,本模式被官方摘要为:"从任何规范性文本中提取并分析其内嵌的隐性伦理框架,检查其内部一致性以及是否制造非自愿受害者"——这也与完整提示词 system.md 中 IDENTITY 的定义完全一致。

模式提取的六大核心问题

README 用一张简表概括了这套"审问清单",它是整个分析流程的骨架:

问题(Question)要寻找的内容(What to Find)
谁算数?(Who counts?)谁的利益被纳入考量?
什么是伤害?(What's harm?)主体被保护免受哪些侵害?
什么是同意?(What's consent?)协议是如何达成的?
谁来做决定?(Who decides?)谁拥有权威,依据是什么?
何时允许强制?(When is force OK?)什么能正当化胁迫?
什么优先?(What wins?)价值观冲突时的层级排序

在系统提示词中,这六个问题被进一步转化为分析指令(详见 system.md 的 WHAT YOU'RE LOOKING FOR 一节):

  1. 谁是道德主体(moral patient)——谁的利益重要、谁被排除在外;
  2. 什么算伤害——主体受保护免于什么;
  3. 什么算同意——协议如何获得(严格还是宽松);
  4. 谁有权威——谁决定什么被允许;
  5. 什么正当化胁迫——武力何时合法;
  6. 冲突如何解决——价值之间的优先序。

注意这套问题对所有"规定行为"的文本通用,因此它不仅适用于法律条文审查,也适用于 AI 对齐提案这类技术文本——这正是原作者将其与 AGI 安全联系起来的理由。

实际使用方式

模式的 README 给出了三种典型的命令行用法,均通过 Fabric 的-p/--pattern参数(对应 CLI 定义见 flags.go:Pattern string short:"p" long:"pattern" yaml:"pattern" description:"Choose a pattern from the available patterns")把待分析文本作为标准输入送入模式:

# 分析一份服务条款 cat tos.txt | fabric -p extract_ethical_framework # 分析一段 AI 安全提案 echo "The AI should be beneficial and aligned with human values" | fabric -p extract_ethical_framework # 审计一份政策文档 fabric -p extract_ethical_framework < policy.md

由于本模式的提示词文件 system.md 未定义额外的变量(目录中没有 user.md),因此运行时只需要把文档文本通过 stdin 管道输入即可,无需-v注入变量。

模式在 Fabric 中的落地机制

理解以上命令背后的机制有助于把该模式迁移到任意自定义文本处理流水线中。Fabric 将每个模式存储为一个目录,主提示词固定命名为system.md,这一定义可在数据库插件 internal/plugins/db/fsdb/db.go 中看到:PatternsEntity以目录为单位组织(ItemIsDir: true),并规定SystemPatternFile: "system.md"。加载器拼接路径<patternsDir>/<patternName>/system.md后读取(见 internal/plugins/db/fsdb/patterns.go 中的loadPattern/getFromDB)。

本模式对应的实际路径即仓库中的data/patterns/extract_ethical_framework/system.md,其末尾带有标准的# INPUT/INPUT:占位符,运行时由加载器执行applyInput将你通过管道传入的文本替换进去。其余常用 CLI 参数还包括-l/--listpatterns(列出全部可用模式)与--readpattern(打印指定模式的完整内容到终端,便于离线研读),定义均位于 internal/cli/flags.go。

完整分析流程:从通读到结构化输出

系统提示词把处理流程编排为七步(见 system.md 的 STEPS):

  1. 精读文本:标记所有规范性语句(should / must / forbidden / required / permitted 等情态词);
  2. 提取显性伦理主张:直接陈述对错的话、声明的价值与原则、宣示的目的与目标;
  3. 提取隐性伦理假设:谁被保护而谁没有、哪些行为被鼓励/抑制及原因、哪些权衡被默认为可接受、权威主张建立在何种基础上;
  4. 绘制框架图谱:最高价值是什么(什么压倒什么)、伤害定义是宽是窄、同意定义是严是松、谁可在何时凌驾于个人选择之上;
  5. 检查内部一致性:原则间是否矛盾、是否存在"吞噬规则的例外"、把框架应用到它自身是否会产生矛盾;
  6. 对照最小伦理评估:是否尊重"无非自愿受害者"原则、是否混淆了伤害与不适/异议/冒犯、主张是否可证伪、是否声称了超出逻辑可推导范围的权威;
  7. 识别隐性胁迫:框架在哪些地方授权武力、"为你好"式辩护是否存在、是否存在对个体行为的集体惩罚、是否存在无受害者的"罪行"。

输出阶段则被严格结构化(OUTPUT INSTRUCTIONS),使结果具备机器可解析的一致格式,便于二次处理、对比多份文档或汇入审查流水线。

输出的结构化审查报告

每一次运行都会产出一份包含以下九个部分的报告。逐节复述其关键内容如下(模板细节均出自 system.md)。

1. 被分析的文档(DOCUMENT ANALYZED)

说明文本的类型并给出简短描述。

2. 显性伦理主张(EXPLICIT ETHICAL CLAIMS)

列出被声明的原则、价值观或规则,尽量附原文引用。

3. 隐性伦理框架(IMPLICIT ETHICAL FRAMEWORK)

按六个子维度展开,是本报告的核心分析区:

  • 道德主体(谁算数):谁被显式保护?谁被隐式排除?是否存在道德地位的层级?
  • 伤害的定义:框架将什么计为伤害?定义是窄(身体/财产/自由受损)还是宽(把不适、冒犯也算入)?是否存在找不到受害者的"伤害"?
  • 同意的定义:同意如何成立?能否以"正当理由"被推翻?在什么条件下默示同意被假定成立?
  • 权威主张:谁拥有制定与执行规则的权力?权威基础是什么(选举、专业知识、武力、逻辑)?权威可否被挑战、如何挑战?
  • 胁迫的正当化:框架在何时允许武力/强制?是否存在无受害方的强制("无受害者犯罪")?是否存在集体惩罚?
  • 价值层级:冲突时哪种价值压倒其他?例如"安全 vs. 自由——谁赢"。

4. 内部一致性检查(INTERNAL CONSISTENCY CHECK)

一个可直接勾选的清单:

  • 各原则彼此兼容
  • 例外没有吞噬规则
  • 框架可应用于自身而不产生矛盾
  • 关键术语在全文中定义一致

随后用**Contradictions found**: [列出,或 "None detected"]给出结论。

5. 最小伦理评估(MINIMAL ETHICS EVALUATION)

  • 非自愿受害者测试:该框架是否授权制造非自愿受害者的行为?——[Yes / No / Unclear]
  • 伤害与不适的区分:是否把伤害与不适/冒犯混为一谈?——[Yes / No / Unclear]
  • 可证伪性:框架的主张可否被检验?受其约束者能否挑战它?——[Yes / Partially / No][Yes / Limited / No]
  • 权威基础:是否主张了超出逻辑可推导范围的权威?——[Yes / No]

6. 隐性胁迫分析(HIDDEN COERCION ANALYSIS)

以表格列出所有"对非同意且未制造受害者的当事方授权使用强制力"的点:

胁迫点(Coercion Point)给出的理由(Justification Given)是否找到受害者(Victim Identified?)
[具体行为][陈述的理由][Yes/No]

7. 总体评估(OVERALL ASSESSMENT)

  • 框架类型:后果主义 / 义务论 / 德性伦理 / 权利本位 / 权威本位 / 混合;
  • 融贯性:高度融贯 / 大体融贯 / 存在张力 / 内部自相矛盾;
  • 最小伦理合规性:合规 / 大体合规 / 显著违规 / 根本不相容。

8. 关键关切(KEY CONCERNS)

按严重程度降序列出发现的最重要问题(如有)。

9. 改进建议(RECOMMENDATIONS)

针对发现的问题,提出能提升框架融贯性、把未经授权的胁迫降到最低的具体修改方案。

最小伦理标准:不制造非自愿受害者

README 用一句话定义了本模式的裁决底线(The Minimal Standard):

Does the framework authorize creating unwilling victims? If yes → it fails the minimal ethics test, regardless of how coherent it is internally.

即:无论一套伦理框架内部多么自洽,只要它授权制造非自愿受害者,就未通过最小伦理测试。"融贯是必要而非充分条件"——一套高度自洽的框架照样可能授权伤害(原样强调见 system.md 的 IMPORTANT NOTES)。

为了把这条标准落到实处,配套模式 ultimate_law_safety 进一步给出了"伤害"的操作化界定:

  • 算作伤害:对身体、财产、自由的损害;
  • 不算伤害:不适、异议、冒犯、偏好未被满足。

其核心信条是"No victim, no crime"——只要一个行为没有制造非自愿受害者,无论它让他人多反感、多不舒服,都不构成违规。因此在使用extract_ethical_framework做评估时,务必把"实质伤害"与"情绪不适"区分开,否则会把政策偏好误判为道德违规。

案例:两种典型文本的剖析

系统提示词内置了两个教学示例,直观展示"隐性框架 → 问题暴露"的完整推理,这里转述如下:

典型服务条款示例

  • 隐性框架:公司权威在平台内绝对;用户同意是被制造的("要么接受要么走人");"伤害"被定义得极宽,包含公司不喜欢的任何行为;用户无申诉渠道。
  • 问题:权威基础不明;同意并非自由给予;"伤害"把真实损害与政策偏好混为一谈。

典型"AI 安全"政策示例

  • 隐性框架:AI 应"有益"且"与人类价值观对齐"。
  • 问题:"有益"含义不明且存争议;"人类价值观"因文化与个体而异;框架不可证伪——任何结果都可被事后合理化解释为"有益"或"对齐失败"。
  • 修复建议:用具体、可检验的约束替代模糊价值观,例如将条款改写为"AI 不得采取制造非自愿受害者的行动,'非自愿受害者'按 [具体标准] 定义"。

第二个示例也解释了为何本模式对 AI 对齐研究特别重要:很多对齐方案在语义层面就不可检验,而伦理审查的第一步恰恰是把这类不可检验的断言找出来。

思想源流与仓库内的配套模式

README 的 Source 一节注明本模式源自Ultimate Law 框架。该框架的核心理念(在 system.md 的 BACKGROUND 中有详细阐述)是:与其试图完整规定伦理(不可能完成),不如规定任何合法框架都必须尊重的最小约束——不制造非自愿受害者。其余的一切——价值观、偏好、目标——交由个体与自愿结社自行决定。法律是约束,而非命令人们该珍视什么。

Fabric 仓库围绕同一思想源构建了一组可互相配合的审计模式,可在需要更深入或交叉验证时组合使用:

  • ultimate_law_safety:直接用"不制造非自愿受害者"底线评估一个行动、政策或系统;
  • audit_consent:用五重测试判断同意是否真实,还是被权力不对称制造出来的;
  • audit_transparency:审计决策/算法在五个维度上的可解释性,判断不透明是正当的还是在掩盖伤害;
  • check_falsifiability:检验断言、定义、框架是否达到可证伪标准;
  • detect_silent_victims:识别无法发声的受害方(后代、未被告知者、分散人群);
  • detect_mind_virus:识别靠恐惧/内疚/身份认同传播且抗拒证据修正的"心智病毒"。

典型做法是:先用extract_ethical_framework把文档的隐性框架整体还原出来,再针对具体疑点(如同意机制、权威基础、隐藏受害者)调用对应模式做单点深挖。在批量操作中,你还可以用-l列出全部模式、用--readpattern extract_ethical_framework在终端查看本模式原始提示词后按需裁剪。

使用边界与注意事项

  • 本模式的功能定位是提取与分析(EXTRACT and ANALYZE),而非输出一套特定伦理观——除"最小约束"外,它不强加任何具体价值判断(system.md IMPORTANT NOTES)。
  • 模式文档与其提示词文件共同构成仓库中该模式的"单一事实来源",正文中的所有输出结构与检查清单均可在 system.md 中逐字核对,便于你在 fork、自建提示词或二次开发时参照。
  • 完整使用本模式需先安装并配置好 Fabric 及其 CLI(-p/--pattern参数解析与模式的目录化存储机制如前文 flags.go 与 fsdb 所述);模式下发后同样可以用会话(sessions)与上下文(contexts)机制组织多轮审查记录。

【免费下载链接】FabricFabric is an open-source framework for augmenting humans using AI. It provides a modular system for solving specific problems using a crowdsourced set of AI prompts that can be used anywhere.项目地址: https://gitcode.com/GitHub_Trending/fa/Fabric

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询