Use Neptune Query Language

Basic Examples

Let’s assume that you want to see runs where the recall metric is higher than 0.9. In other words, you are looking for runs, where:

recall > 0.9

The statement above is called a clause and follows the following format:

field-name operator value

Note that a field name must be on the left side of an operator.

Now, imagine you are looking for runs where the recall metric is higher than 0.9 and, at the same time, the learning_rate parameter is smaller or equal to 0.005.

In this example, two clauses are joined together using a logical operator. Specify:

recall > 0.9 AND learning_rate <= 0.005

In a similar way, you can build even more complex queries.

The example below yields runs where the recall metric is higher than 0.9 and at least one of two conditions is satisfied: either the learning_rate parameter is smaller or equal to 0.005, or encoder (a text log) is ResNet101

recall > 0.9 AND (learning_rate <= 0.005 OR encoder = ResNet101)

For more information, see NQL reference.

Advanced examples

  • Fetching specific runs by ids:

id = SAN-3 OR id = SAN-5 OR id = SAN-43
  • Fetching runs by using a complex logical expression:

((param1 = 5 AND recall >= 0.9) OR (param1 < 5 AND param1 > 2 AND recall >= 0.7)) AND owner = Fred AND NOT status = Succeeded
  • Fetching runs that contain three specific tags:

tags CONTAINS some_tag_1 AND tags CONTAINS some_tag_2 AND tags CONTAINS another_tag
  • Fetching runs that contain at least one of the specific tags:

tags CONTAINS some_tag_1 OR tags CONTAINS some_tag_2 OR tags CONTAINS another_tag
  • Fetching runs that contain the tag expected but do not contain the tag unexpected. Use either of the following queries:

tags CONTAINS expected AND NOT tags CONTAINS unexpected
tags CONTAINS expected AND tags NOT CONTAINS unexpected
  • Fetching runs with a name that contains a specific substring:

name CONTAINS some_substring
  • Fetching runs containing channel with given name and non-null value:

some_column_name EXISTS
  • Fetching runs not containing channel, parameter or property with given name:

some_column_name NOT EXISTS
NOT some_column_name EXISTS
  • Fetching finished runs:

timeOfCompletion EXISTS
finished EXISTS
  • Fetching runs created in notebook:

notebookName EXISTS