# API Reference


## Store


Vector storage backends for storing and retrieving chunks


[store.BaseStore](store.BaseStore.md#raghilda.store.BaseStore)  
Abstract base class for vector stores.

[store.DuckDBStore](store.DuckDBStore.md#raghilda.store.DuckDBStore)  
A vector store backed by DuckDB.

[store.ChromaDBStore](store.ChromaDBStore.md#raghilda.store.ChromaDBStore)  
A vector store backed by ChromaDB.

[store.OpenAIStore](store.OpenAIStore.md#raghilda.store.OpenAIStore)  
A vector store backed by OpenAI's Vector Store API.

[store.PostgreSQLStore](store.PostgreSQLStore.md#raghilda.store.PostgreSQLStore)  
A store backed by a PostgreSQL database with pgvector.


## Crawl


Crawlers for discovering and converting source documents


[crawl.CrawlScope](crawl.CrawlScope.md#raghilda.crawl.CrawlScope)  
Declarative description of what a crawler should discover.

[crawl.FetchedSource](crawl.FetchedSource.md#raghilda.crawl.FetchedSource)  
A fetched source document and its metadata, prior to conversion.

[crawl.BaseCrawler](crawl.BaseCrawler.md#raghilda.crawl.BaseCrawler)  
Abstract base class for crawlers.

[crawl.DirectoryCrawler](crawl.DirectoryCrawler.md#raghilda.crawl.DirectoryCrawler)  
Crawl local files and optionally cache converted markdown.

[crawl.WebCrawler](crawl.WebCrawler.md#raghilda.crawl.WebCrawler)  
Crawl a website by fetching pages directly over HTTP.

[crawl.CloudflareCrawler](crawl.CloudflareCrawler.md#raghilda.crawl.CloudflareCrawler)  
Crawl a website using Cloudflare's Browser Rendering API.


## Embedding


Embedding providers for generating vector representations


[embedding.EmbeddingProvider](embedding.EmbeddingProvider.md#raghilda.embedding.EmbeddingProvider)  
Interface for embedding function providers.

[embedding.EmbedInputType](embedding.EmbedInputType.md#raghilda.embedding.EmbedInputType)  
Specifies the type of input being embedded.

[embedding.EmbeddingOpenAI](embedding.EmbeddingOpenAI.md#raghilda.embedding.EmbeddingOpenAI)  
Creates an embedding function provider backed by OpenAI's embedding models

[embedding.EmbeddingCohere](embedding.EmbeddingCohere.md#raghilda.embedding.EmbeddingCohere)  
Creates an embedding function provider backed by Cohere's embedding models.

[embedding.EmbeddingSentenceTransformers](embedding.EmbeddingSentenceTransformers.md#raghilda.embedding.EmbeddingSentenceTransformers)  
Creates an embedding function provider backed by sentence-transformers models.


## Chunker


Text chunking utilities for splitting documents


[chunker.BaseChunker](chunker.BaseChunker.md#raghilda.chunker.BaseChunker)  
Abstract base class for chunkers.

[chunker.MarkdownChunker](chunker.MarkdownChunker.md#raghilda.chunker.MarkdownChunker)  
Chunk Markdown documents into overlapping segments at semantic boundaries.


## Utilities


Utility functions for reading and scraping content


[read.read_as_markdown()](read.read_as_markdown.md#raghilda.read.read_as_markdown)  
Read a document from a path or URL and convert it to Markdown.

[scrape.find_links()](scrape.find_links.md#raghilda.scrape.find_links)  
Discover links by crawling one or more starting pages.


## Chunk


Chunk data types


[chunk.Chunk](chunk.Chunk.md#raghilda.chunk.Chunk)  
A segment of text extracted from a document.

[chunk.MarkdownChunk](chunk.MarkdownChunk.md#raghilda.chunk.MarkdownChunk)  
A chunk extracted from a Markdown document.

[chunk.RetrievedChunk](chunk.RetrievedChunk.md#raghilda.chunk.RetrievedChunk)  
A chunk returned from a retrieval operation with associated metrics.

[chunk.Metric](chunk.Metric.md#raghilda.chunk.Metric)  
A named metric value associated with a retrieved chunk.


## Document


Document types for unchunked and chunked content


[document.Document](document.Document.md#raghilda.document.Document)  
A document containing text content to be chunked and indexed.

[document.ChunkedDocument](document.ChunkedDocument.md#raghilda.document.ChunkedDocument)  
A document with an attached sequence of chunks.

[document.MarkdownDocument](document.MarkdownDocument.md#raghilda.document.MarkdownDocument)  
A Markdown document with source tracking.

[document.ChunkedMarkdownDocument](document.ChunkedMarkdownDocument.md#raghilda.document.ChunkedMarkdownDocument)  
A Markdown document with an attached sequence of chunks.


## Types


Protocol types for type checking compatibility


[types.ChunkLike](types.ChunkLike.md#raghilda.types.ChunkLike)  
Structural type for any chunk raghilda can consume.

[types.ChunkedDocumentLike](types.ChunkedDocumentLike.md#raghilda.types.ChunkedDocumentLike)  
Structural type for a document that already carries its chunks.

[types.DocumentLike](types.DocumentLike.md#raghilda.types.DocumentLike)  
Structural type for any unchunked document raghilda can consume.

[types.ChunkerLike](types.ChunkerLike.md#raghilda.types.ChunkerLike)  
Structural type for any chunker raghilda can use.

[types.IntoChunk](types.IntoChunk.md#raghilda.types.IntoChunk)  
Structural type for objects that convert themselves into a `Chunk`.

[types.IntoDocument](types.IntoDocument.md#raghilda.types.IntoDocument)  
Structural type for objects that convert themselves into a `Document`.
