Module indexing

Source
Expand description

This module serves as the main entry point for indexing in Swiftide.

The indexing system in Swiftide is designed to handle the asynchronous processing of large volumes of data, including loading, transforming, and storing data chunks.

Modules§

__mock_MockBatchableTransformer
__mock_MockBatchableTransformer_BatchableTransformer
__mock_MockBatchableTransformer_Clone
__mock_MockChunkerTransformer
__mock_MockChunkerTransformer_ChunkerTransformer
__mock_MockChunkerTransformer_Clone
__mock_MockEmbeddingModel
__mock_MockEmbeddingModel_Clone
__mock_MockEmbeddingModel_EmbeddingModel
__mock_MockLoader
__mock_MockLoader_Clone
__mock_MockLoader_Loader
__mock_MockNodeCache
__mock_MockNodeCache_Clone
__mock_MockNodeCache_NodeCache
__mock_MockPersist
__mock_MockPersist_Clone
__mock_MockPersist_Persist
__mock_MockSimplePrompt
__mock_MockSimplePrompt_Clone
__mock_MockSimplePrompt_SimplePrompt
__mock_MockSparseEmbeddingModel
__mock_MockSparseEmbeddingModel_Clone
__mock_MockSparseEmbeddingModel_SparseEmbeddingModel
__mock_MockTransformer
__mock_MockTransformer_Clone
__mock_MockTransformer_Transformer
loaders
The loaders module provides functionality for loading files from a specified directory. It includes the FileLoader struct which is used to filter and stream files based on their extensions.
persist
Storage implementations for persisting data
transformers

Structs§

BackoffConfiguration
Backoff configuration for api calls. Each time an api call fails backoff will wait an increasing period of time for each subsequent retry attempt. see https://docs.rs/backoff/latest/backoff/ for more details.
IndexingDefaults
IndexingDefaultsInner
IndexingStream
An asynchronous stream of Node items.
LanguageModelWithBackOff
Metadata
MockBatchableTransformer
MockChunkerTransformer
MockEmbeddingModel
MockLoader
MockNodeCache
MockPersist
MockSimplePrompt
MockSparseEmbeddingModel
MockTransformer
Node
Represents a unit of data in the indexing process.
NodeBuilder
Builder for Node.
Pipeline
A pipeline for indexing files, adding metadata, chunking, transforming, embedding, and then storing them.

Enums§

EmbedMode
Embed mode of the pipeline.
EmbeddedField
Type of Embeddable stored in model.

Traits§

BatchableTransformer
Transforms batched single nodes into streams of nodes
ChunkerTransformer
Turns one node into many nodes
DynClone
This trait is implemented by any type that implements [std::clone::Clone].
EmbeddingModel
Embeds a list of strings and returns its embeddings. Assumes the strings will be moved.
Loader
Starting point of a stream
NodeCache
Caches nodes, typically by their path and hash Recommended to namespace on the storage
Persist
Persists nodes
SimplePrompt
Given a string prompt, queries an LLM
SparseEmbeddingModel
Embeds a list of strings and returns its embeddings. Assumes the strings will be moved.
Transformer
Transforms single nodes into single nodes
WithBatchIndexingDefaults
Allows for passing defaults from the pipeline to the batch transformer Required for batch transformers as at least a marker, implementation is not required
WithIndexingDefaults
Allows for passing defaults from the pipeline to the transformer Required for batch transformers as at least a marker, implementation is not required