tools

Call Tool

Call a Tool.

Calling a Tool with inputs runs the tool's source code and logs the result and metadata to Humanloop.

You can use query parameters version_id, or environment, to target an existing version of the Tool. Otherwise, the default deployed version will be chosen.

Instead of targeting an existing version explicitly, you can instead pass in Tool details in the request body. In this case, we will check if the details correspond to an existing version of the Tool. If they do not, we will create a new version. This is helpful in the case where you are storing or deriving your Tool details in code.

post/tools/call

Request

  • Base URL: https://api.humanloop.com/v5
  • URL: https://api.humanloop.com/v5/tools/call
  • Auth: API key in header X-API-KEY

Query parameters

version_idstring

A specific Version ID of the Tool to call.

environmentstring

Name of the Environment identifying a deployed version to call.

Request body

pathstring

Path of the Tool, including the name. This locates the Tool in the Humanloop filesystem and is used as as a unique identifier. For example: folder/name or just name.

idstring

ID for an existing Tool.

inputsobject

The inputs passed to the prompt template.

sourcestring

Identifies where the model was called from.

metadataobject

Any additional metadata to record.

start_timestring date-time

When the logged event started.

end_timestring date-time

When the logged event ended.

source_datapoint_idstring

Unique identifier for the Datapoint that this Log is derived from. This can be used by Humanloop to associate Logs to Evaluations. If provided, Humanloop will automatically associate this Log to Evaluations that require a Log for this Datapoint-Version pair.

trace_parent_idstring

The ID of the parent Log to nest this Log under in a Trace.

userstring

End-user ID related to the Log.

environmentstring

The name of the Environment the Log is associated to.

saveboolean

Whether the request/response payloads will be stored on Humanloop.

log_idstring

This will identify a Log. If you don't provide a Log ID, Humanloop will generate one for you.

Response

Successful Response

start_timestring date-time

When the logged event started.

end_timestring date-time

When the logged event ended.

outputstring

Generated output from your model for the provided inputs. Can be None if logging an error, or if creating a parent Log with the intention to populate it later.

created_atstring date-time

User defined timestamp for when the log was created.

errorstring

Error message if the log is an error.

provider_latencynumber double

Duration of the logged event in seconds.

stdoutstring

Captured log and debug statements.

provider_requestobject

Raw request sent to provider.

provider_responseobject

Raw response received the provider.

inputsobject

The inputs passed to the prompt template.

sourcestring

Identifies where the model was called from.

metadataobject

Any additional metadata to record.

source_datapoint_idstring

Unique identifier for the Datapoint that this Log is derived from. This can be used by Humanloop to associate Logs to Evaluations. If provided, Humanloop will automatically associate this Log to Evaluations that require a Log for this Datapoint-Version pair.

trace_parent_idstring

The ID of the parent Log to nest this Log under in a Trace.

batchesstring[]

Array of Batch IDs that this Log is part of. Batches are used to group Logs together for offline Evaluations

userstring

End-user ID related to the Log.

environmentstring

The name of the Environment the Log is associated to.

saveboolean

Whether the request/response payloads will be stored on Humanloop.

log_idstring

This will identify a Log. If you don't provide a Log ID, Humanloop will generate one for you.

idstring required

ID of the log.

trace_flow_idstring

Identifier for the Flow that the Trace belongs to.

trace_idstring

ID of the Trace containing the Tool Call Log.

Changes

No recorded changes to this operation across all 1 revision of this API.