| from pydantic import BaseModel | |
| from typing import List, Dict, Literal, Optional | |
| class FunctionCall(BaseModel): | |
| arguments: dict | |
| """ | |
| The arguments to call the function with, as generated by the model in JSON | |
| format. Note that the model does not always generate valid JSON, and may | |
| hallucinate parameters not defined by your function schema. Validate the | |
| arguments in your code before calling your function. | |
| """ | |
| name: str | |
| """The name of the function to call.""" | |
| class FunctionDefinition(BaseModel): | |
| name: str | |
| description: Optional[str] = None | |
| parameters: Optional[Dict[str, object]] = None | |
| class FunctionSignature(BaseModel): | |
| function: FunctionDefinition | |
| type: Literal["function"] | |