From e497f0391aad3e75dceee288e299e0f74bd7f294 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Sat, 11 Oct 2025 02:14:37 +0000
Subject: [PATCH 1/3] chore(internal): detect missing future annotations with
ruff
---
pyproject.toml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/pyproject.toml b/pyproject.toml
index 660038c5..01c27c43 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -194,6 +194,8 @@ select = [
"B",
# remove unused imports
"F401",
+ # check for missing future annotations
+ "FA102",
# bare except statements
"E722",
# unused arguments
@@ -216,6 +218,8 @@ unfixable = [
"T203",
]
+extend-safe-fixes = ["FA102"]
+
[tool.ruff.lint.flake8-tidy-imports.banned-api]
"functools.lru_cache".msg = "This function does not retain type information for the wrapped function's arguments; The `lru_cache` function from `_utils` should be used instead"
From 6c796ca49ee5e38c2951216558151fe349a303bf Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 13 Oct 2025 01:51:32 +0000
Subject: [PATCH 2/3] feat(api): updates to vector_store, etc.
---
.stats.yml | 8 +-
api.md | 20 -
src/llama_stack_client/_client.py | 38 --
src/llama_stack_client/resources/__init__.py | 14 -
.../resources/completions.py | 20 -
src/llama_stack_client/resources/safety.py | 5 +-
.../resources/vector_dbs.py | 438 ------------------
.../resources/vector_stores/file_batches.py | 24 +-
.../resources/vector_stores/vector_stores.py | 60 +--
src/llama_stack_client/types/__init__.py | 5 -
.../types/chat_completion_chunk.py | 5 +
.../types/completion_create_params.py | 4 -
.../types/list_vector_dbs_response.py | 11 -
.../types/response_object_stream.py | 340 ++++++++++++++
.../types/safety_run_shield_params.py | 204 +++++++-
.../types/vector_db_list_response.py | 30 --
.../types/vector_db_register_params.py | 27 --
.../types/vector_db_register_response.py | 27 --
.../types/vector_db_retrieve_response.py | 27 --
.../types/vector_store_create_params.py | 25 +-
.../vector_stores/file_batch_create_params.py | 6 +-
tests/api_resources/test_completions.py | 8 -
tests/api_resources/test_vector_dbs.py | 322 -------------
tests/api_resources/test_vector_stores.py | 6 -
24 files changed, 591 insertions(+), 1083 deletions(-)
delete mode 100644 src/llama_stack_client/resources/vector_dbs.py
delete mode 100644 src/llama_stack_client/types/list_vector_dbs_response.py
delete mode 100644 src/llama_stack_client/types/vector_db_list_response.py
delete mode 100644 src/llama_stack_client/types/vector_db_register_params.py
delete mode 100644 src/llama_stack_client/types/vector_db_register_response.py
delete mode 100644 src/llama_stack_client/types/vector_db_retrieve_response.py
delete mode 100644 tests/api_resources/test_vector_dbs.py
diff --git a/.stats.yml b/.stats.yml
index 721d5772..bf6aaffb 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
-configured_endpoints: 115
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/llamastack%2Fllama-stack-client-8a12a05ba6892999ac506f69d5cbbc7218f28ee1a11bf8e0e548c603435bb643.yml
-openapi_spec_hash: 871ce212a98bdad4a44ec7fbf58d9fcb
-config_hash: 4c1ba9dc45c31189cd1b039d003a3544
+configured_endpoints: 111
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/llamastack%2Fllama-stack-client-15a929a0b71de779accc56bd09d1e5f580e216affdb408cf9890bc7a37847e9e.yml
+openapi_spec_hash: 5db9f7c7e80427cfa0298cbb01689559
+config_hash: 06758df5c4f261f9c97eafcef7e0028f
diff --git a/api.md b/api.md
index af028626..f0155d69 100644
--- a/api.md
+++ b/api.md
@@ -234,26 +234,6 @@ Methods:
- client.vector_io.insert(\*\*params) -> None
- client.vector_io.query(\*\*params) -> QueryChunksResponse
-# VectorDBs
-
-Types:
-
-```python
-from llama_stack_client.types import (
- ListVectorDBsResponse,
- VectorDBRetrieveResponse,
- VectorDBListResponse,
- VectorDBRegisterResponse,
-)
-```
-
-Methods:
-
-- client.vector_dbs.retrieve(vector_db_id) -> VectorDBRetrieveResponse
-- client.vector_dbs.list() -> VectorDBListResponse
-- client.vector_dbs.register(\*\*params) -> VectorDBRegisterResponse
-- client.vector_dbs.unregister(vector_db_id) -> None
-
# VectorStores
Types:
diff --git a/src/llama_stack_client/_client.py b/src/llama_stack_client/_client.py
index a9252b61..4fe29cbb 100644
--- a/src/llama_stack_client/_client.py
+++ b/src/llama_stack_client/_client.py
@@ -51,7 +51,6 @@
benchmarks,
embeddings,
toolgroups,
- vector_dbs,
completions,
moderations,
tool_runtime,
@@ -75,7 +74,6 @@
from .resources.benchmarks import BenchmarksResource, AsyncBenchmarksResource
from .resources.embeddings import EmbeddingsResource, AsyncEmbeddingsResource
from .resources.toolgroups import ToolgroupsResource, AsyncToolgroupsResource
- from .resources.vector_dbs import VectorDBsResource, AsyncVectorDBsResource
from .resources.alpha.alpha import AlphaResource, AsyncAlphaResource
from .resources.completions import CompletionsResource, AsyncCompletionsResource
from .resources.moderations import ModerationsResource, AsyncModerationsResource
@@ -225,12 +223,6 @@ def vector_io(self) -> VectorIoResource:
return VectorIoResource(self)
- @cached_property
- def vector_dbs(self) -> VectorDBsResource:
- from .resources.vector_dbs import VectorDBsResource
-
- return VectorDBsResource(self)
-
@cached_property
def vector_stores(self) -> VectorStoresResource:
from .resources.vector_stores import VectorStoresResource
@@ -553,12 +545,6 @@ def vector_io(self) -> AsyncVectorIoResource:
return AsyncVectorIoResource(self)
- @cached_property
- def vector_dbs(self) -> AsyncVectorDBsResource:
- from .resources.vector_dbs import AsyncVectorDBsResource
-
- return AsyncVectorDBsResource(self)
-
@cached_property
def vector_stores(self) -> AsyncVectorStoresResource:
from .resources.vector_stores import AsyncVectorStoresResource
@@ -830,12 +816,6 @@ def vector_io(self) -> vector_io.VectorIoResourceWithRawResponse:
return VectorIoResourceWithRawResponse(self._client.vector_io)
- @cached_property
- def vector_dbs(self) -> vector_dbs.VectorDBsResourceWithRawResponse:
- from .resources.vector_dbs import VectorDBsResourceWithRawResponse
-
- return VectorDBsResourceWithRawResponse(self._client.vector_dbs)
-
@cached_property
def vector_stores(self) -> vector_stores.VectorStoresResourceWithRawResponse:
from .resources.vector_stores import VectorStoresResourceWithRawResponse
@@ -993,12 +973,6 @@ def vector_io(self) -> vector_io.AsyncVectorIoResourceWithRawResponse:
return AsyncVectorIoResourceWithRawResponse(self._client.vector_io)
- @cached_property
- def vector_dbs(self) -> vector_dbs.AsyncVectorDBsResourceWithRawResponse:
- from .resources.vector_dbs import AsyncVectorDBsResourceWithRawResponse
-
- return AsyncVectorDBsResourceWithRawResponse(self._client.vector_dbs)
-
@cached_property
def vector_stores(self) -> vector_stores.AsyncVectorStoresResourceWithRawResponse:
from .resources.vector_stores import AsyncVectorStoresResourceWithRawResponse
@@ -1158,12 +1132,6 @@ def vector_io(self) -> vector_io.VectorIoResourceWithStreamingResponse:
return VectorIoResourceWithStreamingResponse(self._client.vector_io)
- @cached_property
- def vector_dbs(self) -> vector_dbs.VectorDBsResourceWithStreamingResponse:
- from .resources.vector_dbs import VectorDBsResourceWithStreamingResponse
-
- return VectorDBsResourceWithStreamingResponse(self._client.vector_dbs)
-
@cached_property
def vector_stores(self) -> vector_stores.VectorStoresResourceWithStreamingResponse:
from .resources.vector_stores import VectorStoresResourceWithStreamingResponse
@@ -1323,12 +1291,6 @@ def vector_io(self) -> vector_io.AsyncVectorIoResourceWithStreamingResponse:
return AsyncVectorIoResourceWithStreamingResponse(self._client.vector_io)
- @cached_property
- def vector_dbs(self) -> vector_dbs.AsyncVectorDBsResourceWithStreamingResponse:
- from .resources.vector_dbs import AsyncVectorDBsResourceWithStreamingResponse
-
- return AsyncVectorDBsResourceWithStreamingResponse(self._client.vector_dbs)
-
@cached_property
def vector_stores(self) -> vector_stores.AsyncVectorStoresResourceWithStreamingResponse:
from .resources.vector_stores import AsyncVectorStoresResourceWithStreamingResponse
diff --git a/src/llama_stack_client/resources/__init__.py b/src/llama_stack_client/resources/__init__.py
index 2ceae6c3..b1a7a120 100644
--- a/src/llama_stack_client/resources/__init__.py
+++ b/src/llama_stack_client/resources/__init__.py
@@ -144,14 +144,6 @@
ToolgroupsResourceWithStreamingResponse,
AsyncToolgroupsResourceWithStreamingResponse,
)
-from .vector_dbs import (
- VectorDBsResource,
- AsyncVectorDBsResource,
- VectorDBsResourceWithRawResponse,
- AsyncVectorDBsResourceWithRawResponse,
- VectorDBsResourceWithStreamingResponse,
- AsyncVectorDBsResourceWithStreamingResponse,
-)
from .completions import (
CompletionsResource,
AsyncCompletionsResource,
@@ -276,12 +268,6 @@
"AsyncVectorIoResourceWithRawResponse",
"VectorIoResourceWithStreamingResponse",
"AsyncVectorIoResourceWithStreamingResponse",
- "VectorDBsResource",
- "AsyncVectorDBsResource",
- "VectorDBsResourceWithRawResponse",
- "AsyncVectorDBsResourceWithRawResponse",
- "VectorDBsResourceWithStreamingResponse",
- "AsyncVectorDBsResourceWithStreamingResponse",
"VectorStoresResource",
"AsyncVectorStoresResource",
"VectorStoresResourceWithRawResponse",
diff --git a/src/llama_stack_client/resources/completions.py b/src/llama_stack_client/resources/completions.py
index 8791e16e..a4a148d9 100644
--- a/src/llama_stack_client/resources/completions.py
+++ b/src/llama_stack_client/resources/completions.py
@@ -54,13 +54,11 @@ def create(
best_of: int | Omit = omit,
echo: bool | Omit = omit,
frequency_penalty: float | Omit = omit,
- guided_choice: SequenceNotStr[str] | Omit = omit,
logit_bias: Dict[str, float] | Omit = omit,
logprobs: bool | Omit = omit,
max_tokens: int | Omit = omit,
n: int | Omit = omit,
presence_penalty: float | Omit = omit,
- prompt_logprobs: int | Omit = omit,
seed: int | Omit = omit,
stop: Union[str, SequenceNotStr[str]] | Omit = omit,
stream: Literal[False] | Omit = omit,
@@ -139,13 +137,11 @@ def create(
best_of: int | Omit = omit,
echo: bool | Omit = omit,
frequency_penalty: float | Omit = omit,
- guided_choice: SequenceNotStr[str] | Omit = omit,
logit_bias: Dict[str, float] | Omit = omit,
logprobs: bool | Omit = omit,
max_tokens: int | Omit = omit,
n: int | Omit = omit,
presence_penalty: float | Omit = omit,
- prompt_logprobs: int | Omit = omit,
seed: int | Omit = omit,
stop: Union[str, SequenceNotStr[str]] | Omit = omit,
stream_options: Dict[str, Union[bool, float, str, Iterable[object], object, None]] | Omit = omit,
@@ -223,13 +219,11 @@ def create(
best_of: int | Omit = omit,
echo: bool | Omit = omit,
frequency_penalty: float | Omit = omit,
- guided_choice: SequenceNotStr[str] | Omit = omit,
logit_bias: Dict[str, float] | Omit = omit,
logprobs: bool | Omit = omit,
max_tokens: int | Omit = omit,
n: int | Omit = omit,
presence_penalty: float | Omit = omit,
- prompt_logprobs: int | Omit = omit,
seed: int | Omit = omit,
stop: Union[str, SequenceNotStr[str]] | Omit = omit,
stream_options: Dict[str, Union[bool, float, str, Iterable[object], object, None]] | Omit = omit,
@@ -306,13 +300,11 @@ def create(
best_of: int | Omit = omit,
echo: bool | Omit = omit,
frequency_penalty: float | Omit = omit,
- guided_choice: SequenceNotStr[str] | Omit = omit,
logit_bias: Dict[str, float] | Omit = omit,
logprobs: bool | Omit = omit,
max_tokens: int | Omit = omit,
n: int | Omit = omit,
presence_penalty: float | Omit = omit,
- prompt_logprobs: int | Omit = omit,
seed: int | Omit = omit,
stop: Union[str, SequenceNotStr[str]] | Omit = omit,
stream: Literal[False] | Literal[True] | Omit = omit,
@@ -337,13 +329,11 @@ def create(
"best_of": best_of,
"echo": echo,
"frequency_penalty": frequency_penalty,
- "guided_choice": guided_choice,
"logit_bias": logit_bias,
"logprobs": logprobs,
"max_tokens": max_tokens,
"n": n,
"presence_penalty": presence_penalty,
- "prompt_logprobs": prompt_logprobs,
"seed": seed,
"stop": stop,
"stream": stream,
@@ -395,13 +385,11 @@ async def create(
best_of: int | Omit = omit,
echo: bool | Omit = omit,
frequency_penalty: float | Omit = omit,
- guided_choice: SequenceNotStr[str] | Omit = omit,
logit_bias: Dict[str, float] | Omit = omit,
logprobs: bool | Omit = omit,
max_tokens: int | Omit = omit,
n: int | Omit = omit,
presence_penalty: float | Omit = omit,
- prompt_logprobs: int | Omit = omit,
seed: int | Omit = omit,
stop: Union[str, SequenceNotStr[str]] | Omit = omit,
stream: Literal[False] | Omit = omit,
@@ -480,13 +468,11 @@ async def create(
best_of: int | Omit = omit,
echo: bool | Omit = omit,
frequency_penalty: float | Omit = omit,
- guided_choice: SequenceNotStr[str] | Omit = omit,
logit_bias: Dict[str, float] | Omit = omit,
logprobs: bool | Omit = omit,
max_tokens: int | Omit = omit,
n: int | Omit = omit,
presence_penalty: float | Omit = omit,
- prompt_logprobs: int | Omit = omit,
seed: int | Omit = omit,
stop: Union[str, SequenceNotStr[str]] | Omit = omit,
stream_options: Dict[str, Union[bool, float, str, Iterable[object], object, None]] | Omit = omit,
@@ -564,13 +550,11 @@ async def create(
best_of: int | Omit = omit,
echo: bool | Omit = omit,
frequency_penalty: float | Omit = omit,
- guided_choice: SequenceNotStr[str] | Omit = omit,
logit_bias: Dict[str, float] | Omit = omit,
logprobs: bool | Omit = omit,
max_tokens: int | Omit = omit,
n: int | Omit = omit,
presence_penalty: float | Omit = omit,
- prompt_logprobs: int | Omit = omit,
seed: int | Omit = omit,
stop: Union[str, SequenceNotStr[str]] | Omit = omit,
stream_options: Dict[str, Union[bool, float, str, Iterable[object], object, None]] | Omit = omit,
@@ -647,13 +631,11 @@ async def create(
best_of: int | Omit = omit,
echo: bool | Omit = omit,
frequency_penalty: float | Omit = omit,
- guided_choice: SequenceNotStr[str] | Omit = omit,
logit_bias: Dict[str, float] | Omit = omit,
logprobs: bool | Omit = omit,
max_tokens: int | Omit = omit,
n: int | Omit = omit,
presence_penalty: float | Omit = omit,
- prompt_logprobs: int | Omit = omit,
seed: int | Omit = omit,
stop: Union[str, SequenceNotStr[str]] | Omit = omit,
stream: Literal[False] | Literal[True] | Omit = omit,
@@ -678,13 +660,11 @@ async def create(
"best_of": best_of,
"echo": echo,
"frequency_penalty": frequency_penalty,
- "guided_choice": guided_choice,
"logit_bias": logit_bias,
"logprobs": logprobs,
"max_tokens": max_tokens,
"n": n,
"presence_penalty": presence_penalty,
- "prompt_logprobs": prompt_logprobs,
"seed": seed,
"stop": stop,
"stream": stream,
diff --git a/src/llama_stack_client/resources/safety.py b/src/llama_stack_client/resources/safety.py
index 8468a9ef..38aaf19e 100644
--- a/src/llama_stack_client/resources/safety.py
+++ b/src/llama_stack_client/resources/safety.py
@@ -19,7 +19,6 @@
)
from .._base_client import make_request_options
from ..types.run_shield_response import RunShieldResponse
-from ..types.shared_params.message import Message
__all__ = ["SafetyResource", "AsyncSafetyResource"]
@@ -47,7 +46,7 @@ def with_streaming_response(self) -> SafetyResourceWithStreamingResponse:
def run_shield(
self,
*,
- messages: Iterable[Message],
+ messages: Iterable[safety_run_shield_params.Message],
params: Dict[str, Union[bool, float, str, Iterable[object], object, None]],
shield_id: str,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
@@ -116,7 +115,7 @@ def with_streaming_response(self) -> AsyncSafetyResourceWithStreamingResponse:
async def run_shield(
self,
*,
- messages: Iterable[Message],
+ messages: Iterable[safety_run_shield_params.Message],
params: Dict[str, Union[bool, float, str, Iterable[object], object, None]],
shield_id: str,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
diff --git a/src/llama_stack_client/resources/vector_dbs.py b/src/llama_stack_client/resources/vector_dbs.py
deleted file mode 100644
index 3524bdf2..00000000
--- a/src/llama_stack_client/resources/vector_dbs.py
+++ /dev/null
@@ -1,438 +0,0 @@
-# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
-
-from __future__ import annotations
-
-from typing import Type, cast
-
-import httpx
-
-from ..types import vector_db_register_params
-from .._types import Body, Omit, Query, Headers, NoneType, NotGiven, omit, not_given
-from .._utils import maybe_transform, async_maybe_transform
-from .._compat import cached_property
-from .._resource import SyncAPIResource, AsyncAPIResource
-from .._response import (
- to_raw_response_wrapper,
- to_streamed_response_wrapper,
- async_to_raw_response_wrapper,
- async_to_streamed_response_wrapper,
-)
-from .._wrappers import DataWrapper
-from .._base_client import make_request_options
-from ..types.vector_db_list_response import VectorDBListResponse
-from ..types.vector_db_register_response import VectorDBRegisterResponse
-from ..types.vector_db_retrieve_response import VectorDBRetrieveResponse
-
-__all__ = ["VectorDBsResource", "AsyncVectorDBsResource"]
-
-
-class VectorDBsResource(SyncAPIResource):
- @cached_property
- def with_raw_response(self) -> VectorDBsResourceWithRawResponse:
- """
- This property can be used as a prefix for any HTTP method call to return
- the raw response object instead of the parsed content.
-
- For more information, see https://www.github.com/llamastack/llama-stack-client-python#accessing-raw-response-data-eg-headers
- """
- return VectorDBsResourceWithRawResponse(self)
-
- @cached_property
- def with_streaming_response(self) -> VectorDBsResourceWithStreamingResponse:
- """
- An alternative to `.with_raw_response` that doesn't eagerly read the response body.
-
- For more information, see https://www.github.com/llamastack/llama-stack-client-python#with_streaming_response
- """
- return VectorDBsResourceWithStreamingResponse(self)
-
- def retrieve(
- self,
- vector_db_id: str,
- *,
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
- # The extra values given here take precedence over values defined on the client or passed to this method.
- extra_headers: Headers | None = None,
- extra_query: Query | None = None,
- extra_body: Body | None = None,
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
- ) -> VectorDBRetrieveResponse:
- """
- Get a vector database by its identifier.
-
- Args:
- extra_headers: Send extra headers
-
- extra_query: Add additional query parameters to the request
-
- extra_body: Add additional JSON properties to the request
-
- timeout: Override the client-level default timeout for this request, in seconds
- """
- if not vector_db_id:
- raise ValueError(f"Expected a non-empty value for `vector_db_id` but received {vector_db_id!r}")
- return self._get(
- f"/v1/vector-dbs/{vector_db_id}",
- options=make_request_options(
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
- ),
- cast_to=VectorDBRetrieveResponse,
- )
-
- def list(
- self,
- *,
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
- # The extra values given here take precedence over values defined on the client or passed to this method.
- extra_headers: Headers | None = None,
- extra_query: Query | None = None,
- extra_body: Body | None = None,
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
- ) -> VectorDBListResponse:
- """List all vector databases."""
- return self._get(
- "/v1/vector-dbs",
- options=make_request_options(
- extra_headers=extra_headers,
- extra_query=extra_query,
- extra_body=extra_body,
- timeout=timeout,
- post_parser=DataWrapper[VectorDBListResponse]._unwrapper,
- ),
- cast_to=cast(Type[VectorDBListResponse], DataWrapper[VectorDBListResponse]),
- )
-
- def register(
- self,
- *,
- embedding_model: str,
- vector_db_id: str,
- embedding_dimension: int | Omit = omit,
- provider_id: str | Omit = omit,
- provider_vector_db_id: str | Omit = omit,
- vector_db_name: str | Omit = omit,
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
- # The extra values given here take precedence over values defined on the client or passed to this method.
- extra_headers: Headers | None = None,
- extra_query: Query | None = None,
- extra_body: Body | None = None,
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
- ) -> VectorDBRegisterResponse:
- """
- Register a vector database.
-
- Args:
- embedding_model: The embedding model to use.
-
- vector_db_id: The identifier of the vector database to register.
-
- embedding_dimension: The dimension of the embedding model.
-
- provider_id: The identifier of the provider.
-
- provider_vector_db_id: The identifier of the vector database in the provider.
-
- vector_db_name: The name of the vector database.
-
- extra_headers: Send extra headers
-
- extra_query: Add additional query parameters to the request
-
- extra_body: Add additional JSON properties to the request
-
- timeout: Override the client-level default timeout for this request, in seconds
- """
- return self._post(
- "/v1/vector-dbs",
- body=maybe_transform(
- {
- "embedding_model": embedding_model,
- "vector_db_id": vector_db_id,
- "embedding_dimension": embedding_dimension,
- "provider_id": provider_id,
- "provider_vector_db_id": provider_vector_db_id,
- "vector_db_name": vector_db_name,
- },
- vector_db_register_params.VectorDBRegisterParams,
- ),
- options=make_request_options(
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
- ),
- cast_to=VectorDBRegisterResponse,
- )
-
- def unregister(
- self,
- vector_db_id: str,
- *,
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
- # The extra values given here take precedence over values defined on the client or passed to this method.
- extra_headers: Headers | None = None,
- extra_query: Query | None = None,
- extra_body: Body | None = None,
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
- ) -> None:
- """
- Unregister a vector database.
-
- Args:
- extra_headers: Send extra headers
-
- extra_query: Add additional query parameters to the request
-
- extra_body: Add additional JSON properties to the request
-
- timeout: Override the client-level default timeout for this request, in seconds
- """
- if not vector_db_id:
- raise ValueError(f"Expected a non-empty value for `vector_db_id` but received {vector_db_id!r}")
- extra_headers = {"Accept": "*/*", **(extra_headers or {})}
- return self._delete(
- f"/v1/vector-dbs/{vector_db_id}",
- options=make_request_options(
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
- ),
- cast_to=NoneType,
- )
-
-
-class AsyncVectorDBsResource(AsyncAPIResource):
- @cached_property
- def with_raw_response(self) -> AsyncVectorDBsResourceWithRawResponse:
- """
- This property can be used as a prefix for any HTTP method call to return
- the raw response object instead of the parsed content.
-
- For more information, see https://www.github.com/llamastack/llama-stack-client-python#accessing-raw-response-data-eg-headers
- """
- return AsyncVectorDBsResourceWithRawResponse(self)
-
- @cached_property
- def with_streaming_response(self) -> AsyncVectorDBsResourceWithStreamingResponse:
- """
- An alternative to `.with_raw_response` that doesn't eagerly read the response body.
-
- For more information, see https://www.github.com/llamastack/llama-stack-client-python#with_streaming_response
- """
- return AsyncVectorDBsResourceWithStreamingResponse(self)
-
- async def retrieve(
- self,
- vector_db_id: str,
- *,
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
- # The extra values given here take precedence over values defined on the client or passed to this method.
- extra_headers: Headers | None = None,
- extra_query: Query | None = None,
- extra_body: Body | None = None,
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
- ) -> VectorDBRetrieveResponse:
- """
- Get a vector database by its identifier.
-
- Args:
- extra_headers: Send extra headers
-
- extra_query: Add additional query parameters to the request
-
- extra_body: Add additional JSON properties to the request
-
- timeout: Override the client-level default timeout for this request, in seconds
- """
- if not vector_db_id:
- raise ValueError(f"Expected a non-empty value for `vector_db_id` but received {vector_db_id!r}")
- return await self._get(
- f"/v1/vector-dbs/{vector_db_id}",
- options=make_request_options(
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
- ),
- cast_to=VectorDBRetrieveResponse,
- )
-
- async def list(
- self,
- *,
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
- # The extra values given here take precedence over values defined on the client or passed to this method.
- extra_headers: Headers | None = None,
- extra_query: Query | None = None,
- extra_body: Body | None = None,
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
- ) -> VectorDBListResponse:
- """List all vector databases."""
- return await self._get(
- "/v1/vector-dbs",
- options=make_request_options(
- extra_headers=extra_headers,
- extra_query=extra_query,
- extra_body=extra_body,
- timeout=timeout,
- post_parser=DataWrapper[VectorDBListResponse]._unwrapper,
- ),
- cast_to=cast(Type[VectorDBListResponse], DataWrapper[VectorDBListResponse]),
- )
-
- async def register(
- self,
- *,
- embedding_model: str,
- vector_db_id: str,
- embedding_dimension: int | Omit = omit,
- provider_id: str | Omit = omit,
- provider_vector_db_id: str | Omit = omit,
- vector_db_name: str | Omit = omit,
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
- # The extra values given here take precedence over values defined on the client or passed to this method.
- extra_headers: Headers | None = None,
- extra_query: Query | None = None,
- extra_body: Body | None = None,
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
- ) -> VectorDBRegisterResponse:
- """
- Register a vector database.
-
- Args:
- embedding_model: The embedding model to use.
-
- vector_db_id: The identifier of the vector database to register.
-
- embedding_dimension: The dimension of the embedding model.
-
- provider_id: The identifier of the provider.
-
- provider_vector_db_id: The identifier of the vector database in the provider.
-
- vector_db_name: The name of the vector database.
-
- extra_headers: Send extra headers
-
- extra_query: Add additional query parameters to the request
-
- extra_body: Add additional JSON properties to the request
-
- timeout: Override the client-level default timeout for this request, in seconds
- """
- return await self._post(
- "/v1/vector-dbs",
- body=await async_maybe_transform(
- {
- "embedding_model": embedding_model,
- "vector_db_id": vector_db_id,
- "embedding_dimension": embedding_dimension,
- "provider_id": provider_id,
- "provider_vector_db_id": provider_vector_db_id,
- "vector_db_name": vector_db_name,
- },
- vector_db_register_params.VectorDBRegisterParams,
- ),
- options=make_request_options(
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
- ),
- cast_to=VectorDBRegisterResponse,
- )
-
- async def unregister(
- self,
- vector_db_id: str,
- *,
- # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
- # The extra values given here take precedence over values defined on the client or passed to this method.
- extra_headers: Headers | None = None,
- extra_query: Query | None = None,
- extra_body: Body | None = None,
- timeout: float | httpx.Timeout | None | NotGiven = not_given,
- ) -> None:
- """
- Unregister a vector database.
-
- Args:
- extra_headers: Send extra headers
-
- extra_query: Add additional query parameters to the request
-
- extra_body: Add additional JSON properties to the request
-
- timeout: Override the client-level default timeout for this request, in seconds
- """
- if not vector_db_id:
- raise ValueError(f"Expected a non-empty value for `vector_db_id` but received {vector_db_id!r}")
- extra_headers = {"Accept": "*/*", **(extra_headers or {})}
- return await self._delete(
- f"/v1/vector-dbs/{vector_db_id}",
- options=make_request_options(
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
- ),
- cast_to=NoneType,
- )
-
-
-class VectorDBsResourceWithRawResponse:
- def __init__(self, vector_dbs: VectorDBsResource) -> None:
- self._vector_dbs = vector_dbs
-
- self.retrieve = to_raw_response_wrapper(
- vector_dbs.retrieve,
- )
- self.list = to_raw_response_wrapper(
- vector_dbs.list,
- )
- self.register = to_raw_response_wrapper(
- vector_dbs.register,
- )
- self.unregister = to_raw_response_wrapper(
- vector_dbs.unregister,
- )
-
-
-class AsyncVectorDBsResourceWithRawResponse:
- def __init__(self, vector_dbs: AsyncVectorDBsResource) -> None:
- self._vector_dbs = vector_dbs
-
- self.retrieve = async_to_raw_response_wrapper(
- vector_dbs.retrieve,
- )
- self.list = async_to_raw_response_wrapper(
- vector_dbs.list,
- )
- self.register = async_to_raw_response_wrapper(
- vector_dbs.register,
- )
- self.unregister = async_to_raw_response_wrapper(
- vector_dbs.unregister,
- )
-
-
-class VectorDBsResourceWithStreamingResponse:
- def __init__(self, vector_dbs: VectorDBsResource) -> None:
- self._vector_dbs = vector_dbs
-
- self.retrieve = to_streamed_response_wrapper(
- vector_dbs.retrieve,
- )
- self.list = to_streamed_response_wrapper(
- vector_dbs.list,
- )
- self.register = to_streamed_response_wrapper(
- vector_dbs.register,
- )
- self.unregister = to_streamed_response_wrapper(
- vector_dbs.unregister,
- )
-
-
-class AsyncVectorDBsResourceWithStreamingResponse:
- def __init__(self, vector_dbs: AsyncVectorDBsResource) -> None:
- self._vector_dbs = vector_dbs
-
- self.retrieve = async_to_streamed_response_wrapper(
- vector_dbs.retrieve,
- )
- self.list = async_to_streamed_response_wrapper(
- vector_dbs.list,
- )
- self.register = async_to_streamed_response_wrapper(
- vector_dbs.register,
- )
- self.unregister = async_to_streamed_response_wrapper(
- vector_dbs.unregister,
- )
diff --git a/src/llama_stack_client/resources/vector_stores/file_batches.py b/src/llama_stack_client/resources/vector_stores/file_batches.py
index bdeb14b6..9d1ecf30 100644
--- a/src/llama_stack_client/resources/vector_stores/file_batches.py
+++ b/src/llama_stack_client/resources/vector_stores/file_batches.py
@@ -59,15 +59,17 @@ def create(
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> VectorStoreFileBatches:
- """
- Create a vector store file batch.
+ """Create a vector store file batch.
+
+ Generate an OpenAI-compatible vector store
+ file batch for the given vector store.
Args:
- file_ids: A list of File IDs that the vector store should use.
+ file_ids: A list of File IDs that the vector store should use
- attributes: (Optional) Key-value attributes to store with the files.
+ attributes: (Optional) Key-value attributes to store with the files
- chunking_strategy: (Optional) The chunking strategy used to chunk the file(s). Defaults to auto.
+ chunking_strategy: (Optional) The chunking strategy used to chunk the file(s). Defaults to auto
extra_headers: Send extra headers
@@ -271,15 +273,17 @@ async def create(
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> VectorStoreFileBatches:
- """
- Create a vector store file batch.
+ """Create a vector store file batch.
+
+ Generate an OpenAI-compatible vector store
+ file batch for the given vector store.
Args:
- file_ids: A list of File IDs that the vector store should use.
+ file_ids: A list of File IDs that the vector store should use
- attributes: (Optional) Key-value attributes to store with the files.
+ attributes: (Optional) Key-value attributes to store with the files
- chunking_strategy: (Optional) The chunking strategy used to chunk the file(s). Defaults to auto.
+ chunking_strategy: (Optional) The chunking strategy used to chunk the file(s). Defaults to auto
extra_headers: Send extra headers
diff --git a/src/llama_stack_client/resources/vector_stores/vector_stores.py b/src/llama_stack_client/resources/vector_stores/vector_stores.py
index 86bb0e06..5c6e00f7 100644
--- a/src/llama_stack_client/resources/vector_stores/vector_stores.py
+++ b/src/llama_stack_client/resources/vector_stores/vector_stores.py
@@ -79,13 +79,10 @@ def create(
self,
*,
chunking_strategy: Dict[str, Union[bool, float, str, Iterable[object], object, None]] | Omit = omit,
- embedding_dimension: int | Omit = omit,
- embedding_model: str | Omit = omit,
expires_after: Dict[str, Union[bool, float, str, Iterable[object], object, None]] | Omit = omit,
file_ids: SequenceNotStr[str] | Omit = omit,
metadata: Dict[str, Union[bool, float, str, Iterable[object], object, None]] | Omit = omit,
name: str | Omit = omit,
- provider_id: str | Omit = omit,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
extra_headers: Headers | None = None,
@@ -93,27 +90,21 @@ def create(
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> VectorStore:
- """
- Creates a vector store.
-
- Args:
- chunking_strategy: The chunking strategy used to chunk the file(s). If not set, will use the `auto`
- strategy.
-
- embedding_dimension: The dimension of the embedding vectors (default: 384).
+ """Creates a vector store.
- embedding_model: The embedding model to use for this vector store.
+ Generate an OpenAI-compatible vector store with the
+ given parameters.
- expires_after: The expiration policy for a vector store.
+ Args:
+ chunking_strategy: (Optional) Strategy for splitting files into chunks
- file_ids: A list of File IDs that the vector store should use. Useful for tools like
- `file_search` that can access files.
+ expires_after: (Optional) Expiration policy for the vector store
- metadata: Set of 16 key-value pairs that can be attached to an object.
+ file_ids: List of file IDs to include in the vector store
- name: A name for the vector store.
+ metadata: Set of key-value pairs that can be attached to the vector store
- provider_id: The ID of the provider to use for this vector store.
+ name: (Optional) A name for the vector store
extra_headers: Send extra headers
@@ -128,13 +119,10 @@ def create(
body=maybe_transform(
{
"chunking_strategy": chunking_strategy,
- "embedding_dimension": embedding_dimension,
- "embedding_model": embedding_model,
"expires_after": expires_after,
"file_ids": file_ids,
"metadata": metadata,
"name": name,
- "provider_id": provider_id,
},
vector_store_create_params.VectorStoreCreateParams,
),
@@ -417,13 +405,10 @@ async def create(
self,
*,
chunking_strategy: Dict[str, Union[bool, float, str, Iterable[object], object, None]] | Omit = omit,
- embedding_dimension: int | Omit = omit,
- embedding_model: str | Omit = omit,
expires_after: Dict[str, Union[bool, float, str, Iterable[object], object, None]] | Omit = omit,
file_ids: SequenceNotStr[str] | Omit = omit,
metadata: Dict[str, Union[bool, float, str, Iterable[object], object, None]] | Omit = omit,
name: str | Omit = omit,
- provider_id: str | Omit = omit,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
extra_headers: Headers | None = None,
@@ -431,27 +416,21 @@ async def create(
extra_body: Body | None = None,
timeout: float | httpx.Timeout | None | NotGiven = not_given,
) -> VectorStore:
- """
- Creates a vector store.
-
- Args:
- chunking_strategy: The chunking strategy used to chunk the file(s). If not set, will use the `auto`
- strategy.
-
- embedding_dimension: The dimension of the embedding vectors (default: 384).
+ """Creates a vector store.
- embedding_model: The embedding model to use for this vector store.
+ Generate an OpenAI-compatible vector store with the
+ given parameters.
- expires_after: The expiration policy for a vector store.
+ Args:
+ chunking_strategy: (Optional) Strategy for splitting files into chunks
- file_ids: A list of File IDs that the vector store should use. Useful for tools like
- `file_search` that can access files.
+ expires_after: (Optional) Expiration policy for the vector store
- metadata: Set of 16 key-value pairs that can be attached to an object.
+ file_ids: List of file IDs to include in the vector store
- name: A name for the vector store.
+ metadata: Set of key-value pairs that can be attached to the vector store
- provider_id: The ID of the provider to use for this vector store.
+ name: (Optional) A name for the vector store
extra_headers: Send extra headers
@@ -466,13 +445,10 @@ async def create(
body=await async_maybe_transform(
{
"chunking_strategy": chunking_strategy,
- "embedding_dimension": embedding_dimension,
- "embedding_model": embedding_model,
"expires_after": expires_after,
"file_ids": file_ids,
"metadata": metadata,
"name": name,
- "provider_id": provider_id,
},
vector_store_create_params.VectorStoreCreateParams,
),
diff --git a/src/llama_stack_client/types/__init__.py b/src/llama_stack_client/types/__init__.py
index 2b769b76..5660e0e2 100644
--- a/src/llama_stack_client/types/__init__.py
+++ b/src/llama_stack_client/types/__init__.py
@@ -77,11 +77,9 @@
from .list_providers_response import ListProvidersResponse as ListProvidersResponse
from .scoring_fn_params_param import ScoringFnParamsParam as ScoringFnParamsParam
from .toolgroup_list_response import ToolgroupListResponse as ToolgroupListResponse
-from .vector_db_list_response import VectorDBListResponse as VectorDBListResponse
from .vector_io_insert_params import VectorIoInsertParams as VectorIoInsertParams
from .completion_create_params import CompletionCreateParams as CompletionCreateParams
from .list_benchmarks_response import ListBenchmarksResponse as ListBenchmarksResponse
-from .list_vector_dbs_response import ListVectorDBsResponse as ListVectorDBsResponse
from .moderation_create_params import ModerationCreateParams as ModerationCreateParams
from .response_delete_response import ResponseDeleteResponse as ResponseDeleteResponse
from .safety_run_shield_params import SafetyRunShieldParams as SafetyRunShieldParams
@@ -93,7 +91,6 @@
from .dataset_retrieve_response import DatasetRetrieveResponse as DatasetRetrieveResponse
from .list_tool_groups_response import ListToolGroupsResponse as ListToolGroupsResponse
from .toolgroup_register_params import ToolgroupRegisterParams as ToolgroupRegisterParams
-from .vector_db_register_params import VectorDBRegisterParams as VectorDBRegisterParams
from .completion_create_response import CompletionCreateResponse as CompletionCreateResponse
from .conversation_create_params import ConversationCreateParams as ConversationCreateParams
from .conversation_update_params import ConversationUpdateParams as ConversationUpdateParams
@@ -104,8 +101,6 @@
from .vector_store_update_params import VectorStoreUpdateParams as VectorStoreUpdateParams
from .list_vector_stores_response import ListVectorStoresResponse as ListVectorStoresResponse
from .telemetry_get_span_response import TelemetryGetSpanResponse as TelemetryGetSpanResponse
-from .vector_db_register_response import VectorDBRegisterResponse as VectorDBRegisterResponse
-from .vector_db_retrieve_response import VectorDBRetrieveResponse as VectorDBRetrieveResponse
from .conversation_delete_response import ConversationDeleteResponse as ConversationDeleteResponse
from .scoring_score_batch_response import ScoringScoreBatchResponse as ScoringScoreBatchResponse
from .telemetry_query_spans_params import TelemetryQuerySpansParams as TelemetryQuerySpansParams
diff --git a/src/llama_stack_client/types/chat_completion_chunk.py b/src/llama_stack_client/types/chat_completion_chunk.py
index 91cae09a..7a39e616 100644
--- a/src/llama_stack_client/types/chat_completion_chunk.py
+++ b/src/llama_stack_client/types/chat_completion_chunk.py
@@ -48,6 +48,11 @@ class ChoiceDelta(BaseModel):
content: Optional[str] = None
"""(Optional) The content of the delta"""
+ reasoning_content: Optional[str] = None
+ """
+ (Optional) The reasoning content from the model (non-standard, for o1/o3 models)
+ """
+
refusal: Optional[str] = None
"""(Optional) The refusal of the delta"""
diff --git a/src/llama_stack_client/types/completion_create_params.py b/src/llama_stack_client/types/completion_create_params.py
index f8ca049f..52acd356 100644
--- a/src/llama_stack_client/types/completion_create_params.py
+++ b/src/llama_stack_client/types/completion_create_params.py
@@ -30,8 +30,6 @@ class CompletionCreateParamsBase(TypedDict, total=False):
frequency_penalty: float
"""(Optional) The penalty for repeated tokens."""
- guided_choice: SequenceNotStr[str]
-
logit_bias: Dict[str, float]
"""(Optional) The logit bias to use."""
@@ -47,8 +45,6 @@ class CompletionCreateParamsBase(TypedDict, total=False):
presence_penalty: float
"""(Optional) The penalty for repeated tokens."""
- prompt_logprobs: int
-
seed: int
"""(Optional) The seed to use."""
diff --git a/src/llama_stack_client/types/list_vector_dbs_response.py b/src/llama_stack_client/types/list_vector_dbs_response.py
deleted file mode 100644
index 5ff7d5e5..00000000
--- a/src/llama_stack_client/types/list_vector_dbs_response.py
+++ /dev/null
@@ -1,11 +0,0 @@
-# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
-
-from .._models import BaseModel
-from .vector_db_list_response import VectorDBListResponse
-
-__all__ = ["ListVectorDBsResponse"]
-
-
-class ListVectorDBsResponse(BaseModel):
- data: VectorDBListResponse
- """List of vector databases"""
diff --git a/src/llama_stack_client/types/response_object_stream.py b/src/llama_stack_client/types/response_object_stream.py
index acb9c38e..aef34c17 100644
--- a/src/llama_stack_client/types/response_object_stream.py
+++ b/src/llama_stack_client/types/response_object_stream.py
@@ -86,6 +86,25 @@
"OpenAIResponseObjectStreamResponseContentPartDonePartOpenAIResponseContentPartOutputTextAnnotationOpenAIResponseAnnotationFilePath",
"OpenAIResponseObjectStreamResponseContentPartDonePartOpenAIResponseContentPartRefusal",
"OpenAIResponseObjectStreamResponseContentPartDonePartOpenAIResponseContentPartReasoningText",
+ "OpenAIResponseObjectStreamResponseReasoningTextDelta",
+ "OpenAIResponseObjectStreamResponseReasoningTextDone",
+ "OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded",
+ "OpenAIResponseObjectStreamResponseReasoningSummaryPartAddedPart",
+ "OpenAIResponseObjectStreamResponseReasoningSummaryPartDone",
+ "OpenAIResponseObjectStreamResponseReasoningSummaryPartDonePart",
+ "OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta",
+ "OpenAIResponseObjectStreamResponseReasoningSummaryTextDone",
+ "OpenAIResponseObjectStreamResponseRefusalDelta",
+ "OpenAIResponseObjectStreamResponseRefusalDone",
+ "OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded",
+ "OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotation",
+ "OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotationOpenAIResponseAnnotationFileCitation",
+ "OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotationOpenAIResponseAnnotationCitation",
+ "OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotationOpenAIResponseAnnotationContainerFileCitation",
+ "OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotationOpenAIResponseAnnotationFilePath",
+ "OpenAIResponseObjectStreamResponseFileSearchCallInProgress",
+ "OpenAIResponseObjectStreamResponseFileSearchCallSearching",
+ "OpenAIResponseObjectStreamResponseFileSearchCallCompleted",
"OpenAIResponseObjectStreamResponseIncomplete",
"OpenAIResponseObjectStreamResponseFailed",
"OpenAIResponseObjectStreamResponseCompleted",
@@ -1149,6 +1168,315 @@ class OpenAIResponseObjectStreamResponseContentPartDone(BaseModel):
"""Event type identifier, always "response.content_part.done" """
+class OpenAIResponseObjectStreamResponseReasoningTextDelta(BaseModel):
+ content_index: int
+ """Index position of the reasoning content part"""
+
+ delta: str
+ """Incremental reasoning text being added"""
+
+ item_id: str
+ """Unique identifier of the output item being updated"""
+
+ output_index: int
+ """Index position of the item in the output list"""
+
+ sequence_number: int
+ """Sequential number for ordering streaming events"""
+
+ type: Literal["response.reasoning_text.delta"]
+ """Event type identifier, always "response.reasoning_text.delta" """
+
+
+class OpenAIResponseObjectStreamResponseReasoningTextDone(BaseModel):
+ content_index: int
+ """Index position of the reasoning content part"""
+
+ item_id: str
+ """Unique identifier of the completed output item"""
+
+ output_index: int
+ """Index position of the item in the output list"""
+
+ sequence_number: int
+ """Sequential number for ordering streaming events"""
+
+ text: str
+ """Final complete reasoning text"""
+
+ type: Literal["response.reasoning_text.done"]
+ """Event type identifier, always "response.reasoning_text.done" """
+
+
+class OpenAIResponseObjectStreamResponseReasoningSummaryPartAddedPart(BaseModel):
+ text: str
+ """Summary text"""
+
+ type: Literal["summary_text"]
+ """Content part type identifier, always "summary_text" """
+
+
+class OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded(BaseModel):
+ item_id: str
+ """Unique identifier of the output item"""
+
+ output_index: int
+ """Index position of the output item"""
+
+ part: OpenAIResponseObjectStreamResponseReasoningSummaryPartAddedPart
+ """The summary part that was added"""
+
+ sequence_number: int
+ """Sequential number for ordering streaming events"""
+
+ summary_index: int
+ """Index of the summary part within the reasoning summary"""
+
+ type: Literal["response.reasoning_summary_part.added"]
+ """Event type identifier, always "response.reasoning_summary_part.added" """
+
+
+class OpenAIResponseObjectStreamResponseReasoningSummaryPartDonePart(BaseModel):
+ text: str
+ """Summary text"""
+
+ type: Literal["summary_text"]
+ """Content part type identifier, always "summary_text" """
+
+
+class OpenAIResponseObjectStreamResponseReasoningSummaryPartDone(BaseModel):
+ item_id: str
+ """Unique identifier of the output item"""
+
+ output_index: int
+ """Index position of the output item"""
+
+ part: OpenAIResponseObjectStreamResponseReasoningSummaryPartDonePart
+ """The completed summary part"""
+
+ sequence_number: int
+ """Sequential number for ordering streaming events"""
+
+ summary_index: int
+ """Index of the summary part within the reasoning summary"""
+
+ type: Literal["response.reasoning_summary_part.done"]
+ """Event type identifier, always "response.reasoning_summary_part.done" """
+
+
+class OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta(BaseModel):
+ delta: str
+ """Incremental summary text being added"""
+
+ item_id: str
+ """Unique identifier of the output item"""
+
+ output_index: int
+ """Index position of the output item"""
+
+ sequence_number: int
+ """Sequential number for ordering streaming events"""
+
+ summary_index: int
+ """Index of the summary part within the reasoning summary"""
+
+ type: Literal["response.reasoning_summary_text.delta"]
+ """Event type identifier, always "response.reasoning_summary_text.delta" """
+
+
+class OpenAIResponseObjectStreamResponseReasoningSummaryTextDone(BaseModel):
+ item_id: str
+ """Unique identifier of the output item"""
+
+ output_index: int
+ """Index position of the output item"""
+
+ sequence_number: int
+ """Sequential number for ordering streaming events"""
+
+ summary_index: int
+ """Index of the summary part within the reasoning summary"""
+
+ text: str
+ """Final complete summary text"""
+
+ type: Literal["response.reasoning_summary_text.done"]
+ """Event type identifier, always "response.reasoning_summary_text.done" """
+
+
+class OpenAIResponseObjectStreamResponseRefusalDelta(BaseModel):
+ content_index: int
+ """Index position of the content part"""
+
+ delta: str
+ """Incremental refusal text being added"""
+
+ item_id: str
+ """Unique identifier of the output item"""
+
+ output_index: int
+ """Index position of the item in the output list"""
+
+ sequence_number: int
+ """Sequential number for ordering streaming events"""
+
+ type: Literal["response.refusal.delta"]
+ """Event type identifier, always "response.refusal.delta" """
+
+
+class OpenAIResponseObjectStreamResponseRefusalDone(BaseModel):
+ content_index: int
+ """Index position of the content part"""
+
+ item_id: str
+ """Unique identifier of the output item"""
+
+ output_index: int
+ """Index position of the item in the output list"""
+
+ refusal: str
+ """Final complete refusal text"""
+
+ sequence_number: int
+ """Sequential number for ordering streaming events"""
+
+ type: Literal["response.refusal.done"]
+ """Event type identifier, always "response.refusal.done" """
+
+
+class OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotationOpenAIResponseAnnotationFileCitation(
+ BaseModel
+):
+ file_id: str
+ """Unique identifier of the referenced file"""
+
+ filename: str
+ """Name of the referenced file"""
+
+ index: int
+ """Position index of the citation within the content"""
+
+ type: Literal["file_citation"]
+ """Annotation type identifier, always "file_citation" """
+
+
+class OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotationOpenAIResponseAnnotationCitation(BaseModel):
+ end_index: int
+ """End position of the citation span in the content"""
+
+ start_index: int
+ """Start position of the citation span in the content"""
+
+ title: str
+ """Title of the referenced web resource"""
+
+ type: Literal["url_citation"]
+ """Annotation type identifier, always "url_citation" """
+
+ url: str
+ """URL of the referenced web resource"""
+
+
+class OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotationOpenAIResponseAnnotationContainerFileCitation(
+ BaseModel
+):
+ container_id: str
+
+ end_index: int
+
+ file_id: str
+
+ filename: str
+
+ start_index: int
+
+ type: Literal["container_file_citation"]
+
+
+class OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotationOpenAIResponseAnnotationFilePath(BaseModel):
+ file_id: str
+
+ index: int
+
+ type: Literal["file_path"]
+
+
+OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotation: TypeAlias = Annotated[
+ Union[
+ OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotationOpenAIResponseAnnotationFileCitation,
+ OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotationOpenAIResponseAnnotationCitation,
+ OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotationOpenAIResponseAnnotationContainerFileCitation,
+ OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotationOpenAIResponseAnnotationFilePath,
+ ],
+ PropertyInfo(discriminator="type"),
+]
+
+
+class OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded(BaseModel):
+ annotation: OpenAIResponseObjectStreamResponseOutputTextAnnotationAddedAnnotation
+ """The annotation object being added"""
+
+ annotation_index: int
+ """Index of the annotation within the content part"""
+
+ content_index: int
+ """Index position of the content part within the output item"""
+
+ item_id: str
+ """Unique identifier of the item to which the annotation is being added"""
+
+ output_index: int
+ """Index position of the output item in the response's output array"""
+
+ sequence_number: int
+ """Sequential number for ordering streaming events"""
+
+ type: Literal["response.output_text.annotation.added"]
+ """Event type identifier, always "response.output_text.annotation.added" """
+
+
+class OpenAIResponseObjectStreamResponseFileSearchCallInProgress(BaseModel):
+ item_id: str
+ """Unique identifier of the file search call"""
+
+ output_index: int
+ """Index position of the item in the output list"""
+
+ sequence_number: int
+ """Sequential number for ordering streaming events"""
+
+ type: Literal["response.file_search_call.in_progress"]
+ """Event type identifier, always "response.file_search_call.in_progress" """
+
+
+class OpenAIResponseObjectStreamResponseFileSearchCallSearching(BaseModel):
+ item_id: str
+ """Unique identifier of the file search call"""
+
+ output_index: int
+ """Index position of the item in the output list"""
+
+ sequence_number: int
+ """Sequential number for ordering streaming events"""
+
+ type: Literal["response.file_search_call.searching"]
+ """Event type identifier, always "response.file_search_call.searching" """
+
+
+class OpenAIResponseObjectStreamResponseFileSearchCallCompleted(BaseModel):
+ item_id: str
+ """Unique identifier of the completed file search call"""
+
+ output_index: int
+ """Index position of the item in the output list"""
+
+ sequence_number: int
+ """Sequential number for ordering streaming events"""
+
+ type: Literal["response.file_search_call.completed"]
+ """Event type identifier, always "response.file_search_call.completed" """
+
+
class OpenAIResponseObjectStreamResponseIncomplete(BaseModel):
response: ResponseObject
"""Response object describing the incomplete state"""
@@ -1202,6 +1530,18 @@ class OpenAIResponseObjectStreamResponseCompleted(BaseModel):
OpenAIResponseObjectStreamResponseMcpCallCompleted,
OpenAIResponseObjectStreamResponseContentPartAdded,
OpenAIResponseObjectStreamResponseContentPartDone,
+ OpenAIResponseObjectStreamResponseReasoningTextDelta,
+ OpenAIResponseObjectStreamResponseReasoningTextDone,
+ OpenAIResponseObjectStreamResponseReasoningSummaryPartAdded,
+ OpenAIResponseObjectStreamResponseReasoningSummaryPartDone,
+ OpenAIResponseObjectStreamResponseReasoningSummaryTextDelta,
+ OpenAIResponseObjectStreamResponseReasoningSummaryTextDone,
+ OpenAIResponseObjectStreamResponseRefusalDelta,
+ OpenAIResponseObjectStreamResponseRefusalDone,
+ OpenAIResponseObjectStreamResponseOutputTextAnnotationAdded,
+ OpenAIResponseObjectStreamResponseFileSearchCallInProgress,
+ OpenAIResponseObjectStreamResponseFileSearchCallSearching,
+ OpenAIResponseObjectStreamResponseFileSearchCallCompleted,
OpenAIResponseObjectStreamResponseIncomplete,
OpenAIResponseObjectStreamResponseFailed,
OpenAIResponseObjectStreamResponseCompleted,
diff --git a/src/llama_stack_client/types/safety_run_shield_params.py b/src/llama_stack_client/types/safety_run_shield_params.py
index 764be674..4e687a06 100644
--- a/src/llama_stack_client/types/safety_run_shield_params.py
+++ b/src/llama_stack_client/types/safety_run_shield_params.py
@@ -3,11 +3,29 @@
from __future__ import annotations
from typing import Dict, Union, Iterable
-from typing_extensions import Required, TypedDict
+from typing_extensions import Literal, Required, TypeAlias, TypedDict
-from .shared_params.message import Message
-
-__all__ = ["SafetyRunShieldParams"]
+__all__ = [
+ "SafetyRunShieldParams",
+ "Message",
+ "MessageOpenAIUserMessageParam",
+ "MessageOpenAIUserMessageParamContentUnionMember1",
+ "MessageOpenAIUserMessageParamContentUnionMember1OpenAIChatCompletionContentPartTextParam",
+ "MessageOpenAIUserMessageParamContentUnionMember1OpenAIChatCompletionContentPartImageParam",
+ "MessageOpenAIUserMessageParamContentUnionMember1OpenAIChatCompletionContentPartImageParamImageURL",
+ "MessageOpenAIUserMessageParamContentUnionMember1OpenAIFile",
+ "MessageOpenAIUserMessageParamContentUnionMember1OpenAIFileFile",
+ "MessageOpenAISystemMessageParam",
+ "MessageOpenAISystemMessageParamContentUnionMember1",
+ "MessageOpenAIAssistantMessageParam",
+ "MessageOpenAIAssistantMessageParamContentUnionMember1",
+ "MessageOpenAIAssistantMessageParamToolCall",
+ "MessageOpenAIAssistantMessageParamToolCallFunction",
+ "MessageOpenAIToolMessageParam",
+ "MessageOpenAIToolMessageParamContentUnionMember1",
+ "MessageOpenAIDeveloperMessageParam",
+ "MessageOpenAIDeveloperMessageParamContentUnionMember1",
+]
class SafetyRunShieldParams(TypedDict, total=False):
@@ -19,3 +37,181 @@ class SafetyRunShieldParams(TypedDict, total=False):
shield_id: Required[str]
"""The identifier of the shield to run."""
+
+
+class MessageOpenAIUserMessageParamContentUnionMember1OpenAIChatCompletionContentPartTextParam(TypedDict, total=False):
+ text: Required[str]
+ """The text content of the message"""
+
+ type: Required[Literal["text"]]
+ """Must be "text" to identify this as text content"""
+
+
+class MessageOpenAIUserMessageParamContentUnionMember1OpenAIChatCompletionContentPartImageParamImageURL(
+ TypedDict, total=False
+):
+ url: Required[str]
+ """URL of the image to include in the message"""
+
+ detail: str
+ """(Optional) Level of detail for image processing.
+
+ Can be "low", "high", or "auto"
+ """
+
+
+class MessageOpenAIUserMessageParamContentUnionMember1OpenAIChatCompletionContentPartImageParam(TypedDict, total=False):
+ image_url: Required[
+ MessageOpenAIUserMessageParamContentUnionMember1OpenAIChatCompletionContentPartImageParamImageURL
+ ]
+ """Image URL specification and processing details"""
+
+ type: Required[Literal["image_url"]]
+ """Must be "image_url" to identify this as image content"""
+
+
+class MessageOpenAIUserMessageParamContentUnionMember1OpenAIFileFile(TypedDict, total=False):
+ file_data: str
+
+ file_id: str
+
+ filename: str
+
+
+class MessageOpenAIUserMessageParamContentUnionMember1OpenAIFile(TypedDict, total=False):
+ file: Required[MessageOpenAIUserMessageParamContentUnionMember1OpenAIFileFile]
+
+ type: Required[Literal["file"]]
+
+
+MessageOpenAIUserMessageParamContentUnionMember1: TypeAlias = Union[
+ MessageOpenAIUserMessageParamContentUnionMember1OpenAIChatCompletionContentPartTextParam,
+ MessageOpenAIUserMessageParamContentUnionMember1OpenAIChatCompletionContentPartImageParam,
+ MessageOpenAIUserMessageParamContentUnionMember1OpenAIFile,
+]
+
+
+class MessageOpenAIUserMessageParam(TypedDict, total=False):
+ content: Required[Union[str, Iterable[MessageOpenAIUserMessageParamContentUnionMember1]]]
+ """The content of the message, which can include text and other media"""
+
+ role: Required[Literal["user"]]
+ """Must be "user" to identify this as a user message"""
+
+ name: str
+ """(Optional) The name of the user message participant."""
+
+
+class MessageOpenAISystemMessageParamContentUnionMember1(TypedDict, total=False):
+ text: Required[str]
+ """The text content of the message"""
+
+ type: Required[Literal["text"]]
+ """Must be "text" to identify this as text content"""
+
+
+class MessageOpenAISystemMessageParam(TypedDict, total=False):
+ content: Required[Union[str, Iterable[MessageOpenAISystemMessageParamContentUnionMember1]]]
+ """The content of the "system prompt".
+
+ If multiple system messages are provided, they are concatenated. The underlying
+ Llama Stack code may also add other system messages (for example, for formatting
+ tool definitions).
+ """
+
+ role: Required[Literal["system"]]
+ """Must be "system" to identify this as a system message"""
+
+ name: str
+ """(Optional) The name of the system message participant."""
+
+
+class MessageOpenAIAssistantMessageParamContentUnionMember1(TypedDict, total=False):
+ text: Required[str]
+ """The text content of the message"""
+
+ type: Required[Literal["text"]]
+ """Must be "text" to identify this as text content"""
+
+
+class MessageOpenAIAssistantMessageParamToolCallFunction(TypedDict, total=False):
+ arguments: str
+ """(Optional) Arguments to pass to the function as a JSON string"""
+
+ name: str
+ """(Optional) Name of the function to call"""
+
+
+class MessageOpenAIAssistantMessageParamToolCall(TypedDict, total=False):
+ type: Required[Literal["function"]]
+ """Must be "function" to identify this as a function call"""
+
+ id: str
+ """(Optional) Unique identifier for the tool call"""
+
+ function: MessageOpenAIAssistantMessageParamToolCallFunction
+ """(Optional) Function call details"""
+
+ index: int
+ """(Optional) Index of the tool call in the list"""
+
+
+class MessageOpenAIAssistantMessageParam(TypedDict, total=False):
+ role: Required[Literal["assistant"]]
+ """Must be "assistant" to identify this as the model's response"""
+
+ content: Union[str, Iterable[MessageOpenAIAssistantMessageParamContentUnionMember1]]
+ """The content of the model's response"""
+
+ name: str
+ """(Optional) The name of the assistant message participant."""
+
+ tool_calls: Iterable[MessageOpenAIAssistantMessageParamToolCall]
+ """List of tool calls. Each tool call is an OpenAIChatCompletionToolCall object."""
+
+
+class MessageOpenAIToolMessageParamContentUnionMember1(TypedDict, total=False):
+ text: Required[str]
+ """The text content of the message"""
+
+ type: Required[Literal["text"]]
+ """Must be "text" to identify this as text content"""
+
+
+class MessageOpenAIToolMessageParam(TypedDict, total=False):
+ content: Required[Union[str, Iterable[MessageOpenAIToolMessageParamContentUnionMember1]]]
+ """The response content from the tool"""
+
+ role: Required[Literal["tool"]]
+ """Must be "tool" to identify this as a tool response"""
+
+ tool_call_id: Required[str]
+ """Unique identifier for the tool call this response is for"""
+
+
+class MessageOpenAIDeveloperMessageParamContentUnionMember1(TypedDict, total=False):
+ text: Required[str]
+ """The text content of the message"""
+
+ type: Required[Literal["text"]]
+ """Must be "text" to identify this as text content"""
+
+
+class MessageOpenAIDeveloperMessageParam(TypedDict, total=False):
+ content: Required[Union[str, Iterable[MessageOpenAIDeveloperMessageParamContentUnionMember1]]]
+ """The content of the developer message"""
+
+ role: Required[Literal["developer"]]
+ """Must be "developer" to identify this as a developer message"""
+
+ name: str
+ """(Optional) The name of the developer message participant."""
+
+
+Message: TypeAlias = Union[
+ MessageOpenAIUserMessageParam,
+ MessageOpenAISystemMessageParam,
+ MessageOpenAIAssistantMessageParam,
+ MessageOpenAIToolMessageParam,
+ MessageOpenAIDeveloperMessageParam,
+]
diff --git a/src/llama_stack_client/types/vector_db_list_response.py b/src/llama_stack_client/types/vector_db_list_response.py
deleted file mode 100644
index 18034f52..00000000
--- a/src/llama_stack_client/types/vector_db_list_response.py
+++ /dev/null
@@ -1,30 +0,0 @@
-# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
-
-from typing import List, Optional
-from typing_extensions import Literal, TypeAlias
-
-from .._models import BaseModel
-
-__all__ = ["VectorDBListResponse", "VectorDBListResponseItem"]
-
-
-class VectorDBListResponseItem(BaseModel):
- embedding_dimension: int
- """Dimension of the embedding vectors"""
-
- embedding_model: str
- """Name of the embedding model to use for vector generation"""
-
- identifier: str
-
- provider_id: str
-
- type: Literal["vector_db"]
- """Type of resource, always 'vector_db' for vector databases"""
-
- provider_resource_id: Optional[str] = None
-
- vector_db_name: Optional[str] = None
-
-
-VectorDBListResponse: TypeAlias = List[VectorDBListResponseItem]
diff --git a/src/llama_stack_client/types/vector_db_register_params.py b/src/llama_stack_client/types/vector_db_register_params.py
deleted file mode 100644
index f7e3e7c7..00000000
--- a/src/llama_stack_client/types/vector_db_register_params.py
+++ /dev/null
@@ -1,27 +0,0 @@
-# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
-
-from __future__ import annotations
-
-from typing_extensions import Required, TypedDict
-
-__all__ = ["VectorDBRegisterParams"]
-
-
-class VectorDBRegisterParams(TypedDict, total=False):
- embedding_model: Required[str]
- """The embedding model to use."""
-
- vector_db_id: Required[str]
- """The identifier of the vector database to register."""
-
- embedding_dimension: int
- """The dimension of the embedding model."""
-
- provider_id: str
- """The identifier of the provider."""
-
- provider_vector_db_id: str
- """The identifier of the vector database in the provider."""
-
- vector_db_name: str
- """The name of the vector database."""
diff --git a/src/llama_stack_client/types/vector_db_register_response.py b/src/llama_stack_client/types/vector_db_register_response.py
deleted file mode 100644
index cf48dd5a..00000000
--- a/src/llama_stack_client/types/vector_db_register_response.py
+++ /dev/null
@@ -1,27 +0,0 @@
-# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
-
-from typing import Optional
-from typing_extensions import Literal
-
-from .._models import BaseModel
-
-__all__ = ["VectorDBRegisterResponse"]
-
-
-class VectorDBRegisterResponse(BaseModel):
- embedding_dimension: int
- """Dimension of the embedding vectors"""
-
- embedding_model: str
- """Name of the embedding model to use for vector generation"""
-
- identifier: str
-
- provider_id: str
-
- type: Literal["vector_db"]
- """Type of resource, always 'vector_db' for vector databases"""
-
- provider_resource_id: Optional[str] = None
-
- vector_db_name: Optional[str] = None
diff --git a/src/llama_stack_client/types/vector_db_retrieve_response.py b/src/llama_stack_client/types/vector_db_retrieve_response.py
deleted file mode 100644
index aa349d1c..00000000
--- a/src/llama_stack_client/types/vector_db_retrieve_response.py
+++ /dev/null
@@ -1,27 +0,0 @@
-# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
-
-from typing import Optional
-from typing_extensions import Literal
-
-from .._models import BaseModel
-
-__all__ = ["VectorDBRetrieveResponse"]
-
-
-class VectorDBRetrieveResponse(BaseModel):
- embedding_dimension: int
- """Dimension of the embedding vectors"""
-
- embedding_model: str
- """Name of the embedding model to use for vector generation"""
-
- identifier: str
-
- provider_id: str
-
- type: Literal["vector_db"]
- """Type of resource, always 'vector_db' for vector databases"""
-
- provider_resource_id: Optional[str] = None
-
- vector_db_name: Optional[str] = None
diff --git a/src/llama_stack_client/types/vector_store_create_params.py b/src/llama_stack_client/types/vector_store_create_params.py
index ccdb15c4..7eb3743b 100644
--- a/src/llama_stack_client/types/vector_store_create_params.py
+++ b/src/llama_stack_client/types/vector_store_create_params.py
@@ -12,31 +12,16 @@
class VectorStoreCreateParams(TypedDict, total=False):
chunking_strategy: Dict[str, Union[bool, float, str, Iterable[object], object, None]]
- """The chunking strategy used to chunk the file(s).
-
- If not set, will use the `auto` strategy.
- """
-
- embedding_dimension: int
- """The dimension of the embedding vectors (default: 384)."""
-
- embedding_model: str
- """The embedding model to use for this vector store."""
+ """(Optional) Strategy for splitting files into chunks"""
expires_after: Dict[str, Union[bool, float, str, Iterable[object], object, None]]
- """The expiration policy for a vector store."""
+ """(Optional) Expiration policy for the vector store"""
file_ids: SequenceNotStr[str]
- """A list of File IDs that the vector store should use.
-
- Useful for tools like `file_search` that can access files.
- """
+ """List of file IDs to include in the vector store"""
metadata: Dict[str, Union[bool, float, str, Iterable[object], object, None]]
- """Set of 16 key-value pairs that can be attached to an object."""
+ """Set of key-value pairs that can be attached to the vector store"""
name: str
- """A name for the vector store."""
-
- provider_id: str
- """The ID of the provider to use for this vector store."""
+ """(Optional) A name for the vector store"""
diff --git a/src/llama_stack_client/types/vector_stores/file_batch_create_params.py b/src/llama_stack_client/types/vector_stores/file_batch_create_params.py
index e6eba90a..ed1f28fe 100644
--- a/src/llama_stack_client/types/vector_stores/file_batch_create_params.py
+++ b/src/llama_stack_client/types/vector_stores/file_batch_create_params.py
@@ -18,13 +18,13 @@
class FileBatchCreateParams(TypedDict, total=False):
file_ids: Required[SequenceNotStr[str]]
- """A list of File IDs that the vector store should use."""
+ """A list of File IDs that the vector store should use"""
attributes: Dict[str, Union[bool, float, str, Iterable[object], object, None]]
- """(Optional) Key-value attributes to store with the files."""
+ """(Optional) Key-value attributes to store with the files"""
chunking_strategy: ChunkingStrategy
- """(Optional) The chunking strategy used to chunk the file(s). Defaults to auto."""
+ """(Optional) The chunking strategy used to chunk the file(s). Defaults to auto"""
class ChunkingStrategyVectorStoreChunkingStrategyAuto(TypedDict, total=False):
diff --git a/tests/api_resources/test_completions.py b/tests/api_resources/test_completions.py
index 355384b0..23964bdf 100644
--- a/tests/api_resources/test_completions.py
+++ b/tests/api_resources/test_completions.py
@@ -33,13 +33,11 @@ def test_method_create_with_all_params_overload_1(self, client: LlamaStackClient
best_of=0,
echo=True,
frequency_penalty=0,
- guided_choice=["string"],
logit_bias={"foo": 0},
logprobs=True,
max_tokens=0,
n=0,
presence_penalty=0,
- prompt_logprobs=0,
seed=0,
stop="string",
stream=False,
@@ -95,13 +93,11 @@ def test_method_create_with_all_params_overload_2(self, client: LlamaStackClient
best_of=0,
echo=True,
frequency_penalty=0,
- guided_choice=["string"],
logit_bias={"foo": 0},
logprobs=True,
max_tokens=0,
n=0,
presence_penalty=0,
- prompt_logprobs=0,
seed=0,
stop="string",
stream_options={"foo": True},
@@ -161,13 +157,11 @@ async def test_method_create_with_all_params_overload_1(self, async_client: Asyn
best_of=0,
echo=True,
frequency_penalty=0,
- guided_choice=["string"],
logit_bias={"foo": 0},
logprobs=True,
max_tokens=0,
n=0,
presence_penalty=0,
- prompt_logprobs=0,
seed=0,
stop="string",
stream=False,
@@ -223,13 +217,11 @@ async def test_method_create_with_all_params_overload_2(self, async_client: Asyn
best_of=0,
echo=True,
frequency_penalty=0,
- guided_choice=["string"],
logit_bias={"foo": 0},
logprobs=True,
max_tokens=0,
n=0,
presence_penalty=0,
- prompt_logprobs=0,
seed=0,
stop="string",
stream_options={"foo": True},
diff --git a/tests/api_resources/test_vector_dbs.py b/tests/api_resources/test_vector_dbs.py
deleted file mode 100644
index 1c4b855a..00000000
--- a/tests/api_resources/test_vector_dbs.py
+++ /dev/null
@@ -1,322 +0,0 @@
-# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
-
-from __future__ import annotations
-
-import os
-from typing import Any, cast
-
-import pytest
-
-from tests.utils import assert_matches_type
-from llama_stack_client import LlamaStackClient, AsyncLlamaStackClient
-from llama_stack_client.types import (
- VectorDBListResponse,
- VectorDBRegisterResponse,
- VectorDBRetrieveResponse,
-)
-
-base_url = os.environ.get("TEST_API_BASE_URL", "http://127.0.0.1:4010")
-
-
-class TestVectorDBs:
- parametrize = pytest.mark.parametrize("client", [False, True], indirect=True, ids=["loose", "strict"])
-
- @parametrize
- def test_method_retrieve(self, client: LlamaStackClient) -> None:
- vector_db = client.vector_dbs.retrieve(
- "vector_db_id",
- )
- assert_matches_type(VectorDBRetrieveResponse, vector_db, path=["response"])
-
- @parametrize
- def test_raw_response_retrieve(self, client: LlamaStackClient) -> None:
- response = client.vector_dbs.with_raw_response.retrieve(
- "vector_db_id",
- )
-
- assert response.is_closed is True
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- vector_db = response.parse()
- assert_matches_type(VectorDBRetrieveResponse, vector_db, path=["response"])
-
- @parametrize
- def test_streaming_response_retrieve(self, client: LlamaStackClient) -> None:
- with client.vector_dbs.with_streaming_response.retrieve(
- "vector_db_id",
- ) as response:
- assert not response.is_closed
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
-
- vector_db = response.parse()
- assert_matches_type(VectorDBRetrieveResponse, vector_db, path=["response"])
-
- assert cast(Any, response.is_closed) is True
-
- @parametrize
- def test_path_params_retrieve(self, client: LlamaStackClient) -> None:
- with pytest.raises(ValueError, match=r"Expected a non-empty value for `vector_db_id` but received ''"):
- client.vector_dbs.with_raw_response.retrieve(
- "",
- )
-
- @parametrize
- def test_method_list(self, client: LlamaStackClient) -> None:
- vector_db = client.vector_dbs.list()
- assert_matches_type(VectorDBListResponse, vector_db, path=["response"])
-
- @parametrize
- def test_raw_response_list(self, client: LlamaStackClient) -> None:
- response = client.vector_dbs.with_raw_response.list()
-
- assert response.is_closed is True
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- vector_db = response.parse()
- assert_matches_type(VectorDBListResponse, vector_db, path=["response"])
-
- @parametrize
- def test_streaming_response_list(self, client: LlamaStackClient) -> None:
- with client.vector_dbs.with_streaming_response.list() as response:
- assert not response.is_closed
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
-
- vector_db = response.parse()
- assert_matches_type(VectorDBListResponse, vector_db, path=["response"])
-
- assert cast(Any, response.is_closed) is True
-
- @parametrize
- def test_method_register(self, client: LlamaStackClient) -> None:
- vector_db = client.vector_dbs.register(
- embedding_model="embedding_model",
- vector_db_id="vector_db_id",
- )
- assert_matches_type(VectorDBRegisterResponse, vector_db, path=["response"])
-
- @parametrize
- def test_method_register_with_all_params(self, client: LlamaStackClient) -> None:
- vector_db = client.vector_dbs.register(
- embedding_model="embedding_model",
- vector_db_id="vector_db_id",
- embedding_dimension=0,
- provider_id="provider_id",
- provider_vector_db_id="provider_vector_db_id",
- vector_db_name="vector_db_name",
- )
- assert_matches_type(VectorDBRegisterResponse, vector_db, path=["response"])
-
- @parametrize
- def test_raw_response_register(self, client: LlamaStackClient) -> None:
- response = client.vector_dbs.with_raw_response.register(
- embedding_model="embedding_model",
- vector_db_id="vector_db_id",
- )
-
- assert response.is_closed is True
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- vector_db = response.parse()
- assert_matches_type(VectorDBRegisterResponse, vector_db, path=["response"])
-
- @parametrize
- def test_streaming_response_register(self, client: LlamaStackClient) -> None:
- with client.vector_dbs.with_streaming_response.register(
- embedding_model="embedding_model",
- vector_db_id="vector_db_id",
- ) as response:
- assert not response.is_closed
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
-
- vector_db = response.parse()
- assert_matches_type(VectorDBRegisterResponse, vector_db, path=["response"])
-
- assert cast(Any, response.is_closed) is True
-
- @parametrize
- def test_method_unregister(self, client: LlamaStackClient) -> None:
- vector_db = client.vector_dbs.unregister(
- "vector_db_id",
- )
- assert vector_db is None
-
- @parametrize
- def test_raw_response_unregister(self, client: LlamaStackClient) -> None:
- response = client.vector_dbs.with_raw_response.unregister(
- "vector_db_id",
- )
-
- assert response.is_closed is True
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- vector_db = response.parse()
- assert vector_db is None
-
- @parametrize
- def test_streaming_response_unregister(self, client: LlamaStackClient) -> None:
- with client.vector_dbs.with_streaming_response.unregister(
- "vector_db_id",
- ) as response:
- assert not response.is_closed
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
-
- vector_db = response.parse()
- assert vector_db is None
-
- assert cast(Any, response.is_closed) is True
-
- @parametrize
- def test_path_params_unregister(self, client: LlamaStackClient) -> None:
- with pytest.raises(ValueError, match=r"Expected a non-empty value for `vector_db_id` but received ''"):
- client.vector_dbs.with_raw_response.unregister(
- "",
- )
-
-
-class TestAsyncVectorDBs:
- parametrize = pytest.mark.parametrize(
- "async_client", [False, True, {"http_client": "aiohttp"}], indirect=True, ids=["loose", "strict", "aiohttp"]
- )
-
- @parametrize
- async def test_method_retrieve(self, async_client: AsyncLlamaStackClient) -> None:
- vector_db = await async_client.vector_dbs.retrieve(
- "vector_db_id",
- )
- assert_matches_type(VectorDBRetrieveResponse, vector_db, path=["response"])
-
- @parametrize
- async def test_raw_response_retrieve(self, async_client: AsyncLlamaStackClient) -> None:
- response = await async_client.vector_dbs.with_raw_response.retrieve(
- "vector_db_id",
- )
-
- assert response.is_closed is True
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- vector_db = await response.parse()
- assert_matches_type(VectorDBRetrieveResponse, vector_db, path=["response"])
-
- @parametrize
- async def test_streaming_response_retrieve(self, async_client: AsyncLlamaStackClient) -> None:
- async with async_client.vector_dbs.with_streaming_response.retrieve(
- "vector_db_id",
- ) as response:
- assert not response.is_closed
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
-
- vector_db = await response.parse()
- assert_matches_type(VectorDBRetrieveResponse, vector_db, path=["response"])
-
- assert cast(Any, response.is_closed) is True
-
- @parametrize
- async def test_path_params_retrieve(self, async_client: AsyncLlamaStackClient) -> None:
- with pytest.raises(ValueError, match=r"Expected a non-empty value for `vector_db_id` but received ''"):
- await async_client.vector_dbs.with_raw_response.retrieve(
- "",
- )
-
- @parametrize
- async def test_method_list(self, async_client: AsyncLlamaStackClient) -> None:
- vector_db = await async_client.vector_dbs.list()
- assert_matches_type(VectorDBListResponse, vector_db, path=["response"])
-
- @parametrize
- async def test_raw_response_list(self, async_client: AsyncLlamaStackClient) -> None:
- response = await async_client.vector_dbs.with_raw_response.list()
-
- assert response.is_closed is True
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- vector_db = await response.parse()
- assert_matches_type(VectorDBListResponse, vector_db, path=["response"])
-
- @parametrize
- async def test_streaming_response_list(self, async_client: AsyncLlamaStackClient) -> None:
- async with async_client.vector_dbs.with_streaming_response.list() as response:
- assert not response.is_closed
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
-
- vector_db = await response.parse()
- assert_matches_type(VectorDBListResponse, vector_db, path=["response"])
-
- assert cast(Any, response.is_closed) is True
-
- @parametrize
- async def test_method_register(self, async_client: AsyncLlamaStackClient) -> None:
- vector_db = await async_client.vector_dbs.register(
- embedding_model="embedding_model",
- vector_db_id="vector_db_id",
- )
- assert_matches_type(VectorDBRegisterResponse, vector_db, path=["response"])
-
- @parametrize
- async def test_method_register_with_all_params(self, async_client: AsyncLlamaStackClient) -> None:
- vector_db = await async_client.vector_dbs.register(
- embedding_model="embedding_model",
- vector_db_id="vector_db_id",
- embedding_dimension=0,
- provider_id="provider_id",
- provider_vector_db_id="provider_vector_db_id",
- vector_db_name="vector_db_name",
- )
- assert_matches_type(VectorDBRegisterResponse, vector_db, path=["response"])
-
- @parametrize
- async def test_raw_response_register(self, async_client: AsyncLlamaStackClient) -> None:
- response = await async_client.vector_dbs.with_raw_response.register(
- embedding_model="embedding_model",
- vector_db_id="vector_db_id",
- )
-
- assert response.is_closed is True
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- vector_db = await response.parse()
- assert_matches_type(VectorDBRegisterResponse, vector_db, path=["response"])
-
- @parametrize
- async def test_streaming_response_register(self, async_client: AsyncLlamaStackClient) -> None:
- async with async_client.vector_dbs.with_streaming_response.register(
- embedding_model="embedding_model",
- vector_db_id="vector_db_id",
- ) as response:
- assert not response.is_closed
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
-
- vector_db = await response.parse()
- assert_matches_type(VectorDBRegisterResponse, vector_db, path=["response"])
-
- assert cast(Any, response.is_closed) is True
-
- @parametrize
- async def test_method_unregister(self, async_client: AsyncLlamaStackClient) -> None:
- vector_db = await async_client.vector_dbs.unregister(
- "vector_db_id",
- )
- assert vector_db is None
-
- @parametrize
- async def test_raw_response_unregister(self, async_client: AsyncLlamaStackClient) -> None:
- response = await async_client.vector_dbs.with_raw_response.unregister(
- "vector_db_id",
- )
-
- assert response.is_closed is True
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
- vector_db = await response.parse()
- assert vector_db is None
-
- @parametrize
- async def test_streaming_response_unregister(self, async_client: AsyncLlamaStackClient) -> None:
- async with async_client.vector_dbs.with_streaming_response.unregister(
- "vector_db_id",
- ) as response:
- assert not response.is_closed
- assert response.http_request.headers.get("X-Stainless-Lang") == "python"
-
- vector_db = await response.parse()
- assert vector_db is None
-
- assert cast(Any, response.is_closed) is True
-
- @parametrize
- async def test_path_params_unregister(self, async_client: AsyncLlamaStackClient) -> None:
- with pytest.raises(ValueError, match=r"Expected a non-empty value for `vector_db_id` but received ''"):
- await async_client.vector_dbs.with_raw_response.unregister(
- "",
- )
diff --git a/tests/api_resources/test_vector_stores.py b/tests/api_resources/test_vector_stores.py
index 3918624b..2aed2e9e 100644
--- a/tests/api_resources/test_vector_stores.py
+++ b/tests/api_resources/test_vector_stores.py
@@ -31,13 +31,10 @@ def test_method_create(self, client: LlamaStackClient) -> None:
def test_method_create_with_all_params(self, client: LlamaStackClient) -> None:
vector_store = client.vector_stores.create(
chunking_strategy={"foo": True},
- embedding_dimension=0,
- embedding_model="embedding_model",
expires_after={"foo": True},
file_ids=["string"],
metadata={"foo": True},
name="name",
- provider_id="provider_id",
)
assert_matches_type(VectorStore, vector_store, path=["response"])
@@ -293,13 +290,10 @@ async def test_method_create(self, async_client: AsyncLlamaStackClient) -> None:
async def test_method_create_with_all_params(self, async_client: AsyncLlamaStackClient) -> None:
vector_store = await async_client.vector_stores.create(
chunking_strategy={"foo": True},
- embedding_dimension=0,
- embedding_model="embedding_model",
expires_after={"foo": True},
file_ids=["string"],
metadata={"foo": True},
name="name",
- provider_id="provider_id",
)
assert_matches_type(VectorStore, vector_store, path=["response"])
From 6baddc53e7645b78d009fe3e3d6c883ed076eec5 Mon Sep 17 00:00:00 2001
From: "stainless-app[bot]"
<142633134+stainless-app[bot]@users.noreply.github.com>
Date: Mon, 13 Oct 2025 01:51:56 +0000
Subject: [PATCH 3/3] release: 0.3.0-alpha.6
---
.release-please-manifest.json | 2 +-
CHANGELOG.md | 13 +++++++++++++
pyproject.toml | 2 +-
3 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 270368cb..f8093838 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,3 +1,3 @@
{
- ".": "0.3.0-alpha.5"
+ ".": "0.3.0-alpha.6"
}
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b4c4268b..cc3fcc10 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,18 @@
# Changelog
+## 0.3.0-alpha.6 (2025-10-13)
+
+Full Changelog: [v0.3.0-alpha.5...v0.3.0-alpha.6](https://github.com/llamastack/llama-stack-client-python/compare/v0.3.0-alpha.5...v0.3.0-alpha.6)
+
+### Features
+
+* **api:** updates to vector_store, etc. ([6c796ca](https://github.com/llamastack/llama-stack-client-python/commit/6c796ca49ee5e38c2951216558151fe349a303bf))
+
+
+### Chores
+
+* **internal:** detect missing future annotations with ruff ([e497f03](https://github.com/llamastack/llama-stack-client-python/commit/e497f0391aad3e75dceee288e299e0f74bd7f294))
+
## 0.3.0-alpha.5 (2025-10-10)
Full Changelog: [v0.3.0-alpha.4...v0.3.0-alpha.5](https://github.com/llamastack/llama-stack-client-python/compare/v0.3.0-alpha.4...v0.3.0-alpha.5)
diff --git a/pyproject.toml b/pyproject.toml
index 01c27c43..63c6129a 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,6 +1,6 @@
[project]
name = "llama_stack_client"
-version = "0.3.0-alpha.5"
+version = "0.3.0-alpha.6"
description = "The official Python library for the llama-stack-client API"
dynamic = ["readme"]
license = "MIT"