22
33from __future__ import annotations
44
5- from typing import Optional
5+ from typing import Iterable , Optional
66
77import httpx
88
9- from ..._types import Body , Omit , Query , Headers , NotGiven , omit , not_given
9+ from ..._types import Body , Omit , Query , Headers , NotGiven , SequenceNotStr , omit , not_given
1010from ..._utils import maybe_transform , async_maybe_transform
1111from ..._compat import cached_property
1212from ..._resource import SyncAPIResource , AsyncAPIResource
1717 async_to_streamed_response_wrapper ,
1818)
1919from ..._base_client import make_request_options
20- from ...types .inference_pipelines import row_update_params
20+ from ...types .inference_pipelines import row_create_params , row_update_params
21+ from ...types .inference_pipelines .row_create_response import RowCreateResponse
2122from ...types .inference_pipelines .row_update_response import RowUpdateResponse
2223
2324__all__ = ["RowsResource" , "AsyncRowsResource" ]
@@ -43,6 +44,84 @@ def with_streaming_response(self) -> RowsResourceWithStreamingResponse:
4344 """
4445 return RowsResourceWithStreamingResponse (self )
4546
47+ def create (
48+ self ,
49+ inference_pipeline_id : str ,
50+ * ,
51+ asc : bool | Omit = omit ,
52+ page : int | Omit = omit ,
53+ per_page : int | Omit = omit ,
54+ sort_column : str | Omit = omit ,
55+ column_filters : Optional [Iterable [row_create_params .ColumnFilter ]] | Omit = omit ,
56+ exclude_row_id_list : Optional [Iterable [int ]] | Omit = omit ,
57+ not_search_query_and : Optional [SequenceNotStr [str ]] | Omit = omit ,
58+ not_search_query_or : Optional [SequenceNotStr [str ]] | Omit = omit ,
59+ row_id_list : Optional [Iterable [int ]] | Omit = omit ,
60+ search_query_and : Optional [SequenceNotStr [str ]] | Omit = omit ,
61+ search_query_or : Optional [SequenceNotStr [str ]] | Omit = omit ,
62+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
63+ # The extra values given here take precedence over values defined on the client or passed to this method.
64+ extra_headers : Headers | None = None ,
65+ extra_query : Query | None = None ,
66+ extra_body : Body | None = None ,
67+ timeout : float | httpx .Timeout | None | NotGiven = not_given ,
68+ ) -> RowCreateResponse :
69+ """
70+ A list of rows for an inference pipeline.
71+
72+ Args:
73+ asc: Whether or not to sort on the sortColumn in ascending order.
74+
75+ page: The page to return in a paginated query.
76+
77+ per_page: Maximum number of items to return per page.
78+
79+ sort_column: Name of the column to sort on
80+
81+ extra_headers: Send extra headers
82+
83+ extra_query: Add additional query parameters to the request
84+
85+ extra_body: Add additional JSON properties to the request
86+
87+ timeout: Override the client-level default timeout for this request, in seconds
88+ """
89+ if not inference_pipeline_id :
90+ raise ValueError (
91+ f"Expected a non-empty value for `inference_pipeline_id` but received { inference_pipeline_id !r} "
92+ )
93+ return self ._post (
94+ f"/inference-pipelines/{ inference_pipeline_id } /rows" ,
95+ body = maybe_transform (
96+ {
97+ "column_filters" : column_filters ,
98+ "exclude_row_id_list" : exclude_row_id_list ,
99+ "not_search_query_and" : not_search_query_and ,
100+ "not_search_query_or" : not_search_query_or ,
101+ "row_id_list" : row_id_list ,
102+ "search_query_and" : search_query_and ,
103+ "search_query_or" : search_query_or ,
104+ },
105+ row_create_params .RowCreateParams ,
106+ ),
107+ options = make_request_options (
108+ extra_headers = extra_headers ,
109+ extra_query = extra_query ,
110+ extra_body = extra_body ,
111+ timeout = timeout ,
112+ query = maybe_transform (
113+ {
114+ "asc" : asc ,
115+ "page" : page ,
116+ "per_page" : per_page ,
117+ "sort_column" : sort_column ,
118+ },
119+ row_create_params .RowCreateParams ,
120+ ),
121+ ),
122+ cast_to = RowCreateResponse ,
123+ )
124+
46125 def update (
47126 self ,
48127 inference_pipeline_id : str ,
@@ -115,6 +194,84 @@ def with_streaming_response(self) -> AsyncRowsResourceWithStreamingResponse:
115194 """
116195 return AsyncRowsResourceWithStreamingResponse (self )
117196
197+ async def create (
198+ self ,
199+ inference_pipeline_id : str ,
200+ * ,
201+ asc : bool | Omit = omit ,
202+ page : int | Omit = omit ,
203+ per_page : int | Omit = omit ,
204+ sort_column : str | Omit = omit ,
205+ column_filters : Optional [Iterable [row_create_params .ColumnFilter ]] | Omit = omit ,
206+ exclude_row_id_list : Optional [Iterable [int ]] | Omit = omit ,
207+ not_search_query_and : Optional [SequenceNotStr [str ]] | Omit = omit ,
208+ not_search_query_or : Optional [SequenceNotStr [str ]] | Omit = omit ,
209+ row_id_list : Optional [Iterable [int ]] | Omit = omit ,
210+ search_query_and : Optional [SequenceNotStr [str ]] | Omit = omit ,
211+ search_query_or : Optional [SequenceNotStr [str ]] | Omit = omit ,
212+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
213+ # The extra values given here take precedence over values defined on the client or passed to this method.
214+ extra_headers : Headers | None = None ,
215+ extra_query : Query | None = None ,
216+ extra_body : Body | None = None ,
217+ timeout : float | httpx .Timeout | None | NotGiven = not_given ,
218+ ) -> RowCreateResponse :
219+ """
220+ A list of rows for an inference pipeline.
221+
222+ Args:
223+ asc: Whether or not to sort on the sortColumn in ascending order.
224+
225+ page: The page to return in a paginated query.
226+
227+ per_page: Maximum number of items to return per page.
228+
229+ sort_column: Name of the column to sort on
230+
231+ extra_headers: Send extra headers
232+
233+ extra_query: Add additional query parameters to the request
234+
235+ extra_body: Add additional JSON properties to the request
236+
237+ timeout: Override the client-level default timeout for this request, in seconds
238+ """
239+ if not inference_pipeline_id :
240+ raise ValueError (
241+ f"Expected a non-empty value for `inference_pipeline_id` but received { inference_pipeline_id !r} "
242+ )
243+ return await self ._post (
244+ f"/inference-pipelines/{ inference_pipeline_id } /rows" ,
245+ body = await async_maybe_transform (
246+ {
247+ "column_filters" : column_filters ,
248+ "exclude_row_id_list" : exclude_row_id_list ,
249+ "not_search_query_and" : not_search_query_and ,
250+ "not_search_query_or" : not_search_query_or ,
251+ "row_id_list" : row_id_list ,
252+ "search_query_and" : search_query_and ,
253+ "search_query_or" : search_query_or ,
254+ },
255+ row_create_params .RowCreateParams ,
256+ ),
257+ options = make_request_options (
258+ extra_headers = extra_headers ,
259+ extra_query = extra_query ,
260+ extra_body = extra_body ,
261+ timeout = timeout ,
262+ query = await async_maybe_transform (
263+ {
264+ "asc" : asc ,
265+ "page" : page ,
266+ "per_page" : per_page ,
267+ "sort_column" : sort_column ,
268+ },
269+ row_create_params .RowCreateParams ,
270+ ),
271+ ),
272+ cast_to = RowCreateResponse ,
273+ )
274+
118275 async def update (
119276 self ,
120277 inference_pipeline_id : str ,
@@ -171,6 +328,9 @@ class RowsResourceWithRawResponse:
171328 def __init__ (self , rows : RowsResource ) -> None :
172329 self ._rows = rows
173330
331+ self .create = to_raw_response_wrapper (
332+ rows .create ,
333+ )
174334 self .update = to_raw_response_wrapper (
175335 rows .update ,
176336 )
@@ -180,6 +340,9 @@ class AsyncRowsResourceWithRawResponse:
180340 def __init__ (self , rows : AsyncRowsResource ) -> None :
181341 self ._rows = rows
182342
343+ self .create = async_to_raw_response_wrapper (
344+ rows .create ,
345+ )
183346 self .update = async_to_raw_response_wrapper (
184347 rows .update ,
185348 )
@@ -189,6 +352,9 @@ class RowsResourceWithStreamingResponse:
189352 def __init__ (self , rows : RowsResource ) -> None :
190353 self ._rows = rows
191354
355+ self .create = to_streamed_response_wrapper (
356+ rows .create ,
357+ )
192358 self .update = to_streamed_response_wrapper (
193359 rows .update ,
194360 )
@@ -198,6 +364,9 @@ class AsyncRowsResourceWithStreamingResponse:
198364 def __init__ (self , rows : AsyncRowsResource ) -> None :
199365 self ._rows = rows
200366
367+ self .create = async_to_streamed_response_wrapper (
368+ rows .create ,
369+ )
201370 self .update = async_to_streamed_response_wrapper (
202371 rows .update ,
203372 )
0 commit comments