AI Search

提供 AI 语意搜索功能,支持文字搜索、以图搜图等智能搜索能力。


AI Search 插件简介

「AI Search」是一款提供 AI 语意搜索功能的插件,支持文字语意搜索、以图搜图等智能搜索能力。通过整合此插件,开发者可以在自己的插件中轻松实现强大的 AI 搜索功能。

主要功能

  • 文字语意搜索 - 使用自然语言描述,搜索相关图片

  • 以图搜图 - 使用图片搜索相似的图片

  • Item ID 搜索 - 根据已有项目搜索相似图片


使用 eagle.extraModule.aiSearch 来调用 AI Search 插件提供的功能。

状态查询

在调用搜索方法前,建议先检查服务状态:

eagle.onPluginCreate(async (plugin) => {
    const aiSearch = eagle.extraModule.aiSearch;

    // 检查插件是否已安装
    const isInstalled = await aiSearch.isInstalled();
    console.log('已安装:', isInstalled);

    // 检查服务是否就绪
    const isReady = await aiSearch.isReady();
    console.log('服务就绪:', isReady);

    // 检查是否正在启动中
    const isStarting = await aiSearch.isStarting();
    console.log('启动中:', isStarting);

    // 检查是否正在同步数据
    const isSyncing = await aiSearch.isSyncing();
    console.log('同步中:', isSyncing);
});

服务控制


搜索方法

searchByText(query, options) - 文字语意搜索

使用自然语言描述搜索相关图片。

  • query string - 搜索关键字或描述

  • options Object (可选) - 搜索选项

    • limit number - 结果数量限制,默认 20

  • 返回 Promise<Object> - 搜索结果

    • results Array - 搜索结果数组

      • item Item - 完整的 Item 对象

      • score number - 相似度分数

searchByBase64(base64, options) - Base64 图片搜索

使用 Base64 编码的图片搜索相似图片。

  • base64 string - Base64 编码的图片字符串

  • options Object (可选) - 搜索选项

    • limit number - 结果数量限制,默认 20

  • 返回 Promise<Object> - 搜索结果

searchByItemId(itemId, options) - 以现有项目搜索

使用已存在的 Eagle 项目 ID 搜索相似图片。

  • itemId string - Eagle 项目 ID

  • options Object (可选) - 搜索选项

    • limit number - 结果数量限制,默认 20

  • 返回 Promise<Object> - 搜索结果


完整示例

创建相似图片搜索功能


API 参考

状态查询方法

方法
返回类型
说明

isInstalled()

Promise<boolean>

检查 AI Search 插件是否已安装

isReady()

Promise<boolean>

检查服务是否就绪可用

isStarting()

Promise<boolean>

检查服务是否正在启动中

isSyncing()

Promise<boolean>

检查是否正在同步数据

服务控制方法

方法
返回类型
说明

open()

Promise<void>

打开 AI Search 插件

checkServiceHealth()

Promise<boolean>

检查服务健康状态

getSyncStatus()

Promise<Object>

获取详细的同步状态

搜索方法

方法
返回类型
说明

searchByText(query, options?)

Promise<Object>

文字语意搜索

searchByBase64(base64, options?)

Promise<Object>

Base64 图片搜索

searchByItemId(itemId, options?)

Promise<Object>

以项目 ID 搜索相似图片

搜索结果格式

提示:搜索结果中的 item 是完整的 Item 对象实例,可以直接使用 save()refreshThumbnail() 等所有 Item 方法。

最后更新于