Files
dify/api/extensions/application_services/knowledge.py
T
Byron.wangandautofix-ci[bot] 8b7f903cff refactor(api): centralize API key management (#42489)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-09-23 08:38:48 +00:00

17 lines
646 B
Python

"""Composition of knowledge base application services."""
from sqlalchemy.orm import Session, sessionmaker
from configs import dify_config
from repositories.knowledge.dataset_api_key_repository import DatasetApiKeyRepository
from services.api_token_service import ApiTokenCache
from services.knowledge.api_key_service import DatasetApiKeyService
def build_dataset_api_key_service(*, database_client: sessionmaker[Session]) -> DatasetApiKeyService:
return DatasetApiKeyService(
keys=DatasetApiKeyRepository(session_factory=database_client),
cache=ApiTokenCache,
rbac_enabled=lambda: dify_config.RBAC_ENABLED,
)