最近推送 2026-10-26 16:26(2 天前),属于活跃维护
The-Vibe-Company/quivr
GITHUB中文整理主语言 Go · 39,611 星 · MIT · 创建于 2023-05-13
一个开源的持续内容流引擎,把不断到达的内容持久化摄入后变成可搜索、可监控的主题,核心保持通用,格式、模型和业务规则通过插件扩展。
仓库健康度
5 个维度开放 Issue 20 个 · Fork 3,732 个
star 记录还不够天数,增量算不出来
许可证 MIT · 8 个 topics
这一项暂无数据,不代表项目没有发布
「证据不足」表示这项数据暂时没有取到,不能读成「项目有问题」;「部分数据」表示只拿到一部分信号。版本发布要额外调 Releases 接口,下一版补。
Star 趋势
6 天记录横轴 2026-10-23 → 2026-10-28,纵轴按这段时间的最小/最大值拉伸。趋势来自站内每天记录一次的星数,页面打开时不会实时请求 GitHub。
它解决什么问题
据 README 归纳面对持续不断的内容流,如果没有它,写入可能丢失或静默失败,搜索索引难以重建,新内容无法在几秒内被检索,也难以长期跟踪某个主题的变化。它先保证内容不丢,再让内容尽早可搜,并支持随时间持续监控。
核心能力
7 条- 1持久化摄入内容,写入提交后才确认,故障只延迟处理而不丢失内容
- 2为每次写入携带幂等键,重放返回相同结果,改动用不可变版本记录
- 3文本分段后即可关键词搜索,向量等增强在后台异步补充
- 4混合搜索在向量重建期间保留关键词结果,并报告受影响的内容集合
- 5搜索索引可从 PostgreSQL 和 S3 中的原始数据重建
- 6按可配置间隔刷新实时和批量积压内容,跟踪主题变化
- 7通过插件扩展格式、AI 模型和业务规则,不必分叉核心平台
项目画像
6 个角度项目定位
一个开源的持续内容流引擎,把不断到达的内容持久化摄入后变成可搜索、可监控的主题,核心保持通用,格式、模型和业务规则通过插件扩展。
适合谁
需要持续摄入、检索和监控内容流的团队,例如做舆情跟踪、内容归档、主题监测或构建内部搜索与告警系统的开发者。
典型场景
创建一个内容集合,持续写入文章,几秒内用关键词或混合搜索找到它,并对匹配主题收到告警。;跟踪某个主题随时间的变化,利用可配置的刷新间隔和进度计数了解积压处理情况。;在向量索引重建期间继续使用关键词搜索,并获知哪些内容集合受影响,避免搜索中断。;通过插件接入自有格式、模型或业务规则,把引擎适配到特定领域而不修改核心。
部署难度
需要先安装 Go、Docker Compose、Python 虚拟环境、Node.js 和 jq,首次运行会拉取固定镜像和约 1 GB 的 E5 模型;用 make dev 启动依赖、迁移并运行 API 与 worker,用 make check 做不依赖 Docker 的检查。
风险限制
需要 Linux x86_64 或 Apple Silicon 的 macOS,依赖 Go 1.27.2、Docker Compose v2、Python 3 与 venv、Node.js 22+ 和 jq;首次运行下载约 1 GB 的镜像和 E5 模型。
最近维护
最近一次推送是 2026-10-26 16:26。 实现方式:单个二进制提供 API、worker 和迁移命令,用 PostgreSQL 存目录,S3 兼容存储存原始字节,Temporal 做持久化编排,Weaviate 提供关键词与向量搜索,本地 TEI 服务生成嵌入,搜索索引作为可重建的投影。
README 原文细节
3 个板块怎么安装从零跑起来的步骤
Quickstart
Requirements (Linux x8664, or macOS on Apple Silicon for make dev): Go 1.27.2, Docker with Compose v2, Python 3 with venv, Node.js 22+ and jq. The first run downloads pinned images and the E5 model (~1 GB).
make verify runs every feature's acceptance suite and one assembled monitoring journey on an isolated stack. It removes only its own project, even after a failure or Ctrl+C. It then prints the path of a report.md that names any failed step, the pinned versions and the dependency inventory. It runs on Linux x8664 only, as in CI; see the remaining limits.
make dev prints the API address and the path of a generated config.json holding throwaway local keys; eval "$(make -s env)" exports the address, a key and a webhook destination. Then follow the Quickstart: create a Corpus, add an article, search it and get an alert, with commands that make verify replays against a real stack.
make dev # start dependencies, run migrations, launch API + worker
make check # docs, contracts, vet and unit tests without Docker (about 2 min); run before pushing
make verify # make check, then end-to-end journeys on an isolated stack
make down # stop everything, keep data (make reset also deletes volumes)
实现原理它内部是怎么做的
Architecture at a glance
A single quivr binary provides the api, worker and migrate commands.
- Core — Go modular monolith (cmd/quivr, internal/…)
- Transactional catalog — PostgreSQL 17
- Canonical bytes and artifacts — S3-compatible storage (SeaweedFS locally)
- Durable orchestration — Temporal
- Lexical and vector search — Weaviate
- Embeddings — Local TEI serving pinned multilingual-e5-small (384 dimensions)
- Contract — OpenAPI 3.1 in contracts/http/v0
- Local runtime — Docker Compose
其它说明README 里剩下的内容
What works today
Live/bulk backlog observations refresh every 15 seconds by default, with a configurable interval and rebuild/backfill estimates from progress counters (queue configuration).
Live and bulk workers group ready document commits within each receipt batch, up to sixteen distinct Records per organization. Segments-only ingestion providers can publish new content and keyword readiness together; vectors remain a separate step. The bridge initially keeps legacy journal mode. Explicit parallel activation removes organization-wide acceptance locks, with stable per-Record feed order and a safe publication horizon; concurrent Records need not follow exact commit order (rollout).
JSON logs link caller request IDs, trace/span IDs, Receipts, Records and Versions. Opt-in OpenTelemetry exports traces and metrics to an OTLP collector, carrying one trace through durable ingestion, Temporal, plugin calls and webhooks (configuration). - Local load measurement (make load) with deterministic free providers, versioned scenarios, ingestion bursts and replica failure. Reports include latency, errors, throughput and delays until documents are searchable and alerted; see Run local load tests. - Retrieval measurement with a frozen workload (make measure), and search quality on public
- Run Quivr on one machine from release images with one Compose file, CPU embeddings, persistent storage and an optional demo interface.
- Run the vector index on a dedicated host with authenticated HTTPS, a persistent data disk, and an idempotent Azure CLI provisioning example.
- Reset and reload an installation from private JSON declarations, with a preview and idempotent public API replay.
- Choose an embedding model for local inference, your own model server or a hosted API, with rebuild requirements and execution-only tuning. Run a large import covers bulk workers, provider capacity, da
- Searches report query-model outages as retryable 503 modelunavailable, separately from overload and other search dependency failures. See Search errors.
- Worker autoscaling follows the bulk or live queue backlog, with KEDA, the quivr-autoscaler binary (Kubernetes or Railway) or by hand. Live workers keep separate capacity.
- Rolling application upgrades use additive schema expansions; destructive cleanup
- runs only with quivr migrate --contract. API and worker retry performance-index
- builds in the background, so their busy index builds do not delay startup. An
- older binary's index build can still hold the migration lock until it finishes
- or is stopped. CI checks the merge-base binary against
- expansions. See Upgrade Quivr.
- Release images and build identity. Release-please manages alpha release PRs, versions and changelogs. Publishing a release builds signed engine and first-party plugin images on GHCR, with signed SPDX
- Declarative conformance cases: contribute generic requirements and measure them locally with
Documentation
The documentation site, docs.quivr.thevibecompany.co, is written for people who use Quivr and write plugins: an introduction, the Quickstart, core concepts, plugin guides, task guides and the reference. Its source is docs-site/; the HTTP, CLI, MCP and plugin references there are generated from the contracts.
This repository keeps the documentation for contributors, listed per reader on the start pages generated from docs/inventory.toml:
- Using Quivr: the READMEs of the contracts, the demo and the
- deployment, and the generated references.
- Writing plugins: the READMEs of the SDKs, the plugin
- contract and the first-party plugins.
- Contributing to Quivr: change this repository, as a person
- or a coding agent.
关于 quivr 的常见问题
7 个问题quivr 是做什么的?
一个开源的持续内容流引擎,把不断到达的内容持久化摄入后变成可搜索、可监控的主题,核心保持通用,格式、模型和业务规则通过插件扩展。 面对持续不断的内容流,如果没有它,写入可能丢失或静默失败,搜索索引难以重建,新内容无法在几秒内被检索,也难以长期跟踪某个主题的变化。它先保证内容不丢,再让内容尽早可搜,并支持随时间持续监控。
quivr 有哪些功能?
核心能力:持久化摄入内容,写入提交后才确认,故障只延迟处理而不丢失内容;为每次写入携带幂等键,重放返回相同结果,改动用不可变版本记录;文本分段后即可关键词搜索,向量等增强在后台异步补充;混合搜索在向量重建期间保留关键词结果,并报告受影响的内容集合;搜索索引可从 PostgreSQL 和 S3 中的原始数据重建;按可配置间隔刷新实时和批量积压内容,跟踪主题变化;通过插件扩展格式、AI 模型和业务规则,不必分叉核心平台。
quivr 适合谁用?
需要持续摄入、检索和监控内容流的团队,例如做舆情跟踪、内容归档、主题监测或构建内部搜索与告警系统的开发者。
quivr 是怎么工作的?
单个二进制提供 API、worker 和迁移命令,用 PostgreSQL 存目录,S3 兼容存储存原始字节,Temporal 做持久化编排,Weaviate 提供关键词与向量搜索,本地 TEI 服务生成嵌入,搜索索引作为可重建的投影。
怎么安装 quivr?
按项目 README 的说明:Requirements (Linux x8664, or macOS on Apple Silicon for make dev): Go 1.27.2, Docker with Compose v2, Python 3 with venv, Node.js 22+ and j;make verify runs every feature's acceptance suite and one assembled monitoring journey on an isolated stack. It removes only its own project。完整命令见下方「怎么安装」一节或 GitHub 仓库的 README。
用 quivr 有什么门槛或限制?
需要 Linux x86_64 或 Apple Silicon 的 macOS,依赖 Go 1.27.2、Docker Compose v2、Python 3 与 venv、Node.js 22+ 和 jq;首次运行下载约 1 GB 的镜像和 E5 模型。
quivr 现在还在维护吗?数据怎么样?
目前 39,611 星,3,732 个 Fork,主语言 Go,创建于 2023-05-13,最近一次推送 2026-10-26 16:26,许可证 MIT。星数、Fork、推送时间都是 GitHub 返回的实时数据,「最近推送」离现在越近说明越活跃;长期不动要留意是否已停止维护。
这些内容来自哪
读法说明项目数据取自 GitHub 官方接口与项目 README;星数、Fork、语言与时间以 GitHub 页面为准,档案更新于 2026-10-23 17:53。
