Models API
For a brief overview of GraphQL itself, please consult our introduction.
Querying for Models
Models belong to a Space. Because of this, you can either query for models off of a Space node or a Model node directly.
query {
node(id: "model_id") {
... on Model {
name
modelType
uri
}
}
}query {
node(id: "space_id") {
... on Space {
models(first: 50) {
edges {
node {
id
name
}
}
}
}
}
}The ModelsConnection off of Space provides a convenient way for you to pull models that match the given criteria. If you have a large number of models, you will have to use pagination to pull the complete list. This data can then be structured to your liking and be exported to the platform of your choosing.
Model Versions
You can query for modelVersions using the model node. If you have a large number of versions, you will have to use pagination to pull the complete list.
query getModelVersion($modelID: ID!) {
model: node(id: $modelID) {
... on Model {
id
name
modelType
modelVersions(first:1) {
edges {
node {
modelVersionBatches{
edges{
node{
id
}
}
}
}
}
}
}
}
}Variables
{"modelID": "model_id"}Model Schema
You can query your model's schema through the Arize GraphQL API. The ModelSchema type contains important information about your models such as features , tags, predictions and actuals which is useful when programmatically creating Monitors.
For more examples see the Monitors API documentation.
query {
node(id: "model_id") {
... on Model {
name
modelSchema {
features(first: 10) {
edges {
node {
dimension {
name
}
}
}
}
}
}
}
}
Tracing Schema
You can query your project's schema through Arize GraphQL API. The tracingSchema type contains important information about your application such as spanProperties , llmEvals, and annotations.
query TraciningSchemaQuery(
$id: ID!,
$startTime: DateTime!,
$endTime: DateTime!) {
model: node(id: $id) {
... on Model {
tracingSchema(startTime: $startTime, endTime: $endTime) {
spanProperties(first: 50) {
edges {
node {
dimension {
name
dataType
category
}
}
}
}
llmEvals(first: 50) {
edges {
node {
dimension {
name
dataType
category
}
}
}
}
annotations(first: 50) {
edges {
node {
dimension {
name
dataType
category
}
}
}
}
}
}
}
}Variables
{
"id": "MODEL_ID",
"startTime": "2024-08-14T06:00:00.000Z",
"endTime": "2024-09-13T17:59:59.999Z"
}Dimension Configuration
You can query binning information relating to your model's features, actuals, predictions and tags .
query {
node(id: "model_id") {
... on Model {
name
modelSchema {
features(first: 10) {
edges {
node {
dimensionConfig {
id
dimensionName
dimensionCategory
numBins
binOption
bins
}
}
}
}
}
}
}
}
mutation CreateOrUpdateDimensionConfiguration(
$input: UpdateDimensionConfigMutationInput!
) {
updateDimensionConfig(input: $input) {
dimensionConfig {
dimensionName
binOption
numBins
bins
id
}
}
}variables
{
"input": {
"modelId": "model_id",
"dimensionName": "dimension_name",
"dimensionCategory": "featureLabel",
"binOption": "equalWidth",
"numBins": 4
}
Dimension Details
```graphql query getDimensionDetails($modelId: ID!) { node(id: $modelId) { ... on Model { name tracingSchema { spanProperties(first: 50, searchTerm:$dimensionName) { edges { node { dimension { id name dataType category
}
}
}
}
}
}} }
**variables**
```json
{ "modelId": "MODEL_ID"}Was this helpful?

