本地 AI 搜索引擎,一条命令自动索引代码、文档、日志和 PDF,兼容 Elasticsearch API,使用 Rust 编写。
- Star
- 78,319
- Fork
- 26,142
- 未关闭 Issue
- 6,186
- 最近提交
- 3小时前
这是什么?
Elasticsearch 是一个分布式搜索与分析引擎,以 JSON 文档的形式存储数据,并支持近实时检索。它覆盖全文检索、向量检索和混合检索,常用于检索增强生成(RAG)、日志、指标、应用性能监控和安全日志分析等场景。
数据通过 REST API 写入和查询,任何 HTTP 客户端或官方语言客户端都可以接入。文档可通过简单的 POST 请求或 _bulk 接口批量写入,并按 ID 或搜索条件读取。时间序列数据可以写入由自动生成的后备索引组成的数据流。
项目使用 Gradle 构建,可为 Linux、macOS 和 Windows 生成发行包。本地开发可使用 start-local 脚本通过 Docker 同时启动 Elasticsearch 和 Kibana,但该方式仅适用于开发和测试,不适合生产环境。
核心功能
- 01对 JSON 文档提供全文检索、向量检索和混合检索
- 02数据写入后可近实时检索
- 03通过 REST API 访问,支持任意 HTTP 客户端和官方语言客户端
- 04支持 _bulk 批量写入和面向时间序列的数据流
- 05分布式架构,文档可从集群中任意节点访问
适用场景
- 为私有文档构建检索增强生成(RAG)流程
- 为应用内容或商品目录提供全文搜索
- 集中式日志与指标分析
- 安全事件分析和应用性能监控
快速上手
- 1
运行 start-local 脚本,在 Docker 中部署 Elasticsearch 和 Kibana
curl -fsSL https://elastic.co/start-local | sh - 2
在 elastic-start-local 文件夹中检查与 Elasticsearch 的连接
source .env curl $ES_LOCAL_URL -H "Authorization: ApiKey ${ES_LOCAL_API_KEY}" - 3
使用基本认证创建一个新索引
curl -u elastic:$ES_LOCAL_PASSWORD \ -X PUT \ http://localhost:9200/my-new-index \ -H 'Content-Type: application/json'
使用前须知
- start-local 部署仅用于本地开发和测试,不适用于生产环境。
- 本地部署禁用了 HTTPS,并使用基本认证。
- 附带的试用许可证仅有一个月,之后将恢复为 Basic 版本。
标签
常见问题
- elasticsearch 是什么?
- 分布式、基于 RESTful 接口的搜索与分析引擎,同时可作为可扩展数据存储和向量数据库使用。 Elasticsearch 是一个分布式搜索与分析引擎,以 JSON 文档的形式存储数据,并支持近实时检索。它覆盖全文检索、向量检索和混合检索,常用于检索增强生成(RAG)、日志、指标、应用性能监控和安全日志分析等场景。
- elasticsearch 可以免费使用吗?用的什么许可证?
- elasticsearch 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
- elasticsearch 还在维护吗?
- 活跃维护中。elasticsearch 最近一次提交是在 2026年10月20日。
- elasticsearch 适合用来做什么?
- 为私有文档构建检索增强生成(RAG)流程 为应用内容或商品目录提供全文搜索 集中式日志与指标分析 安全事件分析和应用性能监控
- elasticsearch 怎么安装和运行?
- 运行 start-local 脚本,在 Docker 中部署 Elasticsearch 和 Kibana: curl -fsSL https://elastic.co/start-local | sh 在 elastic-start-local 文件夹中检查与 Elasticsearch 的连接: source .env curl $ES_LOCAL_URL -H "Authorization: ApiKey ${ES_LOCAL_API_KEY}" 使用基本认证创建一个新索引: curl -u elastic:$ES_LOCAL_PASSWORD \ -X PUT \ http://localhost:9200/my-new-index \ -H 'Content-Type: application/json'
- 在哪里获取 elasticsearch?
- 源代码和安装说明在 GitHub 上:https://github.com/elastic/elasticsearch
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
开源 MPP 实时分析与搜索数据库,支持快速 SQL 分析、湖仓查询加速及结构化、文本与向量混合检索。
用 Rust 编写的开源数据仓库,统一支持 SQL 分析、向量与全文检索及 Python 沙箱 UDF,数据存放于 S3 等对象存储。
用 Rust 编写的多线程内存键值数据库,兼容 Redis 与 Valkey 协议,内置全文与向量搜索。
开源的 PDF 编辑平台,可在浏览器、桌面端或通过 API 编辑、签名、涂黑、转换和自动化处理 PDF。
本地运行的命令行搜索引擎,可检索 Markdown 笔记、会议记录和文档,结合 BM25、向量检索与 LLM 重排序。