Share via


Function Class

Represents a function that can be called by AI models.

Functions define the interface between AI models and external functionality, providing structured parameter validation and execution.

Type Parameters: Params: Pydantic model class defining the function's parameter schema, if any.

Note

For best type safety, use explicit type parameters when creating Function objects:

Function[SearchPokemonParams](name=..., parameter_schema=SearchPokemonParams, handler=...)

This ensures the handler parameter type matches the parameter_schema at compile time.

Constructor

Function(name: str, description: str, parameter_schema: type[-Params] | ~typing.Dict[str, ~typing.Any] | None, handler: FunctionHandler[Params] | FunctionHandlerWithNoParams)

Parameters

Name Description
name
Required
description
Required
parameter_schema
Required
handler
Required

Attributes

description

description: str

handler

handler: FunctionHandler[Params] | FunctionHandlerWithNoParams

name

name: str

parameter_schema

parameter_schema: type[-Params] | ~typing.Dict[str, ~typing.Any] | None