quivr

The-Vibe-CompanyMIT活跃维护 有专家点评

把持续不断的内容流变成可搜索、可监控的知识库,支持持久化摄取、混合检索、告警,以及格式、模型和业务规则插件。

An open-source engine that turns continuous content streams into search and monitoring. Durable ingestion, hybrid search, alerts, and plugins for formats, models and business rules.

v2.0.2发布于 2026-10-30 13:59 UTC39,647star +14 / 7 天3,728fork同步于 2026-11-11 05:19 UTC

专家点评

上手难度:进阶更新于 2026-11-11

把持续内容流做持久入库、混合检索和主题告警的引擎,顶替自建的抓取+向量库+告警胶水层

适用场景

  • 监控类工作流:需要盯住一批内容源(文档更新、RSS、内部知识库变更),命中主题就推 webhook,自己拼抓取器+向量库+规则引擎的维护成本比直接用高
  • 需要引用出处的检索:回答必须定位到原文段落和版本,而不是只给一段相似文本,做审计或合规场景时这点比纯向量检索省事
  • 多格式、多模型混跑:文件格式解析、嵌入模型、排序策略都要换着试,插件化比锁死单一 pipeline 更容易替换
  • 给 agent 挂检索后端:通过 quivr mcp 让 agent 检索并引用原文,省掉自己写 tool 层和出处回填

踩坑

  • 部署门槛不在 Docker 本身:除 Compose v2 外还要 Go、Python 3.12 + venv、jq,首次启动拉约 1 GB 镜像,网络差时容易卡在拉镜像阶段
  • 数据库依赖是历史争议点:issue 里反复出现对 Supabase 硬依赖的质疑(安全风险、为何强制、README 角色不清),自建 Postgres/PGVector 的诉求反应数最高,接入前先确认当前版本是否已解耦
  • 没有自带 UI:README 明说 Quivr 本身无界面,演示页要另跑 make demo 起在 127.0.0.1:5183,别指望 clone 完就有可点的控制台

同类对比

如果只要单机文档问答、不需要持续入库和告警,LlamaIndex 或 LangChain 的检索组件更轻;如果核心诉求是自建向量库且拒绝托管依赖,直接用 PGVector + 自己的调度更可控。

怎么上手

由 README 提炼,执行前请确认
git clone https://github.com/The-Vibe-Company/quivr.git && cd quivr
make dev
eval "$(make -s env)"
硬件要求按 README 说明

README 未说明 GPU 或显存要求;运行环境需 Linux x86_64 或 Apple Silicon Mac,Docker 与 Compose v2,首次启动约下载 1 GB 镜像。

支持 Apple Silicon
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

把持续涌入的内容存起来、搜得到、命中主题就告警的开源引擎

把持续不断的内容流变成可搜索、可监控的知识库,支持持久化摄取、混合检索、告警,以及格式、模型和业务规则插件。

核心能力

  • 按关键词、语义或混合方式检索并定位到原文段落与版本
  • 保存主题告警规则,命中后记录原因并通过签名 webhook 推送
  • 文档确认入库后后台异步处理,故障只延迟不丢数据
  • 文件格式、数据源、嵌入模型、排序与告警规则均可插件替换
  • 提供 quivr mcp 让 AI agent 检索并引用原文出处

容易踩的坑

首次启动需下载约 1 GB 镜像,网络慢时容易卡住;除 Docker 外还需 Go(版本见 go.mod)、Python 3.12 与 venv、jq;Quivr 本身无用户界面,演示网页需另跑 make demo 并访问 127.0.0.1:5183。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v2.0.2
  1. v2.0.2最新正式版2026-10-30 · 2026-10-30 13:59 UTC

    Quivr 2.0.2

    2.0.2 moves the search database to Weaviate 1.39.14. It changes no API, no configuration and no stored data. Upgrade any 2.0.x installation to it.

    What Weaviate 1.39.14 fixes for Quivr

    • Filtered searches no longer fail at random. Quivr filters every vector and hybrid search to the scope of the request. Weaviate's default filtering strategy could crash such a search on a node of the vector graph with more links than expected, and the search then returned an error.
    • Security: CVE-2026-63209, in the compression library.
    • Less memory.
      • Quivr compresses its vectors. Compressed indexes now drop the uncompressed vector cache they no longer use, which can save gigabytes on a large index.
      • Weaviate also stops keeping memory it never frees when writing to its in-memory tables.
    • Safer restarts. A crash right after a shutdown could leave a keyword-search file empty, and the database would then not start without a manual repair. Startup and shutdown are also faster.

    Results do not change. The hybrid search changes in 1.39.14 only affect offset paging and nearText queries, and Quivr uses neither.

    Upgrade from 2.0.0 or 2.0.1

    1. Back up the search database volume.
    2. Deploy the 2.0.2 images and the new Weaviate pin from deploy/infrastructure.json, or the 2.0.2 compose bundle attached to this release for a single machine.
    3. Keep the same Weaviate volume.

    This is a patch upgrade within one Weaviate minor version: no re-indexing and no Quivr migration. The test that upgrades a 1.37.15 volume through 1.38.20 to 1.39.14, then checks lexical, semantic and hybrid search, passes on this release.

    The release images are signed and carry SBOMs, as described in Security of Quivr releases.


    2.0.2 (2026-10-30)

    Bug Fixes

    • deploy: pin Weaviate 1.39.14 for filtered-search panics and RQ memory (#3976) (90d7d88)
  2. v2.0.12026-10-30 · 2026-10-30 10:22 UTC
    查看更新说明

    Quivr 2.0.1

    2.0.1 is a security release. It changes no API, no configuration and no stored data. Upgrade any 2.0.0 installation to it.

    Security fixes

    • Weaviate 1.39.13 replaces 1.39.10 as the search database. It rejects TLS certificate chains built on the eight leaked eMudhra intermediate certificates (CVE-2026-111943). Weaviate uses TLS for backups, OIDC and model modules.
    • Python 3.12.16 replaces 3.12.15 in the core, plugin and CPU embedding images (CVE-2026-115557).
    • libbrotli1 1.0.9-2+deb12u1 is now in the TEI embedding image (CVE-2026-111497).

    Upgrade from 2.0.0

    1. Back up the search database volume, as before any database upgrade.
    2. Deploy the 2.0.1 images and the new Weaviate pin from deploy/infrastructure.json. For a single-machine installation, use the 2.0.1 compose bundle attached to this release.
    3. Keep the same Weaviate volume.

    Weaviate 1.39.10 to 1.39.13 is a patch upgrade within one minor version, so the stored data stays as it is: no re-indexing and no Quivr migration. The test that upgrades a 1.37.15 volume through 1.38.20 to 1.39.13, then checks lexical, semantic and hybrid search, passes on this release.

    The release images are signed and carry SBOMs, as described in Security of Quivr releases.


    2.0.1 (2026-10-30)

    Bug Fixes

    • deploy: pin Weaviate 1.39.13 for CVE-2026-111943 (#3973) (191d35f)
    • images: rebase on Python 3.12.16 and patch brotli in TEI (#3974) (84e5c4e)
  3. v2.0.0Quivr 2.0.02026-10-29 · 2026-10-29 16:11 UTC
    查看更新说明

    Quivr 2.0.0

    Quivr is an open-source engine for content that keeps arriving. Your application, or Quivr's sources (RSS, Microsoft 365 mailboxes, X lists), send it documents. Quivr keeps every version of each document and makes it searchable within seconds, by keywords, by meaning, or both. It also checks every new document against your saved alerts. Quivr has no user interface: your application talks to it over an HTTP API, and AI agents use it through quivr mcp.

    2.0.0 is the first stable release of the rewritten Quivr. The alphas were for evaluation. From this release on, Quivr makes promises you can build on.

    What 2.0 promises

    • A stable API. The HTTP API keeps the /v0 path for every 2.x release. A 2.x release only adds to it: new endpoints, optional fields, response fields and enum values. A change that could break a working client waits for the next major release.
    • Upgrades that keep your data. An upgrade from one 2.x release to another runs quivr migrate, then rolls the worker and the API, with your data in place.
    • Plugins that check their compatibility. A plugin declares the Plugin API versions it supports, and Quivr refuses to activate one it cannot run.
    • Clear status for each feature. Everything in the documentation is stable within 2.x except a short list of experimental features, each marked on its page: search measurement tooling, Jev re-ranking and Jev-judged alerts, the dedicated vector host, and the quivr-autoscaler binary.

    Versions and compatibility has the details. Known limits lists what 2.0 does not do yet: it searches text only, has no OCR, has no user accounts, and has size limits per document and per search.

    Get started

    Coming from a 2.0.0 alpha

    Upgrading an alpha installation in place is not supported. Start a fresh 2.0.0 installation, or export your documents from the alpha and send them to the new one.

    Since 2.0.0-alpha.7

    • Security:
      • Quivr and its images are built with Go 1.27.3, for CVE-2026-111943;
      • golang.org/x/net, certifi, pillow, and the SeaweedFS image's curl and brotli are patched.
    • Search recovers after a database restart, with its buffers restored and its hydration work bounded.
    • Imports:
      • queue counts stay available during continuous imports;
      • the autoscaler adds bulk workers for connector imports.
    • Documentation:
      • rewritten for newcomers, with new pages: How Quivr works, a glossary, Versions and compatibility, and Known limits;
      • the "evaluation stage" warnings are gone.

    The full list of changes since the first alpha is in CHANGELOG.md.


    Changes since 2.0.0-alpha.7 (generated)

    Features
    • docs-site: add PostHog analytics to the documentation site (#3954) (1f72133)
    Bug Fixes
    • autoscaling: scale bulk workers at connector prefetch bound (#3952) (8a58f13)
    • queues: pr
  4. v2.0.0-alpha.7pre-release2026-10-14 · 2026-10-14 09:38 UTC
    查看更新说明

    2.0.0-alpha.7 (2026-10-13)

    ⚠ BREAKING CHANGES

    • storage: In-place upgrades from 2.0.0-alpha.6 and earlier are unsupported. Reset the installation, or export data using the old installation and re-import into a fresh one. The existing Commitizen footer records this for release-please; CHANGELOG.md is untouched.
    • queues: In-place upgrades from 2.0.0-alpha.6 and older are unsupported. Reset the installation, or export the data and re-import it. Rebuild operations no longer report indexed or vectors_reused.

    Features

    • admin: say when no alert applies to a document (#3872) (c67f4ac)
    • autoscaler: select the replica backend from configuration (#3877) (e21e84d)
    • changes: publish independent record writes in parallel (#3946) (8c9ec6d)
    • content: add running corpus document totals (#3927) (3a4e626)
    • deploy: add dedicated Azure vector host (67a6c0e)
    • deploy: add dedicated Azure vector host (146c945)
    • deploy: reset installations and apply source declarations (#3911) (c11a893)
    • deploy: run a complete CPU stack with Compose (ea68536)
    • deploy: run a complete CPU stack with Compose (ab4952f)
    • deploy: ship declarative infrastructure profiles and drift checks (#3909) (a863db8)
    • explorer: show each filter as soon as its fast count arrives (#3904) (9bfb469)
    • facets: answer fast facet counts from snapshots or samples (#3902) (8d34e53)
    • hosted-embed: configure model prompts explicitly (#3879) (135b78a)
    • hosted-embed: prepare pinned tokenizers for any model (#3893) (feeb89a)
    • metrics: expose HTTP load and pool pressure (#3870) (77686a5)
    • monitoring: allow subscriptions without webhook delivery (#3884) (f8452a6)
    • postgres: s
  5. v2.0.0-alpha.6pre-release2026-10-08 · 2026-10-08 04:10 UTC
    查看更新说明

    2.0.0-alpha.6 (2026-10-08)

    Features

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Quivr

    License: MIT Ask DeepWiki

    An open-source engine for content that keeps arriving: store it, search it, and get alerted when something new matches a topic you follow.

    You send Quivr documents (news articles, emails, posts, PDFs), or let it collect them from RSS feeds, Microsoft 365 mailboxes and X lists. Quivr keeps every version, makes each document searchable within seconds, and checks it against your saved alerts. Your application talks to Quivr over an HTTP API; Quivr has no user interface of its own.

    Quivr is developed by The Vibe Company, the AI agency created by the Quivr team.

    Status: Quivr 2. From 2.0.0 on, the HTTP API (/v0) stays compatible across 2.x releases and upgrades keep your data in place; see Versions and compatibility and Known limits.

    What you can do with it

    • Collect content you send one by one or in batches, or that Quivr pulls from sources on a schedule. Files such as PDFs are read by plugins.
    • Search by keywords, by meaning, or both. Every result points to the exact passage, document and version it comes from, so you can always cite it.
    • Follow a topic. Save an alert such as "harbour strike" AND (ferry OR port), or a plain-language description, and Quivr records every new document that matches, with the reason. Your application reads the matches or receives them as signed webhooks.
    • Keep history. A correction becomes a new version; the old one stays readable. A withdrawn document leaves search at once, and alerts that caught it are told.
    • Plug in your own logic. File formats, sources, embedding models, ranking and alert rules are plugins: small HTTP services you can replace, in any language.
    • Let AI agents use it. quivr mcp lets an agent search Quivr and quote what it finds, with the source of every passage.

    How it works

    flowchart LR
        sources[Sources and<br/>your application] -->|documents| api[Quivr API]
        api --> store[(PostgreSQL + object storage<br/>every version, kept safely)]
        store --> worker[Quivr worker]
        worker <-->|read, cut, embed,<br/>rank, judge alerts| plugins[Plugins]
        worker --> index[(Search index)]
        app[Your application] <-->|search, alerts, changes| api
    

    Quivr confirms a document only once it is stored, then processes it in the background: an outage delays processing but never loses what was confirmed. The search index can always be rebuilt from storage. How Quivr works explains the parts and the guarantees.

    Try it

    You need Linux on x86_64 or a Mac with Apple Silicon, Docker with Compose v2, the Go version in go.mod, Python 3.12 with venv, and jq. The first start downloads about 1 GB.

    git clone https://github.com/The-Vibe-Company/quivr.git && cd quivr
    make dev                 # start Quivr and its dependencies in Docker
    eval "$(make -s env)"    # point this shell at the API, with a local key
    

    Then follow the Quickstart: create a collection, add an article, find it by keyword and by meaning, and get alerted on a topic, in about fifteen minutes. make demo adds a web app on top, at http://127.0.0.1:5183 (quivr-search/).

    To install Quivr on a server from published images, without a checkout, see Run Quivr on one machine.

    Documentation

    Everything is on docs.quivr.thevibecompany.co:

    If you want to…Start with
    Understand QuivrIntroduction, then Core concepts
    Build an application on itQuickstart, then the guides under Use Quivr
    Install and operate itOperate a Quivr deployment
    Write a pluginHow plugins work, then Build your first plugin
    Look up an endpoint, command or settingReference

    The site's source is docs-site/. Documentation for people changing this repository is listed on the contributor start page.

    Repository layout

    cmd/quivr/       the single quivr binary: api, worker, migrate, plugin tools, search, mcp
    internal/        the engine, one Go package per domain module
    contracts/       the HTTP API (OpenAPI) and plugin protocol contracts
    sdks/            Go and Python kits for writing plugins
    plugins/         first-party plugins: alerts, sources, PDF, ingestion, retrieval…
    client/          Go client generated from the HTTP contract
    migrations/      PostgreSQL migrations
    deploy/          Compose, Railway and image build files
    quivr-search/    demo web app built on the public API
    docs-site/       the documentation site
    docs/            contributor docs, decisions (docs/adr/) and dated records (docs/dated/)
    scripts/         local stack, checks and measurement tooling
    

    Contributing

    Read AGENTS.md for the rules and CONTEXT.md for the domain vocabulary, then the contributor start page. Run make check (about two minutes, no Docker) before pushing; make verify runs the end-to-end journeys on an isolated stack. Pull request titles follow Commitizen, for example feat(ingestion): accept record versions.

    Report security issues privately: see SECURITY.md.

    License

    MIT — see LICENSE.