Galileo Technologies jobs API
The jobs API from Galileo Technologies — 1 operation(s) for jobs.
The jobs API from Galileo Technologies — 1 operation(s) for jobs.
openapi: 3.1.0
info:
title: Galileo API Server annotation jobs API
version: 1.1085.0
servers:
- url: https://api.galileo.ai
description: Galileo API Server - galileo-v2
tags:
- name: jobs
paths:
/jobs:
post:
tags:
- jobs
summary: Create Job
description: Create a job for a project run and enqueue it for processing.
operationId: create_job_jobs_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateJobRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/CreateJobResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- ClassicAPIKeyHeader: []
- APIKeyHeader: []
- OAuth2PasswordBearer: []
- HTTPBasic: []
components:
schemas:
BaseScorer:
properties:
scorer_name:
type: string
title: Scorer Name
default: ''
name:
type: string
title: Name
default: ''
scores:
anyOf:
- items: {}
type: array
- type: 'null'
title: Scores
indices:
anyOf:
- items:
type: integer
type: array
- type: 'null'
title: Indices
aggregates:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Aggregates
aggregate_keys:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Aggregate Keys
extra:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Extra
sub_scorers:
items:
$ref: '#/components/schemas/promptgalileo__schemas__scorer_name__ScorerName'
type: array
title: Sub Scorers
filters:
anyOf:
- items:
oneOf:
- $ref: '#/components/schemas/NodeNameFilter'
- $ref: '#/components/schemas/MetadataFilter'
- $ref: '#/components/schemas/ModalityFilter'
discriminator:
propertyName: name
mapping:
metadata: '#/components/schemas/MetadataFilter'
modality: '#/components/schemas/ModalityFilter'
node_name: '#/components/schemas/NodeNameFilter'
type: array
- type: 'null'
title: Filters
metric_name:
anyOf:
- type: string
- type: 'null'
title: Metric Name
description:
anyOf:
- type: string
- type: 'null'
title: Description
chainpoll_template:
anyOf:
- $ref: '#/components/schemas/ChainPollTemplate'
- type: 'null'
model_alias:
anyOf:
- type: string
- type: 'null'
title: Model Alias
num_judges:
anyOf:
- type: integer
- type: 'null'
title: Num Judges
default_model_alias:
anyOf:
- type: string
- type: 'null'
title: Default Model Alias
ground_truth:
anyOf:
- type: boolean
- type: 'null'
title: Ground Truth
regex_field:
type: string
title: Regex Field
default: ''
registered_scorer_id:
anyOf:
- type: string
format: uuid4
- type: 'null'
title: Registered Scorer Id
generated_scorer_id:
anyOf:
- type: string
format: uuid4
- type: 'null'
title: Generated Scorer Id
scorer_version_id:
anyOf:
- type: string
format: uuid4
- type: 'null'
title: Scorer Version Id
user_code:
anyOf:
- type: string
- type: 'null'
title: User Code
can_copy_to_llm:
anyOf:
- type: boolean
- type: 'null'
title: Can Copy To Llm
scoreable_node_types:
anyOf:
- items:
$ref: '#/components/schemas/NodeType'
type: array
- type: 'null'
title: Scoreable Node Types
cot_enabled:
anyOf:
- type: boolean
- type: 'null'
title: Cot Enabled
output_type:
anyOf:
- $ref: '#/components/schemas/OutputTypeEnum'
- type: 'null'
input_type:
anyOf:
- $ref: '#/components/schemas/InputTypeEnum'
- type: 'null'
multimodal_capabilities:
anyOf:
- items:
$ref: '#/components/schemas/MultimodalCapability'
type: array
- type: 'null'
title: Multimodal Capabilities
requires_tools_in_llm_span:
type: boolean
title: Requires Tools In Llm Span
default: false
required_scorers:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Required Scorers
required_metric_ids:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Required Metric Ids
roll_up_strategy:
anyOf:
- $ref: '#/components/schemas/RollUpStrategy'
- type: 'null'
roll_up_methods:
anyOf:
- items:
$ref: '#/components/schemas/NumericRollUpMethod'
type: array
- items:
$ref: '#/components/schemas/CategoricalRollUpMethod'
type: array
- type: 'null'
title: Roll Up Methods
prompt:
anyOf:
- type: string
- type: 'null'
title: Prompt
lora_task_id:
anyOf:
- type: integer
- type: 'null'
title: Lora Task Id
lora_weights_path:
anyOf:
- type: string
- type: 'null'
title: Lora Weights Path
luna_input_type:
anyOf:
- $ref: '#/components/schemas/LunaInputTypeEnum'
- type: 'null'
luna_output_type:
anyOf:
- $ref: '#/components/schemas/LunaOutputTypeEnum'
- type: 'null'
class_name_to_vocab_ix:
anyOf:
- additionalProperties:
items:
type: integer
type: array
uniqueItems: true
type: object
- additionalProperties:
type: integer
type: object
- type: 'null'
title: Class Name To Vocab Ix
scorer_path_name:
anyOf:
- type: string
- type: 'null'
title: Scorer Path Name
type: object
title: BaseScorer
PromptRunSettings-Input:
properties:
logprobs:
type: boolean
title: Logprobs
default: true
top_logprobs:
type: integer
title: Top Logprobs
default: 5
echo:
type: boolean
title: Echo
default: false
n:
type: integer
title: N
default: 1
reasoning_effort:
type: string
title: Reasoning Effort
default: medium
verbosity:
type: string
title: Verbosity
default: medium
deployment_name:
anyOf:
- type: string
- type: 'null'
title: Deployment Name
model_alias:
type: string
title: Model Alias
default: gpt-5.1
temperature:
anyOf:
- type: number
- type: 'null'
title: Temperature
max_tokens:
type: integer
title: Max Tokens
default: 4096
stop_sequences:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Stop Sequences
top_p:
type: number
title: Top P
default: 1.0
top_k:
type: integer
title: Top K
default: 40
frequency_penalty:
type: number
title: Frequency Penalty
default: 0.0
presence_penalty:
type: number
title: Presence Penalty
default: 0.0
tools:
anyOf:
- items:
additionalProperties: true
type: object
type: array
- type: 'null'
title: Tools
tool_choice:
anyOf:
- type: string
- $ref: '#/components/schemas/OpenAIToolChoice'
- type: 'null'
title: Tool Choice
response_format:
anyOf:
- additionalProperties:
type: string
type: object
- type: 'null'
title: Response Format
known_models:
items:
$ref: '#/components/schemas/Model'
type: array
title: Known Models
type: object
title: PromptRunSettings
description: Prompt run settings.
ScorersConfiguration:
properties:
latency:
type: boolean
title: Latency
default: true
cost:
type: boolean
title: Cost
default: true
pii:
type: boolean
title: Pii
default: false
input_pii:
type: boolean
title: Input Pii
default: false
protect_status:
type: boolean
title: Protect Status
default: true
context_relevance:
type: boolean
title: Context Relevance
default: false
toxicity:
type: boolean
title: Toxicity
default: false
input_toxicity:
type: boolean
title: Input Toxicity
default: false
tone:
type: boolean
title: Tone
default: false
input_tone:
type: boolean
title: Input Tone
default: false
sexist:
type: boolean
title: Sexist
default: false
input_sexist:
type: boolean
title: Input Sexist
default: false
prompt_injection:
type: boolean
title: Prompt Injection
default: false
adherence_nli:
type: boolean
title: Adherence Nli
default: false
chunk_attribution_utilization_nli:
type: boolean
title: Chunk Attribution Utilization Nli
default: false
context_adherence_luna:
type: boolean
title: Context Adherence Luna
default: false
context_relevance_luna:
type: boolean
title: Context Relevance Luna
default: false
chunk_relevance_luna:
type: boolean
title: Chunk Relevance Luna
default: false
completeness_luna:
type: boolean
title: Completeness Luna
default: false
completeness_nli:
type: boolean
title: Completeness Nli
default: false
tool_error_rate_luna:
type: boolean
title: Tool Error Rate Luna
default: false
tool_selection_quality_luna:
type: boolean
title: Tool Selection Quality Luna
default: false
action_completion_luna:
type: boolean
title: Action Completion Luna
default: false
action_advancement_luna:
type: boolean
title: Action Advancement Luna
default: false
factuality:
type: boolean
title: Factuality
default: false
groundedness:
type: boolean
title: Groundedness
default: false
chunk_attribution_utilization_gpt:
type: boolean
title: Chunk Attribution Utilization Gpt
default: false
completeness_gpt:
type: boolean
title: Completeness Gpt
default: false
instruction_adherence:
type: boolean
title: Instruction Adherence
default: false
ground_truth_adherence:
type: boolean
title: Ground Truth Adherence
default: false
tool_selection_quality:
type: boolean
title: Tool Selection Quality
default: false
tool_error_rate:
type: boolean
title: Tool Error Rate
default: false
agentic_session_success:
type: boolean
title: Agentic Session Success
default: false
agentic_workflow_success:
type: boolean
title: Agentic Workflow Success
default: false
prompt_injection_gpt:
type: boolean
title: Prompt Injection Gpt
default: false
sexist_gpt:
type: boolean
title: Sexist Gpt
default: false
input_sexist_gpt:
type: boolean
title: Input Sexist Gpt
default: false
toxicity_gpt:
type: boolean
title: Toxicity Gpt
default: false
input_toxicity_gpt:
type: boolean
title: Input Toxicity Gpt
default: false
type: object
title: ScorersConfiguration
description: 'Configure which scorers to enable for a particular prompt run.
The keys here are sorted by their approximate execution time to execute the scorers that we anticipate will be the
fastest first, and the slowest last.'
BaseScorerVersionDB:
properties:
id:
type: string
format: uuid4
title: Id
version:
type: integer
title: Version
scorer_id:
type: string
format: uuid4
title: Scorer Id
generated_scorer:
anyOf:
- $ref: '#/components/schemas/BaseGeneratedScorerDB'
- type: 'null'
registered_scorer:
anyOf:
- $ref: '#/components/schemas/BaseRegisteredScorerDB'
- type: 'null'
finetuned_scorer:
anyOf:
- $ref: '#/components/schemas/BaseFinetunedScorerDB'
- type: 'null'
model_name:
anyOf:
- type: string
- type: 'null'
title: Model Name
num_judges:
anyOf:
- type: integer
- type: 'null'
title: Num Judges
scoreable_node_types:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Scoreable Node Types
description: List of node types that can be scored by this scorer. Defaults to llm/chat.
cot_enabled:
anyOf:
- type: boolean
- type: 'null'
title: Cot Enabled
description: Whether to enable chain of thought for this scorer. Defaults to False for llm scorers.
output_type:
anyOf:
- $ref: '#/components/schemas/OutputTypeEnum'
- type: 'null'
description: What type of output to use for model-based scorers (sessions_normalized, trace_io_only, etc.).
input_type:
anyOf:
- $ref: '#/components/schemas/InputTypeEnum'
- type: 'null'
description: What type of input to use for model-based scorers (sessions_normalized, trace_io_only, etc.).
type: object
required:
- id
- version
- scorer_id
title: BaseScorerVersionDB
description: Scorer version from the scorer_versions table.
RollUpStrategy:
type: string
enum:
- avg
- sum
- first
- last
- none
title: RollUpStrategy
description: Strategies for rolling metrics up the Session/Trace/Span hierarchy.
OutputTypeEnum:
type: string
enum:
- boolean
- categorical
- count
- discrete
- freeform
- percentage
- multilabel
- retrieved_chunk_list_boolean
- boolean_multilabel
title: OutputTypeEnum
description: Enumeration of output types.
Model:
properties:
name:
type: string
title: Name
alias:
type: string
title: Alias
integration:
$ref: '#/components/schemas/LLMIntegration'
default: openai
user_role:
anyOf:
- type: string
- type: 'null'
title: User Role
assistant_role:
anyOf:
- type: string
- type: 'null'
title: Assistant Role
system_supported:
type: boolean
title: System Supported
default: false
input_modalities:
items:
$ref: '#/components/schemas/ContentModality'
type: array
title: Input Modalities
description: Input modalities that the model can accept.
alternative_names:
items:
type: string
type: array
title: Alternative Names
description: Alternative names for the model, used for matching with various current, versioned or legacy names.
input_token_limit:
anyOf:
- type: integer
- type: 'null'
title: Input Token Limit
output_token_limit:
anyOf:
- type: integer
- type: 'null'
title: Output Token Limit
token_limit:
anyOf:
- type: integer
- type: 'null'
title: Token Limit
cost_by:
$ref: '#/components/schemas/ModelCostBy'
default: tokens
is_chat:
type: boolean
title: Is Chat
default: false
provides_log_probs:
type: boolean
title: Provides Log Probs
default: false
formatting_tokens:
type: integer
title: Formatting Tokens
default: 0
response_prefix_tokens:
type: integer
title: Response Prefix Tokens
default: 0
api_version:
anyOf:
- type: string
- type: 'null'
title: Api Version
legacy_mistral_prompt_format:
type: boolean
title: Legacy Mistral Prompt Format
default: false
requires_max_tokens:
type: boolean
title: Requires Max Tokens
default: false
max_top_p:
anyOf:
- type: number
- type: 'null'
title: Max Top P
params_map:
$ref: '#/components/schemas/RunParamsMap'
output_map:
anyOf:
- $ref: '#/components/schemas/OutputMap'
- type: 'null'
input_map:
anyOf:
- $ref: '#/components/schemas/InputMap'
- type: 'null'
type: object
required:
- name
- alias
title: Model
ContextAdherenceScorer:
properties:
name:
type: string
const: context_adherence
title: Name
default: context_adherence
filters:
anyOf:
- items:
oneOf:
- $ref: '#/components/schemas/NodeNameFilter'
- $ref: '#/components/schemas/MetadataFilter'
- $ref: '#/components/schemas/ModalityFilter'
discriminator:
propertyName: name
mapping:
metadata: '#/components/schemas/MetadataFilter'
modality: '#/components/schemas/ModalityFilter'
node_name: '#/components/schemas/NodeNameFilter'
type: array
- type: 'null'
title: Filters
description: List of filters to apply to the scorer.
type:
type: string
enum:
- luna
- plus
title: Type
default: luna
model_name:
anyOf:
- type: string
- type: 'null'
title: Model Name
description: Alias of the model to use for the scorer.
num_judges:
anyOf:
- type: integer
maximum: 10.0
minimum: 1.0
- type: 'null'
title: Num Judges
description: Number of judges for the scorer.
type: object
title: ContextAdherenceScorer
CustomizedCompletenessGPTScorer:
properties:
scorer_name:
type: string
const: _customized_completeness_gpt
title: Scorer Name
default: _customized_completeness_gpt
model_alias:
type: string
title: Model Alias
default: gpt-4.1-mini
num_judges:
type: integer
title: Num Judges
default: 3
name:
type: string
const: completeness
title: Name
default: completeness
scores:
anyOf:
- items: {}
type: array
- type: 'null'
title: Scores
indices:
anyOf:
- items:
type: integer
type: array
- type: 'null'
title: Indices
aggregates:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Aggregates
aggregate_keys:
items:
type: string
type: array
title: Aggregate Keys
default:
- average_completeness_gpt
extra:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Extra
sub_scorers:
items:
$ref: '#/components/schemas/promptgalileo__schemas__scorer_name__ScorerName'
type: array
title: Sub Scorers
filters:
anyOf:
- items:
oneOf:
- $ref: '#/components/schemas/NodeNameFilter'
- $ref: '#/components/schemas/MetadataFilter'
- $ref: '#/components/schemas/ModalityFilter'
discriminator:
propertyName: name
mapping:
metadata: '#/components/schemas/MetadataFilter'
modality: '#/components/schemas/ModalityFilter'
node_name: '#/components/schemas/NodeNameFilter'
type: array
- type: 'null'
title: Filters
metric_name:
anyOf:
- type: string
- type: 'null'
title: Metric Name
description:
anyOf:
- type: string
- type: 'null'
title: Description
chainpoll_template:
$ref: '#/components/schemas/CompletenessTemplate'
default:
value_field_name: completeness
explanation_field_name: explanation
template: "I asked someone to answer a question based on one or more documents. On a scale of 0 to 1, tell me how well their response covered the relevant information from the documents.\n\nHere is what I said to them, as a JSON string:\n\n```\n{query_json}\n```\n\nHere is what they told me, as a JSON string:\n\n```\n{response_json}\n```\n\nRespond in the following JSON format:\n\n```\n{{\n \"explanation\": string,\n \"completeness\": number\n}}\n```\n\n\"explanation\": A string with your step-by-step reasoning process. List out each piece of information covered in the documents. For each one, explain why it was or was not relevant to the question, and how well the response covered it. Do *not* give an overall assessment of the response here, just think step by step about each piece of information, one at a time. Present your work in a document-by-document format, considering each document separately, ensure the value is a valid string.\n\n\"completeness\": A floating-point number rating the Completeness of the response on a scale of 0 to 1. This number should equal the amount of relevant information that was comprehensively covered in the response, divided by the total amount of relevant information in the documents.\n\nYou must respond with a valid JSON string."
metric_few_shot_examples: []
default_model_alias:
anyOf:
- type: string
- type: 'null'
title: Default Model Alias
ground_truth:
anyOf:
- type: boolean
- type: 'null'
title: Ground Truth
regex_field:
type: string
title: Regex Field
default: ''
registered_scorer_id:
anyOf:
- type: string
format: uuid4
- type: 'null'
title: Registered Scorer Id
generated_scorer_id:
anyOf:
- type: string
format: uuid4
- type: 'null'
title: Generated Scorer Id
scorer_version_id:
anyOf:
- type: string
format: uuid4
- type: 'null'
title: Scorer Version Id
user_code:
anyOf:
- type: string
- type: 'null'
title: User Code
can_copy_to_llm:
anyOf:
- type: boolean
- type: 'null'
title: Can Copy To Llm
scoreable_node_types:
anyOf:
- items:
$ref: '#/components/schemas/NodeType'
type: array
- type: 'null'
title: Scoreable Node Types
cot_enabled:
anyOf:
- type: boolean
- type: 'null'
title: Cot Enabled
output_type:
anyOf:
- $ref: '#/components/schemas/OutputTypeEnum'
- type: 'null'
input_type:
anyOf:
- $ref: '#/components/schemas/InputTypeEnum'
- type: 'null'
multimodal_capabilities:
anyOf:
- items:
$ref: '#/components/schemas/MultimodalCapability'
type: array
- type: 'null'
title: Multimodal Capabilities
requires_tools_in_llm_span:
type: boolean
title: Requires Tools In Llm Span
default: false
required_scorers:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Required Scorers
required_metric_ids:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Required Metric Ids
roll_up_strategy:
anyOf:
- $ref: '#/components/schemas/RollUpStrategy'
- type: 'null'
roll_up_methods:
anyOf:
- items:
$ref: '#/components/schemas/NumericRollUpMethod'
type: array
- items:
$ref: '#/components/schemas/CategoricalRollUpMethod'
type: array
- type: 'null'
title: Roll Up Methods
prompt:
anyOf:
- type: string
- type: 'null'
title: Prompt
lora_task_id:
anyOf:
- type: integer
- type: 'null'
title: Lora Task Id
lora_weights_path:
anyOf:
- type: string
- type: 'null'
title: Lora Weights Path
luna_input_type:
anyOf:
- $ref: '#/components/schemas/LunaInputTypeEnum'
- type: 'null'
luna_output_type:
anyOf:
- $ref: '#/components/schemas/LunaOutputTypeEnum'
- type: 'null'
class_name_to_vocab_ix:
anyOf:
- additionalProperties:
items:
type: integer
type: array
uniqueItems: true
type: object
- additionalProperties:
type: integer
type: object
- type: 'null'
title: Class Name To Vocab Ix
scorer_path_name:
anyOf:
- type: string
- type: 'null'
title: Scorer Path Name
type: object
title: CustomizedCompletenessGPTScorer
AgenticWorkflowSuccessTemplate:
properties:
metric_system_prompt:
type: string
title: Metric System Prompt
default: "You will receive the chat history from a chatbot application between a user and an AI. At the end of the chat history, it is AI’s turn to act.\n\nIn the chat history, the user can either ask questions, which are answered with words, or make requests that require calling tools and actions to resolve. Sometimes these are given as orders, and these should be treated as questions or requests. The AI's turn may involve several steps which are a combination of internal reflections, planning, selecting tools, calling tools, and ends with the AI replying to the user. \nYour task involves the following steps:\n\n########################\n\nStep 1: user_last_input and user_ask\n\nFirst, identify the user's last input in the chat history. From this input, create a list with one entry for each user question, request, or order. If there are no user asks in the user's last input, leave the list empty and skip ahead, considering the AI's turn successful.\n\n########################\n\nStep 2: ai_final_response and answer_or_resolution\n\nIdentify the AI's final response to the user: it is the very last step in the AI's turn.\n\nFor every user_ask, focus on ai_final_response and try to extract either an answer or a resolution using the following definitions:\n- An answer is a part of the AI's final response that directly responds to all or part of a user's question, or asks for further information or clarification.\n- A resolution is a part of the AI's final response that confirms a successful resolution, or asks for further information or clarification in order to answer a user's request.\n\nIf the AI's final response does not address the user ask, simply write \"No answer or resolution provided in the final response\". Do not shorten the answer or resolution; provide the entire relevant part.\n\n########################\n\nStep 3: tools_input_output\n\nExamine every step in the AI's turn and identify which tool/function step seemingly contributed to creating the answer or resolution. Every tool call should be linked to a user ask. If an AI step immediately before or after the tool call mentions planning or using a tool for answering a user ask, the tool call should be associated with that user ask. If the answer or resolution strongly resembles the output of a tool, the tool call should also be associated with that user ask.\n\nCreate a list containing the concatenation of the entire input and output of every tool used in formulating the answer or resolution. The tool input is listed as an AI step before calling the tool, and the tool output is listed as a tool step.\n\n########################\n\nStep 4: properties, boolean_properties and answer_successful\n\nFor every answer or resolution from Step 2, check the following properties one by one to determine which are satisfied:\n- factually_wrong: the answer contains factual errors.\n- addresses_different_ask: the answer or resolution addresses a slightly different user ask (make sure to differentiate this from asking clarifying questions related to the current ask).\n- not_adherent_to_tools_output: the answer or resolution includes citations from a tool's output, but some are wrongly copied or attributed.\n- mentions_inability: the answer or resolution mentions an inability to complete the user ask.\n- mentions_unsuccessful_attempt: the answer or resolution mentions an unsuccessful or failed attempt to complete the user ask.\n\nThen copy all the properties (only the boolean value) in the list boolean_properties.\n\nFinally, set answer_successful to `false` if any
# --- truncated at 32 KB (350 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/galileo-technologies/refs/heads/main/openapi/galileo-technologies-jobs-api-openapi.yml