Repolode
oramasearch

oramasearch/orama

一个可在浏览器、Node.js 或边缘网络运行的 JavaScript/TypeScript 搜索引擎库,支持全文、向量和混合搜索。

可替代:Algolia

Star
10,603
Fork
409
未关闭 Issue
35
最近提交
20天前

这是什么?

Orama 是一个用 TypeScript 编写的搜索库,可直接嵌入你的应用中。它能在浏览器、服务器或边缘网络上运行,无需单独部署搜索服务即可添加搜索功能。

库中包含带拼写容错的全文搜索、BM25 排序、30 种语言的词干提取与分词、字段加权等能力,并支持向量搜索以及结合两者的混合搜索。此外还提供过滤、分面、地理位置搜索和置顶规则。文档依据类型化的 schema 定义,字段类型包括字符串、数字、布尔、枚举、地理坐标和向量。

项目提供插件,可在插入和搜索时生成嵌入向量,从客户端安全地代理 OpenAI 调用,并基于已索引的数据构建问答式会话。可通过 npm 安装,也可从 CDN 加载或在 Deno 中使用。

核心功能

  • 01支持带拼写容错、BM25 排序和精确匹配的全文搜索
  • 02支持向量搜索与混合搜索,实现语义检索
  • 03提供过滤、分面、地理位置搜索和字段加权
  • 04支持 30 种语言的词干提取与分词
  • 05通过插件系统扩展嵌入生成、数据持久化和分析功能

适用场景

  • 为静态网站或文档站点添加浏览器端搜索
  • 为商品目录构建语义或混合搜索
  • 基于自有内容搭建 RAG 风格的问答界面

快速上手

  1. 1

    使用 npm 安装软件包

    npm i @orama/orama
  2. 2

    在代码中创建数据库、插入文档并进行搜索

使用前须知

  • 向量搜索和混合搜索需要文本嵌入,您需要自行提供,或通过插件生成。
  • 使用 OpenAI 模型生成嵌入需要通过 Secure Proxy 插件配置 API 密钥。

收录于专题

标签

常见问题

orama 是什么?
一个可在浏览器、Node.js 或边缘网络运行的 JavaScript/TypeScript 搜索引擎库,支持全文、向量和混合搜索。 Orama 是一个用 TypeScript 编写的搜索库,可直接嵌入你的应用中。它能在浏览器、服务器或边缘网络上运行,无需单独部署搜索服务即可添加搜索功能。
orama 可以免费使用吗?用的什么许可证?
orama 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
orama 还在维护吗?
活跃维护中。orama 最近一次提交是在 2026年10月18日。
orama 适合用来做什么?
为静态网站或文档站点添加浏览器端搜索 为商品目录构建语义或混合搜索 基于自有内容搭建 RAG 风格的问答界面
orama 怎么安装和运行?
使用 npm 安装软件包: npm i @orama/orama 在代码中创建数据库、插入文档并进行搜索
在哪里获取 orama?
源代码和安装说明在 GitHub 上:https://github.com/oramasearch/orama

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目