跳到主要内容

omnisearch

omnisearch 库提供统一的搜索接口,对接多种搜索后端(搜索引擎/网络空间测绘/自定义源),用一套 API 完成跨源检索,常用于情报收集与资产发现。

典型使用场景:

  • 统一检索:omnisearch.Search(query, opts...) 执行搜索并返回结果集。
  • 后端与参数:omnisearch.backendType / omnisearch.type 选择后端,omnisearch.apikey / omnisearch.baseurl / omnisearch.proxy 配置访问,omnisearch.page / omnisearch.pagesize / omnisearch.timeout 控制分页与超时,omnisearch.customSearcher 注册自定义搜索源。

与相邻库的关系:omnisearch 是情报检索聚合层,常作为 AI 工具(aiagent/aim 的搜索能力)或资产发现流程的输入端,与 spacengine(网络空间测绘)思路相通。

共 10 个函数

可变参数函数索引

函数参数返回值说明
omnisearch.Searchquery string, options ...ostype.SearchOption[]*ostype.OmniSearchResult, error使用聚合搜索引擎执行一次综合搜索(默认走 aibalance 聚合层)

可变参数函数详情

Search(query string, options ...ostype.SearchOption) ([]*ostype.OmniSearchResult, error)

使用聚合搜索引擎执行一次综合搜索(默认走 aibalance 聚合层)

依赖外部搜索服务与 API Key,需要网络环境

必填参数

参数名类型说明
querystring搜索关键词

可选参数

可作为可变参数 options ...ostype.SearchOption 传入选项;共 9 个可用选项,详见 SearchOption 选项列表

返回值

序号类型说明
r1[]*ostype.OmniSearchResult搜索结果列表,每个结果包含内容与来源
r2error错误信息

示例

// 示意性示例,需要有效的 apikey 与网络
results = omnisearch.Search("yaklang", omnisearch.apikey("your-api-key"))~

for r in results {
println(r.Content)
}

可变参数选项列表

以下按选项类型汇总全部可变参数选项(原先重复在各主函数下的选项表已收拢到此处):

1. 类型:SearchOption

涉及到的函数有:omnisearch.Search

选项函数参数返回值说明
omnisearch.apikeykeys ...stringostype.SearchOptionomnisearchAPIKey 为本次搜索设置一个或多个 API Key
omnisearch.backendTypebackendType stringostype.SearchOptionomnisearchBackendType 指定聚合层后端使用的实际搜索器类型
omnisearch.baseurlbaseURL stringSearchOptionWithBaseURL 设置搜索服务的基础 URL
omnisearch.customSearchername string, handle CustomSearcherHandleostype.SearchOptionomnisearchCustomSearcher 注册一个自定义搜索器,使 omnisearch.Search 调用本地处理函数
omnisearch.pagepage intSearchOptionWithPage 设置搜索结果页码
omnisearch.pagesizepageSize intSearchOptionWithPageSize 设置每页结果数量
omnisearch.proxyproxy stringSearchOptionWithProxy 设置搜索请求代理
omnisearch.timeouttimeout time.DurationSearchOptionWithTimeout 设置搜索超时时间
omnisearch.typename stringostype.SearchOptionomnisearchType 指定本次搜索使用的搜索器类型