mirror of
https://github.com/meta-llama/llama-stack.git
synced 2025-07-27 06:28:50 +00:00
feat: create unregister shield API endpoint
This commit is contained in:
parent
9e6860b9cf
commit
ac6034ed1e
13 changed files with 135 additions and 1 deletions
|
@ -43,6 +43,10 @@ class SafetyRouter(Safety):
|
|||
logger.debug(f"SafetyRouter.register_shield: {shield_id}")
|
||||
return await self.routing_table.register_shield(shield_id, provider_shield_id, provider_id, params)
|
||||
|
||||
async def unregister_shield(self, identifier: str) -> None:
|
||||
logger.debug(f"SafetyRouter.unregister_shield: {identifier}")
|
||||
return await self.routing_table.unregister_shield(identifier)
|
||||
|
||||
async def run_shield(
|
||||
self,
|
||||
shield_id: str,
|
||||
|
|
|
@ -57,6 +57,8 @@ async def unregister_object_from_provider(obj: RoutableObject, p: Any) -> None:
|
|||
return await p.unregister_vector_db(obj.identifier)
|
||||
elif api == Api.inference:
|
||||
return await p.unregister_model(obj.identifier)
|
||||
elif api == Api.safety:
|
||||
return await p.unregister_shield(obj.identifier)
|
||||
elif api == Api.datasetio:
|
||||
return await p.unregister_dataset(obj.identifier)
|
||||
elif api == Api.tool_runtime:
|
||||
|
|
|
@ -55,3 +55,10 @@ class ShieldsRoutingTable(CommonRoutingTableImpl, Shields):
|
|||
)
|
||||
await self.register_object(shield)
|
||||
return shield
|
||||
|
||||
async def unregister_shield(self, identifier: str) -> None:
|
||||
existing_shield = await self.get_shield(identifier)
|
||||
if existing_shield is None:
|
||||
raise ValueError(f"Shield '{identifier}' not found")
|
||||
logger.info(f"Shield {identifier} was unregistered successfully.")
|
||||
await self.unregister_object(existing_shield)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue