This commit is contained in:
Raghotham Murthy 2025-10-27 10:52:20 -07:00
parent e21db79d6c
commit 13b6f3df65
12 changed files with 1238 additions and 605 deletions

View file

@ -12,7 +12,7 @@ info:
servers:
- url: http://any-hosted-llama-stack.com
paths:
/v1/admin/providers:
/v1/admin/providers/{api}:
post:
responses:
'200':
@ -41,7 +41,14 @@ paths:
Register a new provider instance at runtime. The provider will be validated,
instantiated, and persisted to the kvstore. Requires appropriate ABAC permissions.
parameters: []
parameters:
- name: api
in: path
description: >-
API namespace this provider implements (e.g., 'inference', 'vector_io').
required: true
schema:
type: string
requestBody:
content:
application/json:
@ -49,7 +56,7 @@ paths:
$ref: '#/components/schemas/RegisterProviderRequest'
required: true
deprecated: false
/v1/admin/providers/{provider_id}:
/v1/admin/providers/{api}/{provider_id}:
post:
responses:
'200':
@ -78,10 +85,14 @@ paths:
Update the configuration and/or attributes of a dynamic provider. The provider
will be re-instantiated with the new configuration (hot-reload). Static providers
from run.yaml cannot be updated.
will be re-instantiated with the new configuration (hot-reload).
parameters:
- name: api
in: path
description: API namespace the provider implements
required: true
schema:
type: string
- name: provider_id
in: path
description: ID of the provider to update
@ -117,8 +128,14 @@ paths:
Remove a dynamic provider, shutting down its instance and removing it from
the kvstore. Static providers from run.yaml cannot be unregistered.
the kvstore.
parameters:
- name: api
in: path
description: API namespace the provider implements
required: true
schema:
type: string
- name: provider_id
in: path
description: ID of the provider to unregister.
@ -126,6 +143,47 @@ paths:
schema:
type: string
deprecated: false
/v1/admin/providers/{api}/{provider_id}/test:
post:
responses:
'200':
description: >-
TestProviderConnectionResponse with health status.
content:
application/json:
schema:
$ref: '#/components/schemas/TestProviderConnectionResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Providers
summary: Test a provider connection.
description: >-
Test a provider connection.
Execute a health check on a provider to verify it is reachable and functioning.
parameters:
- name: api
in: path
description: API namespace the provider implements.
required: true
schema:
type: string
- name: provider_id
in: path
description: ID of the provider to test.
required: true
schema:
type: string
deprecated: false
/v1/chat/completions:
get:
responses:
@ -1365,7 +1423,43 @@ paths:
List all available providers.
parameters: []
deprecated: false
/v1/providers/{provider_id}:
/v1/providers/{api}:
get:
responses:
'200':
description: >-
A ListProvidersResponse containing providers for the specified API.
content:
application/json:
schema:
$ref: '#/components/schemas/ListProvidersResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Providers
summary: List providers for a specific API.
description: >-
List providers for a specific API.
List all providers that implement a specific API.
parameters:
- name: api
in: path
description: >-
The API namespace to filter by (e.g., 'inference', 'vector_io')
required: true
schema:
type: string
deprecated: false
/v1/providers/{api}/{provider_id}:
get:
responses:
'200':
@ -1387,52 +1481,21 @@ paths:
$ref: '#/components/responses/DefaultError'
tags:
- Providers
summary: Get provider.
summary: Get provider for specific API.
description: >-
Get provider.
Get provider for specific API.
Get detailed information about a specific provider.
Get detailed information about a specific provider for a specific API.
parameters:
- name: provider_id
- name: api
in: path
description: The ID of the provider to inspect.
description: The API namespace.
required: true
schema:
type: string
deprecated: false
/v1/providers/{provider_id}/test:
post:
responses:
'200':
description: >-
TestProviderConnectionResponse with health status.
content:
application/json:
schema:
$ref: '#/components/schemas/TestProviderConnectionResponse'
'400':
$ref: '#/components/responses/BadRequest400'
'429':
$ref: >-
#/components/responses/TooManyRequests429
'500':
$ref: >-
#/components/responses/InternalServerError500
default:
$ref: '#/components/responses/DefaultError'
tags:
- Providers
summary: Test a provider connection.
description: >-
Test a provider connection.
Execute a health check on a provider to verify it is reachable and functioning.
Works for both static and dynamic providers.
parameters:
- name: provider_id
in: path
description: ID of the provider to test.
description: The ID of the provider to inspect.
required: true
schema:
type: string
@ -3157,9 +3220,6 @@ components:
type: string
description: >-
Unique identifier for this provider instance.
api:
type: string
description: API namespace this provider implements.
provider_type:
type: string
description: Provider type (e.g., 'remote::openai').
@ -3186,7 +3246,6 @@ components:
additionalProperties: false
required:
- provider_id
- api
- provider_type
- config
title: RegisterProviderRequest
@ -3395,6 +3454,32 @@ components:
- provider
title: UpdateProviderResponse
description: Response after updating a provider.
TestProviderConnectionResponse:
type: object
properties:
success:
type: boolean
description: Whether the connection test succeeded
health:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: Health status from the provider
error_message:
type: string
description: Error message if test failed
additionalProperties: false
required:
- success
title: TestProviderConnectionResponse
description: >-
Response from testing a provider connection.
Order:
type: string
enum:
@ -5863,32 +5948,6 @@ components:
title: ListProvidersResponse
description: >-
Response containing a list of all available providers.
TestProviderConnectionResponse:
type: object
properties:
success:
type: boolean
description: Whether the connection test succeeded
health:
type: object
additionalProperties:
oneOf:
- type: 'null'
- type: boolean
- type: number
- type: string
- type: array
- type: object
description: Health status from the provider
error_message:
type: string
description: Error message if test failed
additionalProperties: false
required:
- success
title: TestProviderConnectionResponse
description: >-
Response from testing a provider connection.
ListOpenAIResponseObject:
type: object
properties: