<!-- .github/pull_request_template.md --> ## Description <!-- Provide a clear description of the changes in this PR --> ## DCO Affirmation I affirm that all code in every commit of this pull request conforms to the terms of the Topoteretes Developer Certificate of Origin. --------- Co-authored-by: vasilije <vas.markovic@gmail.com>
32 lines
964 B
Python
32 lines
964 B
Python
from .LoaderEngine import LoaderEngine
|
|
from .supported_loaders import supported_loaders
|
|
from cognee.shared.logging_utils import get_logger
|
|
|
|
logger = get_logger(__name__)
|
|
|
|
|
|
def create_loader_engine() -> LoaderEngine:
|
|
"""
|
|
Create loader engine with given configuration.
|
|
|
|
Follows cognee's pattern for engine creation functions used
|
|
in database adapters.
|
|
|
|
Args:
|
|
default_loader_priority: Priority order for loader selection
|
|
|
|
Returns:
|
|
Configured LoaderEngine instance
|
|
"""
|
|
engine = LoaderEngine()
|
|
|
|
# Register supported loaders from registry
|
|
for loader_name, loader_class in supported_loaders.items():
|
|
try:
|
|
loader_instance = loader_class()
|
|
engine.register_loader(loader_instance)
|
|
except Exception as e:
|
|
# Log but don't fail - allow engine to continue with other loaders
|
|
logger.warning(f"Failed to register loader {loader_name}: {e}")
|
|
|
|
return engine
|