meilisearch v1.13.0-rc.0 版本更新介绍
发布日期: 2025-01-27
版本号: v1.13.0-rc.0
Meilisearch v1.13版本主要带来以下重要更新:1)正式稳定向量存储功能,不再需要手动开启实验性功能,可直接使用结合传统全文搜索与AI语义搜索的混合搜索能力,同时调整了相关错误代码命名规范;2)新增无需转储文件的升级方式,支持从v1.12版本直接通过命令行参数实现快速原地升级;3)其他优化包括改进任务自动批处理机制、增加Prometheus指标监控任务队列延迟、提升索引列表请求速度、安装脚本支持GITHUB_TOKEN认证等;4)修复了不可过滤属性的错误提示问题,并进行了多项依赖更新、测试拆分、代码重构及文档改进。该版本仍为候选版本,不建议在生产环境使用。
更新内容 (中文)
v1.13.0 版本更新日志
[!WARNING] 由于这是候选版本(RC),我们不建议在生产环境中使用。遇到非预期行为?欢迎提交错误报告和新功能反馈。
Meilisearch v1.13 带来了多项重大改进,包括稳定向量存储功能以实现无缝混合搜索整合!🎉 本版本还简化了 Meilisearch 的升级流程:迁移不再需要转储文件!
新功能与更新 🔥
稳定向量存储功能
自 v1.3.0 首次发布后,我们现已全面稳定向量存储功能。该实验性功能不再需要手动激活,vectorStore
字段也不再通过 \/experimental-features
路由显示或接收。这使得使用混合搜索能力更加简单——通过结合传统全文搜索与 AI 驱动的语义搜索,显著提升搜索相关性。
稳定前的破坏性变更
- 接受的 Ollama URL 仅限以
\/api\/embed
和\/api\/embeddings
结尾 - 修改的错误代码:
invalid_embedder
已拆分为invalid_search_embedder
和invalid_similar_embedder
。当搜索(或相似请求)的embedder
参数引用不存在的嵌入配置或非字符串时返回这些代码invalid_hybrid_query
更名为invalid_search_hybrid_query
。当hybrid
参数无效(包含未知键值或非空值/对象)时返回
由 @dureuill 在 https://github.com/meilisearch/meilisearch/pull/5232 和 https://github.com/meilisearch/meilisearch/pull/5234 完成
实验性无转储升级:无需转储文件即可升级到新版
从现在起,您可以将 v1.12 及以上版本的数据库直接升级到最新版本而无需使用转储文件。这意味着这是原地升级过程,速度更快且仅消耗最低限度的内存或磁盘资源。
将 v1.12 数据库升级到 v1.13 请运行:
.\/meilisearch --experimental-dumpless-upgrade
点击此处了解更多。
由 @irevoire 和 @dureuill 在 https://github.com/meilisearch/meilisearch/pull/5264 完成
其他改进
- 通过暴露限制批次总大小的方法改进任务自动批处理 by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/5223
- 关联实验性功能 Prometheus:添加 Prometheus 指标测量任务队列延迟 by @takaebato in https://github.com/meilisearch/meilisearch/pull/5178
- 加速索引列表请求 by @irevoire in https://github.com/meilisearch/meilisearch/pull/5166
- 在安装脚本中支持
GITHUB_TOKEN
认证 by @Sherlouk in https://github.com/meilisearch/meilisearch/pull/5216
修复 🐞
- 改进属性不可过滤时的错误提示 by @jameshiew in https://github.com/meilisearch/meilisearch/pull/5135
其他
- 依赖项更新
- 升级依赖项并修复
idna
严重性问题 by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/5218
- 升级依赖项并修复
- CI 与测试
- 分离 Meilisearch crate 测试到独立文件 by @K-Kumar-01 in https://github.com/meilisearch/meilisearch/pull/5134
- 将测试拆分到独立文件 by @K-Kumar-01 in https://github.com/meilisearch/meilisearch/pull/5171
- 移除过时测试代码 by @K-Kumar-01 in https://github.com/meilisearch/meilisearch/pull/5173
- 修复不稳定的批次测试 by @irevoire in https://github.com/meilisearch/meilisearch/pull/5175
- 分离 option crate meilisearch 测试到独立文件 by @K-Kumar-01 in https://github.com/meilisearch/meilisearch/pull/5174
- 移除硬编码任务 ID 防止测试不稳定 by @mhmoudr in https://github.com/meilisearch/meilisearch/pull/5182
- 杂项
- 引导用户在基准板上创建自定义报告 by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/5029
- 修复注释中的拼写错误 by @eltociear in https://github.com/meilisearch/meilisearch/pull/5184
- 使用常量替代硬编码字符串 by @Gnosnay in https://github.com/meilisearch/meilisearch/pull/5169
- 重构 index-scheduler by @irevoire in https://github.com/meilisearch/meilisearch/pull/5199
- 重构索引器 by @dureuill in https://github.com/meilisearch/meilisearch/pull/5168
- 自动生成 OpenAPI 规范 by @irevoire in https://github.com/meilisearch/meilisearch/pull/4867 & https://github.com/meilisearch/meilisearch/pull/5231
- 使用
Extend::extend
合并位图 by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/5221 - 修复索引创建时的任务队列损坏错误 by @irevoire in https://github.com/meilisearch/meilisearch/pull/5239
❤️ 再次感谢外部贡献者:
- Meilisearch: @dureuill, @Kerollmops, @takaebato, @irevoire, @Sherlouk, @jameshiew, @K-Kumar-01, @mhmoudr, @eltociear, @Gnosnay.
更新内容 (原始)
v1.13.0 release changelogs
[!WARNING] Since this is a release candidate (RC), we do NOT recommend using it in a production environment. Is something not working as expected? We welcome bug reports and feedback about new features.
Meilisearch v1.13 introduces several significant improvements, including stabilizing the Vector Store feature for seamless hybrid search integration! 🎉 This version also simplifies the Meilisearch upgrade process: you don’t need a dump for migrating anymore!
New features and updates 🔥
Stabilize Vector Store feature
After its initial release in v1.3.0, we have now fully stabilized the Vector Store feature. The experimental feature no longer requires manual activation, and the vectorStore
field is no longer displayed or accepted by the /experimental-features
route. This makes it even simpler to utilize our hybrid search capability, which delivers significantly better search relevance by combining traditional full text search with AI-powered semantic search.
Breaking Changes before Stabilization
- Accepted Ollama URLs can only end with
/api/embed
and/api/embeddings
. - Modified error codes:
invalid_embedder
has been split intoinvalid_search_embedder
andinvalid_similar_embedder
. These codes are returned when theembedder
parameter of a search (resp. similar) request refers to a non-existing embedder configuration or is not a string.invalid_hybrid_query
has been renamed toinvalid_search_hybrid_query
. It is returned when thehybrid
parameter is invalid: contains unknown keys or is not eithernull
or an object.
Done by @dureuill in https://github.com/meilisearch/meilisearch/pull/5232 & https://github.com/meilisearch/meilisearch/pull/5234
Experimental Dumpless Upgrade: Ease upgrading to the next version without a dump
From now on you can upgrade any database in the v1.12 version or more to the latest version without using a dump. That means it’s an in-place, way faster upgrade process that consumes only the minimal amount of RAM or disk required.
To upgrade your v1.12 database to v1.13 runs:
./meilisearch --experimental-dumpless-upgrade
Read more about it here.
Done by @irevoire and @dureuill in https://github.com/meilisearch/meilisearch/pull/5264
Other improvements
- Improve the auto-batching of tasks by exposing a way to limite the total size of a batch by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/5223
- Related to Prometheus the experimental feature: Add Prometheus metrics to measure the task queue latency by @takaebato in https://github.com/meilisearch/meilisearch/pull/5178
- Speed up the request to list the indexes by @irevoire in https://github.com/meilisearch/meilisearch/pull/5166
- Add support for
GITHUB_TOKEN
authentication in installation script by @Sherlouk in https://github.com/meilisearch/meilisearch/pull/5216
Fixes 🐞
- Improve the error message when an attributes is not filterable by @jameshiew in https://github.com/meilisearch/meilisearch/pull/5135
Misc
- Dependencies updates
- Upgrade dependencies and fixes the
idna
severity issue by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/5218
- Upgrade dependencies and fixes the
- CIs and tests
- Split Meilisearch crate tests in separate file by @K-Kumar-01 in https://github.com/meilisearch/meilisearch/pull/5134
- Split tests in separate file by @K-Kumar-01 in https://github.com/meilisearch/meilisearch/pull/5171
- Remove obsolete test code by @K-Kumar-01 in https://github.com/meilisearch/meilisearch/pull/5173
- Fix the flaky batches test by @irevoire in https://github.com/meilisearch/meilisearch/pull/5175
- Split tests for option crate meilisearch in a separate test file by @K-Kumar-01 in https://github.com/meilisearch/meilisearch/pull/5174
- Remove hard coded task IDs to prevent flaky tests by @mhmoudr in https://github.com/meilisearch/meilisearch/pull/5182
- Misc
- Guide people to create custom reports on the benchboard by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/5029
- Fix typo in a comment by @eltociear in https://github.com/meilisearch/meilisearch/pull/5184
- Replace hardcoded string with constants by @Gnosnay in https://github.com/meilisearch/meilisearch/pull/5169
- Refactor the index-scheduler by @irevoire in https://github.com/meilisearch/meilisearch/pull/5199
- Refactor indexer by @dureuill in https://github.com/meilisearch/meilisearch/pull/5168
- Auto-generate the OpenAPI spec by @irevoire in https://github.com/meilisearch/meilisearch/pull/4867 & https://github.com/meilisearch/meilisearch/pull/5231
- Merge bitmaps by using
Extend::extend
by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/5221 - Fix corrupted task queue errors on index creation by @irevoire in https://github.com/meilisearch/meilisearch/pull/5239
❤️ Thanks again to our external contributors:
- Meilisearch: @dureuill, @Kerollmops, @takaebato, @irevoire, @Sherlouk, @jameshiew, @K-Kumar-01, @mhmoudr, @eltociear, @Gnosnay.