Skip to main content

Crate vectorless

Crate vectorless 

Source
Expand description

§Vectorless

A document engine for AI. It transforms documents into hierarchical semantic trees and uses the LLM itself to navigate and retrieve — purely LLM-guided, from indexing to querying. No vector databases, no embeddings, no similarity search.

§Quick Start

use vectorless::{EngineBuilder, IndexContext, QueryContext};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = EngineBuilder::new()
        .with_key("sk-...")
        .with_model("gpt-4o")
        .build()
        .await?;

    let result = client.index(IndexContext::from_path("./document.md")).await?;
    let doc_id = result.doc_id().unwrap();

    let result = client.query(
        QueryContext::new("What is this about?").with_doc_ids(vec![doc_id.to_string()])
    ).await?;
    println!("{}", result.content);

    Ok(())
}

Re-exports§

pub use config::Config;
pub use client::BuildError;
pub use client::ClientError;
pub use client::DocumentFormat;
pub use client::DocumentInfo;
pub use client::Engine;
pub use client::EngineBuilder;
pub use client::FailedItem;
pub use client::IndexContext;
pub use client::IndexItem;
pub use client::IndexMode;
pub use client::IndexOptions;
pub use client::IndexResult;
pub use client::QueryContext;
pub use client::QueryResult;
pub use client::QueryResultItem;
pub use error::Error;
pub use error::Result;
pub use document::DocumentStructure;
pub use document::DocumentTree;
pub use document::NodeId;
pub use document::ReasoningIndexConfig;
pub use document::StructureNode;
pub use document::TocConfig;
pub use document::TocEntry;
pub use document::TocNode;
pub use document::TocView;
pub use document::TreeNode;
pub use graph::DocumentGraph;
pub use events::EventEmitter;
pub use events::IndexEvent;
pub use events::QueryEvent;
pub use events::WorkspaceEvent;
pub use metrics::IndexMetrics;
pub use metrics::LlmMetricsReport;
pub use metrics::MetricsReport;
pub use metrics::PilotMetricsReport;
pub use metrics::RetrievalMetricsReport;

Modules§

client
High-level client API for document indexing and retrieval.
config
Internal configuration management.
document
Document types - pure data structures for document tree representation.
error
Error types for the vectorless library.
events
Event system for observing and reacting to client operations.
graph
Document graph module — workspace-level cross-document relationship graph.
metrics
Unified metrics collection for Vectorless.