Skip to content

Commit 6e0dcff

Browse files
feat(api): SDKs for vector store file batches apis
1 parent ee323a0 commit 6e0dcff

File tree

18 files changed

+1750
-5
lines changed

18 files changed

+1750
-5
lines changed

.stats.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
configured_endpoints: 102
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/llamastack%2Fllama-stack-client-3c569913f686c852ab392d470b9d905cc944d5a46a2324a21aa1376fb24e6714.yml
3-
openapi_spec_hash: 455f397c5f401ea425a4064bb39c6801
1+
configured_endpoints: 109
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/llamastack%2Fllama-stack-client-05bb7b0636a86ad0b485a5f2abfbd6b9e1873e802235f340af291f9ad9fb03b3.yml
3+
openapi_spec_hash: a78c30e308bc39473ea8e9ae9d0b726c
44
config_hash: 53c09ba1fdae5045de1860c479a51dc7

api.md

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,11 @@ Methods:
351351
Types:
352352

353353
```python
354-
from llama_stack_client.types.vector_stores import VectorStoreFile, FileDeleteResponse
354+
from llama_stack_client.types.vector_stores import (
355+
VectorStoreFile,
356+
FileDeleteResponse,
357+
FileContentResponse,
358+
)
355359
```
356360

357361
Methods:
@@ -361,6 +365,25 @@ Methods:
361365
- <code title="post /v1/vector_stores/{vector_store_id}/files/{file_id}">client.vector_stores.files.<a href="./src/llama_stack_client/resources/vector_stores/files.py">update</a>(file_id, \*, vector_store_id, \*\*<a href="src/llama_stack_client/types/vector_stores/file_update_params.py">params</a>) -> <a href="./src/llama_stack_client/types/vector_stores/vector_store_file.py">VectorStoreFile</a></code>
362366
- <code title="get /v1/vector_stores/{vector_store_id}/files">client.vector_stores.files.<a href="./src/llama_stack_client/resources/vector_stores/files.py">list</a>(vector_store_id, \*\*<a href="src/llama_stack_client/types/vector_stores/file_list_params.py">params</a>) -> <a href="./src/llama_stack_client/types/vector_stores/vector_store_file.py">SyncOpenAICursorPage[VectorStoreFile]</a></code>
363367
- <code title="delete /v1/vector_stores/{vector_store_id}/files/{file_id}">client.vector_stores.files.<a href="./src/llama_stack_client/resources/vector_stores/files.py">delete</a>(file_id, \*, vector_store_id) -> <a href="./src/llama_stack_client/types/vector_stores/file_delete_response.py">FileDeleteResponse</a></code>
368+
- <code title="get /v1/vector_stores/{vector_store_id}/files/{file_id}/content">client.vector_stores.files.<a href="./src/llama_stack_client/resources/vector_stores/files.py">content</a>(file_id, \*, vector_store_id) -> <a href="./src/llama_stack_client/types/vector_stores/file_content_response.py">FileContentResponse</a></code>
369+
370+
## FileBatches
371+
372+
Types:
373+
374+
```python
375+
from llama_stack_client.types.vector_stores import (
376+
ListVectorStoreFilesInBatchResponse,
377+
VectorStoreFileBatches,
378+
)
379+
```
380+
381+
Methods:
382+
383+
- <code title="post /v1/vector_stores/{vector_store_id}/file_batches">client.vector_stores.file_batches.<a href="./src/llama_stack_client/resources/vector_stores/file_batches.py">create</a>(vector_store_id, \*\*<a href="src/llama_stack_client/types/vector_stores/file_batch_create_params.py">params</a>) -> <a href="./src/llama_stack_client/types/vector_stores/vector_store_file_batches.py">VectorStoreFileBatches</a></code>
384+
- <code title="get /v1/vector_stores/{vector_store_id}/file_batches/{batch_id}">client.vector_stores.file_batches.<a href="./src/llama_stack_client/resources/vector_stores/file_batches.py">retrieve</a>(batch_id, \*, vector_store_id) -> <a href="./src/llama_stack_client/types/vector_stores/vector_store_file_batches.py">VectorStoreFileBatches</a></code>
385+
- <code title="get /v1/vector_stores/{vector_store_id}/file_batches/{batch_id}/files">client.vector_stores.file_batches.<a href="./src/llama_stack_client/resources/vector_stores/file_batches.py">list</a>(batch_id, \*, vector_store_id, \*\*<a href="src/llama_stack_client/types/vector_stores/file_batch_list_params.py">params</a>) -> <a href="./src/llama_stack_client/types/vector_stores/vector_store_file.py">SyncOpenAICursorPage[VectorStoreFile]</a></code>
386+
- <code title="post /v1/vector_stores/{vector_store_id}/file_batches/{batch_id}/cancel">client.vector_stores.file_batches.<a href="./src/llama_stack_client/resources/vector_stores/file_batches.py">cancel</a>(batch_id, \*, vector_store_id) -> <a href="./src/llama_stack_client/types/vector_stores/vector_store_file_batches.py">VectorStoreFileBatches</a></code>
364387

365388
# Models
366389

@@ -584,5 +607,7 @@ from llama_stack_client.types import DeleteFileResponse, File, ListFilesResponse
584607
Methods:
585608

586609
- <code title="post /v1/files">client.files.<a href="./src/llama_stack_client/resources/files.py">create</a>(\*\*<a href="src/llama_stack_client/types/file_create_params.py">params</a>) -> <a href="./src/llama_stack_client/types/file.py">File</a></code>
610+
- <code title="get /v1/files/{file_id}">client.files.<a href="./src/llama_stack_client/resources/files.py">retrieve</a>(file_id) -> <a href="./src/llama_stack_client/types/file.py">File</a></code>
587611
- <code title="get /v1/files">client.files.<a href="./src/llama_stack_client/resources/files.py">list</a>(\*\*<a href="src/llama_stack_client/types/file_list_params.py">params</a>) -> <a href="./src/llama_stack_client/types/file.py">SyncOpenAICursorPage[File]</a></code>
612+
- <code title="delete /v1/files/{file_id}">client.files.<a href="./src/llama_stack_client/resources/files.py">delete</a>(file_id) -> <a href="./src/llama_stack_client/types/delete_file_response.py">DeleteFileResponse</a></code>
588613
- <code title="get /v1/files/{file_id}/content">client.files.<a href="./src/llama_stack_client/resources/files.py">content</a>(file_id) -> object</code>

src/llama_stack_client/resources/files.py

Lines changed: 157 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
from ..pagination import SyncOpenAICursorPage, AsyncOpenAICursorPage
2222
from ..types.file import File
2323
from .._base_client import AsyncPaginator, make_request_options
24+
from ..types.delete_file_response import DeleteFileResponse
2425

2526
__all__ = ["FilesResource", "AsyncFilesResource"]
2627

@@ -106,6 +107,39 @@ def create(
106107
cast_to=File,
107108
)
108109

110+
def retrieve(
111+
self,
112+
file_id: str,
113+
*,
114+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
115+
# The extra values given here take precedence over values defined on the client or passed to this method.
116+
extra_headers: Headers | None = None,
117+
extra_query: Query | None = None,
118+
extra_body: Body | None = None,
119+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
120+
) -> File:
121+
"""
122+
Returns information about a specific file.
123+
124+
Args:
125+
extra_headers: Send extra headers
126+
127+
extra_query: Add additional query parameters to the request
128+
129+
extra_body: Add additional JSON properties to the request
130+
131+
timeout: Override the client-level default timeout for this request, in seconds
132+
"""
133+
if not file_id:
134+
raise ValueError(f"Expected a non-empty value for `file_id` but received {file_id!r}")
135+
return self._get(
136+
f"/v1/files/{file_id}",
137+
options=make_request_options(
138+
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
139+
),
140+
cast_to=File,
141+
)
142+
109143
def list(
110144
self,
111145
*,
@@ -166,6 +200,39 @@ def list(
166200
model=File,
167201
)
168202

203+
def delete(
204+
self,
205+
file_id: str,
206+
*,
207+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
208+
# The extra values given here take precedence over values defined on the client or passed to this method.
209+
extra_headers: Headers | None = None,
210+
extra_query: Query | None = None,
211+
extra_body: Body | None = None,
212+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
213+
) -> DeleteFileResponse:
214+
"""
215+
Delete a file.
216+
217+
Args:
218+
extra_headers: Send extra headers
219+
220+
extra_query: Add additional query parameters to the request
221+
222+
extra_body: Add additional JSON properties to the request
223+
224+
timeout: Override the client-level default timeout for this request, in seconds
225+
"""
226+
if not file_id:
227+
raise ValueError(f"Expected a non-empty value for `file_id` but received {file_id!r}")
228+
return self._delete(
229+
f"/v1/files/{file_id}",
230+
options=make_request_options(
231+
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
232+
),
233+
cast_to=DeleteFileResponse,
234+
)
235+
169236
def content(
170237
self,
171238
file_id: str,
@@ -281,6 +348,39 @@ async def create(
281348
cast_to=File,
282349
)
283350

351+
async def retrieve(
352+
self,
353+
file_id: str,
354+
*,
355+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
356+
# The extra values given here take precedence over values defined on the client or passed to this method.
357+
extra_headers: Headers | None = None,
358+
extra_query: Query | None = None,
359+
extra_body: Body | None = None,
360+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
361+
) -> File:
362+
"""
363+
Returns information about a specific file.
364+
365+
Args:
366+
extra_headers: Send extra headers
367+
368+
extra_query: Add additional query parameters to the request
369+
370+
extra_body: Add additional JSON properties to the request
371+
372+
timeout: Override the client-level default timeout for this request, in seconds
373+
"""
374+
if not file_id:
375+
raise ValueError(f"Expected a non-empty value for `file_id` but received {file_id!r}")
376+
return await self._get(
377+
f"/v1/files/{file_id}",
378+
options=make_request_options(
379+
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
380+
),
381+
cast_to=File,
382+
)
383+
284384
def list(
285385
self,
286386
*,
@@ -341,6 +441,39 @@ def list(
341441
model=File,
342442
)
343443

444+
async def delete(
445+
self,
446+
file_id: str,
447+
*,
448+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
449+
# The extra values given here take precedence over values defined on the client or passed to this method.
450+
extra_headers: Headers | None = None,
451+
extra_query: Query | None = None,
452+
extra_body: Body | None = None,
453+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
454+
) -> DeleteFileResponse:
455+
"""
456+
Delete a file.
457+
458+
Args:
459+
extra_headers: Send extra headers
460+
461+
extra_query: Add additional query parameters to the request
462+
463+
extra_body: Add additional JSON properties to the request
464+
465+
timeout: Override the client-level default timeout for this request, in seconds
466+
"""
467+
if not file_id:
468+
raise ValueError(f"Expected a non-empty value for `file_id` but received {file_id!r}")
469+
return await self._delete(
470+
f"/v1/files/{file_id}",
471+
options=make_request_options(
472+
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
473+
),
474+
cast_to=DeleteFileResponse,
475+
)
476+
344477
async def content(
345478
self,
346479
file_id: str,
@@ -382,9 +515,15 @@ def __init__(self, files: FilesResource) -> None:
382515
self.create = to_raw_response_wrapper(
383516
files.create,
384517
)
518+
self.retrieve = to_raw_response_wrapper(
519+
files.retrieve,
520+
)
385521
self.list = to_raw_response_wrapper(
386522
files.list,
387523
)
524+
self.delete = to_raw_response_wrapper(
525+
files.delete,
526+
)
388527
self.content = to_raw_response_wrapper(
389528
files.content,
390529
)
@@ -397,9 +536,15 @@ def __init__(self, files: AsyncFilesResource) -> None:
397536
self.create = async_to_raw_response_wrapper(
398537
files.create,
399538
)
539+
self.retrieve = async_to_raw_response_wrapper(
540+
files.retrieve,
541+
)
400542
self.list = async_to_raw_response_wrapper(
401543
files.list,
402544
)
545+
self.delete = async_to_raw_response_wrapper(
546+
files.delete,
547+
)
403548
self.content = async_to_raw_response_wrapper(
404549
files.content,
405550
)
@@ -412,9 +557,15 @@ def __init__(self, files: FilesResource) -> None:
412557
self.create = to_streamed_response_wrapper(
413558
files.create,
414559
)
560+
self.retrieve = to_streamed_response_wrapper(
561+
files.retrieve,
562+
)
415563
self.list = to_streamed_response_wrapper(
416564
files.list,
417565
)
566+
self.delete = to_streamed_response_wrapper(
567+
files.delete,
568+
)
418569
self.content = to_streamed_response_wrapper(
419570
files.content,
420571
)
@@ -427,9 +578,15 @@ def __init__(self, files: AsyncFilesResource) -> None:
427578
self.create = async_to_streamed_response_wrapper(
428579
files.create,
429580
)
581+
self.retrieve = async_to_streamed_response_wrapper(
582+
files.retrieve,
583+
)
430584
self.list = async_to_streamed_response_wrapper(
431585
files.list,
432586
)
587+
self.delete = async_to_streamed_response_wrapper(
588+
files.delete,
589+
)
433590
self.content = async_to_streamed_response_wrapper(
434591
files.content,
435592
)

src/llama_stack_client/resources/vector_stores/__init__.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,14 @@
88
FilesResourceWithStreamingResponse,
99
AsyncFilesResourceWithStreamingResponse,
1010
)
11+
from .file_batches import (
12+
FileBatchesResource,
13+
AsyncFileBatchesResource,
14+
FileBatchesResourceWithRawResponse,
15+
AsyncFileBatchesResourceWithRawResponse,
16+
FileBatchesResourceWithStreamingResponse,
17+
AsyncFileBatchesResourceWithStreamingResponse,
18+
)
1119
from .vector_stores import (
1220
VectorStoresResource,
1321
AsyncVectorStoresResource,
@@ -24,6 +32,12 @@
2432
"AsyncFilesResourceWithRawResponse",
2533
"FilesResourceWithStreamingResponse",
2634
"AsyncFilesResourceWithStreamingResponse",
35+
"FileBatchesResource",
36+
"AsyncFileBatchesResource",
37+
"FileBatchesResourceWithRawResponse",
38+
"AsyncFileBatchesResourceWithRawResponse",
39+
"FileBatchesResourceWithStreamingResponse",
40+
"AsyncFileBatchesResourceWithStreamingResponse",
2741
"VectorStoresResource",
2842
"AsyncVectorStoresResource",
2943
"VectorStoresResourceWithRawResponse",

0 commit comments

Comments
 (0)