Register an Interoperable class in the global registry.
RETURNS | DESCRIPTION |
Callable[[InteroperableClass], InteroperableClass] | Callable[[InteroperableClass], InteroperableClass]: Decorator function |
Example
@register_interoperable_class("myinterop")
class MyInteroperability(Interoperable):
def convert_tool(self, tool: Any) -> Tool:
# implementation
...
Source code in autogen/interop/registry.py
| @export_module("autogen.interop")
def register_interoperable_class(short_name: str) -> Callable[[InteroperableClass], InteroperableClass]:
"""Register an Interoperable class in the global registry.
Returns:
Callable[[InteroperableClass], InteroperableClass]: Decorator function
Example:
```python
@register_interoperable_class("myinterop")
class MyInteroperability(Interoperable):
def convert_tool(self, tool: Any) -> Tool:
# implementation
...
```
"""
def inner(cls: InteroperableClass) -> InteroperableClass:
global _register
return _register.register(short_name, cls)
return inner
|