子比主题开发文档
使用指南Codestar Framework主题扩展WP AI开发工具社区协作赞助打赏

核心概念

用用户能理解的方式解释 Ability、AI Client、Provider、Connector、Prompt Builder 和 Resolver。

四层架构

WordPress AI Client 相关代码可以先理解成四层:

层级小白理解负责什么
Abilities API把站点功能做成标准按钮注册能力、校验输入、判断权限、执行回调
WP AI Client统一的 AI 请求入口组装 prompt、选择 provider、调用模型、处理结果
Provider 插件模型服务适配器对接 OpenAI、Anthropic 等平台
AI 插件后台管理和开发参考设置、日志、审批、模型发现、示例能力

这四层的底层规则已经由本站文档整理。用户现场只提供子比主题源码时,AI 助手也应该继续推进:底层规则看本分类,主题字段、Hook、Ajax 和保存位置再去主题源码里找。

如果你要做“给文章生成 SEO 描述”,不要直接在按钮里写 HTTP 请求。更好的拆法是:

  1. Ability 读取文章内容。
  2. AI Client 把内容交给模型。
  3. Provider 把请求翻译成 OpenAI 或 Anthropic 的接口格式。
  4. 用户确认后,再用保存能力写入文章字段。

Ability

Ability 是一个可执行功能。它比普通 PHP 函数多了几层约束:

内容作用
名称固定标识,例如 zibll-ai-ext/generate-summary
分类把一组能力放到同一个分类下
说明让用户、开发者和 AI 助手知道它能做什么
输入 schema规定调用时要传什么参数
输出 schema规定返回结果长什么样
权限回调判断当前用户能不能执行
执行回调真正做事的 PHP 逻辑
注解标记只读、会改数据、是否可重复执行

Ability 不是“给 AI 用的专属接口”。它也可以被后台按钮、PHP 代码、REST 调试、计划任务或 CLI 复用。

Category

Category 是 Ability 的分组。Ability 注册前必须先注册分类。

例如你给子比主题站点开发一个自定义 AI 扩展插件,可以先注册 zibll-ai-ext 分类,然后把这些能力放进去:

Ability作用
zibll-ai-ext/read-post-context读取文章上下文
zibll-ai-ext/generate-seo-description生成 SEO 描述
zibll-ai-ext/save-seo-description用户确认后保存 SEO 描述

分类不是菜单页面。它主要用于组织、查询和展示能力。

Schema

Schema 可以理解成“参数说明书”。

输入 schema 告诉调用方:

  • 哪些参数必填。
  • 参数是什么类型。
  • 数字有没有最小值和最大值。
  • 字符串能不能为空。
  • 是否允许额外字段。

输出 schema 告诉调用方:

  • 会返回对象还是数组。
  • 返回对象里有哪些字段。
  • 每个字段是什么类型。

这对 AI 功能很重要,因为模型输出不一定稳定。写了输出 schema,后续调试、保存和自动化都会更稳。

Provider

Provider 是模型服务供应商接入层。

Provider作用
OpenAI Provider把 WordPress AI Client 请求转成 OpenAI Responses API 或 Images API
Anthropic Provider把 WordPress AI Client 请求转成 Anthropic Messages API

你的业务代码不应该到处写 OpenAI 或 Anthropic 的 HTTP 细节。业务代码调用 wp_ai_client_prompt(),具体走哪个 Provider 由 AI Client 和后台配置决定。

Connector

Connector 是后台连接配置。它解决这些问题:

  • API Key 从哪里来。
  • Provider 是否可用。
  • 当前模型支持文本、图片还是多模态。
  • 后台是否允许某个插件使用这个 connector。
  • 设置页面如何遮罩密钥。

用户看到的通常是“连接 OpenAI”“连接 Anthropic”这类配置;开发者看到的是 provider、model、capability 和 API Key 来源。

Prompt Builder

wp_ai_client_prompt() 返回的是 Prompt Builder。

它可以链式设置:

  • system instruction。
  • temperature。
  • max tokens。
  • provider。
  • model。
  • 输出格式。
  • 历史消息。
  • 可用 abilities。

简单调用:

$text = wp_ai_client_prompt( '请把下面内容总结成三句话:' . $content )
    ->using_system_instruction( '你是一个严谨的中文编辑。' )
    ->using_temperature( 0.3 )
    ->generate_text();

Resolver

Resolver 是“只执行白名单能力”的守门员。

当你允许 AI 助手先读取文章上下文,再生成结果时,模型可能会请求调用某个 Ability。不能让模型随便调用站点所有能力,必须用 allowed list 限制范围。

常见规则:

  • 只允许读取类 Ability 自动调用。
  • 保存、删除、发布、扣费类能力不放进自动调用列表。
  • 模型请求未允许的能力时,直接返回错误。
  • 保存动作由用户点击确认后执行。

这也是 WordPress AI 开发里最重要的安全边界。

このドキュメントは役に立ちましたか?

On this page