Project
pikuri-vectordb
pikuri-vectordb gives a pikuri-core agent a +vectordb_search+
tool over a local document corpus — agentic search, the agent
decides when to retrieve. Ships a swappable backend (a
pure-Ruby +Backend::InMemory+ for teaching, plus thin
+Backend::Qdrant+ / +Backend::Chroma+ HTTP clients for
persistence — Qdrant recommended), a chunker, an
embedder wrapper over +RubyLLM.embed+, and an optional
+Reranker::LlamaServer+ that speaks +/v1/rerank+ against a
cross-encoder model. Text extraction goes through
+Pikuri::FileType.read_as_text+ in pikuri-core, which handles
plain text / Markdown / PDF; HTML extraction is a deferred
follow-up. Hosts wire the feature via
+c.add_extension Pikuri::VectorDb::Extension.new(...)+ inside
the +Agent.new+ block — same opt-in shape as +pikuri-tasks+ /
+pikuri-skills+. The bundled +Pikuri::VectorDb::LIBRARIAN+
persona is the privilege-separated sub-agent counterpart for
hosts that want recall to flow through a child rather than the
parent's context.
Three model endpoints in the full setup — chat (via ruby_llm),
an embedder (via +RubyLLM.embed+), and an optional reranker
(HTTP +/v1/rerank+). A single +llama-server+ in router mode
serves all three by default, loading each cached GGUF on
demand; see the gem's README for details.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
Development
Licenses
MIT
Dependencies