You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
swarms/examples/agents/tools/function_calling/openai_function_caller_exam...

40 lines
1.6 KiB

from swarm_models.openai_function_caller import OpenAIFunctionCaller
from pydantic import BaseModel
# Pydantic is a data validation library that provides data validation and parsing using Python type hints.
# It is used here to define the data structure for making API calls to retrieve weather information.
class WeatherAPI(BaseModel):
city: str
date: str
# The WeatherAPI class is a Pydantic BaseModel that represents the data structure
# for making API calls to retrieve weather information. It has two attributes: city and date.
# Example usage:
# Initialize the function caller
function_caller = OpenAIFunctionCaller(
system_prompt="You are a helpful assistant.",
max_tokens=500,
temperature=0.5,
base_model=WeatherAPI,
)
# The OpenAIFunctionCaller class is used to interact with the OpenAI API and make function calls.
# Here, we initialize an instance of the OpenAIFunctionCaller class with the following parameters:
# - system_prompt: A prompt that sets the context for the conversation with the API.
# - max_tokens: The maximum number of tokens to generate in the API response.
# - temperature: A parameter that controls the randomness of the generated text.
# - base_model: The base model to use for the API calls, in this case, the WeatherAPI class.
# Run the function caller
response = function_caller.run(
"Get the weather forecast for New York City on July 4th, 2022."
)
# The run() method of the OpenAIFunctionCaller class is used to make a function call to the API.
# It takes a string parameter that represents the user's request or query.
print(response)