Docs Navigation


You can use from your Ruby project using the Open Source library.


Add this line to your application's Gemfile:

gem ''

And then execute:

$ bundle

Or install it yourself as:

$ gem install

You can download the software at:


This gem handles the most basic usage of

# Require the module

require ''

# Your API key (get one from


# Create an account object

acct = API_KEY

# ID of the agent you want to call; get it from


# Inputs; map of string or symbol to numbers

inputs =
inputs[:input1] = 10
inputs[:input2] = 30

# Ask the agent to evaluate the inputs; returns two values!

outputs, evaluation_id = acct.evaluate AGENT_ID, inputs

# Outputs is all the outputs

puts outputs["output1"]

# An opaque ID for the evaluation

puts evaluation_id

# For feedback, provide a performance metric

performance =
performance[:performance1] = 3

fb = evaluation_id, performance


Class representing a single account; you can use it to do evaluations and give feedback.


Takes a string representing the API key. You can get the key on the top of your account page on .

evaluate(agent_id, inputs)

Takes a string representing the agent ID, and a hash mapping input names (strings or symbols) to numbers.

Response is two values (2!) -- a map of the output names to numbers, and a string for the evaluation ID.

feedback(evaluation_id, peformance)

Takes a string for the evaluation ID, and a hash mapping performance metrics to numbers. You can provide more than one metric.

The metrics will be optimized to decrease toward zero -- so, distance from target, etc. If you have a number that will go towards infinity, give its inverse (1/x).