Coverage for .venv/lib/python3.13/site-packages/litellm/proxy/guardrails/guardrail_hooks/akto/__init__.py: 57%
12 statements
« prev ^ index » next coverage.py v7.15.2, created at 2026-10-10 12:01 +0000
« prev ^ index » next coverage.py v7.15.2, created at 2026-10-10 12:01 +0000
1from typing import TYPE_CHECKING, Final
3from litellm.types.guardrails import SupportedGuardrailIntegrations
5from .akto import AktoGuardrail
7if TYPE_CHECKING: 7 ↛ 8line 7 didn't jump to line 8 because the condition on line 7 was never true
8 from litellm.types.guardrails import Guardrail, LitellmParams
11def initialize_guardrail(litellm_params: "LitellmParams", guardrail: "Guardrail"):
12 import litellm
14 _akto_callback: Final = AktoGuardrail(
15 akto_base_url=getattr(litellm_params, "akto_base_url", None),
16 akto_api_key=getattr(litellm_params, "akto_api_key", None),
17 akto_account_id=getattr(litellm_params, "akto_account_id", None),
18 akto_vxlan_id=getattr(litellm_params, "akto_vxlan_id", None),
19 unreachable_fallback=getattr(litellm_params, "unreachable_fallback", "fail_closed"),
20 guardrail_timeout=getattr(litellm_params, "guardrail_timeout", None),
21 guardrail_name=guardrail.get("guardrail_name", ""),
22 event_hook=litellm_params.mode,
23 default_on=litellm_params.default_on,
24 )
26 litellm.logging_callback_manager.add_litellm_callback(_akto_callback)
27 return _akto_callback
30guardrail_initializer_registry: Final = {
31 SupportedGuardrailIntegrations.AKTO.value: initialize_guardrail,
32}
34guardrail_class_registry: Final = {
35 SupportedGuardrailIntegrations.AKTO.value: AktoGuardrail,
36}