字
字节笔记本
2026年2月18日
Meilisearch:闪电般快速的 AI 驱动搜索引擎
API中转
¥120
本文介绍 Meilisearch,一个闪电般快速的搜索引擎 API,为你的网站和应用提供 AI 驱动的混合搜索能力。它是一个开源、易用、高性能的搜索引擎,可作为 Elasticsearch 的轻量级替代方案。
项目简介
Meilisearch 是一个开源的搜索引擎,用 Rust 编写,提供即时搜索体验、容错容错搜索和混合搜索功能。它在 GitHub 上已获得 56k+ stars,是近年来最受欢迎的搜索引擎项目之一。
与传统搜索引擎相比,Meilisearch 的特点是开箱即用、配置简单、响应速度极快,特别适合需要快速实现搜索功能的应用。
核心特性
- 闪电般快速: 毫秒级响应,支持实时搜索
- 容错搜索: 拼写错误也能找到正确结果
- 混合搜索: 结合语义搜索和传统关键词搜索
- AI 驱动: 支持向量搜索和嵌入模型
- 多语言支持: 内置对多种语言的支持
- 过滤和排序: 强大的过滤和排序功能
- 同义词管理: 支持配置同义词提升搜索体验
- 高亮显示: 自动高亮匹配的关键词
- 地理搜索: 支持基于地理位置的搜索
- 多租户: 支持索引级别的访问控制
技术栈
- 编程语言: Rust
- 架构: 单机/集群部署
- 存储: LMDB(Lightning Memory-Mapped Database)
- API: RESTful API
- SDK: 官方提供多种语言 SDK
安装指南
使用 Docker 部署
bash
# 运行 Meilisearch
docker run -it --rm \
-p 7700:7700 \
-v $(pwd)/meili_data:/meili_data \
getmeili/meilisearch:latest使用 Homebrew(macOS)
bash
brew install meilisearch
meilisearch --master-key your_master_key使用二进制文件
bash
# Linux/macOS
curl -L https://install.meilisearch.com | sh
./meilisearch --master-key your_master_key快速开始
启动服务
bash
meilisearch --master-key myMasterKey服务将在 http://localhost:7700 启动。
添加文档
bash
curl \
-X POST 'http://localhost:7700/indexes/movies/documents' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer myMasterKey' \
--data-binary '[
{
"id": 1,
"title": "Carol",
"genres": ["Romance", "Drama"]
},
{
"id": 2,
"title": "Wonder Woman",
"genres": ["Action", "Adventure"]
}
]'执行搜索
bash
curl \
-X POST 'http://localhost:7700/indexes/movies/search' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer myMasterKey' \
--data-binary '{ "q": "carol" }'使用 JavaScript SDK
javascript
import { MeiliSearch } from 'meilisearch'
const client = new MeiliSearch({
host: 'http://localhost:7700',
apiKey: 'myMasterKey'
})
// 添加文档
await client.index('movies').addDocuments([
{ id: 1, title: 'Carol', genres: ['Romance', 'Drama'] },
{ id: 2, title: 'Wonder Woman', genres: ['Action', 'Adventure'] }
])
// 搜索
const results = await client.index('movies').search('carol')
console.log(results.hits)混合搜索(AI 驱动)
Meilisearch 支持结合传统关键词搜索和语义搜索:
bash
curl \
-X POST 'http://localhost:7700/indexes/movies/search' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer myMasterKey' \
--data-binary '{
"q": "sci-fi movies about space",
"hybrid": {
"semanticRatio": 0.5
}
}'与 Elasticsearch 对比
| 特性 | Meilisearch | Elasticsearch |
|---|---|---|
| 部署复杂度 | 简单 | 复杂 |
| 学习曲线 | 平缓 | 陡峭 |
| 资源占用 | 低 | 高 |
| 实时搜索 | 原生支持 | 需要配置 |
| 容错搜索 | 内置 | 需要插件 |
| 向量搜索 | 内置 | 需要额外模块 |
应用场景
- 电商网站: 商品搜索、筛选、排序
- 文档系统: 知识库、帮助中心搜索
- 内容平台: 文章、视频搜索
- SaaS 应用: 为用户提供搜索功能
- 日志分析: 快速检索日志数据
相关资源
- GitHub 仓库: https://github.com/meilisearch/meilisearch
- 官方文档: https://www.meilisearch.com/docs
- 云服务: https://www.meilisearch.com/cloud
- 问题反馈: https://github.com/meilisearch/meilisearch/issues
许可证
本项目采用 MIT 许可证开源。
分享: