llama-stack-mirror/docs/static/experimental-llama-stack-spec.yaml
Sébastien Han e3cb8ed74a
chore: use Pydantic to generate OpenAPI schema
Removes the need for the strong_typing and pyopenapi packages and purely
use Pydantic for schema generation.

Our generator now purely relies on Pydantic and FastAPI, it is available
at `scripts/fastapi_generator.py`, you can run it like so:

```
uv run ./scripts/run_openapi_generator.sh
```

The generator will:

* Generate the deprecated, experimental, stable and combined specs
* Validate all the spec it generates against OpenAPI standards

A few changes in the schema required for oasdiff some updates so I've
made the following ignore rules. The new Pydantic-based generator is
likely more correct and follows OpenAPI standards better than the old
pyopenapi generator. Instead of trying to make the new generator match
the old one's quirks, we should focus on what's actually correct
according to OpenAPI standards.

These are non-critical changes:

* response-property-became-nullable: Backward compatible:
  existing non-null values still work, now also accepts null
* response-required-property-removed: oasdiff reports a false
  positive because it doesn't resolve $refs inside anyOf; we could use
  tool like 'redocly' to flatten the schema to a single file.
* response-property-type-changed: properties are still object
  types, but oasdiff doesn't resolve $refs, so it flags the missing
  inline type: object even though the referenced schemas define type:
  object
* request-property-one-of-removed: These are false positives
  caused by schema restructuring (wrapping in anyOf for nullability,
  using -Input variants, or simplifying nested oneOf structures)
  that don't change the actual API contract - the same data types are
  still accepted, just represented differently in the schema.
* request-parameter-enum-value-removed: These are false
  positives caused by oasdiff not resolving $refs - the enum values
  (asc, desc, assistants, batch) are still present in the referenced
  schemas (Order and OpenAIFilePurpose), just represented via schema
  references instead of inline enums.
* request-property-enum-value-removed: this is a false positive caused
    by oasdiff not resolving $refs - the enum values (llm, embedding,
    rerank) are still present in the referenced ModelType schema,
    just represented via schema reference instead of inline enums.
* request-property-type-changed: These are schema quality issues
    where type information is missing (due to Any fallback in dynamic
    model creation), but the API contract remains unchanged -
    properties still exist with correct names and defaults, so the same
    requests will work.
* response-body-type-changed: These are false positives caused
  by schema representation changes (from inferred/empty types to
  explicit $ref schemas, or vice versa) - the actual response types
  an API contract remain unchanged, just how they're represented in the
  OpenAPI spec.
* response-media-type-removed: This is a false positive caused
  by FastAPI's OpenAPI generator not documenting union return types with
  AsyncIterator - the streaming functionality with text/event-stream
  media type still works when stream=True is passed, it's just not
  reflected in the generated OpenAPI spec.
* request-body-type-changed: This is a schema correction - the
  old spec incorrectly represented the request body as an object, but
  the function signature shows chunks: list[Chunk], so the new spec
  correctly shows it as an array, matching the actual API
  implementation.

Signed-off-by: Sébastien Han <seb@redhat.com>
2025-11-14 09:56:02 +01:00

5576 lines
158 KiB
YAML

openapi: 3.1.0
info:
title: Llama Stack Specification - Experimental APIs
description: |-
This is the specification of the Llama Stack that provides
a set of endpoints and their corresponding interfaces that are
tailored to
best leverage Llama Models.
**🧪 EXPERIMENTAL**: Pre-release APIs (v1alpha, v1beta) that may change before
becoming stable.
version: v1
servers:
- url: http://any-hosted-llama-stack.com
paths:
/v1alpha/inference/rerank:
post:
tags:
- Inference
summary: Rerank
description: Rerank a list of documents based on their relevance to a query.
operationId: rerank_v1alpha_inference_rerank_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/_inference_rerank_Request'
required: true
responses:
'200':
description: RerankResponse with indices sorted by relevance score (descending).
content:
application/json:
schema:
$ref: '#/components/schemas/RerankResponse'
'400':
description: Bad Request
$ref: '#/components/responses/BadRequest400'
'429':
description: Too Many Requests
$ref: '#/components/responses/TooManyRequests429'
'500':
description: Internal Server Error
$ref: '#/components/responses/InternalServerError500'
default:
description: Default Response
$ref: '#/components/responses/DefaultError'
/v1beta/datasetio/append-rows/{dataset_id}:
post:
tags:
- Datasetio
summary: Append Rows
description: Append rows to a dataset.
operationId: append_rows_v1beta_datasetio_append_rows__dataset_id__post
requestBody:
content:
application/json:
schema:
items:
additionalProperties: true
type: object
type: array
title: Rows
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'400':
description: Bad Request
$ref: '#/components/responses/BadRequest400'
'429':
description: Too Many Requests
$ref: '#/components/responses/TooManyRequests429'
'500':
description: Internal Server Error
$ref: '#/components/responses/InternalServerError500'
default:
description: Default Response
$ref: '#/components/responses/DefaultError'
parameters:
- name: dataset_id
in: path
required: true
schema:
type: string
description: 'Path parameter: dataset_id'
/v1beta/datasetio/iterrows/{dataset_id}:
get:
tags:
- Datasetio
summary: Iterrows
description: |-
Get a paginated list of rows from a dataset.
Uses offset-based pagination where:
- start_index: The starting index (0-based). If None, starts from beginning.
- limit: Number of items to return. If None or -1, returns all items.
The response includes:
- data: List of items for the current page.
- has_more: Whether there are more items available after this set.
operationId: iterrows_v1beta_datasetio_iterrows__dataset_id__get
parameters:
- name: limit
in: query
required: false
schema:
anyOf:
- type: integer
- type: 'null'
title: Limit
- name: start_index
in: query
required: false
schema:
anyOf:
- type: integer
- type: 'null'
title: Start Index
- name: dataset_id
in: path
required: true
schema:
type: string
description: 'Path parameter: dataset_id'
responses:
'200':
description: A PaginatedResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedResponse'
'400':
$ref: '#/components/responses/BadRequest400'
description: Bad Request
'429':
$ref: '#/components/responses/TooManyRequests429'
description: Too Many Requests
'500':
$ref: '#/components/responses/InternalServerError500'
description: Internal Server Error
default:
$ref: '#/components/responses/DefaultError'
description: Default Response
/v1beta/datasets/{dataset_id}:
get:
tags:
- Datasets
summary: Get Dataset
description: Get a dataset by its ID.
operationId: get_dataset_v1beta_datasets__dataset_id__get
responses:
'200':
description: A Dataset.
content:
application/json:
schema:
$ref: '#/components/schemas/Dataset'
'400':
description: Bad Request
$ref: '#/components/responses/BadRequest400'
'429':
description: Too Many Requests
$ref: '#/components/responses/TooManyRequests429'
'500':
description: Internal Server Error
$ref: '#/components/responses/InternalServerError500'
default:
description: Default Response
$ref: '#/components/responses/DefaultError'
parameters:
- name: dataset_id
in: path
required: true
schema:
type: string
description: 'Path parameter: dataset_id'
delete:
tags:
- Datasets
summary: Unregister Dataset
description: Unregister a dataset by its ID.
operationId: unregister_dataset_v1beta_datasets__dataset_id__delete
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'400':
description: Bad Request
$ref: '#/components/responses/BadRequest400'
'429':
description: Too Many Requests
$ref: '#/components/responses/TooManyRequests429'
'500':
description: Internal Server Error
$ref: '#/components/responses/InternalServerError500'
default:
description: Default Response
$ref: '#/components/responses/DefaultError'
parameters:
- name: dataset_id
in: path
required: true
schema:
type: string
description: 'Path parameter: dataset_id'
/v1beta/datasets:
get:
tags:
- Datasets
summary: List Datasets
description: List all datasets.
operationId: list_datasets_v1beta_datasets_get
responses:
'200':
description: A ListDatasetsResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/ListDatasetsResponse'
'400':
description: Bad Request
$ref: '#/components/responses/BadRequest400'
'429':
description: Too Many Requests
$ref: '#/components/responses/TooManyRequests429'
'500':
description: Internal Server Error
$ref: '#/components/responses/InternalServerError500'
default:
description: Default Response
$ref: '#/components/responses/DefaultError'
post:
tags:
- Datasets
summary: Register Dataset
description: Register a new dataset.
operationId: register_dataset_v1beta_datasets_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/_datasets_Request'
required: true
deprecated: true
/v1beta/datasets/{dataset_id}:
get:
responses:
'200':
description: A Dataset.
content:
application/json:
schema:
$ref: '#/components/schemas/Dataset'
'400':
description: Bad Request
$ref: '#/components/responses/BadRequest400'
'429':
description: Too Many Requests
$ref: '#/components/responses/TooManyRequests429'
'500':
description: Internal Server Error
$ref: '#/components/responses/InternalServerError500'
default:
description: Default Response
$ref: '#/components/responses/DefaultError'
/v1alpha/eval/benchmarks/{benchmark_id}/evaluations:
post:
tags:
- Eval
summary: Evaluate Rows
description: Evaluate a list of rows on a benchmark.
operationId: evaluate_rows_v1alpha_eval_benchmarks__benchmark_id__evaluations_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/_eval_benchmarks_benchmark_id_evaluations_Request'
required: true
responses:
'200':
description: EvaluateResponse object containing generations and scores.
content:
application/json:
schema:
$ref: '#/components/schemas/EvaluateResponse'
'400':
description: Bad Request
$ref: '#/components/responses/BadRequest400'
'429':
description: Too Many Requests
$ref: '#/components/responses/TooManyRequests429'
'500':
description: Internal Server Error
$ref: '#/components/responses/InternalServerError500'
default:
description: Default Response
$ref: '#/components/responses/DefaultError'
parameters:
- name: dataset_id
in: path
description: The ID of the dataset to unregister.
required: true
schema:
type: string
deprecated: true
/v1alpha/eval/benchmarks:
get:
tags:
- Benchmarks
summary: List Benchmarks
description: List all benchmarks.
operationId: list_benchmarks_v1alpha_eval_benchmarks_get
responses:
'200':
description: A ListBenchmarksResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/ListBenchmarksResponse'
'400':
$ref: '#/components/responses/BadRequest400'
description: Bad Request
'429':
$ref: '#/components/responses/TooManyRequests429'
description: Too Many Requests
'500':
$ref: '#/components/responses/InternalServerError500'
description: Internal Server Error
default:
$ref: '#/components/responses/DefaultError'
description: Default Response
post:
tags:
- Benchmarks
summary: Register Benchmark
description: Register a benchmark.
operationId: register_benchmark_v1alpha_eval_benchmarks_post
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RegisterBenchmarkRequest'
required: true
deprecated: true
/v1alpha/eval/benchmarks/{benchmark_id}:
get:
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'400':
$ref: '#/components/responses/BadRequest400'
description: Bad Request
'429':
$ref: '#/components/responses/TooManyRequests429'
description: Too Many Requests
'500':
$ref: '#/components/responses/InternalServerError500'
description: Internal Server Error
default:
$ref: '#/components/responses/DefaultError'
tags:
- Benchmarks
summary: Get a benchmark by its ID.
description: Get a benchmark by its ID.
parameters:
- name: benchmark_id
in: path
description: The ID of the benchmark to get.
required: true
schema:
type: string
deprecated: false
delete:
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Benchmarks
summary: Unregister a benchmark.
description: Unregister a benchmark.
parameters:
- name: benchmark_id
in: path
description: The ID of the benchmark to unregister.
required: true
schema:
type: string
deprecated: true
/v1alpha/eval/benchmarks/{benchmark_id}/evaluations:
post:
tags:
- Post Training
summary: Cancel Training Job
description: Cancel a training job.
operationId: cancel_training_job_v1alpha_post_training_job_cancel_post
parameters:
- name: job_uuid
in: query
required: true
schema:
type: string
title: Job Uuid
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'400':
$ref: '#/components/responses/BadRequest400'
description: Bad Request
'429':
$ref: '#/components/responses/TooManyRequests429'
description: Too Many Requests
'500':
$ref: '#/components/responses/InternalServerError500'
description: Internal Server Error
default:
$ref: '#/components/responses/DefaultError'
description: Default Response
/v1alpha/post-training/job/artifacts:
get:
tags:
- Post Training
summary: Get Training Job Artifacts
description: Get the artifacts of a training job.
operationId: get_training_job_artifacts_v1alpha_post_training_job_artifacts_get
parameters:
- name: job_uuid
in: query
required: true
schema:
type: string
title: Job Uuid
responses:
'200':
description: A PostTrainingJobArtifactsResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/PostTrainingJobArtifactsResponse'
'400':
$ref: '#/components/responses/BadRequest400'
description: Bad Request
'429':
$ref: '#/components/responses/TooManyRequests429'
description: Too Many Requests
'500':
$ref: '#/components/responses/InternalServerError500'
description: Internal Server Error
default:
$ref: '#/components/responses/DefaultError'
description: Default Response
/v1alpha/post-training/job/status:
get:
tags:
- Post Training
summary: Get Training Job Status
description: Get the status of a training job.
operationId: get_training_job_status_v1alpha_post_training_job_status_get
parameters:
- name: job_uuid
in: query
required: true
schema:
type: string
title: Job Uuid
responses:
'200':
description: A PostTrainingJobStatusResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/PostTrainingJobStatusResponse'
'400':
$ref: '#/components/responses/BadRequest400'
description: Bad Request
'429':
$ref: '#/components/responses/TooManyRequests429'
description: Too Many Requests
'500':
$ref: '#/components/responses/InternalServerError500'
description: Internal Server Error
default:
$ref: '#/components/responses/DefaultError'
description: Default Response
/v1alpha/post-training/jobs:
get:
tags:
- Post Training
summary: Get Training Jobs
description: Get all training jobs.
operationId: get_training_jobs_v1alpha_post_training_jobs_get
responses:
'200':
description: A ListPostTrainingJobsResponse.
content:
application/json:
schema:
$ref: '#/components/schemas/ListPostTrainingJobsResponse'
'400':
description: Bad Request
$ref: '#/components/responses/BadRequest400'
'429':
description: Too Many Requests
$ref: '#/components/responses/TooManyRequests429'
'500':
description: Internal Server Error
$ref: '#/components/responses/InternalServerError500'
default:
description: Default Response
$ref: '#/components/responses/DefaultError'
/v1alpha/post-training/preference-optimize:
post:
tags:
- Post Training
summary: Preference Optimize
description: Run preference optimization of a model.
operationId: preference_optimize_v1alpha_post_training_preference_optimize_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/_post_training_preference_optimize_Request'
required: true
responses:
'200':
description: A PostTrainingJob.
content:
application/json:
schema:
$ref: '#/components/schemas/PostTrainingJob'
'400':
description: Bad Request
$ref: '#/components/responses/BadRequest400'
'429':
description: Too Many Requests
$ref: '#/components/responses/TooManyRequests429'
'500':
description: Internal Server Error
$ref: '#/components/responses/InternalServerError500'
default:
description: Default Response
$ref: '#/components/responses/DefaultError'
/v1alpha/post-training/supervised-fine-tune:
post:
tags:
- Post Training
summary: Supervised Fine Tune
description: Run supervised fine-tuning of a model.
operationId: supervised_fine_tune_v1alpha_post_training_supervised_fine_tune_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/_post_training_supervised_fine_tune_Request'
required: true
responses:
'200':
description: A PostTrainingJob.
content:
application/json:
schema:
$ref: '#/components/schemas/PostTrainingJob'
'400':
description: Bad Request
$ref: '#/components/responses/BadRequest400'
'429':
description: Too Many Requests
$ref: '#/components/responses/TooManyRequests429'
'500':
description: Internal Server Error
$ref: '#/components/responses/InternalServerError500'
default:
description: Default Response
$ref: '#/components/responses/DefaultError'
components:
schemas:
Error:
type: object
properties:
status:
type: integer
description: HTTP status code
title:
type: string
description: >-
Error title, a short summary of the error which is invariant for an error
type
detail:
type: string
description: >-
Error detail, a longer human-readable description of the error
instance:
type: string
description: >-
(Optional) A URL which can be used to retrieve more information about
the specific occurrence of the error
additionalProperties: false
required:
- status
- title
- detail
title: Error
description: >-
Error response from the API. Roughly follows RFC 7807.
AppendRowsRequest:
type: object
properties:
rows:
type: array
items:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: The rows to append to the dataset.
additionalProperties: false
required:
- rows
title: AppendRowsRequest
PaginatedResponse:
type: object
properties:
data:
type: array
items:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: The list of items for the current page
has_more:
type: boolean
description: >-
Whether there are more items available after this set
url:
type: string
description: The URL for accessing this list
additionalProperties: false
required:
- data
- has_more
title: PaginatedResponse
description: >-
A generic paginated response that follows a simple format.
Dataset:
type: object
properties:
identifier:
type: string
provider_resource_id:
type: string
provider_id:
type: string
type:
type: string
enum:
- model
- shield
- vector_store
- dataset
- scoring_function
- benchmark
- tool
- tool_group
- prompt
const: dataset
default: dataset
description: >-
Type of resource, always 'dataset' for datasets
purpose:
type: string
enum:
- post-training/messages
- eval/question-answer
- eval/messages-answer
description: >-
Purpose of the dataset indicating its intended use
source:
oneOf:
- $ref: '#/components/schemas/URIDataSource'
- $ref: '#/components/schemas/RowsDataSource'
discriminator:
propertyName: type
mapping:
uri: '#/components/schemas/URIDataSource'
rows: '#/components/schemas/RowsDataSource'
description: >-
Data source configuration for the dataset
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: Additional metadata for the dataset
additionalProperties: false
required:
- identifier
- provider_id
- type
- purpose
- source
- metadata
title: Dataset
description: >-
Dataset resource for storing and accessing training or evaluation data.
RowsDataSource:
type: object
properties:
type:
type: string
const: rows
default: rows
rows:
type: array
items:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
The dataset is stored in rows. E.g. - [ {"messages": [{"role": "user",
"content": "Hello, world!"}, {"role": "assistant", "content": "Hello,
world!"}]} ]
additionalProperties: false
required:
- type
- rows
title: RowsDataSource
description: A dataset stored in rows.
URIDataSource:
type: object
properties:
type:
type: string
const: uri
default: uri
uri:
type: string
description: >-
The dataset can be obtained from a URI. E.g. - "https://mywebsite.com/mydata.jsonl"
- "lsfs://mydata.jsonl" - "data:csv;base64,{base64_content}"
additionalProperties: false
required:
- type
- uri
title: URIDataSource
description: >-
A dataset that can be obtained from a URI.
ListDatasetsResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Dataset'
description: List of datasets
additionalProperties: false
required:
- data
title: ListDatasetsResponse
description: Response from listing datasets.
Benchmark:
type: object
properties:
identifier:
type: string
provider_resource_id:
type: string
provider_id:
type: string
type:
type: string
enum:
- model
- shield
- vector_store
- dataset
- scoring_function
- benchmark
- tool
- tool_group
- prompt
const: benchmark
default: benchmark
description: The resource type, always benchmark
dataset_id:
type: string
description: >-
Identifier of the dataset to use for the benchmark evaluation
scoring_functions:
type: array
items:
type: string
description: >-
List of scoring function identifiers to apply during evaluation
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: Metadata for this evaluation task
additionalProperties: false
required:
- identifier
- provider_id
- type
- dataset_id
- scoring_functions
- metadata
title: Benchmark
description: >-
A benchmark resource for evaluating model performance.
ListBenchmarksResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Benchmark'
additionalProperties: false
required:
- data
title: ListBenchmarksResponse
AggregationFunctionType:
type: string
enum:
- average
- weighted_average
- median
- categorical_count
- accuracy
title: AggregationFunctionType
description: Types of aggregation functions for scoring results.
AllowedToolsFilter:
properties:
tool_names:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Tool Names
type: object
title: AllowedToolsFilter
description: Filter configuration for restricting which MCP tools can be used.
ArrayType:
properties:
type:
type: string
const: array
title: Type
default: array
type: object
title: ArrayType
description: Parameter type for array values.
BasicScoringFnParams:
properties:
type:
type: string
const: basic
title: Type
default: basic
aggregation_functions:
items:
$ref: '#/components/schemas/AggregationFunctionType'
type: array
title: Aggregation Functions
description: Aggregation functions to apply to the scores of each row
type: object
title: BasicScoringFnParams
description: Parameters for basic scoring function configuration.
Batch:
properties:
id:
type: string
title: Id
completion_window:
type: string
title: Completion Window
created_at:
type: integer
title: Created At
endpoint:
type: string
title: Endpoint
input_file_id:
type: string
title: Input File Id
object:
type: string
const: batch
title: Object
status:
type: string
enum:
- validating
- failed
- in_progress
- finalizing
- completed
- expired
- cancelling
- cancelled
title: Status
cancelled_at:
anyOf:
- type: integer
- type: 'null'
title: Cancelled At
cancelling_at:
anyOf:
- type: integer
- type: 'null'
title: Cancelling At
completed_at:
anyOf:
- type: integer
- type: 'null'
title: Completed At
error_file_id:
anyOf:
- type: string
- type: 'null'
title: Error File Id
errors:
anyOf:
- $ref: '#/components/schemas/Errors'
- type: 'null'
expired_at:
anyOf:
- type: integer
- type: 'null'
title: Expired At
expires_at:
anyOf:
- type: integer
- type: 'null'
title: Expires At
failed_at:
anyOf:
- type: integer
- type: 'null'
title: Failed At
finalizing_at:
anyOf:
- type: integer
- type: 'null'
title: Finalizing At
in_progress_at:
anyOf:
- type: integer
- type: 'null'
title: In Progress At
metadata:
anyOf:
- additionalProperties:
type: string
type: object
- type: 'null'
title: Metadata
model:
anyOf:
- type: string
- type: 'null'
title: Model
output_file_id:
anyOf:
- type: string
- type: 'null'
title: Output File Id
request_counts:
anyOf:
- $ref: '#/components/schemas/BatchRequestCounts'
- type: 'null'
usage:
anyOf:
- $ref: '#/components/schemas/BatchUsage'
- type: 'null'
additionalProperties: true
type: object
required:
- id
- completion_window
- created_at
- endpoint
- input_file_id
- object
- status
title: Batch
BatchError:
properties:
code:
anyOf:
- type: string
- type: 'null'
title: Code
line:
anyOf:
- type: integer
- type: 'null'
title: Line
message:
anyOf:
- type: string
- type: 'null'
title: Message
param:
anyOf:
- type: string
- type: 'null'
title: Param
additionalProperties: true
type: object
title: BatchError
BatchRequestCounts:
properties:
completed:
type: integer
title: Completed
failed:
type: integer
title: Failed
total:
type: integer
title: Total
additionalProperties: true
type: object
required:
- completed
- failed
- total
title: BatchRequestCounts
BatchUsage:
properties:
input_tokens:
type: integer
title: Input Tokens
input_tokens_details:
$ref: '#/components/schemas/InputTokensDetails'
output_tokens:
type: integer
title: Output Tokens
output_tokens_details:
$ref: '#/components/schemas/OutputTokensDetails'
total_tokens:
type: integer
title: Total Tokens
additionalProperties: true
type: object
required:
- input_tokens
- input_tokens_details
- output_tokens
- output_tokens_details
- total_tokens
title: BatchUsage
Benchmark:
properties:
identifier:
type: string
title: Identifier
description: Unique identifier for this resource in llama stack
provider_resource_id:
anyOf:
- type: string
- type: 'null'
title: Provider Resource Id
description: Unique identifier for this resource in the provider
provider_id:
type: string
title: Provider Id
description: ID of the provider that owns this resource
type:
type: string
const: benchmark
title: Type
default: benchmark
dataset_id:
type: string
title: Dataset Id
scoring_functions:
items:
type: string
type: array
title: Scoring Functions
metadata:
additionalProperties: true
type: object
title: Metadata
description: Metadata for this evaluation task
type: object
required:
- identifier
- provider_id
- dataset_id
- scoring_functions
title: Benchmark
description: A benchmark resource for evaluating model performance.
BenchmarkConfig:
properties:
eval_candidate:
$ref: '#/components/schemas/ModelCandidate'
scoring_params:
additionalProperties:
oneOf:
- $ref: '#/components/schemas/LLMAsJudgeScoringFnParams'
- $ref: '#/components/schemas/RegexParserScoringFnParams'
- $ref: '#/components/schemas/BasicScoringFnParams'
discriminator:
propertyName: type
mapping:
basic: '#/components/schemas/BasicScoringFnParams'
llm_as_judge: '#/components/schemas/LLMAsJudgeScoringFnParams'
regex_parser: '#/components/schemas/RegexParserScoringFnParams'
type: object
title: Scoring Params
description: Map between scoring function id and parameters for each scoring function you want to run
num_examples:
anyOf:
- type: integer
- type: 'null'
title: Num Examples
description: Number of examples to evaluate (useful for testing), if not provided, all examples in the dataset will be evaluated
type: object
required:
- eval_candidate
title: BenchmarkConfig
description: A benchmark configuration for evaluation.
Body_register_benchmark_v1alpha_eval_benchmarks_post:
properties:
scoring_functions:
items:
type: string
type: array
title: Scoring Functions
metadata:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Metadata
type: object
required:
- scoring_functions
title: Body_register_benchmark_v1alpha_eval_benchmarks_post
BooleanType:
properties:
type:
type: string
const: boolean
title: Type
default: boolean
type: object
title: BooleanType
description: Parameter type for boolean values.
ChatCompletionInputType:
properties:
type:
type: string
const: chat_completion_input
title: Type
default: chat_completion_input
type: object
title: ChatCompletionInputType
description: Parameter type for chat completion input.
Chunk-Output:
properties:
content:
anyOf:
- type: string
- oneOf:
- $ref: '#/components/schemas/ImageContentItem-Output'
- $ref: '#/components/schemas/TextContentItem'
discriminator:
propertyName: type
mapping:
image: '#/components/schemas/ImageContentItem-Output'
text: '#/components/schemas/TextContentItem'
- items:
oneOf:
- $ref: '#/components/schemas/ImageContentItem-Output'
- $ref: '#/components/schemas/TextContentItem'
discriminator:
propertyName: type
mapping:
image: '#/components/schemas/ImageContentItem-Output'
text: '#/components/schemas/TextContentItem'
type: array
title: Content
chunk_id:
type: string
title: Chunk Id
metadata:
additionalProperties: true
type: object
title: Metadata
embedding:
anyOf:
- items:
type: number
type: array
- type: 'null'
title: Embedding
chunk_metadata:
anyOf:
- $ref: '#/components/schemas/ChunkMetadata'
- type: 'null'
type: object
required:
- content
- chunk_id
title: Chunk
description: A chunk of content that can be inserted into a vector database.
ChunkMetadata:
properties:
chunk_id:
anyOf:
- type: string
- type: 'null'
title: Chunk Id
document_id:
anyOf:
- type: string
- type: 'null'
title: Document Id
source:
anyOf:
- type: string
- type: 'null'
title: Source
created_timestamp:
anyOf:
- type: integer
- type: 'null'
title: Created Timestamp
updated_timestamp:
anyOf:
- type: integer
- type: 'null'
title: Updated Timestamp
chunk_window:
anyOf:
- type: string
- type: 'null'
title: Chunk Window
chunk_tokenizer:
anyOf:
- type: string
- type: 'null'
title: Chunk Tokenizer
chunk_embedding_model:
anyOf:
- type: string
- type: 'null'
title: Chunk Embedding Model
chunk_embedding_dimension:
anyOf:
- type: integer
- type: 'null'
title: Chunk Embedding Dimension
content_token_count:
anyOf:
- type: integer
- type: 'null'
title: Content Token Count
metadata_token_count:
anyOf:
- type: integer
- type: 'null'
title: Metadata Token Count
type: object
title: ChunkMetadata
description: |-
`ChunkMetadata` is backend metadata for a `Chunk` that is used to store additional information about the chunk that
will not be used in the context during inference, but is required for backend functionality. The `ChunkMetadata`
is set during chunk creation in `MemoryToolRuntimeImpl().insert()`and is not expected to change after.
Use `Chunk.metadata` for metadata that will be used in the context during inference.
CompletionInputType:
properties:
type:
type: string
const: completion_input
title: Type
default: completion_input
type: object
title: CompletionInputType
description: Parameter type for completion input.
Conversation:
properties:
id:
type: string
title: Id
description: The unique ID of the conversation.
object:
type: string
const: conversation
title: Object
description: The object type, which is always conversation.
default: conversation
created_at:
type: integer
title: Created At
description: The time at which the conversation was created, measured in seconds since the Unix epoch.
metadata:
anyOf:
- additionalProperties:
type: string
type: object
- type: 'null'
title: Metadata
description: Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format, and querying for objects via API or the dashboard.
items:
anyOf:
- items:
additionalProperties: true
type: object
type: array
- type: 'null'
title: Items
description: Initial items to include in the conversation context. You may add up to 20 items at a time.
type: object
required:
- id
- created_at
title: Conversation
description: OpenAI-compatible conversation object.
ConversationDeletedResource:
properties:
id:
type: string
title: Id
description: The deleted conversation identifier
object:
type: string
title: Object
description: Object type
default: conversation.deleted
deleted:
type: boolean
title: Deleted
description: Whether the object was deleted
default: true
type: object
required:
- id
title: ConversationDeletedResource
description: Response for deleted conversation.
ConversationItemDeletedResource:
properties:
id:
type: string
title: Id
description: The deleted item identifier
object:
type: string
title: Object
description: Object type
default: conversation.item.deleted
deleted:
type: boolean
title: Deleted
description: Whether the object was deleted
default: true
type: object
required:
- id
title: ConversationItemDeletedResource
description: Response for deleted conversation item.
ConversationItemList:
properties:
object:
type: string
title: Object
description: Object type
default: list
data:
items:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseMessage-Output'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageWebSearchToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageFileSearchToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageFunctionToolCall'
- $ref: '#/components/schemas/OpenAIResponseInputFunctionToolCallOutput'
- $ref: '#/components/schemas/OpenAIResponseMCPApprovalRequest'
- $ref: '#/components/schemas/OpenAIResponseMCPApprovalResponse'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageMCPCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageMCPListTools'
discriminator:
propertyName: type
mapping:
file_search_call: '#/components/schemas/OpenAIResponseOutputMessageFileSearchToolCall'
function_call: '#/components/schemas/OpenAIResponseOutputMessageFunctionToolCall'
function_call_output: '#/components/schemas/OpenAIResponseInputFunctionToolCallOutput'
mcp_approval_request: '#/components/schemas/OpenAIResponseMCPApprovalRequest'
mcp_approval_response: '#/components/schemas/OpenAIResponseMCPApprovalResponse'
mcp_call: '#/components/schemas/OpenAIResponseOutputMessageMCPCall'
mcp_list_tools: '#/components/schemas/OpenAIResponseOutputMessageMCPListTools'
message: '#/components/schemas/OpenAIResponseMessage-Output'
web_search_call: '#/components/schemas/OpenAIResponseOutputMessageWebSearchToolCall'
type: array
title: Data
description: List of conversation items
first_id:
anyOf:
- type: string
- type: 'null'
title: First Id
description: The ID of the first item in the list
last_id:
anyOf:
- type: string
- type: 'null'
title: Last Id
description: The ID of the last item in the list
has_more:
type: boolean
title: Has More
description: Whether there are more items available
default: false
type: object
required:
- data
title: ConversationItemList
description: List of conversation items with pagination.
DPOAlignmentConfig:
properties:
beta:
type: number
title: Beta
loss_type:
$ref: '#/components/schemas/DPOLossType'
default: sigmoid
type: object
required:
- beta
title: DPOAlignmentConfig
description: Configuration for Direct Preference Optimization (DPO) alignment.
DPOLossType:
type: string
enum:
- sigmoid
- hinge
- ipo
- kto_pair
title: DPOLossType
DataConfig:
properties:
dataset_id:
type: string
title: Dataset Id
batch_size:
type: integer
title: Batch Size
shuffle:
type: boolean
title: Shuffle
data_format:
$ref: '#/components/schemas/DatasetFormat'
validation_dataset_id:
anyOf:
- type: string
- type: 'null'
title: Validation Dataset Id
packed:
anyOf:
- type: boolean
- type: 'null'
title: Packed
default: false
train_on_input:
anyOf:
- type: boolean
- type: 'null'
title: Train On Input
default: false
type: object
required:
- dataset_id
- batch_size
- shuffle
- data_format
title: DataConfig
description: Configuration for training data and data loading.
Dataset:
properties:
identifier:
type: string
title: Identifier
description: Unique identifier for this resource in llama stack
provider_resource_id:
anyOf:
- type: string
- type: 'null'
title: Provider Resource Id
description: Unique identifier for this resource in the provider
provider_id:
type: string
title: Provider Id
description: ID of the provider that owns this resource
type:
type: string
const: dataset
title: Type
default: dataset
purpose:
$ref: '#/components/schemas/DatasetPurpose'
source:
oneOf:
- $ref: '#/components/schemas/URIDataSource'
- $ref: '#/components/schemas/RowsDataSource'
title: Source
discriminator:
propertyName: type
mapping:
rows: '#/components/schemas/RowsDataSource'
uri: '#/components/schemas/URIDataSource'
metadata:
additionalProperties: true
type: object
title: Metadata
description: Any additional metadata for this dataset
type: object
required:
- identifier
- provider_id
- purpose
- source
title: Dataset
description: Dataset resource for storing and accessing training or evaluation data.
DatasetFormat:
type: string
enum:
- instruct
- dialog
title: DatasetFormat
description: Format of the training dataset.
DatasetPurpose:
type: string
enum:
- post-training/messages
- eval/question-answer
- eval/messages-answer
title: DatasetPurpose
description: Purpose of the dataset. Each purpose has a required input data schema.
EfficiencyConfig:
properties:
enable_activation_checkpointing:
anyOf:
- type: boolean
- type: 'null'
title: Enable Activation Checkpointing
default: false
enable_activation_offloading:
anyOf:
- type: boolean
- type: 'null'
title: Enable Activation Offloading
default: false
memory_efficient_fsdp_wrap:
anyOf:
- type: boolean
- type: 'null'
title: Memory Efficient Fsdp Wrap
default: false
fsdp_cpu_offload:
anyOf:
- type: boolean
- type: 'null'
title: Fsdp Cpu Offload
default: false
type: object
title: EfficiencyConfig
description: Configuration for memory and compute efficiency optimizations.
Errors:
properties:
data:
anyOf:
- items:
$ref: '#/components/schemas/BatchError'
type: array
- type: 'null'
title: Data
object:
anyOf:
- type: string
- type: 'null'
title: Object
additionalProperties: true
type: object
title: Errors
EvaluateResponse:
properties:
generations:
items:
additionalProperties: true
type: object
type: array
title: Generations
scores:
additionalProperties:
$ref: '#/components/schemas/ScoringResult'
type: object
title: Scores
type: object
required:
- generations
- scores
title: EvaluateResponse
description: The response from an evaluation.
ExpiresAfter:
properties:
anchor:
type: string
const: created_at
title: Anchor
seconds:
type: integer
maximum: 2592000.0
minimum: 3600.0
title: Seconds
type: object
required:
- anchor
- seconds
title: ExpiresAfter
description: |-
Control expiration of uploaded files.
Params:
- anchor, must be "created_at"
- seconds, must be int between 3600 and 2592000 (1 hour to 30 days)
GreedySamplingStrategy:
properties:
type:
type: string
const: greedy
title: Type
default: greedy
type: object
title: GreedySamplingStrategy
description: Greedy sampling strategy that selects the highest probability token at each step.
HealthInfo:
properties:
status:
$ref: '#/components/schemas/HealthStatus'
type: object
required:
- status
title: HealthInfo
description: Health status information for the service.
HealthStatus:
type: string
enum:
- OK
- Error
- Not Implemented
title: HealthStatus
ImageContentItem-Input:
properties:
type:
type: string
const: image
title: Type
default: image
image:
$ref: '#/components/schemas/_URLOrData'
type: object
required:
- image
title: ImageContentItem
description: A image content item
ImageContentItem-Output:
properties:
type:
type: string
const: image
title: Type
default: image
image:
$ref: '#/components/schemas/_URLOrData'
type: object
required:
- image
title: ImageContentItem
description: A image content item
InputTokensDetails:
properties:
cached_tokens:
type: integer
title: Cached Tokens
additionalProperties: true
type: object
required:
- cached_tokens
title: InputTokensDetails
Job:
properties:
job_id:
type: string
title: Job Id
status:
$ref: '#/components/schemas/JobStatus'
type: object
required:
- job_id
- status
title: Job
description: A job execution instance with status tracking.
JobStatus:
type: string
enum:
- completed
- in_progress
- failed
- scheduled
- cancelled
title: JobStatus
description: Status of a job execution.
JsonType:
properties:
type:
type: string
const: json
title: Type
default: json
type: object
title: JsonType
description: Parameter type for JSON values.
LLMAsJudgeScoringFnParams:
properties:
type:
type: string
const: llm_as_judge
title: Type
default: llm_as_judge
judge_model:
type: string
title: Judge Model
prompt_template:
anyOf:
- type: string
- type: 'null'
title: Prompt Template
judge_score_regexes:
items:
type: string
type: array
title: Judge Score Regexes
description: Regexes to extract the answer from generated response
aggregation_functions:
items:
$ref: '#/components/schemas/AggregationFunctionType'
type: array
title: Aggregation Functions
description: Aggregation functions to apply to the scores of each row
type: object
required:
- judge_model
title: LLMAsJudgeScoringFnParams
description: Parameters for LLM-as-judge scoring function configuration.
ListBenchmarksResponse:
properties:
data:
items:
$ref: '#/components/schemas/Benchmark'
type: array
title: Data
type: object
required:
- data
title: ListBenchmarksResponse
ListDatasetsResponse:
properties:
data:
items:
$ref: '#/components/schemas/Dataset'
type: array
title: Data
type: object
required:
- data
title: ListDatasetsResponse
description: Response from listing datasets.
ListPostTrainingJobsResponse:
properties:
data:
items:
$ref: '#/components/schemas/PostTrainingJob'
type: array
title: Data
type: object
required:
- data
title: ListPostTrainingJobsResponse
LoraFinetuningConfig:
properties:
type:
type: string
const: LoRA
title: Type
default: LoRA
lora_attn_modules:
items:
type: string
type: array
title: Lora Attn Modules
apply_lora_to_mlp:
type: boolean
title: Apply Lora To Mlp
apply_lora_to_output:
type: boolean
title: Apply Lora To Output
rank:
type: integer
title: Rank
alpha:
type: integer
title: Alpha
use_dora:
anyOf:
- type: boolean
- type: 'null'
title: Use Dora
default: false
quantize_base:
anyOf:
- type: boolean
- type: 'null'
title: Quantize Base
default: false
type: object
required:
- lora_attn_modules
- apply_lora_to_mlp
- apply_lora_to_output
- rank
- alpha
title: LoraFinetuningConfig
description: Configuration for Low-Rank Adaptation (LoRA) fine-tuning.
MCPListToolsTool:
properties:
input_schema:
additionalProperties: true
type: object
title: Input Schema
name:
type: string
title: Name
description:
anyOf:
- type: string
- type: 'null'
title: Description
type: object
required:
- input_schema
- name
title: MCPListToolsTool
description: Tool definition returned by MCP list tools operation.
Model:
properties:
identifier:
type: string
title: Identifier
description: Unique identifier for this resource in llama stack
provider_resource_id:
anyOf:
- type: string
- type: 'null'
title: Provider Resource Id
description: Unique identifier for this resource in the provider
provider_id:
type: string
title: Provider Id
description: ID of the provider that owns this resource
type:
type: string
const: model
title: Type
default: model
metadata:
additionalProperties: true
type: object
title: Metadata
description: Any additional metadata for this model
model_type:
$ref: '#/components/schemas/ModelType'
default: llm
type: object
required:
- identifier
- provider_id
title: Model
description: A model resource representing an AI model registered in Llama Stack.
ModelCandidate:
properties:
type:
type: string
const: model
title: Type
default: model
model:
type: string
title: Model
sampling_params:
$ref: '#/components/schemas/SamplingParams'
system_message:
anyOf:
- $ref: '#/components/schemas/SystemMessage'
- type: 'null'
type: object
required:
- model
- sampling_params
title: ModelCandidate
description: A model candidate for evaluation.
ModelType:
type: string
enum:
- llm
- embedding
- rerank
title: ModelType
description: Enumeration of supported model types in Llama Stack.
ModerationObject:
properties:
id:
type: string
title: Id
model:
type: string
title: Model
results:
items:
$ref: '#/components/schemas/ModerationObjectResults'
type: array
title: Results
type: object
required:
- id
- model
- results
title: ModerationObject
description: A moderation object.
ModerationObjectResults:
properties:
flagged:
type: boolean
title: Flagged
categories:
anyOf:
- additionalProperties:
type: boolean
type: object
- type: 'null'
title: Categories
category_applied_input_types:
anyOf:
- additionalProperties:
items:
type: string
type: array
type: object
- type: 'null'
title: Category Applied Input Types
category_scores:
anyOf:
- additionalProperties:
type: number
type: object
- type: 'null'
title: Category Scores
user_message:
anyOf:
- type: string
- type: 'null'
title: User Message
metadata:
additionalProperties: true
type: object
title: Metadata
type: object
required:
- flagged
title: ModerationObjectResults
description: A moderation object.
NumberType:
properties:
type:
type: string
const: number
title: Type
default: number
type: object
title: NumberType
description: Parameter type for numeric values.
ObjectType:
properties:
type:
type: string
const: object
title: Type
default: object
type: object
title: ObjectType
description: Parameter type for object values.
OpenAIAssistantMessageParam-Input:
properties:
role:
type: string
const: assistant
title: Role
default: assistant
content:
anyOf:
- type: string
- items:
$ref: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
type: array
- type: 'null'
title: Content
name:
anyOf:
- type: string
- type: 'null'
title: Name
tool_calls:
anyOf:
- items:
$ref: '#/components/schemas/OpenAIChatCompletionToolCall'
type: array
- type: 'null'
title: Tool Calls
type: object
title: OpenAIAssistantMessageParam
description: A message containing the model's (assistant) response in an OpenAI-compatible chat completion request.
OpenAIAssistantMessageParam-Output:
properties:
role:
type: string
const: assistant
title: Role
default: assistant
content:
anyOf:
- type: string
- items:
$ref: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
type: array
- type: 'null'
title: Content
name:
anyOf:
- type: string
- type: 'null'
title: Name
tool_calls:
anyOf:
- items:
$ref: '#/components/schemas/OpenAIChatCompletionToolCall'
type: array
- type: 'null'
title: Tool Calls
type: object
title: OpenAIAssistantMessageParam
description: A message containing the model's (assistant) response in an OpenAI-compatible chat completion request.
OpenAIChatCompletion:
properties:
id:
type: string
title: Id
choices:
items:
$ref: '#/components/schemas/OpenAIChoice-Output'
type: array
title: Choices
object:
type: string
const: chat.completion
title: Object
default: chat.completion
created:
type: integer
title: Created
model:
type: string
title: Model
usage:
anyOf:
- $ref: '#/components/schemas/OpenAIChatCompletionUsage'
- type: 'null'
type: object
required:
- id
- choices
- created
- model
title: OpenAIChatCompletion
description: Response from an OpenAI-compatible chat completion request.
OpenAIChatCompletionContentPartImageParam:
properties:
type:
type: string
const: image_url
title: Type
default: image_url
image_url:
$ref: '#/components/schemas/OpenAIImageURL'
type: object
required:
- image_url
title: OpenAIChatCompletionContentPartImageParam
description: Image content part for OpenAI-compatible chat completion messages.
OpenAIChatCompletionContentPartTextParam:
properties:
type:
type: string
const: text
title: Type
default: text
text:
type: string
title: Text
type: object
required:
- text
title: OpenAIChatCompletionContentPartTextParam
description: Text content part for OpenAI-compatible chat completion messages.
OpenAIChatCompletionRequestWithExtraBody:
properties:
model:
type: string
title: Model
messages:
items:
oneOf:
- $ref: '#/components/schemas/OpenAIUserMessageParam-Input'
- $ref: '#/components/schemas/OpenAISystemMessageParam'
- $ref: '#/components/schemas/OpenAIAssistantMessageParam-Input'
- $ref: '#/components/schemas/OpenAIToolMessageParam'
- $ref: '#/components/schemas/OpenAIDeveloperMessageParam'
discriminator:
propertyName: role
mapping:
assistant: '#/components/schemas/OpenAIAssistantMessageParam-Input'
developer: '#/components/schemas/OpenAIDeveloperMessageParam'
system: '#/components/schemas/OpenAISystemMessageParam'
tool: '#/components/schemas/OpenAIToolMessageParam'
user: '#/components/schemas/OpenAIUserMessageParam-Input'
type: array
minItems: 1
title: Messages
frequency_penalty:
anyOf:
- type: number
- type: 'null'
title: Frequency Penalty
function_call:
anyOf:
- type: string
- additionalProperties: true
type: object
- type: 'null'
title: Function Call
functions:
anyOf:
- items:
additionalProperties: true
type: object
type: array
- type: 'null'
title: Functions
logit_bias:
anyOf:
- additionalProperties:
type: number
type: object
- type: 'null'
title: Logit Bias
logprobs:
anyOf:
- type: boolean
- type: 'null'
title: Logprobs
max_completion_tokens:
anyOf:
- type: integer
- type: 'null'
title: Max Completion Tokens
max_tokens:
anyOf:
- type: integer
- type: 'null'
title: Max Tokens
n:
anyOf:
- type: integer
- type: 'null'
title: N
parallel_tool_calls:
anyOf:
- type: boolean
- type: 'null'
title: Parallel Tool Calls
presence_penalty:
anyOf:
- type: number
- type: 'null'
title: Presence Penalty
response_format:
anyOf:
- oneOf:
- $ref: '#/components/schemas/OpenAIResponseFormatText'
- $ref: '#/components/schemas/OpenAIResponseFormatJSONSchema'
- $ref: '#/components/schemas/OpenAIResponseFormatJSONObject'
discriminator:
propertyName: type
mapping:
json_object: '#/components/schemas/OpenAIResponseFormatJSONObject'
json_schema: '#/components/schemas/OpenAIResponseFormatJSONSchema'
text: '#/components/schemas/OpenAIResponseFormatText'
- type: 'null'
title: Response Format
seed:
anyOf:
- type: integer
- type: 'null'
title: Seed
stop:
anyOf:
- type: string
- items:
type: string
type: array
- type: 'null'
title: Stop
stream:
anyOf:
- type: boolean
- type: 'null'
title: Stream
stream_options:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Stream Options
temperature:
anyOf:
- type: number
- type: 'null'
title: Temperature
tool_choice:
anyOf:
- type: string
- additionalProperties: true
type: object
- type: 'null'
title: Tool Choice
tools:
anyOf:
- items:
additionalProperties: true
type: object
type: array
- type: 'null'
title: Tools
top_logprobs:
anyOf:
- type: integer
- type: 'null'
title: Top Logprobs
top_p:
anyOf:
- type: number
- type: 'null'
title: Top P
user:
anyOf:
- type: string
- type: 'null'
title: User
additionalProperties: true
type: object
required:
- model
- messages
title: OpenAIChatCompletionRequestWithExtraBody
description: Request parameters for OpenAI-compatible chat completion endpoint.
OpenAIChatCompletionToolCall:
properties:
index:
anyOf:
- type: integer
- type: 'null'
title: Index
id:
anyOf:
- type: string
- type: 'null'
title: Id
type:
type: string
const: function
title: Type
default: function
function:
anyOf:
- $ref: '#/components/schemas/OpenAIChatCompletionToolCallFunction'
- type: 'null'
type: object
title: OpenAIChatCompletionToolCall
description: Tool call specification for OpenAI-compatible chat completion responses.
OpenAIChatCompletionToolCallFunction:
properties:
name:
anyOf:
- type: string
- type: 'null'
title: Name
arguments:
anyOf:
- type: string
- type: 'null'
title: Arguments
type: object
title: OpenAIChatCompletionToolCallFunction
description: Function call details for OpenAI-compatible tool calls.
OpenAIChatCompletionUsage:
properties:
prompt_tokens:
type: integer
title: Prompt Tokens
completion_tokens:
type: integer
title: Completion Tokens
total_tokens:
type: integer
title: Total Tokens
prompt_tokens_details:
anyOf:
- $ref: '#/components/schemas/OpenAIChatCompletionUsagePromptTokensDetails'
- type: 'null'
completion_tokens_details:
anyOf:
- $ref: '#/components/schemas/OpenAIChatCompletionUsageCompletionTokensDetails'
- type: 'null'
type: object
required:
- prompt_tokens
- completion_tokens
- total_tokens
title: OpenAIChatCompletionUsage
description: Usage information for OpenAI chat completion.
OpenAIChatCompletionUsageCompletionTokensDetails:
properties:
reasoning_tokens:
anyOf:
- type: integer
- type: 'null'
title: Reasoning Tokens
type: object
title: OpenAIChatCompletionUsageCompletionTokensDetails
description: Token details for output tokens in OpenAI chat completion usage.
OpenAIChatCompletionUsagePromptTokensDetails:
properties:
cached_tokens:
anyOf:
- type: integer
- type: 'null'
title: Cached Tokens
type: object
title: OpenAIChatCompletionUsagePromptTokensDetails
description: Token details for prompt tokens in OpenAI chat completion usage.
OpenAIChoice-Output:
properties:
message:
oneOf:
- $ref: '#/components/schemas/OpenAIUserMessageParam-Output'
- $ref: '#/components/schemas/OpenAISystemMessageParam'
- $ref: '#/components/schemas/OpenAIAssistantMessageParam-Output'
- $ref: '#/components/schemas/OpenAIToolMessageParam'
- $ref: '#/components/schemas/OpenAIDeveloperMessageParam'
title: Message
discriminator:
propertyName: role
mapping:
assistant: '#/components/schemas/OpenAIAssistantMessageParam-Output'
developer: '#/components/schemas/OpenAIDeveloperMessageParam'
system: '#/components/schemas/OpenAISystemMessageParam'
tool: '#/components/schemas/OpenAIToolMessageParam'
user: '#/components/schemas/OpenAIUserMessageParam-Output'
finish_reason:
type: string
title: Finish Reason
index:
type: integer
title: Index
logprobs:
anyOf:
- $ref: '#/components/schemas/OpenAIChoiceLogprobs-Output'
- type: 'null'
type: object
required:
- message
- finish_reason
- index
title: OpenAIChoice
description: A choice from an OpenAI-compatible chat completion response.
OpenAIChoiceLogprobs-Output:
properties:
content:
anyOf:
- items:
$ref: '#/components/schemas/OpenAITokenLogProb'
type: array
- type: 'null'
title: Content
refusal:
anyOf:
- items:
$ref: '#/components/schemas/OpenAITokenLogProb'
type: array
- type: 'null'
title: Refusal
type: object
title: OpenAIChoiceLogprobs
description: The log probabilities for the tokens in the message from an OpenAI-compatible chat completion response.
OpenAICompletion:
properties:
id:
type: string
title: Id
choices:
items:
$ref: '#/components/schemas/OpenAICompletionChoice-Output'
type: array
title: Choices
created:
type: integer
title: Created
model:
type: string
title: Model
object:
type: string
const: text_completion
title: Object
default: text_completion
type: object
required:
- id
- choices
- created
- model
title: OpenAICompletion
description: |-
Response from an OpenAI-compatible completion request.
:id: The ID of the completion
:choices: List of choices
:created: The Unix timestamp in seconds when the completion was created
:model: The model that was used to generate the completion
:object: The object type, which will be "text_completion"
OpenAICompletionChoice-Output:
properties:
finish_reason:
type: string
title: Finish Reason
text:
type: string
title: Text
index:
type: integer
title: Index
logprobs:
anyOf:
- $ref: '#/components/schemas/OpenAIChoiceLogprobs-Output'
- type: 'null'
type: object
required:
- finish_reason
- text
- index
title: OpenAICompletionChoice
description: |-
A choice from an OpenAI-compatible completion response.
:finish_reason: The reason the model stopped generating
:text: The text of the choice
:index: The index of the choice
:logprobs: (Optional) The log probabilities for the tokens in the choice
OpenAICompletionRequestWithExtraBody:
properties:
model:
type: string
title: Model
prompt:
anyOf:
- type: string
- items:
type: string
type: array
- items:
type: integer
type: array
- items:
items:
type: integer
type: array
type: array
title: Prompt
best_of:
anyOf:
- type: integer
- type: 'null'
title: Best Of
echo:
anyOf:
- type: boolean
- type: 'null'
title: Echo
frequency_penalty:
anyOf:
- type: number
- type: 'null'
title: Frequency Penalty
logit_bias:
anyOf:
- additionalProperties:
type: number
type: object
- type: 'null'
title: Logit Bias
logprobs:
anyOf:
- type: boolean
- type: 'null'
title: Logprobs
max_tokens:
anyOf:
- type: integer
- type: 'null'
title: Max Tokens
n:
anyOf:
- type: integer
- type: 'null'
title: N
presence_penalty:
anyOf:
- type: number
- type: 'null'
title: Presence Penalty
seed:
anyOf:
- type: integer
- type: 'null'
title: Seed
stop:
anyOf:
- type: string
- items:
type: string
type: array
- type: 'null'
title: Stop
stream:
anyOf:
- type: boolean
- type: 'null'
title: Stream
stream_options:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Stream Options
temperature:
anyOf:
- type: number
- type: 'null'
title: Temperature
top_p:
anyOf:
- type: number
- type: 'null'
title: Top P
user:
anyOf:
- type: string
- type: 'null'
title: User
suffix:
anyOf:
- type: string
- type: 'null'
title: Suffix
additionalProperties: true
type: object
required:
- model
- prompt
title: OpenAICompletionRequestWithExtraBody
description: Request parameters for OpenAI-compatible completion endpoint.
OpenAICompletionWithInputMessages:
properties:
id:
type: string
title: Id
choices:
items:
$ref: '#/components/schemas/OpenAIChoice-Output'
type: array
title: Choices
object:
type: string
const: chat.completion
title: Object
default: chat.completion
created:
type: integer
title: Created
model:
type: string
title: Model
usage:
anyOf:
- $ref: '#/components/schemas/OpenAIChatCompletionUsage'
- type: 'null'
input_messages:
items:
oneOf:
- $ref: '#/components/schemas/OpenAIUserMessageParam-Output'
- $ref: '#/components/schemas/OpenAISystemMessageParam'
- $ref: '#/components/schemas/OpenAIAssistantMessageParam-Output'
- $ref: '#/components/schemas/OpenAIToolMessageParam'
- $ref: '#/components/schemas/OpenAIDeveloperMessageParam'
discriminator:
propertyName: role
mapping:
assistant: '#/components/schemas/OpenAIAssistantMessageParam-Output'
developer: '#/components/schemas/OpenAIDeveloperMessageParam'
system: '#/components/schemas/OpenAISystemMessageParam'
tool: '#/components/schemas/OpenAIToolMessageParam'
user: '#/components/schemas/OpenAIUserMessageParam-Output'
type: array
title: Input Messages
type: object
required:
- id
- choices
- created
- model
- input_messages
title: OpenAICompletionWithInputMessages
OpenAICreateVectorStoreFileBatchRequestWithExtraBody:
properties:
file_ids:
items:
type: string
type: array
title: File Ids
attributes:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Attributes
chunking_strategy:
anyOf:
- oneOf:
- $ref: '#/components/schemas/VectorStoreChunkingStrategyAuto'
- $ref: '#/components/schemas/VectorStoreChunkingStrategyStatic'
discriminator:
propertyName: type
mapping:
auto: '#/components/schemas/VectorStoreChunkingStrategyAuto'
static: '#/components/schemas/VectorStoreChunkingStrategyStatic'
- type: 'null'
title: Chunking Strategy
additionalProperties: true
type: object
required:
- file_ids
title: OpenAICreateVectorStoreFileBatchRequestWithExtraBody
description: Request to create a vector store file batch with extra_body support.
OpenAICreateVectorStoreRequestWithExtraBody:
properties:
name:
anyOf:
- type: string
- type: 'null'
title: Name
file_ids:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: File Ids
expires_after:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Expires After
chunking_strategy:
anyOf:
- oneOf:
- $ref: '#/components/schemas/VectorStoreChunkingStrategyAuto'
- $ref: '#/components/schemas/VectorStoreChunkingStrategyStatic'
discriminator:
propertyName: type
mapping:
auto: '#/components/schemas/VectorStoreChunkingStrategyAuto'
static: '#/components/schemas/VectorStoreChunkingStrategyStatic'
- type: 'null'
title: Chunking Strategy
metadata:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Metadata
additionalProperties: true
type: object
title: OpenAICreateVectorStoreRequestWithExtraBody
description: Request to create a vector store with extra_body support.
OpenAIDeleteResponseObject:
properties:
id:
type: string
title: Id
object:
type: string
const: response
title: Object
default: response
deleted:
type: boolean
title: Deleted
default: true
type: object
required:
- id
title: OpenAIDeleteResponseObject
description: Response object confirming deletion of an OpenAI response.
OpenAIDeveloperMessageParam:
properties:
role:
type: string
const: developer
title: Role
default: developer
content:
anyOf:
- type: string
- items:
$ref: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
type: array
title: Content
name:
anyOf:
- type: string
- type: 'null'
title: Name
type: object
required:
- content
title: OpenAIDeveloperMessageParam
description: A message from the developer in an OpenAI-compatible chat completion request.
OpenAIEmbeddingData:
properties:
object:
type: string
const: embedding
title: Object
default: embedding
embedding:
anyOf:
- items:
type: number
type: array
- type: string
title: Embedding
index:
type: integer
title: Index
type: object
required:
- embedding
- index
title: OpenAIEmbeddingData
description: A single embedding data object from an OpenAI-compatible embeddings response.
OpenAIEmbeddingUsage:
properties:
prompt_tokens:
type: integer
title: Prompt Tokens
total_tokens:
type: integer
title: Total Tokens
type: object
required:
- prompt_tokens
- total_tokens
title: OpenAIEmbeddingUsage
description: Usage information for an OpenAI-compatible embeddings response.
OpenAIEmbeddingsRequestWithExtraBody:
properties:
model:
type: string
title: Model
input:
anyOf:
- type: string
- items:
type: string
type: array
title: Input
encoding_format:
anyOf:
- type: string
- type: 'null'
title: Encoding Format
default: float
dimensions:
anyOf:
- type: integer
- type: 'null'
title: Dimensions
user:
anyOf:
- type: string
- type: 'null'
title: User
additionalProperties: true
type: object
required:
- model
- input
title: OpenAIEmbeddingsRequestWithExtraBody
description: Request parameters for OpenAI-compatible embeddings endpoint.
OpenAIEmbeddingsResponse:
properties:
object:
type: string
const: list
title: Object
default: list
data:
items:
$ref: '#/components/schemas/OpenAIEmbeddingData'
type: array
title: Data
model:
type: string
title: Model
usage:
$ref: '#/components/schemas/OpenAIEmbeddingUsage'
type: object
required:
- data
- model
- usage
title: OpenAIEmbeddingsResponse
description: Response from an OpenAI-compatible embeddings request.
OpenAIFile:
properties:
type:
type: string
const: file
title: Type
default: file
file:
$ref: '#/components/schemas/OpenAIFileFile'
type: object
required:
- file
title: OpenAIFile
OpenAIFileDeleteResponse:
properties:
id:
type: string
title: Id
object:
type: string
const: file
title: Object
default: file
deleted:
type: boolean
title: Deleted
type: object
required:
- id
- deleted
title: OpenAIFileDeleteResponse
description: Response for deleting a file in OpenAI Files API.
OpenAIFileFile:
properties:
file_data:
anyOf:
- type: string
- type: 'null'
title: File Data
file_id:
anyOf:
- type: string
- type: 'null'
title: File Id
filename:
anyOf:
- type: string
- type: 'null'
title: Filename
type: object
title: OpenAIFileFile
OpenAIFileObject:
properties:
object:
type: string
const: file
title: Object
default: file
id:
type: string
title: Id
bytes:
type: integer
title: Bytes
created_at:
type: integer
title: Created At
expires_at:
type: integer
title: Expires At
filename:
type: string
title: Filename
purpose:
$ref: '#/components/schemas/OpenAIFilePurpose'
type: object
required:
- id
- bytes
- created_at
- expires_at
- filename
- purpose
title: OpenAIFileObject
description: OpenAI File object as defined in the OpenAI Files API.
OpenAIFilePurpose:
type: string
enum:
- assistants
- batch
title: OpenAIFilePurpose
description: Valid purpose values for OpenAI Files API.
OpenAIImageURL:
properties:
url:
type: string
title: Url
detail:
anyOf:
- type: string
- type: 'null'
title: Detail
type: object
required:
- url
title: OpenAIImageURL
description: Image URL specification for OpenAI-compatible chat completion messages.
OpenAIJSONSchema:
properties:
name:
type: string
title: Name
description:
anyOf:
- type: string
- type: 'null'
title: Description
strict:
anyOf:
- type: boolean
- type: 'null'
title: Strict
schema:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Schema
type: object
title: OpenAIJSONSchema
description: JSON schema specification for OpenAI-compatible structured response format.
OpenAIModel:
properties:
id:
type: string
title: Id
object:
type: string
const: model
title: Object
default: model
created:
type: integer
title: Created
owned_by:
type: string
title: Owned By
custom_metadata:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Custom Metadata
type: object
required:
- id
- created
- owned_by
title: OpenAIModel
description: |-
A model from OpenAI.
:id: The ID of the model
:object: The object type, which will be "model"
:created: The Unix timestamp in seconds when the model was created
:owned_by: The owner of the model
:custom_metadata: Llama Stack-specific metadata including model_type, provider info, and additional metadata
OpenAIResponseAnnotationCitation:
properties:
type:
type: string
const: url_citation
title: Type
default: url_citation
end_index:
type: integer
title: End Index
start_index:
type: integer
title: Start Index
title:
type: string
title: Title
url:
type: string
title: Url
type: object
required:
- end_index
- start_index
- title
- url
title: OpenAIResponseAnnotationCitation
description: URL citation annotation for referencing external web resources.
OpenAIResponseAnnotationContainerFileCitation:
properties:
type:
type: string
const: container_file_citation
title: Type
default: container_file_citation
container_id:
type: string
title: Container Id
end_index:
type: integer
title: End Index
file_id:
type: string
title: File Id
filename:
type: string
title: Filename
start_index:
type: integer
title: Start Index
type: object
required:
- container_id
- end_index
- file_id
- filename
- start_index
title: OpenAIResponseAnnotationContainerFileCitation
OpenAIResponseAnnotationFileCitation:
properties:
type:
type: string
const: file_citation
title: Type
default: file_citation
file_id:
type: string
title: File Id
filename:
type: string
title: Filename
index:
type: integer
title: Index
type: object
required:
- file_id
- filename
- index
title: OpenAIResponseAnnotationFileCitation
description: File citation annotation for referencing specific files in response content.
OpenAIResponseAnnotationFilePath:
properties:
type:
type: string
const: file_path
title: Type
default: file_path
file_id:
type: string
title: File Id
index:
type: integer
title: Index
type: object
required:
- file_id
- index
title: OpenAIResponseAnnotationFilePath
OpenAIResponseContentPartRefusal:
properties:
type:
type: string
const: refusal
title: Type
default: refusal
refusal:
type: string
title: Refusal
type: object
required:
- refusal
title: OpenAIResponseContentPartRefusal
description: Refusal content within a streamed response part.
OpenAIResponseError:
properties:
code:
type: string
title: Code
message:
type: string
title: Message
type: object
required:
- code
- message
title: OpenAIResponseError
description: Error details for failed OpenAI response requests.
OpenAIResponseFormatJSONObject:
properties:
type:
type: string
const: json_object
title: Type
default: json_object
type: object
title: OpenAIResponseFormatJSONObject
description: JSON object response format for OpenAI-compatible chat completion requests.
OpenAIResponseFormatJSONSchema:
properties:
type:
type: string
const: json_schema
title: Type
default: json_schema
json_schema:
$ref: '#/components/schemas/OpenAIJSONSchema'
type: object
required:
- json_schema
title: OpenAIResponseFormatJSONSchema
description: JSON schema response format for OpenAI-compatible chat completion requests.
OpenAIResponseFormatText:
properties:
type:
type: string
const: text
title: Type
default: text
type: object
title: OpenAIResponseFormatText
description: Text response format for OpenAI-compatible chat completion requests.
OpenAIResponseInputFunctionToolCallOutput:
properties:
call_id:
type: string
title: Call Id
output:
type: string
title: Output
type:
type: string
const: function_call_output
title: Type
default: function_call_output
id:
anyOf:
- type: string
- type: 'null'
title: Id
status:
anyOf:
- type: string
- type: 'null'
title: Status
type: object
required:
- call_id
- output
title: OpenAIResponseInputFunctionToolCallOutput
description: This represents the output of a function call that gets passed back to the model.
OpenAIResponseInputMessageContentFile:
properties:
type:
type: string
const: input_file
title: Type
default: input_file
file_data:
anyOf:
- type: string
- type: 'null'
title: File Data
file_id:
anyOf:
- type: string
- type: 'null'
title: File Id
file_url:
anyOf:
- type: string
- type: 'null'
title: File Url
filename:
anyOf:
- type: string
- type: 'null'
title: Filename
type: object
title: OpenAIResponseInputMessageContentFile
description: File content for input messages in OpenAI response format.
OpenAIResponseInputMessageContentImage:
properties:
detail:
anyOf:
- type: string
const: low
- type: string
const: high
- type: string
const: auto
title: Detail
default: auto
type:
type: string
const: input_image
title: Type
default: input_image
file_id:
anyOf:
- type: string
- type: 'null'
title: File Id
image_url:
anyOf:
- type: string
- type: 'null'
title: Image Url
type: object
title: OpenAIResponseInputMessageContentImage
description: Image content for input messages in OpenAI response format.
OpenAIResponseInputMessageContentText:
properties:
text:
type: string
title: Text
type:
type: string
const: input_text
title: Type
default: input_text
type: object
required:
- text
title: OpenAIResponseInputMessageContentText
description: Text content for input messages in OpenAI response format.
OpenAIResponseInputToolFileSearch:
properties:
type:
type: string
const: file_search
title: Type
default: file_search
vector_store_ids:
items:
type: string
type: array
title: Vector Store Ids
filters:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Filters
max_num_results:
anyOf:
- type: integer
maximum: 50.0
minimum: 1.0
- type: 'null'
title: Max Num Results
default: 10
ranking_options:
anyOf:
- $ref: '#/components/schemas/SearchRankingOptions'
- type: 'null'
type: object
required:
- vector_store_ids
title: OpenAIResponseInputToolFileSearch
description: File search tool configuration for OpenAI response inputs.
OpenAIResponseInputToolFunction:
properties:
type:
type: string
const: function
title: Type
default: function
name:
type: string
title: Name
description:
anyOf:
- type: string
- type: 'null'
title: Description
parameters:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Parameters
strict:
anyOf:
- type: boolean
- type: 'null'
title: Strict
type: object
required:
- name
- parameters
title: OpenAIResponseInputToolFunction
description: Function tool configuration for OpenAI response inputs.
OpenAIResponseInputToolWebSearch:
properties:
type:
anyOf:
- type: string
const: web_search
- type: string
const: web_search_preview
- type: string
const: web_search_preview_2025_03_11
- type: string
const: web_search_2025_08_26
title: Type
default: web_search
search_context_size:
anyOf:
- type: string
pattern: ^low|medium|high$
- type: 'null'
title: Search Context Size
default: medium
type: object
title: OpenAIResponseInputToolWebSearch
description: Web search tool configuration for OpenAI response inputs.
OpenAIResponseMCPApprovalRequest:
properties:
arguments:
type: string
title: Arguments
id:
type: string
title: Id
name:
type: string
title: Name
server_label:
type: string
title: Server Label
type:
type: string
const: mcp_approval_request
title: Type
default: mcp_approval_request
type: object
required:
- arguments
- id
- name
- server_label
title: OpenAIResponseMCPApprovalRequest
description: A request for human approval of a tool invocation.
OpenAIResponseMCPApprovalResponse:
properties:
approval_request_id:
type: string
title: Approval Request Id
approve:
type: boolean
title: Approve
type:
type: string
const: mcp_approval_response
title: Type
default: mcp_approval_response
id:
anyOf:
- type: string
- type: 'null'
title: Id
reason:
anyOf:
- type: string
- type: 'null'
title: Reason
type: object
required:
- approval_request_id
- approve
title: OpenAIResponseMCPApprovalResponse
description: A response to an MCP approval request.
OpenAIResponseMessage-Output:
properties:
content:
anyOf:
- type: string
- items:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseInputMessageContentText'
- $ref: '#/components/schemas/OpenAIResponseInputMessageContentImage'
- $ref: '#/components/schemas/OpenAIResponseInputMessageContentFile'
discriminator:
propertyName: type
mapping:
input_file: '#/components/schemas/OpenAIResponseInputMessageContentFile'
input_image: '#/components/schemas/OpenAIResponseInputMessageContentImage'
input_text: '#/components/schemas/OpenAIResponseInputMessageContentText'
type: array
- items:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseOutputMessageContentOutputText'
- $ref: '#/components/schemas/OpenAIResponseContentPartRefusal'
discriminator:
propertyName: type
mapping:
output_text: '#/components/schemas/OpenAIResponseOutputMessageContentOutputText'
refusal: '#/components/schemas/OpenAIResponseContentPartRefusal'
type: array
title: Content
role:
anyOf:
- type: string
const: system
- type: string
const: developer
- type: string
const: user
- type: string
const: assistant
title: Role
type:
type: string
const: message
title: Type
default: message
id:
anyOf:
- type: string
- type: 'null'
title: Id
status:
anyOf:
- type: string
- type: 'null'
title: Status
type: object
required:
- content
- role
title: OpenAIResponseMessage
description: |-
Corresponds to the various Message types in the Responses API.
They are all under one type because the Responses API gives them all
the same "type" value, and there is no way to tell them apart in certain
scenarios.
OpenAIResponseObject:
properties:
created_at:
type: integer
title: Created At
error:
anyOf:
- $ref: '#/components/schemas/OpenAIResponseError'
- type: 'null'
id:
type: string
title: Id
model:
type: string
title: Model
object:
type: string
const: response
title: Object
default: response
output:
items:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseMessage-Output'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageWebSearchToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageFileSearchToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageFunctionToolCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageMCPCall'
- $ref: '#/components/schemas/OpenAIResponseOutputMessageMCPListTools'
- $ref: '#/components/schemas/OpenAIResponseMCPApprovalRequest'
discriminator:
propertyName: type
mapping:
file_search_call: '#/components/schemas/OpenAIResponseOutputMessageFileSearchToolCall'
function_call: '#/components/schemas/OpenAIResponseOutputMessageFunctionToolCall'
mcp_approval_request: '#/components/schemas/OpenAIResponseMCPApprovalRequest'
mcp_call: '#/components/schemas/OpenAIResponseOutputMessageMCPCall'
mcp_list_tools: '#/components/schemas/OpenAIResponseOutputMessageMCPListTools'
message: '#/components/schemas/OpenAIResponseMessage-Output'
web_search_call: '#/components/schemas/OpenAIResponseOutputMessageWebSearchToolCall'
type: array
title: Output
parallel_tool_calls:
type: boolean
title: Parallel Tool Calls
default: false
previous_response_id:
anyOf:
- type: string
- type: 'null'
title: Previous Response Id
prompt:
anyOf:
- $ref: '#/components/schemas/OpenAIResponsePrompt'
- type: 'null'
status:
type: string
title: Status
temperature:
anyOf:
- type: number
- type: 'null'
title: Temperature
text:
$ref: '#/components/schemas/OpenAIResponseText'
default:
format:
type: text
top_p:
anyOf:
- type: number
- type: 'null'
title: Top P
tools:
anyOf:
- items:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseInputToolWebSearch'
- $ref: '#/components/schemas/OpenAIResponseInputToolFileSearch'
- $ref: '#/components/schemas/OpenAIResponseInputToolFunction'
- $ref: '#/components/schemas/OpenAIResponseToolMCP'
discriminator:
propertyName: type
mapping:
file_search: '#/components/schemas/OpenAIResponseInputToolFileSearch'
function: '#/components/schemas/OpenAIResponseInputToolFunction'
mcp: '#/components/schemas/OpenAIResponseToolMCP'
web_search: '#/components/schemas/OpenAIResponseInputToolWebSearch'
web_search_2025_08_26: '#/components/schemas/OpenAIResponseInputToolWebSearch'
web_search_preview: '#/components/schemas/OpenAIResponseInputToolWebSearch'
web_search_preview_2025_03_11: '#/components/schemas/OpenAIResponseInputToolWebSearch'
type: array
- type: 'null'
title: Tools
truncation:
anyOf:
- type: string
- type: 'null'
title: Truncation
usage:
anyOf:
- $ref: '#/components/schemas/OpenAIResponseUsage'
- type: 'null'
instructions:
anyOf:
- type: string
- type: 'null'
title: Instructions
type: object
required:
- created_at
- id
- model
- output
- status
title: OpenAIResponseObject
description: Complete OpenAI response object containing generation results and metadata.
OpenAIResponseOutputMessageContentOutputText:
properties:
text:
type: string
title: Text
type:
type: string
const: output_text
title: Type
default: output_text
annotations:
items:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseAnnotationFileCitation'
- $ref: '#/components/schemas/OpenAIResponseAnnotationCitation'
- $ref: '#/components/schemas/OpenAIResponseAnnotationContainerFileCitation'
- $ref: '#/components/schemas/OpenAIResponseAnnotationFilePath'
discriminator:
propertyName: type
mapping:
container_file_citation: '#/components/schemas/OpenAIResponseAnnotationContainerFileCitation'
file_citation: '#/components/schemas/OpenAIResponseAnnotationFileCitation'
file_path: '#/components/schemas/OpenAIResponseAnnotationFilePath'
url_citation: '#/components/schemas/OpenAIResponseAnnotationCitation'
type: array
title: Annotations
type: object
required:
- text
title: OpenAIResponseOutputMessageContentOutputText
OpenAIResponseOutputMessageFileSearchToolCall:
properties:
id:
type: string
title: Id
queries:
items:
type: string
type: array
title: Queries
status:
type: string
title: Status
type:
type: string
const: file_search_call
title: Type
default: file_search_call
results:
anyOf:
- items:
$ref: '#/components/schemas/OpenAIResponseOutputMessageFileSearchToolCallResults'
type: array
- type: 'null'
title: Results
type: object
required:
- id
- queries
- status
title: OpenAIResponseOutputMessageFileSearchToolCall
description: File search tool call output message for OpenAI responses.
OpenAIResponseOutputMessageFileSearchToolCallResults:
properties:
attributes:
additionalProperties: true
type: object
title: Attributes
file_id:
type: string
title: File Id
filename:
type: string
title: Filename
score:
type: number
title: Score
text:
type: string
title: Text
type: object
required:
- attributes
- file_id
- filename
- score
- text
title: OpenAIResponseOutputMessageFileSearchToolCallResults
description: Search results returned by the file search operation.
OpenAIResponseOutputMessageFunctionToolCall:
properties:
call_id:
type: string
title: Call Id
name:
type: string
title: Name
arguments:
type: string
title: Arguments
type:
type: string
const: function_call
title: Type
default: function_call
id:
anyOf:
- type: string
- type: 'null'
title: Id
status:
anyOf:
- type: string
- type: 'null'
title: Status
type: object
required:
- call_id
- name
- arguments
title: OpenAIResponseOutputMessageFunctionToolCall
description: Function tool call output message for OpenAI responses.
OpenAIResponseOutputMessageMCPCall:
properties:
id:
type: string
title: Id
type:
type: string
const: mcp_call
title: Type
default: mcp_call
arguments:
type: string
title: Arguments
name:
type: string
title: Name
server_label:
type: string
title: Server Label
error:
anyOf:
- type: string
- type: 'null'
title: Error
output:
anyOf:
- type: string
- type: 'null'
title: Output
type: object
required:
- id
- arguments
- name
- server_label
title: OpenAIResponseOutputMessageMCPCall
description: Model Context Protocol (MCP) call output message for OpenAI responses.
OpenAIResponseOutputMessageMCPListTools:
properties:
id:
type: string
title: Id
type:
type: string
const: mcp_list_tools
title: Type
default: mcp_list_tools
server_label:
type: string
title: Server Label
tools:
items:
$ref: '#/components/schemas/MCPListToolsTool'
type: array
title: Tools
type: object
required:
- id
- server_label
- tools
title: OpenAIResponseOutputMessageMCPListTools
description: MCP list tools output message containing available tools from an MCP server.
OpenAIResponseOutputMessageWebSearchToolCall:
properties:
id:
type: string
title: Id
status:
type: string
title: Status
type:
type: string
const: web_search_call
title: Type
default: web_search_call
type: object
required:
- id
- status
title: OpenAIResponseOutputMessageWebSearchToolCall
description: Web search tool call output message for OpenAI responses.
OpenAIResponsePrompt:
properties:
id:
type: string
title: Id
variables:
anyOf:
- additionalProperties:
oneOf:
- $ref: '#/components/schemas/OpenAIResponseInputMessageContentText'
- $ref: '#/components/schemas/OpenAIResponseInputMessageContentImage'
- $ref: '#/components/schemas/OpenAIResponseInputMessageContentFile'
discriminator:
propertyName: type
mapping:
input_file: '#/components/schemas/OpenAIResponseInputMessageContentFile'
input_image: '#/components/schemas/OpenAIResponseInputMessageContentImage'
input_text: '#/components/schemas/OpenAIResponseInputMessageContentText'
type: object
- type: 'null'
title: Variables
version:
anyOf:
- type: string
- type: 'null'
title: Version
type: object
required:
- id
title: OpenAIResponsePrompt
description: OpenAI compatible Prompt object that is used in OpenAI responses.
OpenAIResponseText:
properties:
format:
anyOf:
- $ref: '#/components/schemas/OpenAIResponseTextFormat'
- type: 'null'
type: object
title: OpenAIResponseText
description: Text response configuration for OpenAI responses.
OpenAIResponseTextFormat:
properties:
type:
anyOf:
- type: string
const: text
- type: string
const: json_schema
- type: string
const: json_object
title: Type
name:
anyOf:
- type: string
- type: 'null'
title: Name
schema:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Schema
description:
anyOf:
- type: string
- type: 'null'
title: Description
strict:
anyOf:
- type: boolean
- type: 'null'
title: Strict
type: object
title: OpenAIResponseTextFormat
description: Configuration for Responses API text format.
OpenAIResponseToolMCP:
properties:
type:
type: string
const: mcp
title: Type
default: mcp
server_label:
type: string
title: Server Label
allowed_tools:
anyOf:
- items:
type: string
type: array
- $ref: '#/components/schemas/AllowedToolsFilter'
- type: 'null'
title: Allowed Tools
type: object
required:
- server_label
title: OpenAIResponseToolMCP
description: Model Context Protocol (MCP) tool configuration for OpenAI response object.
OpenAIResponseUsage:
properties:
input_tokens:
type: integer
title: Input Tokens
output_tokens:
type: integer
title: Output Tokens
total_tokens:
type: integer
title: Total Tokens
input_tokens_details:
anyOf:
- $ref: '#/components/schemas/OpenAIResponseUsageInputTokensDetails'
- type: 'null'
output_tokens_details:
anyOf:
- $ref: '#/components/schemas/OpenAIResponseUsageOutputTokensDetails'
- type: 'null'
type: object
required:
- input_tokens
- output_tokens
- total_tokens
title: OpenAIResponseUsage
description: Usage information for OpenAI response.
OpenAIResponseUsageInputTokensDetails:
properties:
cached_tokens:
anyOf:
- type: integer
- type: 'null'
title: Cached Tokens
type: object
title: OpenAIResponseUsageInputTokensDetails
description: Token details for input tokens in OpenAI response usage.
OpenAIResponseUsageOutputTokensDetails:
properties:
reasoning_tokens:
anyOf:
- type: integer
- type: 'null'
title: Reasoning Tokens
type: object
title: OpenAIResponseUsageOutputTokensDetails
description: Token details for output tokens in OpenAI response usage.
OpenAISystemMessageParam:
properties:
role:
type: string
const: system
title: Role
default: system
content:
anyOf:
- type: string
- items:
$ref: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
type: array
title: Content
name:
anyOf:
- type: string
- type: 'null'
title: Name
type: object
required:
- content
title: OpenAISystemMessageParam
description: A system message providing instructions or context to the model.
OpenAITokenLogProb:
properties:
token:
type: string
title: Token
bytes:
anyOf:
- items:
type: integer
type: array
- type: 'null'
title: Bytes
logprob:
type: number
title: Logprob
top_logprobs:
items:
$ref: '#/components/schemas/OpenAITopLogProb'
type: array
title: Top Logprobs
type: object
required:
- token
- logprob
- top_logprobs
title: OpenAITokenLogProb
description: |-
The log probability for a token from an OpenAI-compatible chat completion response.
:token: The token
:bytes: (Optional) The bytes for the token
:logprob: The log probability of the token
:top_logprobs: The top log probabilities for the token
OpenAIToolMessageParam:
properties:
role:
type: string
const: tool
title: Role
default: tool
tool_call_id:
type: string
title: Tool Call Id
content:
anyOf:
- type: string
- items:
$ref: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
type: array
title: Content
type: object
required:
- tool_call_id
- content
title: OpenAIToolMessageParam
description: A message representing the result of a tool invocation in an OpenAI-compatible chat completion request.
OpenAITopLogProb:
properties:
token:
type: string
title: Token
bytes:
anyOf:
- items:
type: integer
type: array
- type: 'null'
title: Bytes
logprob:
type: number
title: Logprob
type: object
required:
- token
- logprob
title: OpenAITopLogProb
description: |-
The top log probability for a token from an OpenAI-compatible chat completion response.
:token: The token
:bytes: (Optional) The bytes for the token
:logprob: The log probability of the token
OpenAIUserMessageParam-Input:
properties:
role:
type: string
const: user
title: Role
default: user
content:
anyOf:
- type: string
- items:
oneOf:
- $ref: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
- $ref: '#/components/schemas/OpenAIChatCompletionContentPartImageParam'
- $ref: '#/components/schemas/OpenAIFile'
discriminator:
propertyName: type
mapping:
file: '#/components/schemas/OpenAIFile'
image_url: '#/components/schemas/OpenAIChatCompletionContentPartImageParam'
text: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
type: array
title: Content
name:
anyOf:
- type: string
- type: 'null'
title: Name
type: object
required:
- content
title: OpenAIUserMessageParam
description: A message from the user in an OpenAI-compatible chat completion request.
OpenAIUserMessageParam-Output:
properties:
role:
type: string
const: user
title: Role
default: user
content:
anyOf:
- type: string
- items:
oneOf:
- $ref: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
- $ref: '#/components/schemas/OpenAIChatCompletionContentPartImageParam'
- $ref: '#/components/schemas/OpenAIFile'
discriminator:
propertyName: type
mapping:
file: '#/components/schemas/OpenAIFile'
image_url: '#/components/schemas/OpenAIChatCompletionContentPartImageParam'
text: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
type: array
title: Content
name:
anyOf:
- type: string
- type: 'null'
title: Name
type: object
required:
- content
title: OpenAIUserMessageParam
description: A message from the user in an OpenAI-compatible chat completion request.
OptimizerConfig:
properties:
optimizer_type:
$ref: '#/components/schemas/OptimizerType'
lr:
type: number
title: Lr
weight_decay:
type: number
title: Weight Decay
num_warmup_steps:
type: integer
title: Num Warmup Steps
type: object
required:
- optimizer_type
- lr
- weight_decay
- num_warmup_steps
title: OptimizerConfig
description: Configuration parameters for the optimization algorithm.
OptimizerType:
type: string
enum:
- adam
- adamw
- sgd
title: OptimizerType
description: Available optimizer algorithms for training.
OutputTokensDetails:
properties:
reasoning_tokens:
type: integer
title: Reasoning Tokens
additionalProperties: true
type: object
required:
- reasoning_tokens
title: OutputTokensDetails
PostTrainingJob:
properties:
job_uuid:
type: string
title: Job Uuid
type: object
required:
- job_uuid
title: PostTrainingJob
Prompt:
properties:
prompt:
anyOf:
- type: string
- type: 'null'
title: Prompt
description: The system prompt with variable placeholders
version:
type: integer
minimum: 1.0
title: Version
description: Version (integer starting at 1, incremented on save)
prompt_id:
type: string
title: Prompt Id
description: Unique identifier in format 'pmpt_<48-digit-hash>'
variables:
items:
type: string
type: array
title: Variables
description: List of variable names that can be used in the prompt template
is_default:
type: boolean
title: Is Default
description: Boolean indicating whether this version is the default version
default: false
type: object
required:
- version
- prompt_id
title: Prompt
description: A prompt resource representing a stored OpenAI Compatible prompt template in Llama Stack.
ProviderInfo:
properties:
api:
type: string
title: Api
provider_id:
type: string
title: Provider Id
provider_type:
type: string
title: Provider Type
config:
additionalProperties: true
type: object
title: Config
health:
additionalProperties: true
type: object
title: Health
type: object
required:
- api
- provider_id
- provider_type
- config
- health
title: ProviderInfo
description: Information about a registered provider including its configuration and health status.
QATFinetuningConfig:
properties:
type:
type: string
const: QAT
title: Type
default: QAT
quantizer_name:
type: string
title: Quantizer Name
group_size:
type: integer
title: Group Size
type: object
required:
- quantizer_name
- group_size
title: QATFinetuningConfig
description: Configuration for Quantization-Aware Training (QAT) fine-tuning.
QueryChunksResponse:
properties:
chunks:
items:
$ref: '#/components/schemas/Chunk-Output'
type: array
title: Chunks
scores:
items:
type: number
type: array
title: Scores
type: object
required:
- chunks
- scores
title: QueryChunksResponse
description: Response from querying chunks in a vector database.
RegexParserScoringFnParams:
properties:
type:
type: string
const: regex_parser
title: Type
default: regex_parser
parsing_regexes:
items:
type: string
type: array
title: Parsing Regexes
description: Regex to extract the answer from generated response
aggregation_functions:
items:
$ref: '#/components/schemas/AggregationFunctionType'
type: array
title: Aggregation Functions
description: Aggregation functions to apply to the scores of each row
type: object
title: RegexParserScoringFnParams
description: Parameters for regex parser scoring function configuration.
RerankData:
properties:
index:
type: integer
title: Index
relevance_score:
type: number
title: Relevance Score
type: object
required:
- index
- relevance_score
title: RerankData
description: A single rerank result from a reranking response.
RerankResponse:
properties:
data:
items:
$ref: '#/components/schemas/RerankData'
type: array
title: Data
type: object
required:
- data
title: RerankResponse
description: Response from a reranking request.
RowsDataSource:
properties:
type:
type: string
const: rows
title: Type
default: rows
rows:
items:
additionalProperties: true
type: object
type: array
title: Rows
type: object
required:
- rows
title: RowsDataSource
description: A dataset stored in rows.
RunShieldResponse:
properties:
violation:
anyOf:
- $ref: '#/components/schemas/SafetyViolation'
- type: 'null'
type: object
title: RunShieldResponse
description: Response from running a safety shield.
SafetyViolation:
properties:
violation_level:
$ref: '#/components/schemas/ViolationLevel'
user_message:
anyOf:
- type: string
- type: 'null'
title: User Message
metadata:
additionalProperties: true
type: object
title: Metadata
type: object
required:
- violation_level
title: SafetyViolation
description: Details of a safety violation detected by content moderation.
SamplingParams:
properties:
strategy:
oneOf:
- $ref: '#/components/schemas/GreedySamplingStrategy'
- $ref: '#/components/schemas/TopPSamplingStrategy'
- $ref: '#/components/schemas/TopKSamplingStrategy'
title: Strategy
discriminator:
propertyName: type
mapping:
greedy: '#/components/schemas/GreedySamplingStrategy'
top_k: '#/components/schemas/TopKSamplingStrategy'
top_p: '#/components/schemas/TopPSamplingStrategy'
max_tokens:
anyOf:
- type: integer
- type: 'null'
title: Max Tokens
repetition_penalty:
anyOf:
- type: number
- type: 'null'
title: Repetition Penalty
default: 1.0
stop:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Stop
type: object
title: SamplingParams
description: Sampling parameters.
ScoreBatchResponse:
properties:
dataset_id:
anyOf:
- type: string
- type: 'null'
title: Dataset Id
results:
additionalProperties:
$ref: '#/components/schemas/ScoringResult'
type: object
title: Results
type: object
required:
- results
title: ScoreBatchResponse
description: Response from batch scoring operations on datasets.
ScoreResponse:
properties:
results:
additionalProperties:
$ref: '#/components/schemas/ScoringResult'
type: object
title: Results
type: object
required:
- results
title: ScoreResponse
description: The response from scoring.
ScoringFn:
properties:
identifier:
type: string
title: Identifier
description: Unique identifier for this resource in llama stack
provider_resource_id:
anyOf:
- type: string
- type: 'null'
title: Provider Resource Id
description: Unique identifier for this resource in the provider
provider_id:
type: string
title: Provider Id
description: ID of the provider that owns this resource
type:
type: string
const: scoring_function
title: Type
default: scoring_function
description:
anyOf:
- type: string
- type: 'null'
title: Description
metadata:
additionalProperties: true
type: object
title: Metadata
description: Any additional metadata for this definition
return_type:
oneOf:
- $ref: '#/components/schemas/StringType'
- $ref: '#/components/schemas/NumberType'
- $ref: '#/components/schemas/BooleanType'
- $ref: '#/components/schemas/ArrayType'
- $ref: '#/components/schemas/ObjectType'
- $ref: '#/components/schemas/JsonType'
- $ref: '#/components/schemas/UnionType'
- $ref: '#/components/schemas/ChatCompletionInputType'
- $ref: '#/components/schemas/CompletionInputType'
title: Return Type
description: The return type of the deterministic function
discriminator:
propertyName: type
mapping:
array: '#/components/schemas/ArrayType'
boolean: '#/components/schemas/BooleanType'
chat_completion_input: '#/components/schemas/ChatCompletionInputType'
completion_input: '#/components/schemas/CompletionInputType'
json: '#/components/schemas/JsonType'
number: '#/components/schemas/NumberType'
object: '#/components/schemas/ObjectType'
string: '#/components/schemas/StringType'
union: '#/components/schemas/UnionType'
params:
anyOf:
- oneOf:
- $ref: '#/components/schemas/LLMAsJudgeScoringFnParams'
- $ref: '#/components/schemas/RegexParserScoringFnParams'
- $ref: '#/components/schemas/BasicScoringFnParams'
discriminator:
propertyName: type
mapping:
basic: '#/components/schemas/BasicScoringFnParams'
llm_as_judge: '#/components/schemas/LLMAsJudgeScoringFnParams'
regex_parser: '#/components/schemas/RegexParserScoringFnParams'
- type: 'null'
title: Params
description: The parameters for the scoring function for benchmark eval, these can be overridden for app eval
type: object
required:
- identifier
- provider_id
- return_type
title: ScoringFn
description: A scoring function resource for evaluating model outputs.
ScoringResult:
properties:
score_rows:
items:
additionalProperties: true
type: object
type: array
title: Score Rows
aggregated_results:
additionalProperties: true
type: object
title: Aggregated Results
type: object
required:
- score_rows
- aggregated_results
title: ScoringResult
description: A scoring result for a single row.
SearchRankingOptions:
properties:
ranker:
anyOf:
- type: string
- type: 'null'
title: Ranker
score_threshold:
anyOf:
- type: number
- type: 'null'
title: Score Threshold
default: 0.0
type: object
title: SearchRankingOptions
description: Options for ranking and filtering search results.
Shield:
properties:
identifier:
type: string
title: Identifier
description: Unique identifier for this resource in llama stack
provider_resource_id:
anyOf:
- type: string
- type: 'null'
title: Provider Resource Id
description: Unique identifier for this resource in the provider
provider_id:
type: string
title: Provider Id
description: ID of the provider that owns this resource
type:
type: string
const: shield
title: Type
default: shield
params:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Params
type: object
required:
- identifier
- provider_id
title: Shield
description: A safety shield resource that can be used to check content.
StringType:
properties:
type:
type: string
const: string
title: Type
default: string
type: object
title: StringType
description: Parameter type for string values.
SystemMessage:
properties:
role:
type: string
const: system
title: Role
default: system
content:
anyOf:
- type: string
- oneOf:
- $ref: '#/components/schemas/ImageContentItem-Input'
- $ref: '#/components/schemas/TextContentItem'
discriminator:
propertyName: type
mapping:
image: '#/components/schemas/ImageContentItem-Input'
text: '#/components/schemas/TextContentItem'
- items:
oneOf:
- $ref: '#/components/schemas/ImageContentItem-Input'
- $ref: '#/components/schemas/TextContentItem'
discriminator:
propertyName: type
mapping:
image: '#/components/schemas/ImageContentItem-Input'
text: '#/components/schemas/TextContentItem'
type: array
title: Content
type: object
required:
- content
title: SystemMessage
description: A system message providing instructions or context to the model.
TextContentItem:
properties:
type:
type: string
const: text
title: Type
default: text
text:
type: string
title: Text
type: object
required:
- text
title: TextContentItem
description: A text content item
ToolDef:
properties:
toolgroup_id:
anyOf:
- type: string
- type: 'null'
title: Toolgroup Id
name:
type: string
title: Name
description:
anyOf:
- type: string
- type: 'null'
title: Description
input_schema:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Input Schema
output_schema:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Output Schema
metadata:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Metadata
type: object
required:
- name
title: ToolDef
description: Tool definition used in runtime contexts.
ToolGroup:
properties:
identifier:
type: string
title: Identifier
description: Unique identifier for this resource in llama stack
provider_resource_id:
anyOf:
- type: string
- type: 'null'
title: Provider Resource Id
description: Unique identifier for this resource in the provider
provider_id:
type: string
title: Provider Id
description: ID of the provider that owns this resource
type:
type: string
const: tool_group
title: Type
default: tool_group
mcp_endpoint:
anyOf:
- $ref: '#/components/schemas/URL'
- type: 'null'
args:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Args
type: object
required:
- identifier
- provider_id
title: ToolGroup
description: A group of related tools managed together.
ToolInvocationResult:
properties:
content:
anyOf:
- type: string
- oneOf:
- $ref: '#/components/schemas/ImageContentItem-Output'
- $ref: '#/components/schemas/TextContentItem'
discriminator:
propertyName: type
mapping:
image: '#/components/schemas/ImageContentItem-Output'
text: '#/components/schemas/TextContentItem'
- items:
oneOf:
- $ref: '#/components/schemas/ImageContentItem-Output'
- $ref: '#/components/schemas/TextContentItem'
discriminator:
propertyName: type
mapping:
image: '#/components/schemas/ImageContentItem-Output'
text: '#/components/schemas/TextContentItem'
type: array
- type: 'null'
title: Content
error_message:
anyOf:
- type: string
- type: 'null'
title: Error Message
error_code:
anyOf:
- type: integer
- type: 'null'
title: Error Code
metadata:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Metadata
type: object
title: ToolInvocationResult
description: Result of a tool invocation.
TopKSamplingStrategy:
properties:
type:
type: string
const: top_k
title: Type
default: top_k
top_k:
type: integer
minimum: 1.0
title: Top K
type: object
required:
- top_k
title: TopKSamplingStrategy
description: Top-k sampling strategy that restricts sampling to the k most likely tokens.
TopPSamplingStrategy:
properties:
type:
type: string
const: top_p
title: Type
default: top_p
temperature:
anyOf:
- type: number
minimum: 0.0
- type: 'null'
title: Temperature
top_p:
anyOf:
- type: number
- type: 'null'
title: Top P
default: 0.95
type: object
required:
- temperature
title: TopPSamplingStrategy
description: Top-p (nucleus) sampling strategy that samples from the smallest set of tokens with cumulative probability >= p.
TrainingConfig:
properties:
n_epochs:
type: integer
title: N Epochs
max_steps_per_epoch:
type: integer
title: Max Steps Per Epoch
default: 1
gradient_accumulation_steps:
type: integer
title: Gradient Accumulation Steps
default: 1
max_validation_steps:
anyOf:
- type: integer
- type: 'null'
title: Max Validation Steps
default: 1
data_config:
anyOf:
- $ref: '#/components/schemas/DataConfig'
- type: 'null'
optimizer_config:
anyOf:
- $ref: '#/components/schemas/OptimizerConfig'
- type: 'null'
efficiency_config:
anyOf:
- $ref: '#/components/schemas/EfficiencyConfig'
- type: 'null'
dtype:
anyOf:
- type: string
- type: 'null'
title: Dtype
default: bf16
type: object
required:
- n_epochs
title: TrainingConfig
description: Comprehensive configuration for the training process.
URIDataSource:
properties:
type:
type: string
const: uri
title: Type
default: uri
uri:
type: string
title: Uri
type: object
required:
- uri
title: URIDataSource
description: A dataset that can be obtained from a URI.
URL:
properties:
uri:
type: string
title: Uri
type: object
required:
- uri
title: URL
description: A URL reference to external content.
UnionType:
properties:
type:
type: string
const: union
title: Type
default: union
type: object
title: UnionType
description: Parameter type for union values.
VectorStoreChunkingStrategyAuto:
properties:
type:
type: string
const: auto
title: Type
default: auto
type: object
title: VectorStoreChunkingStrategyAuto
description: Automatic chunking strategy for vector store files.
VectorStoreChunkingStrategyStatic:
properties:
type:
type: string
const: static
title: Type
default: static
static:
$ref: '#/components/schemas/VectorStoreChunkingStrategyStaticConfig'
type: object
required:
- static
title: VectorStoreChunkingStrategyStatic
description: Static chunking strategy with configurable parameters.
VectorStoreChunkingStrategyStaticConfig:
properties:
chunk_overlap_tokens:
type: integer
title: Chunk Overlap Tokens
default: 400
max_chunk_size_tokens:
type: integer
maximum: 4096.0
minimum: 100.0
title: Max Chunk Size Tokens
default: 800
type: object
title: VectorStoreChunkingStrategyStaticConfig
description: Configuration for static chunking strategy.
VectorStoreContent:
properties:
type:
type: string
const: text
title: Type
text:
type: string
title: Text
type: object
required:
- type
- text
title: VectorStoreContent
description: Content item from a vector store file or search result.
VectorStoreDeleteResponse:
properties:
id:
type: string
title: Id
object:
type: string
title: Object
default: vector_store.deleted
deleted:
type: boolean
title: Deleted
default: true
type: object
required:
- id
title: VectorStoreDeleteResponse
description: Response from deleting a vector store.
VectorStoreFileBatchObject:
properties:
id:
type: string
title: Id
object:
type: string
title: Object
default: vector_store.file_batch
created_at:
type: integer
title: Created At
vector_store_id:
type: string
title: Vector Store Id
status:
anyOf:
- type: string
const: completed
- type: string
const: in_progress
- type: string
const: cancelled
- type: string
const: failed
title: Status
file_counts:
$ref: '#/components/schemas/VectorStoreFileCounts'
type: object
required:
- id
- created_at
- vector_store_id
- status
- file_counts
title: VectorStoreFileBatchObject
description: OpenAI Vector Store File Batch object.
VectorStoreFileContentsResponse:
properties:
file_id:
type: string
title: File Id
filename:
type: string
title: Filename
attributes:
additionalProperties: true
type: object
title: Attributes
content:
items:
$ref: '#/components/schemas/VectorStoreContent'
type: array
title: Content
type: object
required:
- file_id
- filename
- attributes
- content
title: VectorStoreFileContentsResponse
description: Response from retrieving the contents of a vector store file.
VectorStoreFileCounts:
properties:
completed:
type: integer
title: Completed
cancelled:
type: integer
title: Cancelled
failed:
type: integer
title: Failed
in_progress:
type: integer
title: In Progress
total:
type: integer
title: Total
type: object
required:
- completed
- cancelled
- failed
- in_progress
- total
title: VectorStoreFileCounts
description: File processing status counts for a vector store.
VectorStoreFileDeleteResponse:
properties:
id:
type: string
title: Id
object:
type: string
title: Object
default: vector_store.file.deleted
deleted:
type: boolean
title: Deleted
default: true
type: object
required:
- id
title: VectorStoreFileDeleteResponse
description: Response from deleting a vector store file.
VectorStoreFileLastError:
properties:
code:
anyOf:
- type: string
const: server_error
- type: string
const: rate_limit_exceeded
title: Code
message:
type: string
title: Message
type: object
required:
- code
- message
title: VectorStoreFileLastError
description: Error information for failed vector store file processing.
VectorStoreFileObject:
properties:
id:
type: string
title: Id
object:
type: string
title: Object
default: vector_store.file
attributes:
additionalProperties: true
type: object
title: Attributes
chunking_strategy:
oneOf:
- $ref: '#/components/schemas/VectorStoreChunkingStrategyAuto'
- $ref: '#/components/schemas/VectorStoreChunkingStrategyStatic'
title: Chunking Strategy
discriminator:
propertyName: type
mapping:
auto: '#/components/schemas/VectorStoreChunkingStrategyAuto'
static: '#/components/schemas/VectorStoreChunkingStrategyStatic'
created_at:
type: integer
title: Created At
last_error:
anyOf:
- $ref: '#/components/schemas/VectorStoreFileLastError'
- type: 'null'
status:
anyOf:
- type: string
const: completed
- type: string
const: in_progress
- type: string
const: cancelled
- type: string
const: failed
title: Status
usage_bytes:
type: integer
title: Usage Bytes
default: 0
vector_store_id:
type: string
title: Vector Store Id
type: object
required:
- id
- chunking_strategy
- created_at
- status
- vector_store_id
title: VectorStoreFileObject
description: OpenAI Vector Store File object.
VectorStoreObject:
properties:
id:
type: string
title: Id
object:
type: string
title: Object
default: vector_store
created_at:
type: integer
title: Created At
name:
anyOf:
- type: string
- type: 'null'
title: Name
usage_bytes:
type: integer
title: Usage Bytes
default: 0
file_counts:
$ref: '#/components/schemas/VectorStoreFileCounts'
status:
type: string
title: Status
default: completed
expires_after:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Expires After
expires_at:
anyOf:
- type: integer
- type: 'null'
title: Expires At
last_active_at:
anyOf:
- type: integer
- type: 'null'
title: Last Active At
metadata:
additionalProperties: true
type: object
title: Metadata
type: object
required:
- id
- created_at
- file_counts
title: VectorStoreObject
description: OpenAI Vector Store object.
VectorStoreSearchResponse:
properties:
file_id:
type: string
title: File Id
filename:
type: string
title: Filename
score:
type: number
title: Score
attributes:
anyOf:
- additionalProperties:
anyOf:
- type: string
- type: number
- type: boolean
type: object
- type: 'null'
title: Attributes
content:
items:
$ref: '#/components/schemas/VectorStoreContent'
type: array
title: Content
type: object
required:
- file_id
- filename
- score
- content
title: VectorStoreSearchResponse
description: Response from searching a vector store.
VectorStoreSearchResponsePage:
properties:
object:
type: string
title: Object
default: vector_store.search_results.page
search_query:
items:
type: string
type: array
title: Search Query
data:
items:
$ref: '#/components/schemas/VectorStoreSearchResponse'
type: array
title: Data
has_more:
type: boolean
title: Has More
default: false
next_page:
anyOf:
- type: string
- type: 'null'
title: Next Page
type: object
required:
- search_query
- data
title: VectorStoreSearchResponsePage
description: Paginated response from searching a vector store.
VersionInfo:
properties:
version:
type: string
title: Version
type: object
required:
- version
title: VersionInfo
description: Version information for the service.
ViolationLevel:
type: string
enum:
- info
- warn
- error
title: ViolationLevel
description: Severity level of a safety violation.
_URLOrData:
properties:
url:
anyOf:
- $ref: '#/components/schemas/URL'
- type: 'null'
data:
anyOf:
- type: string
- type: 'null'
contentEncoding: base64
title: Data
type: object
title: _URLOrData
description: A URL or a base64 encoded string
_datasets_Request:
properties:
purpose:
title: Purpose
source:
title: Source
metadata:
title: Metadata
dataset_id:
title: Dataset Id
type: object
required:
- purpose
- source
title: _datasets_Request
_eval_benchmarks_benchmark_id_evaluations_Request:
properties:
input_rows:
items:
additionalProperties: true
type: object
type: array
title: Input Rows
scoring_functions:
items:
type: string
type: array
title: Scoring Functions
benchmark_config:
$ref: '#/components/schemas/BenchmarkConfig'
type: object
required:
- input_rows
- scoring_functions
- benchmark_config
title: _eval_benchmarks_benchmark_id_evaluations_Request
_inference_rerank_Request:
properties:
model:
type: string
title: Model
query:
anyOf:
- type: string
- $ref: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
- $ref: '#/components/schemas/OpenAIChatCompletionContentPartImageParam'
title: Query
items:
items:
anyOf:
- type: string
- $ref: '#/components/schemas/OpenAIChatCompletionContentPartTextParam'
- $ref: '#/components/schemas/OpenAIChatCompletionContentPartImageParam'
type: array
title: Items
max_num_results:
anyOf:
- type: integer
- type: 'null'
title: Max Num Results
type: object
required:
- model
- query
- items
title: _inference_rerank_Request
_post_training_preference_optimize_Request:
properties:
job_uuid:
type: string
title: Job Uuid
finetuned_model:
type: string
title: Finetuned Model
algorithm_config:
$ref: '#/components/schemas/DPOAlignmentConfig'
training_config:
$ref: '#/components/schemas/TrainingConfig'
hyperparam_search_config:
additionalProperties: true
type: object
title: Hyperparam Search Config
logger_config:
additionalProperties: true
type: object
title: Logger Config
type: object
required:
- job_uuid
- training_config
- hyperparam_search_config
- logger_config
title: SupervisedFineTuneRequest
DataSource:
oneOf:
- $ref: '#/components/schemas/URIDataSource'
- $ref: '#/components/schemas/RowsDataSource'
discriminator:
propertyName: type
mapping:
uri: '#/components/schemas/URIDataSource'
rows: '#/components/schemas/RowsDataSource'
RegisterDatasetRequest:
type: object
properties:
purpose:
type: string
enum:
- post-training/messages
- eval/question-answer
- eval/messages-answer
description: >-
The purpose of the dataset. One of: - "post-training/messages": The dataset
contains a messages column with list of messages for post-training. {
"messages": [ {"role": "user", "content": "Hello, world!"}, {"role": "assistant",
"content": "Hello, world!"}, ] } - "eval/question-answer": The dataset
contains a question column and an answer column for evaluation. { "question":
"What is the capital of France?", "answer": "Paris" } - "eval/messages-answer":
The dataset contains a messages column with list of messages and an answer
column for evaluation. { "messages": [ {"role": "user", "content": "Hello,
my name is John Doe."}, {"role": "assistant", "content": "Hello, John
Doe. How can I help you today?"}, {"role": "user", "content": "What's
my name?"}, ], "answer": "John Doe" }
source:
$ref: '#/components/schemas/DataSource'
description: >-
The data source of the dataset. Ensure that the data source schema is
compatible with the purpose of the dataset. Examples: - { "type": "uri",
"uri": "https://mywebsite.com/mydata.jsonl" } - { "type": "uri", "uri":
"lsfs://mydata.jsonl" } - { "type": "uri", "uri": "data:csv;base64,{base64_content}"
} - { "type": "uri", "uri": "huggingface://llamastack/simpleqa?split=train"
} - { "type": "rows", "rows": [ { "messages": [ {"role": "user", "content":
"Hello, world!"}, {"role": "assistant", "content": "Hello, world!"}, ]
} ] }
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: >-
The metadata for the dataset. - E.g. {"description": "My dataset"}.
dataset_id:
type: string
description: >-
The ID of the dataset. If not provided, an ID will be generated.
additionalProperties: false
required:
- purpose
- source
title: RegisterDatasetRequest
RegisterBenchmarkRequest:
type: object
properties:
benchmark_id:
type: string
description: The ID of the benchmark to register.
dataset_id:
type: string
description: >-
The ID of the dataset to use for the benchmark.
scoring_functions:
type: array
items:
type: string
description: >-
The scoring functions to use for the benchmark.
provider_benchmark_id:
type: string
description: >-
The ID of the provider benchmark to use for the benchmark.
provider_id:
type: string
description: >-
The ID of the provider to use for the benchmark.
metadata:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: The metadata to use for the benchmark.
additionalProperties: false
required:
- benchmark_id
- dataset_id
- scoring_functions
title: RegisterBenchmarkRequest
responses:
BadRequest400:
description: The request was invalid or malformed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
status: 400
title: Bad Request
detail: The request was invalid or malformed
TooManyRequests429:
description: The client has sent too many requests in a given amount of time
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
status: 429
title: Too Many Requests
detail: You have exceeded the rate limit. Please try again later.
InternalServerError500:
description: The server encountered an unexpected error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
status: 500
title: Internal Server Error
detail: An unexpected error occurred
DefaultError:
description: An error occurred
content:
application/json:
schema:
$ref: '#/components/schemas/Error'