llm judge
Create llm judge configs
Requires scopes: eval:write
POST
/
api
/
llm-judge
/
configs
Create llm judge configs
curl --request POST \
--url https://evalgate.com/api/llm-judge/configs \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"promptTemplate": "<string>",
"provider": "local",
"model": "<string>",
"aggregation": "all_pass",
"criteria": {},
"criteriaList": [
{
"id": "<string>",
"title": "<string>",
"matchCriteria": "<string>"
}
],
"settings": {},
"passThreshold": 123,
"judges": [
{
"type": "decision",
"id": "<string>",
"purpose": "customer_evaluation",
"provider": "local",
"model": "<string>",
"temperature": 123,
"maxTokens": 123,
"seed": 123,
"threshold": 123,
"weight": 123,
"topP": 123,
"timeoutMs": 123,
"rule": "json_schema",
"passThreshold": 123,
"top_p": 123,
"calibrationVersion": "<string>",
"decisionPolicyVersion": "<string>",
"cacheEnabled": false,
"questions": [
{}
],
"primaryQuestionId": "<string>",
"evidenceQuestionIds": [
"<string>"
],
"aggregationPolicy": "all_pass",
"pinnedQuestionSchemaHash": "<string>",
"releaseBlocking": false
}
],
"instabilityThreshold": 123,
"stabilityRuns": 123
}
'import requests
url = "https://evalgate.com/api/llm-judge/configs"
payload = {
"name": "<string>",
"promptTemplate": "<string>",
"provider": "local",
"model": "<string>",
"aggregation": "all_pass",
"criteria": {},
"criteriaList": [
{
"id": "<string>",
"title": "<string>",
"matchCriteria": "<string>"
}
],
"settings": {},
"passThreshold": 123,
"judges": [
{
"type": "decision",
"id": "<string>",
"purpose": "customer_evaluation",
"provider": "local",
"model": "<string>",
"temperature": 123,
"maxTokens": 123,
"seed": 123,
"threshold": 123,
"weight": 123,
"topP": 123,
"timeoutMs": 123,
"rule": "json_schema",
"passThreshold": 123,
"top_p": 123,
"calibrationVersion": "<string>",
"decisionPolicyVersion": "<string>",
"cacheEnabled": False,
"questions": [{}],
"primaryQuestionId": "<string>",
"evidenceQuestionIds": ["<string>"],
"aggregationPolicy": "all_pass",
"pinnedQuestionSchemaHash": "<string>",
"releaseBlocking": False
}
],
"instabilityThreshold": 123,
"stabilityRuns": 123
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
promptTemplate: '<string>',
provider: 'local',
model: '<string>',
aggregation: 'all_pass',
criteria: {},
criteriaList: [{id: '<string>', title: '<string>', matchCriteria: '<string>'}],
settings: {},
passThreshold: 123,
judges: [
{
type: 'decision',
id: '<string>',
purpose: 'customer_evaluation',
provider: 'local',
model: '<string>',
temperature: 123,
maxTokens: 123,
seed: 123,
threshold: 123,
weight: 123,
topP: 123,
timeoutMs: 123,
rule: 'json_schema',
passThreshold: 123,
top_p: 123,
calibrationVersion: '<string>',
decisionPolicyVersion: '<string>',
cacheEnabled: false,
questions: [{}],
primaryQuestionId: '<string>',
evidenceQuestionIds: ['<string>'],
aggregationPolicy: 'all_pass',
pinnedQuestionSchemaHash: '<string>',
releaseBlocking: false
}
],
instabilityThreshold: 123,
stabilityRuns: 123
})
};
fetch('https://evalgate.com/api/llm-judge/configs', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://evalgate.com/api/llm-judge/configs",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'promptTemplate' => '<string>',
'provider' => 'local',
'model' => '<string>',
'aggregation' => 'all_pass',
'criteria' => [
],
'criteriaList' => [
[
'id' => '<string>',
'title' => '<string>',
'matchCriteria' => '<string>'
]
],
'settings' => [
],
'passThreshold' => 123,
'judges' => [
[
'type' => 'decision',
'id' => '<string>',
'purpose' => 'customer_evaluation',
'provider' => 'local',
'model' => '<string>',
'temperature' => 123,
'maxTokens' => 123,
'seed' => 123,
'threshold' => 123,
'weight' => 123,
'topP' => 123,
'timeoutMs' => 123,
'rule' => 'json_schema',
'passThreshold' => 123,
'top_p' => 123,
'calibrationVersion' => '<string>',
'decisionPolicyVersion' => '<string>',
'cacheEnabled' => false,
'questions' => [
[
]
],
'primaryQuestionId' => '<string>',
'evidenceQuestionIds' => [
'<string>'
],
'aggregationPolicy' => 'all_pass',
'pinnedQuestionSchemaHash' => '<string>',
'releaseBlocking' => false
]
],
'instabilityThreshold' => 123,
'stabilityRuns' => 123
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://evalgate.com/api/llm-judge/configs"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"promptTemplate\": \"<string>\",\n \"provider\": \"local\",\n \"model\": \"<string>\",\n \"aggregation\": \"all_pass\",\n \"criteria\": {},\n \"criteriaList\": [\n {\n \"id\": \"<string>\",\n \"title\": \"<string>\",\n \"matchCriteria\": \"<string>\"\n }\n ],\n \"settings\": {},\n \"passThreshold\": 123,\n \"judges\": [\n {\n \"type\": \"decision\",\n \"id\": \"<string>\",\n \"purpose\": \"customer_evaluation\",\n \"provider\": \"local\",\n \"model\": \"<string>\",\n \"temperature\": 123,\n \"maxTokens\": 123,\n \"seed\": 123,\n \"threshold\": 123,\n \"weight\": 123,\n \"topP\": 123,\n \"timeoutMs\": 123,\n \"rule\": \"json_schema\",\n \"passThreshold\": 123,\n \"top_p\": 123,\n \"calibrationVersion\": \"<string>\",\n \"decisionPolicyVersion\": \"<string>\",\n \"cacheEnabled\": false,\n \"questions\": [\n {}\n ],\n \"primaryQuestionId\": \"<string>\",\n \"evidenceQuestionIds\": [\n \"<string>\"\n ],\n \"aggregationPolicy\": \"all_pass\",\n \"pinnedQuestionSchemaHash\": \"<string>\",\n \"releaseBlocking\": false\n }\n ],\n \"instabilityThreshold\": 123,\n \"stabilityRuns\": 123\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://evalgate.com/api/llm-judge/configs")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"promptTemplate\": \"<string>\",\n \"provider\": \"local\",\n \"model\": \"<string>\",\n \"aggregation\": \"all_pass\",\n \"criteria\": {},\n \"criteriaList\": [\n {\n \"id\": \"<string>\",\n \"title\": \"<string>\",\n \"matchCriteria\": \"<string>\"\n }\n ],\n \"settings\": {},\n \"passThreshold\": 123,\n \"judges\": [\n {\n \"type\": \"decision\",\n \"id\": \"<string>\",\n \"purpose\": \"customer_evaluation\",\n \"provider\": \"local\",\n \"model\": \"<string>\",\n \"temperature\": 123,\n \"maxTokens\": 123,\n \"seed\": 123,\n \"threshold\": 123,\n \"weight\": 123,\n \"topP\": 123,\n \"timeoutMs\": 123,\n \"rule\": \"json_schema\",\n \"passThreshold\": 123,\n \"top_p\": 123,\n \"calibrationVersion\": \"<string>\",\n \"decisionPolicyVersion\": \"<string>\",\n \"cacheEnabled\": false,\n \"questions\": [\n {}\n ],\n \"primaryQuestionId\": \"<string>\",\n \"evidenceQuestionIds\": [\n \"<string>\"\n ],\n \"aggregationPolicy\": \"all_pass\",\n \"pinnedQuestionSchemaHash\": \"<string>\",\n \"releaseBlocking\": false\n }\n ],\n \"instabilityThreshold\": 123,\n \"stabilityRuns\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://evalgate.com/api/llm-judge/configs")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"promptTemplate\": \"<string>\",\n \"provider\": \"local\",\n \"model\": \"<string>\",\n \"aggregation\": \"all_pass\",\n \"criteria\": {},\n \"criteriaList\": [\n {\n \"id\": \"<string>\",\n \"title\": \"<string>\",\n \"matchCriteria\": \"<string>\"\n }\n ],\n \"settings\": {},\n \"passThreshold\": 123,\n \"judges\": [\n {\n \"type\": \"decision\",\n \"id\": \"<string>\",\n \"purpose\": \"customer_evaluation\",\n \"provider\": \"local\",\n \"model\": \"<string>\",\n \"temperature\": 123,\n \"maxTokens\": 123,\n \"seed\": 123,\n \"threshold\": 123,\n \"weight\": 123,\n \"topP\": 123,\n \"timeoutMs\": 123,\n \"rule\": \"json_schema\",\n \"passThreshold\": 123,\n \"top_p\": 123,\n \"calibrationVersion\": \"<string>\",\n \"decisionPolicyVersion\": \"<string>\",\n \"cacheEnabled\": false,\n \"questions\": [\n {}\n ],\n \"primaryQuestionId\": \"<string>\",\n \"evidenceQuestionIds\": [\n \"<string>\"\n ],\n \"aggregationPolicy\": \"all_pass\",\n \"pinnedQuestionSchemaHash\": \"<string>\",\n \"releaseBlocking\": false\n }\n ],\n \"instabilityThreshold\": 123,\n \"stabilityRuns\": 123\n}"
response = http.request(request)
puts response.read_body{
"judges": [
{
"id": "<string>",
"type": "llm",
"provider": "anthropic",
"model": "<string>",
"temperature": 123,
"topP": 123,
"top_p": 123,
"seed": 123,
"timeoutMs": 123,
"cacheEnabled": false,
"maxTokens": 123,
"weight": 123
}
],
"aggregation": "all_pass",
"passThreshold": 123,
"instabilityThreshold": 123,
"stabilityRuns": 123,
"id": 123,
"organizationId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"model": "<string>",
"promptTemplate": "<string>",
"promptTemplateHash": "<string>",
"criteria": {},
"criteriaList": [
{
"id": "<string>",
"title": "<string>",
"matchCriteria": "<string>"
}
],
"settings": {
"model": "<string>",
"temperature": 123,
"maxTokens": 123,
"retryCount": 123,
"provider": "anthropic",
"aggregation": "all_pass",
"passThreshold": 123,
"instabilityThreshold": 123,
"stabilityRuns": 123,
"judges": [
{
"model": "<string>",
"id": "<string>",
"type": "llm",
"provider": "anthropic",
"temperature": 123,
"maxTokens": 123,
"weight": 123
}
],
"confidencePolicy": {
"autoAdjudicateMin": 123,
"frontierEscalateMin": 123,
"critiqueRequired": false
}
},
"createdBy": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"provider": "anthropic",
"confidencePolicy": {
"autoAdjudicateMin": 123,
"frontierEscalateMin": 123,
"critiqueRequired": true
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}Authorizations
Organization-scoped EvalGate API key. Discover the supported agent scopes at /.well-known/oauth-protected-resource. Per-operation grants are listed in x-evalgate-required-scopes; OpenAPI bearer security requirement arrays remain empty as required for non-OAuth schemes.
Body
application/json
provider
Option 1 · enum<string>Option 2 · enum<string>Option 3 · enum<string>Option 4 · enum<string>Option 5 · enum<string>Option 6 · enum<string>Option 7 · enum<string>Option 8 · enum<string>Option 9 · enum<string>
Available options:
local aggregation
Option 1 · enum<string>Option 2 · enum<string>Option 3 · enum<string>Option 4 · enum<string>Option 5 · enum<string>Option 6 · enum<string>
Available options:
all_pass Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Response
Successful response
- Option 1
- Option 2
- Option 3
Show child attributes
Show child attributes
aggregation
Option 1 · enum<string>Option 2 · enum<string>Option 3 · enum<string>Option 4 · enum<string>Option 5 · enum<string>Option 6 · enum<string>
required
Available options:
all_pass Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
provider
Option 1 · enum<string>Option 2 · enum<string>Option 3 · enum<string>Option 4 · enum<string>Option 5 · enum<string>Option 6 · enum<string>Option 7 · enum<string>Option 8 · enum<string>Option 9 · enum<string>
Available options:
anthropic Show child attributes
Show child attributes
⌘I
Create llm judge configs
curl --request POST \
--url https://evalgate.com/api/llm-judge/configs \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"promptTemplate": "<string>",
"provider": "local",
"model": "<string>",
"aggregation": "all_pass",
"criteria": {},
"criteriaList": [
{
"id": "<string>",
"title": "<string>",
"matchCriteria": "<string>"
}
],
"settings": {},
"passThreshold": 123,
"judges": [
{
"type": "decision",
"id": "<string>",
"purpose": "customer_evaluation",
"provider": "local",
"model": "<string>",
"temperature": 123,
"maxTokens": 123,
"seed": 123,
"threshold": 123,
"weight": 123,
"topP": 123,
"timeoutMs": 123,
"rule": "json_schema",
"passThreshold": 123,
"top_p": 123,
"calibrationVersion": "<string>",
"decisionPolicyVersion": "<string>",
"cacheEnabled": false,
"questions": [
{}
],
"primaryQuestionId": "<string>",
"evidenceQuestionIds": [
"<string>"
],
"aggregationPolicy": "all_pass",
"pinnedQuestionSchemaHash": "<string>",
"releaseBlocking": false
}
],
"instabilityThreshold": 123,
"stabilityRuns": 123
}
'import requests
url = "https://evalgate.com/api/llm-judge/configs"
payload = {
"name": "<string>",
"promptTemplate": "<string>",
"provider": "local",
"model": "<string>",
"aggregation": "all_pass",
"criteria": {},
"criteriaList": [
{
"id": "<string>",
"title": "<string>",
"matchCriteria": "<string>"
}
],
"settings": {},
"passThreshold": 123,
"judges": [
{
"type": "decision",
"id": "<string>",
"purpose": "customer_evaluation",
"provider": "local",
"model": "<string>",
"temperature": 123,
"maxTokens": 123,
"seed": 123,
"threshold": 123,
"weight": 123,
"topP": 123,
"timeoutMs": 123,
"rule": "json_schema",
"passThreshold": 123,
"top_p": 123,
"calibrationVersion": "<string>",
"decisionPolicyVersion": "<string>",
"cacheEnabled": False,
"questions": [{}],
"primaryQuestionId": "<string>",
"evidenceQuestionIds": ["<string>"],
"aggregationPolicy": "all_pass",
"pinnedQuestionSchemaHash": "<string>",
"releaseBlocking": False
}
],
"instabilityThreshold": 123,
"stabilityRuns": 123
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
promptTemplate: '<string>',
provider: 'local',
model: '<string>',
aggregation: 'all_pass',
criteria: {},
criteriaList: [{id: '<string>', title: '<string>', matchCriteria: '<string>'}],
settings: {},
passThreshold: 123,
judges: [
{
type: 'decision',
id: '<string>',
purpose: 'customer_evaluation',
provider: 'local',
model: '<string>',
temperature: 123,
maxTokens: 123,
seed: 123,
threshold: 123,
weight: 123,
topP: 123,
timeoutMs: 123,
rule: 'json_schema',
passThreshold: 123,
top_p: 123,
calibrationVersion: '<string>',
decisionPolicyVersion: '<string>',
cacheEnabled: false,
questions: [{}],
primaryQuestionId: '<string>',
evidenceQuestionIds: ['<string>'],
aggregationPolicy: 'all_pass',
pinnedQuestionSchemaHash: '<string>',
releaseBlocking: false
}
],
instabilityThreshold: 123,
stabilityRuns: 123
})
};
fetch('https://evalgate.com/api/llm-judge/configs', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://evalgate.com/api/llm-judge/configs",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'promptTemplate' => '<string>',
'provider' => 'local',
'model' => '<string>',
'aggregation' => 'all_pass',
'criteria' => [
],
'criteriaList' => [
[
'id' => '<string>',
'title' => '<string>',
'matchCriteria' => '<string>'
]
],
'settings' => [
],
'passThreshold' => 123,
'judges' => [
[
'type' => 'decision',
'id' => '<string>',
'purpose' => 'customer_evaluation',
'provider' => 'local',
'model' => '<string>',
'temperature' => 123,
'maxTokens' => 123,
'seed' => 123,
'threshold' => 123,
'weight' => 123,
'topP' => 123,
'timeoutMs' => 123,
'rule' => 'json_schema',
'passThreshold' => 123,
'top_p' => 123,
'calibrationVersion' => '<string>',
'decisionPolicyVersion' => '<string>',
'cacheEnabled' => false,
'questions' => [
[
]
],
'primaryQuestionId' => '<string>',
'evidenceQuestionIds' => [
'<string>'
],
'aggregationPolicy' => 'all_pass',
'pinnedQuestionSchemaHash' => '<string>',
'releaseBlocking' => false
]
],
'instabilityThreshold' => 123,
'stabilityRuns' => 123
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://evalgate.com/api/llm-judge/configs"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"promptTemplate\": \"<string>\",\n \"provider\": \"local\",\n \"model\": \"<string>\",\n \"aggregation\": \"all_pass\",\n \"criteria\": {},\n \"criteriaList\": [\n {\n \"id\": \"<string>\",\n \"title\": \"<string>\",\n \"matchCriteria\": \"<string>\"\n }\n ],\n \"settings\": {},\n \"passThreshold\": 123,\n \"judges\": [\n {\n \"type\": \"decision\",\n \"id\": \"<string>\",\n \"purpose\": \"customer_evaluation\",\n \"provider\": \"local\",\n \"model\": \"<string>\",\n \"temperature\": 123,\n \"maxTokens\": 123,\n \"seed\": 123,\n \"threshold\": 123,\n \"weight\": 123,\n \"topP\": 123,\n \"timeoutMs\": 123,\n \"rule\": \"json_schema\",\n \"passThreshold\": 123,\n \"top_p\": 123,\n \"calibrationVersion\": \"<string>\",\n \"decisionPolicyVersion\": \"<string>\",\n \"cacheEnabled\": false,\n \"questions\": [\n {}\n ],\n \"primaryQuestionId\": \"<string>\",\n \"evidenceQuestionIds\": [\n \"<string>\"\n ],\n \"aggregationPolicy\": \"all_pass\",\n \"pinnedQuestionSchemaHash\": \"<string>\",\n \"releaseBlocking\": false\n }\n ],\n \"instabilityThreshold\": 123,\n \"stabilityRuns\": 123\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://evalgate.com/api/llm-judge/configs")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"promptTemplate\": \"<string>\",\n \"provider\": \"local\",\n \"model\": \"<string>\",\n \"aggregation\": \"all_pass\",\n \"criteria\": {},\n \"criteriaList\": [\n {\n \"id\": \"<string>\",\n \"title\": \"<string>\",\n \"matchCriteria\": \"<string>\"\n }\n ],\n \"settings\": {},\n \"passThreshold\": 123,\n \"judges\": [\n {\n \"type\": \"decision\",\n \"id\": \"<string>\",\n \"purpose\": \"customer_evaluation\",\n \"provider\": \"local\",\n \"model\": \"<string>\",\n \"temperature\": 123,\n \"maxTokens\": 123,\n \"seed\": 123,\n \"threshold\": 123,\n \"weight\": 123,\n \"topP\": 123,\n \"timeoutMs\": 123,\n \"rule\": \"json_schema\",\n \"passThreshold\": 123,\n \"top_p\": 123,\n \"calibrationVersion\": \"<string>\",\n \"decisionPolicyVersion\": \"<string>\",\n \"cacheEnabled\": false,\n \"questions\": [\n {}\n ],\n \"primaryQuestionId\": \"<string>\",\n \"evidenceQuestionIds\": [\n \"<string>\"\n ],\n \"aggregationPolicy\": \"all_pass\",\n \"pinnedQuestionSchemaHash\": \"<string>\",\n \"releaseBlocking\": false\n }\n ],\n \"instabilityThreshold\": 123,\n \"stabilityRuns\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://evalgate.com/api/llm-judge/configs")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"promptTemplate\": \"<string>\",\n \"provider\": \"local\",\n \"model\": \"<string>\",\n \"aggregation\": \"all_pass\",\n \"criteria\": {},\n \"criteriaList\": [\n {\n \"id\": \"<string>\",\n \"title\": \"<string>\",\n \"matchCriteria\": \"<string>\"\n }\n ],\n \"settings\": {},\n \"passThreshold\": 123,\n \"judges\": [\n {\n \"type\": \"decision\",\n \"id\": \"<string>\",\n \"purpose\": \"customer_evaluation\",\n \"provider\": \"local\",\n \"model\": \"<string>\",\n \"temperature\": 123,\n \"maxTokens\": 123,\n \"seed\": 123,\n \"threshold\": 123,\n \"weight\": 123,\n \"topP\": 123,\n \"timeoutMs\": 123,\n \"rule\": \"json_schema\",\n \"passThreshold\": 123,\n \"top_p\": 123,\n \"calibrationVersion\": \"<string>\",\n \"decisionPolicyVersion\": \"<string>\",\n \"cacheEnabled\": false,\n \"questions\": [\n {}\n ],\n \"primaryQuestionId\": \"<string>\",\n \"evidenceQuestionIds\": [\n \"<string>\"\n ],\n \"aggregationPolicy\": \"all_pass\",\n \"pinnedQuestionSchemaHash\": \"<string>\",\n \"releaseBlocking\": false\n }\n ],\n \"instabilityThreshold\": 123,\n \"stabilityRuns\": 123\n}"
response = http.request(request)
puts response.read_body{
"judges": [
{
"id": "<string>",
"type": "llm",
"provider": "anthropic",
"model": "<string>",
"temperature": 123,
"topP": 123,
"top_p": 123,
"seed": 123,
"timeoutMs": 123,
"cacheEnabled": false,
"maxTokens": 123,
"weight": 123
}
],
"aggregation": "all_pass",
"passThreshold": 123,
"instabilityThreshold": 123,
"stabilityRuns": 123,
"id": 123,
"organizationId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"model": "<string>",
"promptTemplate": "<string>",
"promptTemplateHash": "<string>",
"criteria": {},
"criteriaList": [
{
"id": "<string>",
"title": "<string>",
"matchCriteria": "<string>"
}
],
"settings": {
"model": "<string>",
"temperature": 123,
"maxTokens": 123,
"retryCount": 123,
"provider": "anthropic",
"aggregation": "all_pass",
"passThreshold": 123,
"instabilityThreshold": 123,
"stabilityRuns": 123,
"judges": [
{
"model": "<string>",
"id": "<string>",
"type": "llm",
"provider": "anthropic",
"temperature": 123,
"maxTokens": 123,
"weight": 123
}
],
"confidencePolicy": {
"autoAdjudicateMin": 123,
"frontierEscalateMin": 123,
"critiqueRequired": false
}
},
"createdBy": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"provider": "anthropic",
"confidencePolicy": {
"autoAdjudicateMin": 123,
"frontierEscalateMin": 123,
"critiqueRequired": true
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"redaction": {
"applied": true,
"fieldCount": 1,
"secretCount": 1
}
}
}