AI Search 会自动为你的内容建立索引以供搜索。索引的工作方式取决于你的数据源。
对于连接到网站或 R2 存储桶的实例,AI Search 会创建作业以同步数据源。作业默认按计划每 6 小时自动运行,并处理新增、修改或删除的文件,以保持搜索索引最新。
你可以在仪表板的 Jobs 标签中查看作业状态和历史记录,也可以使用 Instances API。
默认情况下,AI Search 每 6 小时运行一次同步作业。要更改计划同步的频率,请在仪表板中使用 Sync interval 设置,或在通过 Workers 绑定或 REST API 创建或更新实例时设置 sync_interval 字段。
间隔可以是 1、2、4、6、12 或 24 小时。在 API 中,sync_interval 以秒为单位指定,因此允许的值为 3600(1 小时)、7200(2 小时)、14400(4 小时)、21600(6 小时,默认)、43200(12 小时)和 86400(24 小时)。
同步作业通常按计划运行,但也可以在源内容变更时以编程方式启动。这有助于将 AI Search 连接到 CMS 或内容流水线:当发布事件或构建步骤完成时,触发同步,使索引无需等待下一次计划运行即可反映变更。
使用 Wrangler CLI 触发同步作业,例如在 CI/CD 步骤或部署钩子中:
npx wrangler ai-search jobs create <INSTANCE_NAME>或从 CMS webhook 或 Worker 调用 Create job REST API。同步作业最多每 30 秒触发一次。
上传到内置存储的文件会立即建立索引。没有同步作业。每个文件在上传时单独处理。
| 操作 | 描述 |
|---|---|
| Trigger sync | 手动启动同步作业,扫描外部数据源的变更。每 30 秒可触发一次。 |
| Cancel job | 取消正在运行的同步作业。 |
| Pause indexing | 暂时停止所有计划的同步作业。 |
| Resume indexing | 恢复计划的同步作业,包括因不活动而自动暂停的作业。 |
| Sync individual file | 重新索引特定文件。 |
你可以从仪表板、REST API 或 Workers 绑定 执行这些操作。
建立索引的总时间取决于文件数量和类型。影响性能的因素包括:
- 文件总数及其大小
- 文件格式(例如,图像比纯文本耗时更长)
- 用于嵌入和图像处理的 Workers AI 模型延迟
如果实例连续 31 天未收到搜索请求,AI Search 会自动暂停其计划的同步作业。这仅适用于外部数据源(网站或 R2),因为内置存储没有同步作业。这可避免在实例未被使用时,对数据源发起不必要的重新扫描和同步请求。
已暂停的实例仍可完整搜索,但在同步作业暂停期间不会拾取源变更。当实例再次收到搜索或聊天流量后,AI Search 会在活动检查期间自动恢复计划的同步作业。你也可以使用 Resume indexing 控件手动恢复。请参阅控制操作。
为确保索引顺畅可靠:
- 确保文件在大小限制内,且为支持的格式,以免被跳过。
- 对于基于 R2 的实例,保持 service API token 有效,以防止索引失败。
- 定期清理过时或不必要的内容,以保持在实例限制内。