Expand description
Core traits for GraphRAG system components
This module defines the fundamental abstractions that enable modularity, testability, and flexibility throughout the GraphRAG system.
§Async Migration
All core traits have been migrated to async/await patterns for:
- Non-blocking I/O operations (LLM calls, database access, network requests)
- Better resource utilization with concurrent processing
- Improved throughput for high-load scenarios
- Future-proof architecture for cloud deployments
Modules§
- async_
utils - Comprehensive async trait utilities and helpers
- sync_
to_ async - Adapter to convert sync traits to async
Structs§
- Async
Timer - Async timer handle for measuring durations
- Function
Info - Information about a registered function
- Generation
Params - Parameters for text generation
- Graph
Stats - Statistics about a graph
- Model
Info - Information about a language model
- Model
Usage Stats - Usage statistics for language model
- Parameter
Info - Information about a function parameter
- Retrieval
Stats - Statistics for retrieval operations
- Search
Result - Result from vector similarity search
- Timer
- Timer handle for measuring durations
Enums§
- Metric
Record - Metric record for batch operations
Traits§
- Async
Config Provider - Async configuration management abstraction for non-blocking configuration operations
- Async
Embedder - Async text embedding abstraction for non-blocking embedding operations
- Async
Entity Extractor - Async entity extraction abstraction for non-blocking entity extraction
- Async
Function Registry - Async function calling abstraction for non-blocking tool usage
- Async
Graph Store - Async graph operations abstraction for non-blocking graph management
- Async
Language Model - Async Large Language Model abstraction for non-blocking text generation
- Async
Metrics Collector - Async monitoring and metrics abstraction for non-blocking metrics collection
- Async
Retriever - Async text retrieval abstraction for non-blocking content retrieval
- Async
Serializer - Async serialization abstraction for non-blocking serialization operations
- Async
Storage - Async storage abstraction for non-blocking storage operations
- Async
Vector Store - Async vector similarity search abstraction for non-blocking vector operations
- Config
Provider - Configuration management abstraction
- Embedder
- Text embedding abstraction for converting text to vector representations
- Entity
Extractor - Entity extraction abstraction for identifying entities in text
- Function
Registry - Function calling abstraction for tool usage
- Graph
Store - Graph operations abstraction for knowledge graph management
- Language
Model - Large Language Model abstraction for text generation
- Metrics
Collector - Monitoring and metrics abstraction
- Retriever
- Text retrieval abstraction for finding relevant content
- Serializer
- Serialization abstraction for different formats
- Storage
- Core storage abstraction for persisting and retrieving entities, documents, and graph data
- Vector
Store - Vector similarity search abstraction for finding similar embeddings
Type Aliases§
- Boxed
Async Embedder - Type-erased async embedder for dynamic dispatch
- Boxed
Async Language Model - Type aliases for common async trait objects Type-erased async language model for dynamic dispatch
- Boxed
Async Retriever - Type-erased async retriever for dynamic dispatch
- Boxed
Async Vector Store - Type-erased async vector store for dynamic dispatch
- Vector
Batch - Type alias for vector batch operations
- Vector
Metadata - Type alias for vector metadata