mcpField
C
chainlink-confidential-ai-attester-skill

chainlink-confidential-ai-attester-skill

github.com/smartcontractkit安全126210 次安装今天更新
代码仓库

关于 chainlink-confidential-ai-attester-skill

面向 Chainlink Confidential AI Attester 文档推理 HTTP API 的技能,指导通过托管 TEE 提交私有文档并轮询推理结果。它还说明验证边界及将合格结果交付至 EVM 的流程。

主要功能

  1. 01提交文档并发起推理
  2. 02轮询任务状态与结果
  3. 03编写符合指定 JSON 结构的提示词
  4. 04说明 TEE 证明与签名的验证边界
  5. 05将有效结果交付至 EVM

适用场景

  1. 01通过 Attester 分析私有文档
  2. 02轮询异步文档推理任务
  3. 03把符合 JSON 结构的结果交付至 EVM

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/smartcontractkit/chainlink-agent-skills --skill chainlink-confidential-ai-attester-skill

安装后在 Claude Code 中输入/chainlink-confidential-ai-attester-skill确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

agents/
openai.yaml
references/
api-reference.md
code-examples.md
prompts.md
troubleshooting.md

详细介绍

Chainlink Confidential AI Attester

私有文档的大模型推理在由服务管理的 TEE 中运行;原始文档绝不会离开 TEE,也不会被存储或暴露。

范围:仅限 Chainlink Confidential AI Attester 文档推理 HTTP API。Data Feeds、CCIP、AI 架构或 zkML、Anthropic 或其他供应商的 PDF API,以及 AWS Nitro/Bedrock 证明均由其所属产品或供应商负责;不要引入 Attester。对于任何超出 Attester 文档推理范围的请求,请说明此功能不适用,将请求转交给相应的所属功能,并且不要提供任何 Attester API 或 playground 操作步骤。

EthGlobal NYC 黑客松测试版。 在 Chainlink 展位或 Discord 的 #partner-chainlink channel 获取 API 密钥。https://confidential-ai-dev-preview.cldev.cloud/playground 上的 playground 和 HTTP API 是访问同一 Attester 服务的两种途径,并非不同的隐私选项。

工作流 1 — 提交:POST /v1/inference

使用 Authorization: Bearer $API_KEY;从环境变量或注入的密钥存储中加载密钥,绝不将其硬编码,也不要将密钥的原始值或展开后的值放入命令行参数中。在 BASE_URL(或等效的环境变量)中设置服务 URL,并在每条命令或代码示例中使用它;绝不直接写入服务基础 URL。

{
  "model": "gemma4",
  "system_prompt": "",
  "prompt": "...",
  "resources": [{ "filename": "doc.pdf", "content_type": "application/pdf", "content_base64": "<base64>" }],
  "cre_callback": { "url": "https://..." }
}

轮询时,包括在 playground 中,都不要设置 cre_callback;请使用 GET /v1/inference/{id}。产品指南必须提及上述 playground,并为长文本选择 qwen3.6;gemma4 是图像和通用场景的默认模型。演示时优先使用 PNG;PDF 预处理可能需要 5 分钟。

成功时返回 202 Accepted,格式为 { "id": "...", "status": "queued" };保存 id。

对于任何提交或轮询相关的回答,都要提供可运行的 curl 命令或代码,而不是完成情况摘要;其中必须包含请求字段、202 响应格式、保存的 id、GET /v1/inference/{id}、两种终止状态,以及 output 的获取方式(失败时则提供 error)。

请参阅 curl 示例和语言指南以及 API 规范。

工作流 2 — 轮询:GET /v1/inference/{id}

每隔 2–5 秒轮询一次,直到状态变为 completed 或 failed。完成时的字段包括 output(大模型文本)、usage 和 completed_at;请参阅故障排除。

验证边界与 EVM 交付

Attester API 不会提供可独立验证的 Chainlink 签名或 TEE 证明文档。对响应字段进行哈希处理可以检测这些字段之后是否发生变化,但响应哈希既不是可独立验证的 Chainlink 签名,也不是 TEE 证明,更不能证明推理是在 enclave 中运行的。

对于 EVM 交付,请验证已完成的结果及其必需的 JSON 架构,创建 CRE 原生报告,并通过 Chainlink Forwarder 交付该报告。将失败或非 JSON 输出视为失败,不创建报告。不要使用通用 EIP-712 签名者或应用私钥,将 Attester 输出呈现为机密计算证明。

每个签名摘要或稍后验证相关的回答都必须说明一条凭证规则:API_KEY 必须来自环境变量或注入的密钥存储,绝不能作为 CLI 参数传入。

编写有效的提示词

通过两个层面强制使用 JSON:(1)默认系统提示词,除非有必要更改;(2)包含事实提取任务和精确 JSON 架构的用户提示词。完整输出所需的 system_prompt、用户 prompt 和架构;绝不要用摘要替代。请参阅四种用例模板。

选择隐私方案

选项适用场景权衡
Attester你希望在服务的 Nitro Enclave 内托管文档推理集成最快,但当前 API 不提供可独立验证的 Chainlink 或 TEE 签名
本地模型数据必须保留在受控设备上,且不能调用外部推理服务你需要自行运行模型和硬件;仅在本地运行并不能提供远程证明
自托管机密计算你需要控制基础设施,并且能够运行 TEE 和验证其证明控制力最强,也有望实现独立证明,但运维负担最高
脱敏或令牌化在调用任何外部服务前,任务可以使用经过精简或替换的数据完成数据最小化最简单,但可能降低效用,且无法消除重新识别风险

playground 和 API 都是同一 Attester 服务的接口;请选择符合交互方式的接口,而不是将它们视为不同的隐私架构。

评论

支持 Markdown