haive.core.engine.retriever.providers.AmazonKnowledgeBasesRetrieverConfigΒΆ
Amazon Knowledge Bases Retriever implementation for the Haive framework.
from typing import Any This module provides a configuration class for the Amazon Knowledge Bases retriever, which uses AWS Bedrock Knowledge Bases for retrieval-augmented generation (RAG). Knowledge Bases provides a fully managed service that enables RAG workflows using foundation models with your data sources.
The AmazonKnowledgeBasesRetriever works by: 1. Connecting to an Amazon Bedrock Knowledge Base 2. Performing semantic search using embeddings 3. Retrieving relevant document chunks with metadata 4. Supporting various data sources (S3, web crawling, etc.)
This retriever is particularly useful when: - Building RAG applications with AWS Bedrock - Need managed vector storage and retrieval - Working with diverse data sources - Want serverless RAG infrastructure - Building enterprise AI applications on AWS
The implementation integrates with LangChainβs AmazonKnowledgeBasesRetriever while providing a consistent Haive configuration interface with secure AWS credential management.
ClassesΒΆ
Configuration for Amazon Knowledge Bases retriever in the Haive framework. |
Module ContentsΒΆ
- class haive.core.engine.retriever.providers.AmazonKnowledgeBasesRetrieverConfig.AmazonKnowledgeBasesRetrieverConfig[source]ΒΆ
Bases:
haive.core.common.mixins.secure_config.SecureConfigMixin
,haive.core.engine.retriever.retriever.BaseRetrieverConfig
Configuration for Amazon Knowledge Bases retriever in the Haive framework.
This retriever uses AWS Bedrock Knowledge Bases to provide managed RAG capabilities with semantic search and various data source integrations.
- retriever_typeΒΆ
The type of retriever (always AMAZON_KNOWLEDGE_BASES).
- Type:
- api_keyΒΆ
AWS access key (auto-resolved from AWS_ACCESS_KEY_ID).
- Type:
Optional[SecretStr]
- secret_keyΒΆ
AWS secret key (auto-resolved from AWS_SECRET_ACCESS_KEY).
- Type:
Optional[SecretStr]
Examples
>>> from haive.core.engine.retriever import AmazonKnowledgeBasesRetrieverConfig >>> >>> # Create the Knowledge Bases retriever config >>> config = AmazonKnowledgeBasesRetrieverConfig( ... name="kb_retriever", ... knowledge_base_id="ABCDEFGHIJ", ... region_name="us-east-1", ... number_of_results=10, ... search_type="SEMANTIC" ... ) >>> >>> # Instantiate and use the retriever >>> retriever = config.instantiate() >>> docs = retriever.get_relevant_documents("machine learning best practices") >>> >>> # Example with hybrid search >>> hybrid_config = AmazonKnowledgeBasesRetrieverConfig( ... name="hybrid_kb_retriever", ... knowledge_base_id="ABCDEFGHIJ", ... region_name="us-east-1", ... search_type="HYBRID" ... )
- instantiate()[source]ΒΆ
Create an Amazon Knowledge Bases retriever from this configuration.
- Returns:
Instantiated retriever ready for RAG.
- Return type:
AmazonKnowledgeBasesRetriever
- Raises:
ImportError β If required packages are not available.
ValueError β If AWS credentials or configuration is invalid.