bedrock tools
1.0.0
Una pequeña biblioteca de Python que simplifica la llamada a funciones de la API de Amazon Bedrock Converse (es decir, el uso de herramientas).
Esta biblioteca reduce el código repetitivo necesario para integrar funciones nativas de Python con la API de Amazon Bedrock Converse, lo que facilita la creación de potentes aplicaciones de IA conversacionales mejoradas con herramientas.
pip install bedrock-tools
from bedrock_tools import BedrockTools
# define native functions as tools (using type annotations)
def add_numbers ( a : int , b : int ) -> int :
"""Add two numbers together."""
return a + b
def greet ( name : str ) -> str :
"""Greet a person by name."""
return f"Hello, { name } !"
def get_weather ( city : str , state : str ) -> dict :
"""Get the weather for a location."""
return {
"city" : city ,
"state" : state ,
"temperature" : "75°F" ,
"condition" : "Partly Cloudy" ,
}
# setup
tools = BedrockTools ()
tools . add_function ( add_numbers )
tools . add_function ( greet )
tools . add_function ( get_weather )
# Use the config in your Bedrock Converse API call
response = bedrock . converse (
modelId = model_id ,
toolConfig = tools . get_tool_config ()
messages = messages ,
)
# When you receive a toolUse from the API, invoke the tool
if "toolUse" in content_block :
tool_results . append ( tools . invoke ( content_block [ "toolUse" ]))
message = { "role" : "user" , "content" : tool_results }
Aquí hay un ejemplo (de los documentos API de Bedrock Converse) con y sin la biblioteca:
Actualmente admite parámetros de función de tipo:
Choose a make command to run
init run this once to initialize a new python project
install install project dependencies
start run local project
test run unit tests