Tesseract endpoints

Required endpoints

apply

tesseract_core.runtime.app_cli.apply(payload)

Apply the Tesseract to the input data.

Parameters:

inputs (Apply_InputSchema) – The input data to apply the Tesseract to.

Returns:

The output data from applying the Tesseract.

Return type:

root (Apply_OutputSchema)

Optional endpoints

jacobian

tesseract_core.runtime.app_cli.jacobian(payload)

Computes the Jacobian of the Tesseract.

Differentiates jac_outputs with respect to jac_inputs, at the point inputs.

Parameters:
  • inputs (Jacobian_InputSchema) – The input data to compute the Jacobian at.

  • jac_inputs (set) – The set of differentiable inputs to compute the Jacobian with respect to.

  • jac_outputs (set) – The set of differentiable outputs to compute the Jacobian of.

Returns:

Container for the results of Jacobian computations. The result represents a nested structure of the Jacobian matrix as a mapping with structure {jac_outputs: {jac_inputs: array}}. The shape of each array is the concatenation of the shapes of the output and input arrays, i.e. (*output_array.shape, *input_array.shape).

Return type:

root (dict)

jacobian_vector_product

tesseract_core.runtime.app_cli.jacobian_vector_product(payload)

Compute the Jacobian vector product of the Tesseract at the input data.

Evaluates the Jacobian vector product between the Jacobian given by jvp_outputs with respect to jvp_inputs at the point inputs and the given tangent vector.

Parameters:
  • inputs (Jvp_InputSchema) – The input data to compute the JVP at.

  • jvp_inputs (set) – The set of differentiable inputs to compute the JVP with respect to.

  • jvp_outputs (set) – The set of differentiable outputs to compute the JVP of.

  • tangent_vector (dict) – Tangent vector to multiply the Jacobian with. Expected to be a mapping with structure {jvp_inputs: array}. The shape of each array is the same as the shape of the corresponding input array.

Returns:

Container for the results of Jacobian-vector products. The result is a mapping with structure {jvp_outputs: array}. The shape of each array is the same as the shape of the corresponding output array.

Return type:

root (dict)

vector_jacobian_product

tesseract_core.runtime.app_cli.vector_jacobian_product(payload)

Compute the Jacobian vector product of the Tesseract at the input data.

Computes the vector Jacobian product between the Jacobian given by vjp_outputs with respect to vjp_inputs at the point inputs and the given cotangent vector.

Parameters:
  • inputs (Vjp_InputSchema) – The input data to compute the VJP at.

  • vjp_inputs (set) – The set of differentiable inputs to compute the VJP with respect to.

  • vjp_outputs (set) – The set of differentiable outputs to compute the VJP of.

  • cotangent_vector (dict) – Cotangent vector to multiply the Jacobian with. Expected to be a mapping with structure {vjp_outputs: array}. The shape of each array is the same as the shape of the corresponding output array.

Returns:

Container for the results of vector-Jacobian products. The result is a mapping with structure {vjp_inputs: array}. The shape of each array is the same as the shape of the corresponding input array.

Return type:

root (dict)

abstract_eval

tesseract_core.runtime.app_cli.abstract_eval(payload)

Perform abstract evaluation of the Tesseract on the input data.

Parameters:

inputs (AbstractEval_InputSchema) – The abstract input data to evaluate the Tesseract on. Has the same structure as InputSchema, but with array fields replaced by ShapeDType.

Returns:

Abstract outputs with the same structure as OutputSchema, but with array fields replaced by ShapeDType.

Return type:

root (AbstractEval_OutputSchema)