Skip to content

bedrock

pixeltable.functions.bedrock

converse

converse(
    messages: Json,
    *,
    model_id: String,
    system: Optional[Json] = None,
    inference_config: Optional[Json] = None,
    additional_model_request_fields: Optional[Json] = None,
    tool_config: Optional[Json] = None
) -> Json

Generate a conversation response.

Equivalent to the AWS Bedrock converse API endpoint. For additional details, see: https://docs.aws.amazon.com/bedrock/latest/userguide/conversation-inference.html

Requirements:

  • pip install boto3

Parameters:

  • messages (Json) –

    Input messages.

  • model_id (String) –

    The model that will complete your prompt.

  • system (Optional[Json], default: None ) –

    An optional system prompt.

  • inference_config (Optional[Json], default: None ) –

    Base inference parameters to use.

  • additional_model_request_fields (Optional[Json], default: None ) –

    Additional inference parameters to use.

For details on the optional parameters, see: https://docs.aws.amazon.com/bedrock/latest/userguide/conversation-inference.html

Returns:

  • Json

    A dictionary containing the response and other metadata.

Examples:

Add a computed column that applies the model anthropic.claude-3-haiku-20240307-v1:0 to an existing Pixeltable column tbl.prompt of the table tbl:

>>> msgs = [{'role': 'user', 'content': [{'text': tbl.prompt}]}]
... tbl.add_computed_column(response=messages(msgs, model_id='anthropic.claude-3-haiku-20240307-v1:0'))

invoke_tools

invoke_tools(tools: Tools, response: Expr) -> InlineDict

Converts an Anthropic response dict to Pixeltable tool invocation format and calls tools._invoke().