{"record":{"id":"921963dde2cc9f02","repo":"BerriAI/litellm","slug":"semanticguard-guardrail-name-is-required","errorCode":null,"errorMessage":"SemanticGuard: guardrail_name is required","messagePattern":"SemanticGuard: guardrail_name is required","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"litellm/proxy/guardrails/guardrail_hooks/semantic_guard/__init__.py","lineNumber":42,"sourceCode":"def initialize_guardrail(\n    litellm_params: \"LitellmParams\",\n    guardrail: \"Guardrail\",\n    llm_router: Optional[\"Router\"] = None,\n):\n    \"\"\"\n    Initialize the Semantic Guard guardrail.\n\n    Args:\n        litellm_params: Guardrail configuration parameters\n        guardrail: Guardrail metadata\n        llm_router: LiteLLM Router instance (required for embeddings)\n\n    Returns:\n        Initialized SemanticGuardrail instance\n    \"\"\"\n    guardrail_name: Final = guardrail.get(\"guardrail_name\")\n    if not guardrail_name:\n        raise ValueError(\"SemanticGuard: guardrail_name is required\")\n\n    if llm_router is None:\n        raise ValueError(\n            \"SemanticGuard requires llm_router for embeddings. Configure a model_list with an embedding model.\"\n        )\n\n    semantic_guardrail: Final = SemanticGuardrail(\n        guardrail_name=guardrail_name,\n        llm_router=llm_router,\n        embedding_model=getattr(litellm_params, \"embedding_model\", None) or DEFAULT_SEMANTIC_GUARD_EMBEDDING_MODEL,\n        similarity_threshold=getattr(litellm_params, \"similarity_threshold\", None)\n        or DEFAULT_SEMANTIC_GUARD_SIMILARITY_THRESHOLD,\n        route_templates=getattr(litellm_params, \"route_templates\", None),\n        custom_routes_file=getattr(litellm_params, \"custom_routes_file\", None),\n        custom_routes=getattr(litellm_params, \"custom_routes\", None),\n        on_flagged_action=getattr(litellm_params, \"on_flagged_action\", \"block\"),\n        event_hook=litellm_params.mode,\n        default_on=litellm_params.default_on or False,","sourceCodeStart":24,"sourceCodeEnd":60,"githubUrl":"https://github.com/BerriAI/litellm/blob/77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8/litellm/proxy/guardrails/guardrail_hooks/semantic_guard/__init__.py#L24-L60","documentation":"Error \"SemanticGuard: guardrail_name is required\" thrown in BerriAI/litellm.","triggerScenarios":"Thrown at litellm/proxy/guardrails/guardrail_hooks/semantic_guard/__init__.py:42 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set guardrail_name in the semantic_guard configuration."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8","analyzedAt":"2026-08-18T11:44:31.656Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}