Skip to main content

StrEnum Objects

Backport of StrEnum for Python < 3.11

ColoredFormatter Objects

Custom colored formatter for the logger using ANSI escape codes.

add_coloured_handler

Add a coloured handler to the logger.

setup_custom_logger

Setup a custom logger.

Parameter Objects

Parameter for a function. Arguments:
  • name (str): The name of the parameter.
  • description (str | None): The description of the parameter.
  • type (str): The type of the parameter.
  • default (Any): The default value of the parameter.
  • required (bool): Whether the parameter is required.

to_dict

Convert the parameter to a dictionary for an standard dictionary-based function schema. This is the most common format used by LLM providers, including OpenAI, Ollama, and others. Returns: dict[str, Any]: The parameter in dictionary format.

FunctionSchema Objects

Class that consumes a function and can return a schema required by different LLMs for function calling.

from_callable

Initialize the FunctionSchema. Arguments:
  • function (Callable): The function to consume.

from_pydantic

Create a FunctionSchema from a Pydantic model class. Arguments:
  • model (type[BaseModel]): The Pydantic model class to convert
Returns: FunctionSchema: FunctionSchema instance

to_openai

Convert the function schema into OpenAI-compatible formats. Supports both completions and responses APIs. Arguments:
  • api (OpenAIAPI): The API to convert to.
Returns: dict: The function schema in OpenAI-compatible format.