Coverage for .venv/lib/python3.13/site-packages/litellm/proxy/guardrails/guardrail_hooks/javelin/__init__.py: 44%
14 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 .javelin import JavelinGuardrail
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 if litellm_params.guard_name is None:
15 raise Exception(
16 "JavelinGuardrailException - Please pass the Javelin guard name via 'litellm_params::guard_name'"
17 )
19 _javelin_callback: Final = JavelinGuardrail(
20 api_base=litellm_params.api_base,
21 api_key=litellm_params.api_key,
22 guardrail_name=guardrail.get("guardrail_name", ""),
23 javelin_guard_name=litellm_params.guard_name,
24 event_hook=litellm_params.mode,
25 default_on=litellm_params.default_on or False,
26 api_version=litellm_params.api_version or "v1",
27 config=litellm_params.config,
28 metadata=litellm_params.metadata,
29 application=litellm_params.application,
30 )
31 litellm.logging_callback_manager.add_litellm_callback(_javelin_callback)
33 return _javelin_callback
36guardrail_initializer_registry: Final = {
37 SupportedGuardrailIntegrations.JAVELIN.value: initialize_guardrail,
38}
41guardrail_class_registry: Final = {
42 SupportedGuardrailIntegrations.JAVELIN.value: JavelinGuardrail,
43}