orca-sdk 0.1.9__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. orca_sdk/__init__.py +30 -0
  2. orca_sdk/_shared/__init__.py +10 -0
  3. orca_sdk/_shared/metrics.py +634 -0
  4. orca_sdk/_shared/metrics_test.py +570 -0
  5. orca_sdk/_utils/__init__.py +0 -0
  6. orca_sdk/_utils/analysis_ui.py +196 -0
  7. orca_sdk/_utils/analysis_ui_style.css +51 -0
  8. orca_sdk/_utils/auth.py +65 -0
  9. orca_sdk/_utils/auth_test.py +31 -0
  10. orca_sdk/_utils/common.py +37 -0
  11. orca_sdk/_utils/data_parsing.py +129 -0
  12. orca_sdk/_utils/data_parsing_test.py +244 -0
  13. orca_sdk/_utils/pagination.py +126 -0
  14. orca_sdk/_utils/pagination_test.py +132 -0
  15. orca_sdk/_utils/prediction_result_ui.css +18 -0
  16. orca_sdk/_utils/prediction_result_ui.py +110 -0
  17. orca_sdk/_utils/tqdm_file_reader.py +12 -0
  18. orca_sdk/_utils/value_parser.py +45 -0
  19. orca_sdk/_utils/value_parser_test.py +39 -0
  20. orca_sdk/async_client.py +4104 -0
  21. orca_sdk/classification_model.py +1165 -0
  22. orca_sdk/classification_model_test.py +887 -0
  23. orca_sdk/client.py +4096 -0
  24. orca_sdk/conftest.py +382 -0
  25. orca_sdk/credentials.py +217 -0
  26. orca_sdk/credentials_test.py +121 -0
  27. orca_sdk/datasource.py +576 -0
  28. orca_sdk/datasource_test.py +463 -0
  29. orca_sdk/embedding_model.py +712 -0
  30. orca_sdk/embedding_model_test.py +206 -0
  31. orca_sdk/job.py +343 -0
  32. orca_sdk/job_test.py +108 -0
  33. orca_sdk/memoryset.py +3811 -0
  34. orca_sdk/memoryset_test.py +1150 -0
  35. orca_sdk/regression_model.py +841 -0
  36. orca_sdk/regression_model_test.py +595 -0
  37. orca_sdk/telemetry.py +742 -0
  38. orca_sdk/telemetry_test.py +119 -0
  39. orca_sdk-0.1.9.dist-info/METADATA +98 -0
  40. orca_sdk-0.1.9.dist-info/RECORD +41 -0
  41. orca_sdk-0.1.9.dist-info/WHEEL +4 -0
@@ -0,0 +1,4104 @@
1
+ # Do not edit this file manually! It is generated by scripts/codegen.py
2
+
3
+ from __future__ import annotations
4
+
5
+ import json
6
+ import logging
7
+ import os
8
+ import uuid
9
+ from contextlib import contextmanager
10
+ from contextvars import ContextVar
11
+ from string import Formatter
12
+ from typing import (
13
+ Any,
14
+ Callable,
15
+ Generator,
16
+ Literal,
17
+ Mapping,
18
+ NotRequired,
19
+ Self,
20
+ TypeAlias,
21
+ TypedDict,
22
+ cast,
23
+ overload,
24
+ )
25
+
26
+ from httpx import (
27
+ URL,
28
+ USE_CLIENT_DEFAULT,
29
+ AsyncBaseTransport,
30
+ AsyncClient,
31
+ AsyncHTTPTransport,
32
+ BaseTransport,
33
+ Headers,
34
+ HTTPTransport,
35
+ Limits,
36
+ Proxy,
37
+ Request,
38
+ Response,
39
+ Timeout,
40
+ )
41
+ from httpx._client import UseClientDefault # type: ignore
42
+ from httpx._types import AuthTypes # type: ignore
43
+ from httpx._types import CookieTypes # type: ignore
44
+ from httpx._types import FileTypes # type: ignore
45
+ from httpx._types import HeaderTypes # type: ignore
46
+ from httpx._types import RequestContent # type: ignore
47
+ from httpx._types import RequestExtensions # type: ignore
48
+ from httpx._types import TimeoutTypes # type: ignore
49
+ from httpx_retries import Retry, RetryTransport
50
+
51
+
52
+ class ActionRecommendation(TypedDict):
53
+ action: Literal["remove_duplicates", "detect_mislabels", "add_memories", "finetuning"]
54
+ """
55
+ The recommended action to take
56
+ """
57
+ rationale: str
58
+ """
59
+ Explanation for why this action was recommended
60
+ """
61
+
62
+
63
+ class AddMemorySuggestion(TypedDict):
64
+ value: str
65
+ label_name: str
66
+ similarity: NotRequired[float | None]
67
+
68
+
69
+ class AliveResponse(TypedDict):
70
+ ok: bool
71
+ checks: dict[str, bool]
72
+
73
+
74
+ class ApiKeyMetadata(TypedDict):
75
+ id: str
76
+ org_id: str
77
+ name: str
78
+ created_by: str | None
79
+ created_at: str
80
+ updated_at: str
81
+ scope: list[Literal["ADMINISTER", "PREDICT"]]
82
+
83
+
84
+ class BaseLabelPredictionResult(TypedDict):
85
+ prediction_id: str | None
86
+ confidence: float
87
+ anomaly_score: float | None
88
+ label: int | None
89
+ label_name: str | None
90
+ logits: list[float]
91
+
92
+
93
+ class BaseModel(TypedDict):
94
+ pass
95
+
96
+
97
+ class BaseScorePredictionResult(TypedDict):
98
+ prediction_id: str | None
99
+ confidence: float
100
+ anomaly_score: float | None
101
+ score: float | None
102
+
103
+
104
+ class CascadeEditSuggestionsRequest(TypedDict):
105
+ old_label: int | None
106
+ new_label: int
107
+ max_neighbors: NotRequired[int]
108
+ max_validation_neighbors: NotRequired[int]
109
+ similarity_threshold: NotRequired[float | None]
110
+ only_if_has_old_label: NotRequired[bool]
111
+ exclude_if_new_label: NotRequired[bool]
112
+ suggestion_cooldown_time: NotRequired[float]
113
+ label_confirmation_cooldown_time: NotRequired[float]
114
+
115
+
116
+ class ClassPattern(TypedDict):
117
+ label: int
118
+ name: str
119
+ description: str
120
+
121
+
122
+ class ClassPatternsDescription(TypedDict):
123
+ overview: str
124
+ classes: list[ClassPattern]
125
+ summary: str
126
+
127
+
128
+ class ClassRepresentatives(TypedDict):
129
+ label: int
130
+ label_name: str | None
131
+ representative_memory_ids: list[str]
132
+
133
+
134
+ class ClassificationEvaluationRequest(TypedDict):
135
+ datasource_name_or_id: str
136
+ memoryset_override_name_or_id: NotRequired[str | None]
137
+ datasource_label_column: str
138
+ datasource_value_column: str
139
+ record_telemetry: NotRequired[bool]
140
+ telemetry_tags: NotRequired[list[str] | None]
141
+ subsample: NotRequired[int | float | None]
142
+ ignore_unlabeled: NotRequired[bool]
143
+ datasource_partition_column: NotRequired[str | None]
144
+ partition_filter_mode: NotRequired[Literal["ignore_partitions", "include_global", "exclude_global", "only_global"]]
145
+
146
+
147
+ class CleanupResponse(TypedDict):
148
+ deleted_milvus_collections: list[str]
149
+ deleted_milvus_collections_count: int
150
+ deleted_blob_paths: list[str]
151
+ deleted_blob_paths_count: int
152
+
153
+
154
+ class ClusterMetrics(TypedDict):
155
+ cluster: int
156
+ memory_count: int
157
+
158
+
159
+ ColumnType: TypeAlias = Literal["STRING", "FLOAT", "INT", "BOOL", "ENUM", "IMAGE", "OTHER"]
160
+ """
161
+ The type of a column in a datasource
162
+ """
163
+
164
+
165
+ class ConstraintViolationErrorResponse(TypedDict):
166
+ status_code: Literal[409]
167
+ constraint: str
168
+
169
+
170
+ class CountPredictionsRequest(TypedDict):
171
+ model_id: NotRequired[str | None]
172
+ tag: NotRequired[str | None]
173
+ prediction_ids: NotRequired[list[str] | None]
174
+ start_timestamp: NotRequired[str | None]
175
+ end_timestamp: NotRequired[str | None]
176
+ memory_id: NotRequired[str | None]
177
+ expected_label_match: NotRequired[bool | None]
178
+
179
+
180
+ class CreateApiKeyRequest(TypedDict):
181
+ id: NotRequired[str]
182
+ name: NotRequired[str]
183
+ created_by: NotRequired[str | None]
184
+ scope: list[Literal["ADMINISTER", "PREDICT"]]
185
+
186
+
187
+ class CreateApiKeyResponse(TypedDict):
188
+ id: str
189
+ org_id: str
190
+ name: str
191
+ created_by: str | None
192
+ created_at: str
193
+ updated_at: str
194
+ scope: list[Literal["ADMINISTER", "PREDICT"]]
195
+ api_key: str
196
+
197
+
198
+ class CreateDatasourceFromContentRequest(TypedDict):
199
+ name: str
200
+ description: NotRequired[str | None]
201
+ content: Any
202
+
203
+
204
+ class CreateOrgPlanRequest(TypedDict):
205
+ tier: Literal["FREE", "PRO", "ENTERPRISE", "CANCELLED"]
206
+
207
+
208
+ class DatasetFilterItem(TypedDict):
209
+ field: str
210
+ op: Literal["==", "!=", ">", ">=", "<", "<=", "in", "not in", "like"]
211
+ value: Any
212
+
213
+
214
+ class DeleteMemoriesRequest(TypedDict):
215
+ memory_ids: list[str]
216
+
217
+
218
+ class DeleteMemorysetsRequest(TypedDict):
219
+ memoryset_ids: list[str]
220
+
221
+
222
+ class EmbedRequest(TypedDict):
223
+ values: list[str] | list[bytes] | list[str | bytes]
224
+ max_seq_length: NotRequired[int | None]
225
+ prompt: NotRequired[str | None]
226
+
227
+
228
+ class EmbeddingEvaluationRequest(TypedDict):
229
+ datasource_name_or_id: str
230
+ eval_datasource_name_or_id: NotRequired[str | None]
231
+ subsample: NotRequired[int | float | None]
232
+ datasource_value_column: NotRequired[str]
233
+ datasource_label_column: NotRequired[str | None]
234
+ datasource_score_column: NotRequired[str | None]
235
+ neighbor_count: NotRequired[int]
236
+ batch_size: NotRequired[int]
237
+ weigh_memories: NotRequired[bool]
238
+
239
+
240
+ EmbeddingFinetuningMethod: TypeAlias = Literal["classification", "regression", "batch_triplet_loss"]
241
+
242
+
243
+ class FeedbackMetrics(TypedDict):
244
+ avg: float | None
245
+ count: int
246
+
247
+
248
+ FeedbackType: TypeAlias = Literal["CONTINUOUS", "BINARY"]
249
+
250
+
251
+ class FilterItem(TypedDict):
252
+ field: (
253
+ tuple[
254
+ Literal[
255
+ "memory_id",
256
+ "value",
257
+ "label",
258
+ "metadata",
259
+ "source_id",
260
+ "partition_id",
261
+ "created_at",
262
+ "updated_at",
263
+ "edited_at",
264
+ "metrics",
265
+ "score",
266
+ "labels",
267
+ ]
268
+ ]
269
+ | tuple[Literal["metadata"], str]
270
+ | tuple[
271
+ Literal["metrics"],
272
+ Literal[
273
+ "cluster",
274
+ "embedding_2d",
275
+ "is_duplicate",
276
+ "duplicate_memory_ids",
277
+ "has_potential_duplicates",
278
+ "potential_duplicate_memory_ids",
279
+ "anomaly_score",
280
+ "neighbor_label_logits",
281
+ "neighbor_predicted_label",
282
+ "neighbor_predicted_label_ambiguity",
283
+ "neighbor_predicted_label_confidence",
284
+ "current_label_neighbor_confidence",
285
+ "normalized_neighbor_label_entropy",
286
+ "neighbor_predicted_label_matches_current_label",
287
+ "spread",
288
+ "uniformity",
289
+ "concept_id",
290
+ "subconcept_id",
291
+ ],
292
+ ]
293
+ )
294
+ op: Literal["==", "!=", ">", ">=", "<", "<=", "in", "not in", "like", "contains all", "contains any"]
295
+ value: str | int | float | bool | list[str | None] | list[int] | list[float] | list[bool] | None
296
+ transform: NotRequired[Literal["length"]]
297
+
298
+
299
+ class GetDatasourceRowCountRequest(TypedDict):
300
+ filters: NotRequired[list[DatasetFilterItem]]
301
+
302
+
303
+ class GetDatasourceRowsRequest(TypedDict):
304
+ filters: NotRequired[list[DatasetFilterItem]]
305
+ limit: NotRequired[int]
306
+ offset: NotRequired[int]
307
+ shuffle: NotRequired[bool]
308
+ shuffle_seed: NotRequired[int | None]
309
+
310
+
311
+ class GetMemoriesRequest(TypedDict):
312
+ memory_ids: list[str]
313
+
314
+
315
+ class HealthyResponse(TypedDict):
316
+ ok: bool
317
+ checks: dict[str, bool]
318
+ durations: dict[str, int]
319
+ draining: bool
320
+ config: dict[str, str | float | int | bool | None]
321
+
322
+
323
+ class InternalServerErrorResponse(TypedDict):
324
+ status_code: Literal[500]
325
+ message: str
326
+ request_id: str
327
+
328
+
329
+ JobStatus: TypeAlias = Literal[
330
+ "INITIALIZED", "DISPATCHED", "WAITING", "PROCESSING", "COMPLETED", "FAILED", "ABORTING", "ABORTED"
331
+ ]
332
+ """
333
+ Status of job in the job queue
334
+ """
335
+
336
+
337
+ class JobStatusInfo(TypedDict):
338
+ status: JobStatus
339
+ steps_total: int | None
340
+ steps_completed: int | None
341
+ exception: str | None
342
+ updated_at: str
343
+ created_at: str
344
+
345
+
346
+ class LabelClassMetrics(TypedDict):
347
+ label: int | None
348
+ label_name: NotRequired[str | None]
349
+ average_lookup_score: float | None
350
+ memory_count: int
351
+
352
+
353
+ class LabelPercentage(TypedDict):
354
+ label: int | None
355
+ percentage: float
356
+
357
+
358
+ class LabeledExample(TypedDict):
359
+ text: str
360
+ label_name: str
361
+
362
+
363
+ class LabeledMemoryInsert(TypedDict):
364
+ memory_id: NotRequired[str | None]
365
+ value: str | bytes
366
+ metadata: NotRequired[dict[str, str | int | float | bool | None]]
367
+ source_id: NotRequired[str | None]
368
+ partition_id: NotRequired[str | None]
369
+ label: int | None
370
+
371
+
372
+ class ListMemoriesRequest(TypedDict):
373
+ offset: NotRequired[int]
374
+ limit: NotRequired[int]
375
+ filters: NotRequired[list[FilterItem]]
376
+ partition_id: NotRequired[str | None]
377
+ partition_filter_mode: NotRequired[Literal["ignore_partitions", "include_global", "exclude_global", "only_global"]]
378
+
379
+
380
+ class LookupRequest(TypedDict):
381
+ query: list[str]
382
+ count: NotRequired[int]
383
+ prompt: NotRequired[str | None]
384
+ partition_id: NotRequired[str | list[str | None] | None]
385
+ partition_filter_mode: NotRequired[Literal["ignore_partitions", "include_global", "exclude_global", "only_global"]]
386
+
387
+
388
+ class LookupScoreMetrics(TypedDict):
389
+ median: float
390
+ std: float
391
+ quantiles: list[float]
392
+ quantile_values: list[float]
393
+
394
+
395
+ class MemoryMetrics(TypedDict):
396
+ is_duplicate: NotRequired[bool]
397
+ duplicate_memory_ids: NotRequired[list[str]]
398
+ has_potential_duplicates: NotRequired[bool]
399
+ potential_duplicate_memory_ids: NotRequired[list[str] | None]
400
+ cluster: NotRequired[int]
401
+ embedding_2d: NotRequired[tuple[float, float]]
402
+ anomaly_score: NotRequired[float]
403
+ neighbor_label_logits: NotRequired[list[float] | None]
404
+ neighbor_predicted_label: NotRequired[int | None]
405
+ neighbor_predicted_label_ambiguity: NotRequired[float]
406
+ neighbor_predicted_label_confidence: NotRequired[float]
407
+ current_label_neighbor_confidence: NotRequired[float]
408
+ normalized_neighbor_label_entropy: NotRequired[float]
409
+ neighbor_predicted_label_matches_current_label: NotRequired[bool | None]
410
+ spread: NotRequired[float]
411
+ uniformity: NotRequired[float]
412
+ concept_id: NotRequired[int | None]
413
+ subconcept_id: NotRequired[int | None]
414
+
415
+
416
+ MemoryType: TypeAlias = Literal["LABELED", "SCORED"]
417
+
418
+
419
+ class MemorysetClassPatternsAnalysisConfig(TypedDict):
420
+ representatives_per_class: NotRequired[int]
421
+ enable_patterns_description: NotRequired[bool]
422
+
423
+
424
+ class MemorysetClassPatternsMetrics(TypedDict):
425
+ class_representatives: list[ClassRepresentatives]
426
+ patterns_description: NotRequired[ClassPatternsDescription | None]
427
+ mean_spread: float
428
+ variance_spread: float
429
+ mean_uniformity: float
430
+ variance_uniformity: float
431
+ updated_at: str
432
+
433
+
434
+ class MemorysetClusterAnalysisConfig(TypedDict):
435
+ min_cluster_size: NotRequired[int | None]
436
+ max_cluster_size: NotRequired[int | None]
437
+ partitioning_method: NotRequired[Literal["ng", "rb", "cpm"]]
438
+ resolution: NotRequired[float | None]
439
+ num_iterations: NotRequired[int]
440
+ random_state: NotRequired[int | None]
441
+
442
+
443
+ class MemorysetClusterMetrics(TypedDict):
444
+ cluster_metrics: list[ClusterMetrics]
445
+ num_outliers: int
446
+ num_clusters: int
447
+ updated_at: str
448
+
449
+
450
+ class MemorysetConceptAnalysisConfig(TypedDict):
451
+ high_level_description: NotRequired[str | None]
452
+ max_sample_rows: NotRequired[int]
453
+ min_lookup_count: NotRequired[int]
454
+ max_lookup_count: NotRequired[int]
455
+ overlap_decay_tau: NotRequired[float]
456
+ target_lcc_fraction: NotRequired[float]
457
+ min_cluster_count: NotRequired[int]
458
+ max_cluster_count: NotRequired[int]
459
+ max_trial_count: NotRequired[int]
460
+ resolution: NotRequired[float]
461
+ iterations: NotRequired[int]
462
+ use_generative_naming: NotRequired[bool]
463
+ naming_examples_count: NotRequired[int]
464
+ naming_counterexample_count: NotRequired[int]
465
+ primary_label_pct_threshold: NotRequired[float]
466
+ seed: NotRequired[int]
467
+
468
+
469
+ class MemorysetDistributionAnalysisConfig(TypedDict):
470
+ neighbor_counts: NotRequired[list[int]]
471
+ quantiles: NotRequired[list[float]]
472
+
473
+
474
+ class MemorysetDistributionMetrics(TypedDict):
475
+ lookup_score_metrics: dict[str, LookupScoreMetrics]
476
+ updated_at: str
477
+
478
+
479
+ class MemorysetDuplicateAnalysisConfig(TypedDict):
480
+ potential_duplicate_threshold: NotRequired[float]
481
+
482
+
483
+ class MemorysetDuplicateMetrics(TypedDict):
484
+ num_duplicates: int
485
+ num_potential_duplicates: int
486
+ updated_at: str
487
+
488
+
489
+ class MemorysetLabelAnalysisConfig(TypedDict):
490
+ normalize_logits: NotRequired[bool]
491
+
492
+
493
+ class MemorysetLabelMetrics(TypedDict):
494
+ label_metrics: list[LabelClassMetrics]
495
+ neighbor_prediction_accuracy: float
496
+ mean_neighbor_label_confidence: float
497
+ mean_neighbor_label_entropy: float
498
+ mean_neighbor_predicted_label_ambiguity: float
499
+ num_no_labeled_neighbors: int
500
+ num_potential_mislabels: int
501
+ updated_at: str
502
+
503
+
504
+ class MemorysetProjectionAnalysisConfig(TypedDict):
505
+ min_dist: NotRequired[float]
506
+ spread: NotRequired[float]
507
+
508
+
509
+ class MemorysetProjectionMetrics(TypedDict):
510
+ updated_at: str
511
+
512
+
513
+ class MemorysetUpdate(TypedDict):
514
+ label_names: NotRequired[list[str]]
515
+ description: NotRequired[str | None]
516
+ name: NotRequired[str]
517
+ notes: NotRequired[str | None]
518
+ hidden: NotRequired[bool]
519
+
520
+
521
+ class NotFoundErrorResponse(TypedDict):
522
+ status_code: Literal[404]
523
+ resource: (
524
+ Literal[
525
+ "org",
526
+ "api_key",
527
+ "datasource",
528
+ "memoryset",
529
+ "classification_model",
530
+ "regression_model",
531
+ "prediction",
532
+ "memory",
533
+ "evaluation",
534
+ "analysis",
535
+ "job",
536
+ "pretrained_embedding_model",
537
+ "finetuned_embedding_model",
538
+ "feedback_category",
539
+ "org_plan",
540
+ "worker",
541
+ ]
542
+ | None
543
+ )
544
+
545
+
546
+ class OrgPlan(TypedDict):
547
+ org_id: str
548
+ created_at: str
549
+ updated_at: str
550
+ tier: Literal["FREE", "PRO", "ENTERPRISE", "CANCELLED"]
551
+
552
+
553
+ class PRCurve(TypedDict):
554
+ thresholds: list[float]
555
+ precisions: list[float]
556
+ recalls: list[float]
557
+
558
+
559
+ class PredictionFeedback(TypedDict):
560
+ prediction_id: str
561
+ category_name: str
562
+ value: float | bool
563
+ comment: str | None
564
+ id: str
565
+ org_id: str
566
+ category_id: str
567
+ category_type: FeedbackType
568
+ created_at: str
569
+ updated_at: str
570
+
571
+
572
+ class PredictionFeedbackCategory(TypedDict):
573
+ id: str
574
+ org_id: str
575
+ name: str
576
+ type: FeedbackType
577
+ created_at: str
578
+ updated_at: str
579
+
580
+
581
+ class PredictionFeedbackRequest(TypedDict):
582
+ prediction_id: str
583
+ category_name: str
584
+ value: NotRequired[float | bool | None]
585
+ """
586
+ The feedback value. For updates, UNSET means keep existing value. None means delete the feedback.
587
+ """
588
+ comment: NotRequired[str | None]
589
+ """
590
+ Optional comment. For updates, UNSET means keep existing comment. None means remove the comment.
591
+ """
592
+
593
+
594
+ class PredictionFeedbackResult(TypedDict):
595
+ prediction_ids: list[str]
596
+ deleted_feedback_ids: list[str]
597
+ updated_feedback_ids: list[str]
598
+ inserted_feedback_ids: list[str]
599
+ new_category_ids: list[str]
600
+
601
+
602
+ PredictionSort: TypeAlias = list[tuple[Literal["timestamp", "confidence", "anomaly_score"], Literal["asc", "desc"]]]
603
+
604
+
605
+ class PredictiveModelUpdate(TypedDict):
606
+ description: NotRequired[str | None]
607
+ notes: NotRequired[str | None]
608
+ locked: NotRequired[bool]
609
+
610
+
611
+ PretrainedEmbeddingModelName: TypeAlias = Literal[
612
+ "CLIP_BASE", "GTE_BASE", "CDE_SMALL", "DISTILBERT", "GTE_SMALL", "MXBAI_LARGE", "E5_LARGE", "BGE_BASE", "GIST_LARGE"
613
+ ]
614
+ """
615
+ Names of pretrained embedding models that are supported by OrcaCloud
616
+ """
617
+
618
+
619
+ RACHeadType: TypeAlias = Literal["KNN", "MMOE", "FF", "BMMOE"]
620
+
621
+
622
+ RARHeadType: TypeAlias = Literal["MMOE", "KNN"]
623
+
624
+
625
+ class ROCCurve(TypedDict):
626
+ thresholds: list[float]
627
+ false_positive_rates: list[float]
628
+ true_positive_rates: list[float]
629
+
630
+
631
+ class ReadyResponse(TypedDict):
632
+ ok: bool
633
+ draining: bool
634
+
635
+
636
+ class RegressionEvaluationRequest(TypedDict):
637
+ datasource_name_or_id: str
638
+ memoryset_override_name_or_id: NotRequired[str | None]
639
+ datasource_score_column: str
640
+ datasource_value_column: str
641
+ record_telemetry: NotRequired[bool]
642
+ telemetry_tags: NotRequired[list[str] | None]
643
+ subsample: NotRequired[int | float | None]
644
+ ignore_unlabeled: NotRequired[bool]
645
+ datasource_partition_column: NotRequired[str | None]
646
+ partition_filter_mode: NotRequired[Literal["ignore_partitions", "include_global", "exclude_global", "only_global"]]
647
+
648
+
649
+ class RegressionMetrics(TypedDict):
650
+ coverage: float
651
+ mse: float
652
+ rmse: float
653
+ mae: float
654
+ r2: float
655
+ explained_variance: float
656
+ loss: float
657
+ anomaly_score_mean: NotRequired[float | None]
658
+ anomaly_score_median: NotRequired[float | None]
659
+ anomaly_score_variance: NotRequired[float | None]
660
+
661
+
662
+ class RegressionModelMetadata(TypedDict):
663
+ id: str
664
+ org_id: str
665
+ name: str
666
+ description: str | None
667
+ notes: str | None
668
+ version: int
669
+ memoryset_id: str
670
+ memory_lookup_count: int
671
+ storage_path: str
672
+ memoryset_collection_name: str
673
+ created_at: str
674
+ updated_at: str
675
+ locked: bool
676
+ head_type: RARHeadType
677
+
678
+
679
+ class RegressionPredictionRequest(TypedDict):
680
+ input_values: list[str] | list[bytes] | list[str | bytes]
681
+ expected_scores: NotRequired[list[float] | None]
682
+ tags: NotRequired[list[str]]
683
+ memoryset_override_name_or_id: NotRequired[str | None]
684
+ save_telemetry: NotRequired[bool]
685
+ save_telemetry_synchronously: NotRequired[bool]
686
+ prompt: NotRequired[str | None]
687
+ use_lookup_cache: NotRequired[bool]
688
+ consistency_level: NotRequired[Literal["Bounded", "Session", "Strong", "Eventual"] | None]
689
+ ignore_unlabeled: NotRequired[bool]
690
+ partition_ids: NotRequired[str | list[str | None] | None]
691
+ partition_filter_mode: NotRequired[Literal["ignore_partitions", "include_global", "exclude_global", "only_global"]]
692
+
693
+
694
+ class ScorePredictionMemoryLookup(TypedDict):
695
+ value: str | bytes
696
+ embedding: list[float]
697
+ source_id: str | None
698
+ partition_id: str | None
699
+ metadata: dict[str, str | int | float | bool | None]
700
+ memory_id: str
701
+ memory_version: int
702
+ created_at: str
703
+ updated_at: str
704
+ edited_at: str
705
+ metrics: MemoryMetrics
706
+ lookup_score: float
707
+ score: float | None
708
+ prediction_id: str
709
+ attention_weight: float
710
+
711
+
712
+ class ScorePredictionWithMemoriesAndFeedback(TypedDict):
713
+ prediction_id: str
714
+ confidence: float
715
+ anomaly_score: float | None
716
+ score: float | None
717
+ timestamp: str
718
+ input_value: str | bytes
719
+ input_embedding: list[float]
720
+ expected_score: float | None
721
+ memories: list[ScorePredictionMemoryLookup]
722
+ org_id: str
723
+ memoryset_id: str
724
+ model_id: str
725
+ updated_at: str
726
+ tags: list[str]
727
+ explanation: str | None
728
+ memory_id: str | None
729
+ is_in_dense_neighborhood: NotRequired[bool | None]
730
+ feedbacks: list[PredictionFeedback]
731
+
732
+
733
+ class ScoredMemory(TypedDict):
734
+ value: str | bytes
735
+ embedding: list[float]
736
+ source_id: str | None
737
+ partition_id: str | None
738
+ metadata: dict[str, str | int | float | bool | None]
739
+ memory_id: str
740
+ memory_version: int
741
+ created_at: str
742
+ updated_at: str
743
+ edited_at: str
744
+ metrics: MemoryMetrics
745
+ score: float | None
746
+
747
+
748
+ class ScoredMemoryInsert(TypedDict):
749
+ memory_id: NotRequired[str | None]
750
+ value: str | bytes
751
+ metadata: NotRequired[dict[str, str | int | float | bool | None]]
752
+ source_id: NotRequired[str | None]
753
+ partition_id: NotRequired[str | None]
754
+ score: float | None
755
+
756
+
757
+ class ScoredMemoryLookup(TypedDict):
758
+ value: str | bytes
759
+ embedding: list[float]
760
+ source_id: str | None
761
+ partition_id: str | None
762
+ metadata: dict[str, str | int | float | bool | None]
763
+ memory_id: str
764
+ memory_version: int
765
+ created_at: str
766
+ updated_at: str
767
+ edited_at: str
768
+ metrics: MemoryMetrics
769
+ lookup_score: float
770
+ score: float | None
771
+
772
+
773
+ class ScoredMemoryUpdate(TypedDict):
774
+ memory_id: str
775
+ value: NotRequired[str | bytes]
776
+ metadata: NotRequired[dict[str, str | int | float | bool | None] | None]
777
+ source_id: NotRequired[str | None]
778
+ partition_id: NotRequired[str | None]
779
+ metrics: NotRequired[MemoryMetrics | None]
780
+ score: NotRequired[float | None]
781
+
782
+
783
+ class ScoredMemoryWithFeedbackMetrics(TypedDict):
784
+ value: str | bytes
785
+ embedding: list[float]
786
+ source_id: str | None
787
+ partition_id: str | None
788
+ metadata: dict[str, str | int | float | bool | None]
789
+ memory_id: str
790
+ memory_version: int
791
+ created_at: str
792
+ updated_at: str
793
+ edited_at: str
794
+ metrics: MemoryMetrics
795
+ score: float | None
796
+ feedback_metrics: dict[str, FeedbackMetrics]
797
+ lookup_count: int
798
+
799
+
800
+ class ServiceUnavailableErrorResponse(TypedDict):
801
+ status_code: Literal[503]
802
+ service: str
803
+
804
+
805
+ class SubConceptMetrics(TypedDict):
806
+ id: int
807
+ name: str
808
+ description: str | None
809
+ primary_label: int | None
810
+ memory_count: int
811
+
812
+
813
+ TelemetryField: TypeAlias = (
814
+ tuple[Literal["feedback_metrics"], str, Literal["avg", "count"]] | tuple[Literal["lookup"], Literal["count"]]
815
+ )
816
+
817
+
818
+ class TelemetryFilterItem(TypedDict):
819
+ field: TelemetryField
820
+ op: Literal["==", "!=", ">", ">=", "<", "<=", "in", "not in"]
821
+ value: float | list[float] | int | list[int]
822
+
823
+
824
+ class TelemetrySortOptions(TypedDict):
825
+ field: TelemetryField
826
+ direction: Literal["asc", "desc"]
827
+
828
+
829
+ class UnauthenticatedErrorResponse(TypedDict):
830
+ status_code: Literal[401]
831
+
832
+
833
+ class UnauthorizedErrorResponse(TypedDict):
834
+ status_code: Literal[403]
835
+ reason: str
836
+
837
+
838
+ class UpdateOrgPlanRequest(TypedDict):
839
+ tier: Literal["FREE", "PRO", "ENTERPRISE", "CANCELLED"]
840
+
841
+
842
+ class UpdatePredictionRequest(TypedDict):
843
+ expected_label: NotRequired[int | None]
844
+ expected_score: NotRequired[float | None]
845
+ tags: NotRequired[list[str]]
846
+ memory_id: NotRequired[str | None]
847
+
848
+
849
+ class ValidationError(TypedDict):
850
+ loc: list[str | int]
851
+ msg: str
852
+ type: str
853
+
854
+
855
+ WorkerStatus: TypeAlias = Literal["IDLE", "BUSY", "DRAINING", "SHUTDOWN", "CRASHED"]
856
+ """
857
+ Status of worker in the worker pool
858
+ """
859
+
860
+
861
+ class GetTestErrorByStatusCodeParams(TypedDict):
862
+ status_code: int | Literal["error", "warning"]
863
+
864
+
865
+ class DeleteAuthApiKeyByNameOrIdParams(TypedDict):
866
+ name_or_id: str
867
+
868
+
869
+ class GetMemorysetParams(TypedDict):
870
+ type: NotRequired[MemoryType | None]
871
+ show_hidden: NotRequired[bool | None]
872
+
873
+
874
+ class PostMemorysetByNameOrIdCloneParams(TypedDict):
875
+ name_or_id: str
876
+
877
+
878
+ class PatchMemorysetByNameOrIdParams(TypedDict):
879
+ name_or_id: str
880
+
881
+
882
+ class GetMemorysetByNameOrIdParams(TypedDict):
883
+ name_or_id: str
884
+
885
+
886
+ class DeleteMemorysetByNameOrIdParams(TypedDict):
887
+ name_or_id: str
888
+
889
+
890
+ class PostGpuMemorysetByNameOrIdLookupParams(TypedDict):
891
+ name_or_id: str
892
+
893
+
894
+ class GetMemorysetByNameOrIdMemoryByMemoryIdParams(TypedDict):
895
+ name_or_id: str
896
+ memory_id: str
897
+ """
898
+ ID of the memory
899
+ """
900
+
901
+
902
+ class DeleteMemorysetByNameOrIdMemoryByMemoryIdParams(TypedDict):
903
+ name_or_id: str
904
+ memory_id: str
905
+ """
906
+ ID of the memory
907
+ """
908
+
909
+
910
+ class GetMemorysetByNameOrIdPotentialDuplicateGroupsParams(TypedDict):
911
+ name_or_id: str
912
+
913
+
914
+ class PostMemorysetByNameOrIdMemoriesGetParams(TypedDict):
915
+ name_or_id: str
916
+
917
+
918
+ class PostMemorysetByNameOrIdMemoriesParams(TypedDict):
919
+ name_or_id: str
920
+
921
+
922
+ class PostMemorysetByNameOrIdMemoriesDeleteParams(TypedDict):
923
+ name_or_id: str
924
+
925
+
926
+ class PatchGpuMemorysetByNameOrIdMemoryParams(TypedDict):
927
+ name_or_id: str
928
+
929
+
930
+ class PostGpuMemorysetByNameOrIdMemoryParams(TypedDict):
931
+ name_or_id: str
932
+
933
+
934
+ PostGpuMemorysetByNameOrIdMemoryRequest: TypeAlias = list[LabeledMemoryInsert] | list[ScoredMemoryInsert]
935
+
936
+
937
+ class PatchGpuMemorysetByNameOrIdMemoriesParams(TypedDict):
938
+ name_or_id: str
939
+
940
+
941
+ class PostMemorysetByNameOrIdAnalysisParams(TypedDict):
942
+ name_or_id: str
943
+
944
+
945
+ class GetMemorysetByNameOrIdAnalysisParams(TypedDict):
946
+ name_or_id: str
947
+ status: NotRequired[JobStatus | None]
948
+ limit: NotRequired[int | None]
949
+ offset: NotRequired[int | None]
950
+
951
+
952
+ class GetMemorysetByNameOrIdAnalysisByAnalysisJobIdParams(TypedDict):
953
+ name_or_id: str
954
+ analysis_job_id: str
955
+
956
+
957
+ class PostMemorysetByNameOrIdMemoryByMemoryIdCascadingEditsParams(TypedDict):
958
+ name_or_id: str
959
+ memory_id: str
960
+
961
+
962
+ class GetFinetunedEmbeddingModelByNameOrIdParams(TypedDict):
963
+ name_or_id: str
964
+
965
+
966
+ class DeleteFinetunedEmbeddingModelByNameOrIdParams(TypedDict):
967
+ name_or_id: str
968
+
969
+
970
+ class PostGpuFinetunedEmbeddingModelByNameOrIdEmbeddingParams(TypedDict):
971
+ name_or_id: str
972
+
973
+
974
+ class GetPretrainedEmbeddingModelByModelNameParams(TypedDict):
975
+ model_name: PretrainedEmbeddingModelName
976
+
977
+
978
+ class PostGpuPretrainedEmbeddingModelByModelNameEmbeddingParams(TypedDict):
979
+ model_name: PretrainedEmbeddingModelName
980
+
981
+
982
+ class PostFinetunedEmbeddingModelByNameOrIdEvaluationParams(TypedDict):
983
+ name_or_id: str
984
+
985
+
986
+ class PostPretrainedEmbeddingModelByModelNameEvaluationParams(TypedDict):
987
+ model_name: PretrainedEmbeddingModelName
988
+
989
+
990
+ class GetFinetunedEmbeddingModelByNameOrIdEvaluationByJobIdParams(TypedDict):
991
+ name_or_id: str
992
+ job_id: str
993
+
994
+
995
+ class GetPretrainedEmbeddingModelByModelNameEvaluationByJobIdParams(TypedDict):
996
+ model_name: PretrainedEmbeddingModelName
997
+ job_id: str
998
+
999
+
1000
+ class GetFinetunedEmbeddingModelByNameOrIdEvaluationsParams(TypedDict):
1001
+ name_or_id: str
1002
+ datasource: NotRequired[str | None]
1003
+ value_column: NotRequired[str | None]
1004
+ label_column: NotRequired[str | None]
1005
+ score_column: NotRequired[str | None]
1006
+
1007
+
1008
+ class GetPretrainedEmbeddingModelByModelNameEvaluationsParams(TypedDict):
1009
+ model_name: PretrainedEmbeddingModelName
1010
+ datasource: NotRequired[str | None]
1011
+ value_column: NotRequired[str | None]
1012
+ label_column: NotRequired[str | None]
1013
+ score_column: NotRequired[str | None]
1014
+
1015
+
1016
+ class PostDatasourceUploadRequest(TypedDict):
1017
+ name: str
1018
+ """
1019
+ Name for the datasource
1020
+ """
1021
+ description: NotRequired[str | None]
1022
+ """
1023
+ Optional description for the datasource
1024
+ """
1025
+
1026
+
1027
+ class GetDatasourceByNameOrIdParams(TypedDict):
1028
+ name_or_id: str
1029
+
1030
+
1031
+ class DeleteDatasourceByNameOrIdParams(TypedDict):
1032
+ name_or_id: str
1033
+
1034
+
1035
+ class PostDatasourceByNameOrIdRowsParams(TypedDict):
1036
+ name_or_id: str
1037
+
1038
+
1039
+ class PostDatasourceByNameOrIdRowsCountParams(TypedDict):
1040
+ name_or_id: str
1041
+
1042
+
1043
+ class GetDatasourceByNameOrIdEmbeddingModelEvaluationsParams(TypedDict):
1044
+ name_or_id: str
1045
+ value_column: NotRequired[str | None]
1046
+ label_column: NotRequired[str | None]
1047
+ score_column: NotRequired[str | None]
1048
+
1049
+
1050
+ class GetDatasourceByNameOrIdDownloadParams(TypedDict):
1051
+ name_or_id: str
1052
+ file_type: NotRequired[Literal["hf_dataset", "json", "csv"]]
1053
+ """
1054
+ File type to download:
1055
+ * `hf_dataset`: Zipped HuggingFace dataset (default)
1056
+ * `json`: Row-oriented JSON array
1057
+ * `csv`: CSV file
1058
+ """
1059
+
1060
+
1061
+ class PatchClassificationModelByNameOrIdParams(TypedDict):
1062
+ name_or_id: str
1063
+
1064
+
1065
+ class GetClassificationModelByNameOrIdParams(TypedDict):
1066
+ name_or_id: str
1067
+
1068
+
1069
+ class DeleteClassificationModelByNameOrIdParams(TypedDict):
1070
+ name_or_id: str
1071
+
1072
+
1073
+ class PatchRegressionModelByNameOrIdParams(TypedDict):
1074
+ name_or_id: str
1075
+
1076
+
1077
+ class GetRegressionModelByNameOrIdParams(TypedDict):
1078
+ name_or_id: str
1079
+
1080
+
1081
+ class DeleteRegressionModelByNameOrIdParams(TypedDict):
1082
+ name_or_id: str
1083
+
1084
+
1085
+ class PostGpuClassificationModelByNameOrIdPredictionParams(TypedDict):
1086
+ name_or_id: str
1087
+
1088
+
1089
+ class PostClassificationModelByNameOrIdPredictionParams(TypedDict):
1090
+ name_or_id: str
1091
+
1092
+
1093
+ class PostGpuRegressionModelByNameOrIdPredictionParams(TypedDict):
1094
+ name_or_id: str
1095
+
1096
+
1097
+ class PostRegressionModelByNameOrIdPredictionParams(TypedDict):
1098
+ name_or_id: str
1099
+
1100
+
1101
+ class PostClassificationModelByModelNameOrIdEvaluationParams(TypedDict):
1102
+ model_name_or_id: str
1103
+
1104
+
1105
+ class GetClassificationModelByModelNameOrIdEvaluationParams(TypedDict):
1106
+ model_name_or_id: str
1107
+
1108
+
1109
+ class PostRegressionModelByModelNameOrIdEvaluationParams(TypedDict):
1110
+ model_name_or_id: str
1111
+
1112
+
1113
+ class GetRegressionModelByModelNameOrIdEvaluationParams(TypedDict):
1114
+ model_name_or_id: str
1115
+
1116
+
1117
+ class GetClassificationModelByModelNameOrIdEvaluationByJobIdParams(TypedDict):
1118
+ model_name_or_id: str
1119
+ job_id: str
1120
+
1121
+
1122
+ class DeleteClassificationModelByModelNameOrIdEvaluationByJobIdParams(TypedDict):
1123
+ model_name_or_id: str
1124
+ job_id: str
1125
+
1126
+
1127
+ class GetRegressionModelByModelNameOrIdEvaluationByJobIdParams(TypedDict):
1128
+ model_name_or_id: str
1129
+ job_id: str
1130
+
1131
+
1132
+ class DeleteRegressionModelByModelNameOrIdEvaluationByJobIdParams(TypedDict):
1133
+ model_name_or_id: str
1134
+ job_id: str
1135
+
1136
+
1137
+ class GetJobByJobIdParams(TypedDict):
1138
+ job_id: str
1139
+
1140
+
1141
+ class GetJobByJobIdStatusParams(TypedDict):
1142
+ job_id: str
1143
+
1144
+
1145
+ class GetJobParams(TypedDict):
1146
+ status: NotRequired[JobStatus | list[JobStatus] | None]
1147
+ type: NotRequired[str | list[str] | None]
1148
+ limit: NotRequired[int | None]
1149
+ offset: NotRequired[int]
1150
+ start_timestamp: NotRequired[str | None]
1151
+ end_timestamp: NotRequired[str | None]
1152
+
1153
+
1154
+ class DeleteJobByJobIdAbortParams(TypedDict):
1155
+ job_id: str
1156
+
1157
+
1158
+ class GetWorkerParams(TypedDict):
1159
+ status: NotRequired[WorkerStatus | list[WorkerStatus] | None]
1160
+ limit: NotRequired[int | None]
1161
+ offset: NotRequired[int]
1162
+
1163
+
1164
+ class GetWorkerByWorkerIdParams(TypedDict):
1165
+ worker_id: str
1166
+
1167
+
1168
+ class GetTelemetryPredictionByPredictionIdParams(TypedDict):
1169
+ prediction_id: str
1170
+ calc_neighborhood_density: NotRequired[bool]
1171
+ """
1172
+ Calculate neighborhood density
1173
+ """
1174
+
1175
+
1176
+ class PatchTelemetryPredictionByPredictionIdParams(TypedDict):
1177
+ prediction_id: str
1178
+
1179
+
1180
+ class GetTelemetryPredictionByPredictionIdExplanationParams(TypedDict):
1181
+ prediction_id: str
1182
+ refresh: NotRequired[bool]
1183
+
1184
+
1185
+ class GetTelemetryPredictionByPredictionIdActionParams(TypedDict):
1186
+ prediction_id: str
1187
+
1188
+
1189
+ class GetTelemetryPredictionByPredictionIdMemorySuggestionsParams(TypedDict):
1190
+ prediction_id: str
1191
+ """
1192
+ ID of the prediction to generate suggestions for
1193
+ """
1194
+ num_memories: NotRequired[int]
1195
+ """
1196
+ Number of memory suggestions to generate
1197
+ """
1198
+ refresh: NotRequired[bool]
1199
+ """
1200
+ Force the explanation agent to re-run even if a cached explanation exists
1201
+ """
1202
+
1203
+
1204
+ class GetTelemetryFeedbackCategoryByNameOrIdParams(TypedDict):
1205
+ name_or_id: str
1206
+
1207
+
1208
+ class DeleteTelemetryFeedbackCategoryByNameOrIdParams(TypedDict):
1209
+ name_or_id: str
1210
+
1211
+
1212
+ PutTelemetryPredictionFeedbackRequest: TypeAlias = list[PredictionFeedbackRequest]
1213
+
1214
+
1215
+ class GetAgentsBootstrapClassificationModelByJobIdParams(TypedDict):
1216
+ job_id: str
1217
+
1218
+
1219
+ class FieldValidationError(TypedDict):
1220
+ loc: list[str | int]
1221
+ msg: str
1222
+ type: NotRequired[str]
1223
+
1224
+
1225
+ class AddMemoryRecommendations(TypedDict):
1226
+ memories: list[AddMemorySuggestion]
1227
+ attempts_used: NotRequired[int]
1228
+ partial: NotRequired[bool]
1229
+ rejection_counts: NotRequired[dict[str, int]]
1230
+
1231
+
1232
+ class BootstrapClassificationModelRequest(TypedDict):
1233
+ model_description: str
1234
+ label_names: list[str]
1235
+ initial_examples: NotRequired[list[LabeledExample]]
1236
+ num_examples_per_label: NotRequired[int]
1237
+
1238
+
1239
+ class BootstrapLabeledMemoryDataInput(TypedDict):
1240
+ model_description: str
1241
+ label_names: list[str]
1242
+ initial_examples: NotRequired[list[LabeledExample]]
1243
+ num_examples_per_label: NotRequired[int]
1244
+
1245
+
1246
+ class BootstrapLabeledMemoryDataResult(TypedDict):
1247
+ model_description: str
1248
+ label_names: list[str]
1249
+ model_name: str
1250
+ generated_examples: NotRequired[list[LabeledExample]]
1251
+
1252
+
1253
+ class ClassificationMetrics(TypedDict):
1254
+ coverage: float
1255
+ f1_score: float
1256
+ accuracy: float
1257
+ loss: float | None
1258
+ anomaly_score_mean: NotRequired[float | None]
1259
+ anomaly_score_median: NotRequired[float | None]
1260
+ anomaly_score_variance: NotRequired[float | None]
1261
+ roc_auc: NotRequired[float | None]
1262
+ pr_auc: NotRequired[float | None]
1263
+ pr_curve: NotRequired[PRCurve | None]
1264
+ roc_curve: NotRequired[ROCCurve | None]
1265
+ confusion_matrix: NotRequired[list[list[int]] | None]
1266
+ warnings: NotRequired[list[str]]
1267
+
1268
+
1269
+ class ClassificationModelMetadata(TypedDict):
1270
+ id: str
1271
+ org_id: str
1272
+ name: str
1273
+ description: str | None
1274
+ notes: str | None
1275
+ version: int
1276
+ memoryset_id: str
1277
+ memory_lookup_count: int
1278
+ storage_path: str
1279
+ memoryset_collection_name: str
1280
+ created_at: str
1281
+ updated_at: str
1282
+ locked: bool
1283
+ num_classes: int
1284
+ head_type: RACHeadType
1285
+ weigh_memories: bool | None
1286
+ min_memory_weight: float | None
1287
+
1288
+
1289
+ class ClassificationPredictionRequest(TypedDict):
1290
+ input_values: list[str] | list[bytes] | list[str | bytes]
1291
+ expected_labels: NotRequired[list[int] | None]
1292
+ filters: NotRequired[list[FilterItem]]
1293
+ tags: NotRequired[list[str]]
1294
+ memoryset_override_name_or_id: NotRequired[str | None]
1295
+ save_telemetry: NotRequired[bool]
1296
+ save_telemetry_synchronously: NotRequired[bool]
1297
+ prompt: NotRequired[str | None]
1298
+ use_lookup_cache: NotRequired[bool]
1299
+ consistency_level: NotRequired[Literal["Bounded", "Session", "Strong", "Eventual"] | None]
1300
+ ignore_unlabeled: NotRequired[bool]
1301
+ partition_ids: NotRequired[str | list[str | None] | None]
1302
+ partition_filter_mode: NotRequired[Literal["ignore_partitions", "include_global", "exclude_global", "only_global"]]
1303
+
1304
+
1305
+ class CloneMemorysetRequest(TypedDict):
1306
+ name: str
1307
+ description: NotRequired[str | None]
1308
+ notes: NotRequired[str | None]
1309
+ pretrained_embedding_model_name: NotRequired[PretrainedEmbeddingModelName | None]
1310
+ finetuned_embedding_model_name_or_id: NotRequired[str | None]
1311
+ max_seq_length_override: NotRequired[int | None]
1312
+ prompt: NotRequired[str]
1313
+
1314
+
1315
+ class ColumnInfo(TypedDict):
1316
+ name: str
1317
+ type: ColumnType
1318
+ enum_options: NotRequired[list[str] | None]
1319
+ string_values: NotRequired[list[str] | None]
1320
+ int_values: NotRequired[list[int] | None]
1321
+ contains_nones: NotRequired[bool]
1322
+
1323
+
1324
+ class ConceptMetrics(TypedDict):
1325
+ id: int
1326
+ name: str
1327
+ description: str | None
1328
+ primary_label: int | None
1329
+ memory_count: int
1330
+ subconcepts: list[SubConceptMetrics]
1331
+ label_percentages: list[LabelPercentage]
1332
+
1333
+
1334
+ class CreateClassificationModelRequest(TypedDict):
1335
+ name: str
1336
+ description: NotRequired[str | None]
1337
+ notes: NotRequired[str | None]
1338
+ memoryset_name: NotRequired[str | None]
1339
+ memoryset_name_or_id: str
1340
+ memory_lookup_count: NotRequired[int | None]
1341
+ head_type: NotRequired[RACHeadType]
1342
+ weigh_memories: NotRequired[bool | None]
1343
+ min_memory_weight: NotRequired[float | None]
1344
+ num_classes: NotRequired[int | None]
1345
+
1346
+
1347
+ class CreateMemorysetFromDatasourceRequest(TypedDict):
1348
+ name: str
1349
+ description: NotRequired[str | None]
1350
+ notes: NotRequired[str | None]
1351
+ pretrained_embedding_model_name: NotRequired[PretrainedEmbeddingModelName | None]
1352
+ finetuned_embedding_model_name_or_id: NotRequired[str | None]
1353
+ max_seq_length_override: NotRequired[int | None]
1354
+ label_names: NotRequired[list[str] | None]
1355
+ index_type: NotRequired[Literal["FLAT", "IVF_FLAT", "IVF_SQ8", "IVF_PQ", "HNSW", "DISKANN"]]
1356
+ index_params: NotRequired[dict[str, int | float | str]]
1357
+ prompt: NotRequired[str]
1358
+ hidden: NotRequired[bool]
1359
+ memory_type: NotRequired[MemoryType | None]
1360
+ datasource_name_or_id: str
1361
+ datasource_label_column: NotRequired[str | None]
1362
+ datasource_score_column: NotRequired[str | None]
1363
+ datasource_value_column: str
1364
+ datasource_source_id_column: NotRequired[str | None]
1365
+ datasource_partition_id_column: NotRequired[str | None]
1366
+ remove_duplicates: NotRequired[bool]
1367
+ batch_size: NotRequired[int]
1368
+ subsample: NotRequired[int | float | None]
1369
+
1370
+
1371
+ class CreateMemorysetRequest(TypedDict):
1372
+ name: str
1373
+ description: NotRequired[str | None]
1374
+ notes: NotRequired[str | None]
1375
+ pretrained_embedding_model_name: NotRequired[PretrainedEmbeddingModelName | None]
1376
+ finetuned_embedding_model_name_or_id: NotRequired[str | None]
1377
+ max_seq_length_override: NotRequired[int | None]
1378
+ label_names: NotRequired[list[str] | None]
1379
+ index_type: NotRequired[Literal["FLAT", "IVF_FLAT", "IVF_SQ8", "IVF_PQ", "HNSW", "DISKANN"]]
1380
+ index_params: NotRequired[dict[str, int | float | str]]
1381
+ prompt: NotRequired[str]
1382
+ hidden: NotRequired[bool]
1383
+ memory_type: NotRequired[MemoryType | None]
1384
+
1385
+
1386
+ class CreateRegressionModelRequest(TypedDict):
1387
+ name: str
1388
+ description: NotRequired[str | None]
1389
+ notes: NotRequired[str | None]
1390
+ memoryset_name_or_id: str
1391
+ memory_lookup_count: NotRequired[int | None]
1392
+ head_type: NotRequired[RARHeadType]
1393
+
1394
+
1395
+ class DatasourceMetadata(TypedDict):
1396
+ id: str
1397
+ org_id: str
1398
+ name: str
1399
+ description: str | None
1400
+ storage_path: str
1401
+ length: int
1402
+ columns: list[ColumnInfo]
1403
+ created_at: str
1404
+ updated_at: str
1405
+
1406
+
1407
+ class EmbeddingEvaluationResponse(TypedDict):
1408
+ job_id: str
1409
+ org_id: str
1410
+ finetuned_embedding_model_id: str | None
1411
+ pretrained_embedding_model_name: PretrainedEmbeddingModelName | None
1412
+ datasource_id: str
1413
+ subsample: int | float | None
1414
+ datasource_value_column: str
1415
+ datasource_label_column: NotRequired[str | None]
1416
+ datasource_score_column: NotRequired[str | None]
1417
+ neighbor_count: int
1418
+ weigh_memories: bool
1419
+ status: JobStatus
1420
+ result: ClassificationMetrics | RegressionMetrics | None
1421
+ created_at: str
1422
+ updated_at: str
1423
+ task_id: str
1424
+
1425
+
1426
+ class EvaluationResponse(TypedDict):
1427
+ job_id: str
1428
+ org_id: str
1429
+ status: JobStatus
1430
+ result: ClassificationMetrics | RegressionMetrics | None
1431
+ created_at: str
1432
+ updated_at: str
1433
+ task_id: str
1434
+
1435
+
1436
+ class EvaluationResponseClassificationMetrics(TypedDict):
1437
+ job_id: str
1438
+ org_id: str
1439
+ status: JobStatus
1440
+ result: ClassificationMetrics | None
1441
+ created_at: str
1442
+ updated_at: str
1443
+ task_id: str
1444
+
1445
+
1446
+ class EvaluationResponseRegressionMetrics(TypedDict):
1447
+ job_id: str
1448
+ org_id: str
1449
+ status: JobStatus
1450
+ result: RegressionMetrics | None
1451
+ created_at: str
1452
+ updated_at: str
1453
+ task_id: str
1454
+
1455
+
1456
+ class FinetuneEmbeddingModelRequest(TypedDict):
1457
+ name: str
1458
+ base_model: PretrainedEmbeddingModelName
1459
+ train_memoryset_name_or_id: NotRequired[str | None]
1460
+ train_datasource_name_or_id: NotRequired[str | None]
1461
+ eval_datasource_name_or_id: NotRequired[str | None]
1462
+ label_column: NotRequired[str | None]
1463
+ score_column: NotRequired[str | None]
1464
+ value_column: NotRequired[str]
1465
+ training_method: NotRequired[EmbeddingFinetuningMethod]
1466
+ training_args: NotRequired[dict[str, str | int | float | bool]]
1467
+
1468
+
1469
+ class FinetunedEmbeddingModelMetadata(TypedDict):
1470
+ embedding_dim: int
1471
+ max_seq_length: int
1472
+ uses_context: bool
1473
+ id: str
1474
+ org_id: str
1475
+ name: str
1476
+ storage_path: str
1477
+ created_at: str
1478
+ updated_at: str
1479
+ base_model: PretrainedEmbeddingModelName
1480
+ finetuning_job_id: str
1481
+ finetuning_status: JobStatus
1482
+ finetuning_task_id: str
1483
+
1484
+
1485
+ class HTTPValidationError(TypedDict):
1486
+ detail: NotRequired[list[ValidationError]]
1487
+
1488
+
1489
+ class InvalidInputErrorResponse(TypedDict):
1490
+ status_code: Literal[422]
1491
+ validation_issues: list[FieldValidationError]
1492
+
1493
+
1494
+ class Job(TypedDict):
1495
+ status: JobStatus
1496
+ steps_total: int | None
1497
+ steps_completed: int | None
1498
+ exception: str | None
1499
+ updated_at: str
1500
+ created_at: str
1501
+ id: str
1502
+ org_id: str
1503
+ worker_id: str | None
1504
+ type: str
1505
+ payload: BaseModel
1506
+ result: BaseModel | None
1507
+ depends_on: NotRequired[list[str]]
1508
+ lease_token: str | None
1509
+
1510
+
1511
+ class LabelPredictionMemoryLookup(TypedDict):
1512
+ value: str | bytes
1513
+ embedding: list[float]
1514
+ source_id: str | None
1515
+ partition_id: str | None
1516
+ metadata: dict[str, str | int | float | bool | None]
1517
+ memory_id: str
1518
+ memory_version: int
1519
+ created_at: str
1520
+ updated_at: str
1521
+ edited_at: str
1522
+ metrics: MemoryMetrics
1523
+ label: int | None
1524
+ label_name: str | None
1525
+ lookup_score: float
1526
+ prediction_id: str
1527
+ attention_weight: float
1528
+
1529
+
1530
+ class LabelPredictionWithMemoriesAndFeedback(TypedDict):
1531
+ prediction_id: str
1532
+ confidence: float
1533
+ anomaly_score: float | None
1534
+ label: int | None
1535
+ label_name: str | None
1536
+ logits: list[float]
1537
+ timestamp: str
1538
+ input_value: str | bytes
1539
+ input_embedding: list[float]
1540
+ expected_label: int | None
1541
+ expected_label_name: str | None
1542
+ memories: list[LabelPredictionMemoryLookup]
1543
+ org_id: str
1544
+ memoryset_id: str
1545
+ model_id: str
1546
+ updated_at: str
1547
+ tags: list[str]
1548
+ explanation: str | None
1549
+ memory_id: str | None
1550
+ is_in_dense_neighborhood: NotRequired[bool | None]
1551
+ feedbacks: list[PredictionFeedback]
1552
+
1553
+
1554
+ class LabeledMemory(TypedDict):
1555
+ value: str | bytes
1556
+ embedding: list[float]
1557
+ source_id: str | None
1558
+ partition_id: str | None
1559
+ metadata: dict[str, str | int | float | bool | None]
1560
+ memory_id: str
1561
+ memory_version: int
1562
+ created_at: str
1563
+ updated_at: str
1564
+ edited_at: str
1565
+ metrics: MemoryMetrics
1566
+ label: int | None
1567
+ label_name: str | None
1568
+
1569
+
1570
+ class LabeledMemoryLookup(TypedDict):
1571
+ value: str | bytes
1572
+ embedding: list[float]
1573
+ source_id: str | None
1574
+ partition_id: str | None
1575
+ metadata: dict[str, str | int | float | bool | None]
1576
+ memory_id: str
1577
+ memory_version: int
1578
+ created_at: str
1579
+ updated_at: str
1580
+ edited_at: str
1581
+ metrics: MemoryMetrics
1582
+ label: int | None
1583
+ label_name: str | None
1584
+ lookup_score: float
1585
+
1586
+
1587
+ class LabeledMemoryUpdate(TypedDict):
1588
+ memory_id: str
1589
+ value: NotRequired[str | bytes]
1590
+ metadata: NotRequired[dict[str, str | int | float | bool | None] | None]
1591
+ source_id: NotRequired[str | None]
1592
+ partition_id: NotRequired[str | None]
1593
+ metrics: NotRequired[MemoryMetrics | None]
1594
+ label: NotRequired[int | None]
1595
+
1596
+
1597
+ class LabeledMemoryWithFeedbackMetrics(TypedDict):
1598
+ value: str | bytes
1599
+ embedding: list[float]
1600
+ source_id: str | None
1601
+ partition_id: str | None
1602
+ metadata: dict[str, str | int | float | bool | None]
1603
+ memory_id: str
1604
+ memory_version: int
1605
+ created_at: str
1606
+ updated_at: str
1607
+ edited_at: str
1608
+ metrics: MemoryMetrics
1609
+ label: int | None
1610
+ label_name: str | None
1611
+ feedback_metrics: dict[str, FeedbackMetrics]
1612
+ lookup_count: int
1613
+
1614
+
1615
+ class ListPredictionsRequest(TypedDict):
1616
+ model_id: NotRequired[str | None]
1617
+ tag: NotRequired[str | None]
1618
+ prediction_ids: NotRequired[list[str] | None]
1619
+ start_timestamp: NotRequired[str | None]
1620
+ end_timestamp: NotRequired[str | None]
1621
+ memory_id: NotRequired[str | None]
1622
+ expected_label_match: NotRequired[bool | None]
1623
+ limit: NotRequired[int]
1624
+ offset: NotRequired[int | None]
1625
+ sort: NotRequired[PredictionSort]
1626
+
1627
+
1628
+ class MemorysetAnalysisConfigs(TypedDict):
1629
+ distribution: NotRequired[MemorysetDistributionAnalysisConfig | None]
1630
+ label: NotRequired[MemorysetLabelAnalysisConfig | None]
1631
+ duplicate: NotRequired[MemorysetDuplicateAnalysisConfig | None]
1632
+ projection: NotRequired[MemorysetProjectionAnalysisConfig | None]
1633
+ cluster: NotRequired[MemorysetClusterAnalysisConfig | None]
1634
+ class_patterns: NotRequired[MemorysetClassPatternsAnalysisConfig | None]
1635
+ concepts: NotRequired[MemorysetConceptAnalysisConfig | None]
1636
+
1637
+
1638
+ class MemorysetAnalysisRequest(TypedDict):
1639
+ lookup_count: NotRequired[int]
1640
+ batch_size: NotRequired[int]
1641
+ clear_metrics: NotRequired[bool]
1642
+ configs: MemorysetAnalysisConfigs
1643
+ partition_filter_mode: NotRequired[Literal["ignore_partitions", "include_global", "exclude_global", "only_global"]]
1644
+
1645
+
1646
+ class MemorysetConceptMetrics(TypedDict):
1647
+ concepts: list[ConceptMetrics]
1648
+ num_outliers: int
1649
+ updated_at: str
1650
+
1651
+
1652
+ class MemorysetMetrics(TypedDict):
1653
+ distribution: NotRequired[MemorysetDistributionMetrics | None]
1654
+ label: NotRequired[MemorysetLabelMetrics | None]
1655
+ duplicate: NotRequired[MemorysetDuplicateMetrics | None]
1656
+ projection: NotRequired[MemorysetProjectionMetrics | None]
1657
+ cluster: NotRequired[MemorysetClusterMetrics | None]
1658
+ class_patterns: NotRequired[MemorysetClassPatternsMetrics | None]
1659
+ concepts: NotRequired[MemorysetConceptMetrics | None]
1660
+
1661
+
1662
+ class PaginatedJob(TypedDict):
1663
+ items: list[Job]
1664
+ total: int
1665
+ offset: int
1666
+ limit: int
1667
+
1668
+
1669
+ class PaginatedUnionLabeledMemoryWithFeedbackMetricsScoredMemoryWithFeedbackMetrics(TypedDict):
1670
+ items: list[LabeledMemoryWithFeedbackMetrics | ScoredMemoryWithFeedbackMetrics]
1671
+ total: int
1672
+ offset: int
1673
+ limit: int
1674
+
1675
+
1676
+ class PretrainedEmbeddingModelMetadata(TypedDict):
1677
+ embedding_dim: int
1678
+ max_seq_length: int
1679
+ uses_context: bool
1680
+ name: PretrainedEmbeddingModelName
1681
+ experimental: NotRequired[bool]
1682
+ supports_instructions: bool
1683
+ num_params: int
1684
+
1685
+
1686
+ class TelemetryMemoriesRequest(TypedDict):
1687
+ memoryset_id: str
1688
+ offset: NotRequired[int]
1689
+ limit: NotRequired[int]
1690
+ filters: NotRequired[list[FilterItem | TelemetryFilterItem]]
1691
+ sort: NotRequired[list[TelemetrySortOptions] | None]
1692
+
1693
+
1694
+ class WorkerInfo(TypedDict):
1695
+ id: str
1696
+ status: WorkerStatus
1697
+ started_at: str
1698
+ updated_at: str
1699
+ version: str | None
1700
+ git_sha: str
1701
+ config: dict[str, str | float | int | bool | dict[str, str] | None]
1702
+
1703
+
1704
+ PatchGpuMemorysetByNameOrIdMemoryRequest: TypeAlias = LabeledMemoryUpdate | ScoredMemoryUpdate
1705
+
1706
+
1707
+ PatchGpuMemorysetByNameOrIdMemoriesRequest: TypeAlias = list[LabeledMemoryUpdate] | list[ScoredMemoryUpdate]
1708
+
1709
+
1710
+ class CascadingEditSuggestion(TypedDict):
1711
+ neighbor: LabeledMemoryLookup
1712
+ suggested_label: int
1713
+ lookup_score: float
1714
+
1715
+
1716
+ class MemorysetAnalysisResponse(TypedDict):
1717
+ job_id: str
1718
+ org_id: str
1719
+ memoryset_id: str
1720
+ status: JobStatus
1721
+ lookup_count: int
1722
+ batch_size: int
1723
+ clear_metrics: bool
1724
+ configs: MemorysetAnalysisConfigs
1725
+ results: MemorysetMetrics | None
1726
+ created_at: str
1727
+ updated_at: str
1728
+ task_id: str
1729
+
1730
+
1731
+ class MemorysetMetadata(TypedDict):
1732
+ id: str
1733
+ org_id: str
1734
+ collection_name: str
1735
+ name: str
1736
+ description: str | None
1737
+ notes: str | None
1738
+ length: int
1739
+ pretrained_embedding_model_name: PretrainedEmbeddingModelName | None
1740
+ finetuned_embedding_model_id: str | None
1741
+ created_at: str
1742
+ updated_at: str
1743
+ memories_updated_at: str
1744
+ insertion_job_id: str | None
1745
+ insertion_status: JobStatus | None
1746
+ metrics: MemorysetMetrics
1747
+ memory_type: MemoryType
1748
+ label_names: list[str] | None
1749
+ index_type: Literal["FLAT", "IVF_FLAT", "IVF_SQ8", "IVF_PQ", "HNSW", "DISKANN"]
1750
+ index_params: dict[str, Any]
1751
+ database_uri: str | None
1752
+ document_prompt_override: str | None
1753
+ query_prompt_override: str | None
1754
+ hidden: bool
1755
+ insertion_task_id: str | None
1756
+
1757
+
1758
+ class PaginatedWorkerInfo(TypedDict):
1759
+ items: list[WorkerInfo]
1760
+ total: int
1761
+ offset: int
1762
+ limit: int
1763
+
1764
+
1765
+ class BootstrapClassificationModelMeta(TypedDict):
1766
+ datasource_meta: DatasourceMetadata
1767
+ memoryset_meta: MemorysetMetadata
1768
+ model_meta: ClassificationModelMetadata
1769
+ agent_output: BootstrapLabeledMemoryDataResult
1770
+
1771
+
1772
+ class BootstrapClassificationModelResponse(TypedDict):
1773
+ job_id: str
1774
+ org_id: str
1775
+ status: JobStatus
1776
+ result: BootstrapClassificationModelMeta | None
1777
+ input: BootstrapClassificationModelRequest | None
1778
+ task_id: str
1779
+
1780
+
1781
+ class OrcaAsyncClient(AsyncClient):
1782
+ @staticmethod
1783
+ def _parse_params(
1784
+ params: Mapping[str, Any],
1785
+ path: str,
1786
+ ) -> tuple[dict[str, Any], dict[str, Any]]:
1787
+ placeholders = {name for _, name, _, _ in Formatter().parse(path) if name}
1788
+ path_params = {k: v for k, v in params.items() if k in placeholders}
1789
+ query_params = {k: v for k, v in params.items() if k not in placeholders and v is not None}
1790
+ if placeholders - path_params.keys():
1791
+ raise ValueError(f"Missing path params: {', '.join(placeholders - path_params.keys())}")
1792
+ return path_params, query_params
1793
+
1794
+ @overload
1795
+ async def GET(
1796
+ self,
1797
+ path: Literal["/test_error/{status_code}"],
1798
+ *,
1799
+ params: GetTestErrorByStatusCodeParams,
1800
+ parse_as: Literal["json"] = "json",
1801
+ headers: HeaderTypes | None = None,
1802
+ cookies: CookieTypes | None = None,
1803
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1804
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
1805
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1806
+ extensions: RequestExtensions | None = None,
1807
+ ) -> Any:
1808
+ pass
1809
+
1810
+ @overload
1811
+ async def GET(
1812
+ self,
1813
+ path: Literal["/check/alive"],
1814
+ *,
1815
+ params: None = None,
1816
+ parse_as: Literal["json"] = "json",
1817
+ headers: HeaderTypes | None = None,
1818
+ cookies: CookieTypes | None = None,
1819
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1820
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
1821
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1822
+ extensions: RequestExtensions | None = None,
1823
+ ) -> AliveResponse:
1824
+ pass
1825
+
1826
+ @overload
1827
+ async def GET(
1828
+ self,
1829
+ path: Literal["/gpu/check/alive"],
1830
+ *,
1831
+ params: None = None,
1832
+ parse_as: Literal["json"] = "json",
1833
+ headers: HeaderTypes | None = None,
1834
+ cookies: CookieTypes | None = None,
1835
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1836
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
1837
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1838
+ extensions: RequestExtensions | None = None,
1839
+ ) -> AliveResponse:
1840
+ pass
1841
+
1842
+ @overload
1843
+ async def GET(
1844
+ self,
1845
+ path: Literal["/check/ready"],
1846
+ *,
1847
+ params: None = None,
1848
+ parse_as: Literal["json"] = "json",
1849
+ headers: HeaderTypes | None = None,
1850
+ cookies: CookieTypes | None = None,
1851
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1852
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
1853
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1854
+ extensions: RequestExtensions | None = None,
1855
+ ) -> ReadyResponse:
1856
+ pass
1857
+
1858
+ @overload
1859
+ async def GET(
1860
+ self,
1861
+ path: Literal["/check/healthy"],
1862
+ *,
1863
+ params: None = None,
1864
+ parse_as: Literal["json"] = "json",
1865
+ headers: HeaderTypes | None = None,
1866
+ cookies: CookieTypes | None = None,
1867
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1868
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
1869
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1870
+ extensions: RequestExtensions | None = None,
1871
+ ) -> HealthyResponse:
1872
+ pass
1873
+
1874
+ @overload
1875
+ async def GET(
1876
+ self,
1877
+ path: Literal["/gpu/check/healthy"],
1878
+ *,
1879
+ params: None = None,
1880
+ parse_as: Literal["json"] = "json",
1881
+ headers: HeaderTypes | None = None,
1882
+ cookies: CookieTypes | None = None,
1883
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1884
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
1885
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1886
+ extensions: RequestExtensions | None = None,
1887
+ ) -> HealthyResponse:
1888
+ pass
1889
+
1890
+ @overload
1891
+ async def GET(
1892
+ self,
1893
+ path: Literal["/gpu/config"],
1894
+ *,
1895
+ params: None = None,
1896
+ parse_as: Literal["json"] = "json",
1897
+ headers: HeaderTypes | None = None,
1898
+ cookies: CookieTypes | None = None,
1899
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1900
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
1901
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1902
+ extensions: RequestExtensions | None = None,
1903
+ ) -> dict[str, str | float | int | bool | None]:
1904
+ pass
1905
+
1906
+ @overload
1907
+ async def GET(
1908
+ self,
1909
+ path: Literal["/config"],
1910
+ *,
1911
+ params: None = None,
1912
+ parse_as: Literal["json"] = "json",
1913
+ headers: HeaderTypes | None = None,
1914
+ cookies: CookieTypes | None = None,
1915
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1916
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
1917
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1918
+ extensions: RequestExtensions | None = None,
1919
+ ) -> dict[str, str | float | int | bool | None]:
1920
+ pass
1921
+
1922
+ @overload
1923
+ async def GET(
1924
+ self,
1925
+ path: Literal["/auth/root"],
1926
+ *,
1927
+ params: None = None,
1928
+ parse_as: Literal["json"] = "json",
1929
+ headers: HeaderTypes | None = None,
1930
+ cookies: CookieTypes | None = None,
1931
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1932
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
1933
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1934
+ extensions: RequestExtensions | None = None,
1935
+ ) -> Literal[True]:
1936
+ """Return true only when called with a valid root API key; otherwise 401 Unauthenticated."""
1937
+ pass
1938
+
1939
+ @overload
1940
+ async def GET(
1941
+ self,
1942
+ path: Literal["/auth/api_key"],
1943
+ *,
1944
+ params: None = None,
1945
+ parse_as: Literal["json"] = "json",
1946
+ headers: HeaderTypes | None = None,
1947
+ cookies: CookieTypes | None = None,
1948
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1949
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
1950
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1951
+ extensions: RequestExtensions | None = None,
1952
+ ) -> list[ApiKeyMetadata]:
1953
+ """List all API keys for the organization."""
1954
+ pass
1955
+
1956
+ @overload
1957
+ async def GET(
1958
+ self,
1959
+ path: Literal["/auth"],
1960
+ *,
1961
+ params: None = None,
1962
+ parse_as: Literal["json"] = "json",
1963
+ headers: HeaderTypes | None = None,
1964
+ cookies: CookieTypes | None = None,
1965
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1966
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
1967
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1968
+ extensions: RequestExtensions | None = None,
1969
+ ) -> Literal[True]:
1970
+ """Returns true if the api key header is valid for the org (will be false for admin api key)"""
1971
+ pass
1972
+
1973
+ @overload
1974
+ async def GET(
1975
+ self,
1976
+ path: Literal["/auth/org/plan"],
1977
+ *,
1978
+ params: None = None,
1979
+ parse_as: Literal["json"] = "json",
1980
+ headers: HeaderTypes | None = None,
1981
+ cookies: CookieTypes | None = None,
1982
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1983
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
1984
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
1985
+ extensions: RequestExtensions | None = None,
1986
+ ) -> OrgPlan:
1987
+ """Get the organization plan."""
1988
+ pass
1989
+
1990
+ @overload
1991
+ async def GET(
1992
+ self,
1993
+ path: Literal["/memoryset"],
1994
+ *,
1995
+ params: GetMemorysetParams,
1996
+ parse_as: Literal["json"] = "json",
1997
+ headers: HeaderTypes | None = None,
1998
+ cookies: CookieTypes | None = None,
1999
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2000
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2001
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2002
+ extensions: RequestExtensions | None = None,
2003
+ ) -> list[MemorysetMetadata]:
2004
+ pass
2005
+
2006
+ @overload
2007
+ async def GET(
2008
+ self,
2009
+ path: Literal["/memoryset/{name_or_id}"],
2010
+ *,
2011
+ params: GetMemorysetByNameOrIdParams,
2012
+ parse_as: Literal["json"] = "json",
2013
+ headers: HeaderTypes | None = None,
2014
+ cookies: CookieTypes | None = None,
2015
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2016
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2017
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2018
+ extensions: RequestExtensions | None = None,
2019
+ ) -> MemorysetMetadata:
2020
+ pass
2021
+
2022
+ @overload
2023
+ async def GET(
2024
+ self,
2025
+ path: Literal["/memoryset/{name_or_id}/memory/{memory_id}"],
2026
+ *,
2027
+ params: GetMemorysetByNameOrIdMemoryByMemoryIdParams,
2028
+ parse_as: Literal["json"] = "json",
2029
+ headers: HeaderTypes | None = None,
2030
+ cookies: CookieTypes | None = None,
2031
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2032
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2033
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2034
+ extensions: RequestExtensions | None = None,
2035
+ ) -> LabeledMemory | ScoredMemory:
2036
+ pass
2037
+
2038
+ @overload
2039
+ async def GET(
2040
+ self,
2041
+ path: Literal["/memoryset/{name_or_id}/potential_duplicate_groups"],
2042
+ *,
2043
+ params: GetMemorysetByNameOrIdPotentialDuplicateGroupsParams,
2044
+ parse_as: Literal["json"] = "json",
2045
+ headers: HeaderTypes | None = None,
2046
+ cookies: CookieTypes | None = None,
2047
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2048
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2049
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2050
+ extensions: RequestExtensions | None = None,
2051
+ ) -> list[list[LabeledMemory]] | list[list[ScoredMemory]]:
2052
+ pass
2053
+
2054
+ @overload
2055
+ async def GET(
2056
+ self,
2057
+ path: Literal["/memoryset/{name_or_id}/analysis"],
2058
+ *,
2059
+ params: GetMemorysetByNameOrIdAnalysisParams,
2060
+ parse_as: Literal["json"] = "json",
2061
+ headers: HeaderTypes | None = None,
2062
+ cookies: CookieTypes | None = None,
2063
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2064
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2065
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2066
+ extensions: RequestExtensions | None = None,
2067
+ ) -> list[MemorysetAnalysisResponse]:
2068
+ pass
2069
+
2070
+ @overload
2071
+ async def GET(
2072
+ self,
2073
+ path: Literal["/memoryset/{name_or_id}/analysis/{analysis_job_id}"],
2074
+ *,
2075
+ params: GetMemorysetByNameOrIdAnalysisByAnalysisJobIdParams,
2076
+ parse_as: Literal["json"] = "json",
2077
+ headers: HeaderTypes | None = None,
2078
+ cookies: CookieTypes | None = None,
2079
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2080
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2081
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2082
+ extensions: RequestExtensions | None = None,
2083
+ ) -> MemorysetAnalysisResponse:
2084
+ pass
2085
+
2086
+ @overload
2087
+ async def GET(
2088
+ self,
2089
+ path: Literal["/finetuned_embedding_model"],
2090
+ *,
2091
+ params: None = None,
2092
+ parse_as: Literal["json"] = "json",
2093
+ headers: HeaderTypes | None = None,
2094
+ cookies: CookieTypes | None = None,
2095
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2096
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2097
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2098
+ extensions: RequestExtensions | None = None,
2099
+ ) -> list[FinetunedEmbeddingModelMetadata]:
2100
+ """List all finetuned embedding models for the organization."""
2101
+ pass
2102
+
2103
+ @overload
2104
+ async def GET(
2105
+ self,
2106
+ path: Literal["/finetuned_embedding_model/{name_or_id}"],
2107
+ *,
2108
+ params: GetFinetunedEmbeddingModelByNameOrIdParams,
2109
+ parse_as: Literal["json"] = "json",
2110
+ headers: HeaderTypes | None = None,
2111
+ cookies: CookieTypes | None = None,
2112
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2113
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2114
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2115
+ extensions: RequestExtensions | None = None,
2116
+ ) -> FinetunedEmbeddingModelMetadata:
2117
+ """Get a finetuned embedding model by name or ID."""
2118
+ pass
2119
+
2120
+ @overload
2121
+ async def GET(
2122
+ self,
2123
+ path: Literal["/pretrained_embedding_model"],
2124
+ *,
2125
+ params: None = None,
2126
+ parse_as: Literal["json"] = "json",
2127
+ headers: HeaderTypes | None = None,
2128
+ cookies: CookieTypes | None = None,
2129
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2130
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2131
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2132
+ extensions: RequestExtensions | None = None,
2133
+ ) -> list[PretrainedEmbeddingModelMetadata]:
2134
+ """List all available pretrained embedding models."""
2135
+ pass
2136
+
2137
+ @overload
2138
+ async def GET(
2139
+ self,
2140
+ path: Literal["/pretrained_embedding_model/{model_name}"],
2141
+ *,
2142
+ params: GetPretrainedEmbeddingModelByModelNameParams,
2143
+ parse_as: Literal["json"] = "json",
2144
+ headers: HeaderTypes | None = None,
2145
+ cookies: CookieTypes | None = None,
2146
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2147
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2148
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2149
+ extensions: RequestExtensions | None = None,
2150
+ ) -> PretrainedEmbeddingModelMetadata:
2151
+ """Get metadata for a specific pretrained embedding model."""
2152
+ pass
2153
+
2154
+ @overload
2155
+ async def GET(
2156
+ self,
2157
+ path: Literal["/finetuned_embedding_model/{name_or_id}/evaluation/{job_id}"],
2158
+ *,
2159
+ params: GetFinetunedEmbeddingModelByNameOrIdEvaluationByJobIdParams,
2160
+ parse_as: Literal["json"] = "json",
2161
+ headers: HeaderTypes | None = None,
2162
+ cookies: CookieTypes | None = None,
2163
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2164
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2165
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2166
+ extensions: RequestExtensions | None = None,
2167
+ ) -> EmbeddingEvaluationResponse:
2168
+ """Get evaluation results for a finetuned embedding model by job ID."""
2169
+ pass
2170
+
2171
+ @overload
2172
+ async def GET(
2173
+ self,
2174
+ path: Literal["/pretrained_embedding_model/{model_name}/evaluation/{job_id}"],
2175
+ *,
2176
+ params: GetPretrainedEmbeddingModelByModelNameEvaluationByJobIdParams,
2177
+ parse_as: Literal["json"] = "json",
2178
+ headers: HeaderTypes | None = None,
2179
+ cookies: CookieTypes | None = None,
2180
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2181
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2182
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2183
+ extensions: RequestExtensions | None = None,
2184
+ ) -> EmbeddingEvaluationResponse:
2185
+ """Get evaluation results for a pretrained embedding model by job ID."""
2186
+ pass
2187
+
2188
+ @overload
2189
+ async def GET(
2190
+ self,
2191
+ path: Literal["/finetuned_embedding_model/{name_or_id}/evaluations"],
2192
+ *,
2193
+ params: GetFinetunedEmbeddingModelByNameOrIdEvaluationsParams,
2194
+ parse_as: Literal["json"] = "json",
2195
+ headers: HeaderTypes | None = None,
2196
+ cookies: CookieTypes | None = None,
2197
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2198
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2199
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2200
+ extensions: RequestExtensions | None = None,
2201
+ ) -> list[EmbeddingEvaluationResponse]:
2202
+ """List all evaluation results for a finetuned embedding model."""
2203
+ pass
2204
+
2205
+ @overload
2206
+ async def GET(
2207
+ self,
2208
+ path: Literal["/pretrained_embedding_model/{model_name}/evaluations"],
2209
+ *,
2210
+ params: GetPretrainedEmbeddingModelByModelNameEvaluationsParams,
2211
+ parse_as: Literal["json"] = "json",
2212
+ headers: HeaderTypes | None = None,
2213
+ cookies: CookieTypes | None = None,
2214
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2215
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2216
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2217
+ extensions: RequestExtensions | None = None,
2218
+ ) -> list[EmbeddingEvaluationResponse]:
2219
+ """List all evaluation results for a pretrained embedding model."""
2220
+ pass
2221
+
2222
+ @overload
2223
+ async def GET(
2224
+ self,
2225
+ path: Literal["/datasource"],
2226
+ *,
2227
+ params: None = None,
2228
+ parse_as: Literal["json"] = "json",
2229
+ headers: HeaderTypes | None = None,
2230
+ cookies: CookieTypes | None = None,
2231
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2232
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2233
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2234
+ extensions: RequestExtensions | None = None,
2235
+ ) -> list[DatasourceMetadata]:
2236
+ """List all datasources for the organization."""
2237
+ pass
2238
+
2239
+ @overload
2240
+ async def GET(
2241
+ self,
2242
+ path: Literal["/datasource/{name_or_id}"],
2243
+ *,
2244
+ params: GetDatasourceByNameOrIdParams,
2245
+ parse_as: Literal["json"] = "json",
2246
+ headers: HeaderTypes | None = None,
2247
+ cookies: CookieTypes | None = None,
2248
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2249
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2250
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2251
+ extensions: RequestExtensions | None = None,
2252
+ ) -> DatasourceMetadata:
2253
+ """Get a datasource by name or ID."""
2254
+ pass
2255
+
2256
+ @overload
2257
+ async def GET(
2258
+ self,
2259
+ path: Literal["/datasource/{name_or_id}/embedding_model_evaluations"],
2260
+ *,
2261
+ params: GetDatasourceByNameOrIdEmbeddingModelEvaluationsParams,
2262
+ parse_as: Literal["json"] = "json",
2263
+ headers: HeaderTypes | None = None,
2264
+ cookies: CookieTypes | None = None,
2265
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2266
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2267
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2268
+ extensions: RequestExtensions | None = None,
2269
+ ) -> list[EmbeddingEvaluationResponse]:
2270
+ """List all evaluation results for a datasource."""
2271
+ pass
2272
+
2273
+ @overload
2274
+ async def GET(
2275
+ self,
2276
+ path: Literal["/datasource/{name_or_id}/download"],
2277
+ *,
2278
+ params: GetDatasourceByNameOrIdDownloadParams,
2279
+ parse_as: Literal["json"] = "json",
2280
+ headers: HeaderTypes | None = None,
2281
+ cookies: CookieTypes | None = None,
2282
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2283
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2284
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2285
+ extensions: RequestExtensions | None = None,
2286
+ ) -> list[dict[str, Any]]:
2287
+ """Download datasource in the specified format."""
2288
+ pass
2289
+
2290
+ @overload
2291
+ async def GET(
2292
+ self,
2293
+ path: Literal["/datasource/{name_or_id}/download"],
2294
+ *,
2295
+ params: GetDatasourceByNameOrIdDownloadParams,
2296
+ parse_as: Literal["text"],
2297
+ headers: HeaderTypes | None = None,
2298
+ cookies: CookieTypes | None = None,
2299
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2300
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2301
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2302
+ extensions: RequestExtensions | None = None,
2303
+ ) -> str:
2304
+ """Download datasource in the specified format."""
2305
+ pass
2306
+
2307
+ @overload
2308
+ async def GET(
2309
+ self,
2310
+ path: Literal["/datasource/{name_or_id}/download"],
2311
+ *,
2312
+ params: GetDatasourceByNameOrIdDownloadParams,
2313
+ parse_as: None,
2314
+ headers: HeaderTypes | None = None,
2315
+ cookies: CookieTypes | None = None,
2316
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2317
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2318
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2319
+ extensions: RequestExtensions | None = None,
2320
+ ) -> bytes:
2321
+ """Download datasource in the specified format."""
2322
+ pass
2323
+
2324
+ @overload
2325
+ async def GET(
2326
+ self,
2327
+ path: Literal["/classification_model"],
2328
+ *,
2329
+ params: None = None,
2330
+ parse_as: Literal["json"] = "json",
2331
+ headers: HeaderTypes | None = None,
2332
+ cookies: CookieTypes | None = None,
2333
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2334
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2335
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2336
+ extensions: RequestExtensions | None = None,
2337
+ ) -> list[ClassificationModelMetadata]:
2338
+ pass
2339
+
2340
+ @overload
2341
+ async def GET(
2342
+ self,
2343
+ path: Literal["/regression_model"],
2344
+ *,
2345
+ params: None = None,
2346
+ parse_as: Literal["json"] = "json",
2347
+ headers: HeaderTypes | None = None,
2348
+ cookies: CookieTypes | None = None,
2349
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2350
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2351
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2352
+ extensions: RequestExtensions | None = None,
2353
+ ) -> list[RegressionModelMetadata]:
2354
+ pass
2355
+
2356
+ @overload
2357
+ async def GET(
2358
+ self,
2359
+ path: Literal["/classification_model/{name_or_id}"],
2360
+ *,
2361
+ params: GetClassificationModelByNameOrIdParams,
2362
+ parse_as: Literal["json"] = "json",
2363
+ headers: HeaderTypes | None = None,
2364
+ cookies: CookieTypes | None = None,
2365
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2366
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2367
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2368
+ extensions: RequestExtensions | None = None,
2369
+ ) -> ClassificationModelMetadata:
2370
+ pass
2371
+
2372
+ @overload
2373
+ async def GET(
2374
+ self,
2375
+ path: Literal["/regression_model/{name_or_id}"],
2376
+ *,
2377
+ params: GetRegressionModelByNameOrIdParams,
2378
+ parse_as: Literal["json"] = "json",
2379
+ headers: HeaderTypes | None = None,
2380
+ cookies: CookieTypes | None = None,
2381
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2382
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2383
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2384
+ extensions: RequestExtensions | None = None,
2385
+ ) -> RegressionModelMetadata:
2386
+ pass
2387
+
2388
+ @overload
2389
+ async def GET(
2390
+ self,
2391
+ path: Literal["/predictive_model"],
2392
+ *,
2393
+ params: None = None,
2394
+ parse_as: Literal["json"] = "json",
2395
+ headers: HeaderTypes | None = None,
2396
+ cookies: CookieTypes | None = None,
2397
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2398
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2399
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2400
+ extensions: RequestExtensions | None = None,
2401
+ ) -> list[ClassificationModelMetadata | RegressionModelMetadata]:
2402
+ pass
2403
+
2404
+ @overload
2405
+ async def GET(
2406
+ self,
2407
+ path: Literal["/classification_model/{model_name_or_id}/evaluation"],
2408
+ *,
2409
+ params: GetClassificationModelByModelNameOrIdEvaluationParams,
2410
+ parse_as: Literal["json"] = "json",
2411
+ headers: HeaderTypes | None = None,
2412
+ cookies: CookieTypes | None = None,
2413
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2414
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2415
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2416
+ extensions: RequestExtensions | None = None,
2417
+ ) -> list[EvaluationResponseClassificationMetrics]:
2418
+ pass
2419
+
2420
+ @overload
2421
+ async def GET(
2422
+ self,
2423
+ path: Literal["/regression_model/{model_name_or_id}/evaluation"],
2424
+ *,
2425
+ params: GetRegressionModelByModelNameOrIdEvaluationParams,
2426
+ parse_as: Literal["json"] = "json",
2427
+ headers: HeaderTypes | None = None,
2428
+ cookies: CookieTypes | None = None,
2429
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2430
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2431
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2432
+ extensions: RequestExtensions | None = None,
2433
+ ) -> list[EvaluationResponseRegressionMetrics]:
2434
+ pass
2435
+
2436
+ @overload
2437
+ async def GET(
2438
+ self,
2439
+ path: Literal["/classification_model/{model_name_or_id}/evaluation/{job_id}"],
2440
+ *,
2441
+ params: GetClassificationModelByModelNameOrIdEvaluationByJobIdParams,
2442
+ parse_as: Literal["json"] = "json",
2443
+ headers: HeaderTypes | None = None,
2444
+ cookies: CookieTypes | None = None,
2445
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2446
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2447
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2448
+ extensions: RequestExtensions | None = None,
2449
+ ) -> EvaluationResponseClassificationMetrics:
2450
+ pass
2451
+
2452
+ @overload
2453
+ async def GET(
2454
+ self,
2455
+ path: Literal["/regression_model/{model_name_or_id}/evaluation/{job_id}"],
2456
+ *,
2457
+ params: GetRegressionModelByModelNameOrIdEvaluationByJobIdParams,
2458
+ parse_as: Literal["json"] = "json",
2459
+ headers: HeaderTypes | None = None,
2460
+ cookies: CookieTypes | None = None,
2461
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2462
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2463
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2464
+ extensions: RequestExtensions | None = None,
2465
+ ) -> EvaluationResponseRegressionMetrics:
2466
+ pass
2467
+
2468
+ @overload
2469
+ async def GET(
2470
+ self,
2471
+ path: Literal["/job/{job_id}"],
2472
+ *,
2473
+ params: GetJobByJobIdParams,
2474
+ parse_as: Literal["json"] = "json",
2475
+ headers: HeaderTypes | None = None,
2476
+ cookies: CookieTypes | None = None,
2477
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2478
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2479
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2480
+ extensions: RequestExtensions | None = None,
2481
+ ) -> Job:
2482
+ pass
2483
+
2484
+ @overload
2485
+ async def GET(
2486
+ self,
2487
+ path: Literal["/job/{job_id}/status"],
2488
+ *,
2489
+ params: GetJobByJobIdStatusParams,
2490
+ parse_as: Literal["json"] = "json",
2491
+ headers: HeaderTypes | None = None,
2492
+ cookies: CookieTypes | None = None,
2493
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2494
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2495
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2496
+ extensions: RequestExtensions | None = None,
2497
+ ) -> JobStatusInfo:
2498
+ pass
2499
+
2500
+ @overload
2501
+ async def GET(
2502
+ self,
2503
+ path: Literal["/job"],
2504
+ *,
2505
+ params: GetJobParams,
2506
+ parse_as: Literal["json"] = "json",
2507
+ headers: HeaderTypes | None = None,
2508
+ cookies: CookieTypes | None = None,
2509
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2510
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2511
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2512
+ extensions: RequestExtensions | None = None,
2513
+ ) -> PaginatedJob:
2514
+ pass
2515
+
2516
+ @overload
2517
+ async def GET(
2518
+ self,
2519
+ path: Literal["/worker"],
2520
+ *,
2521
+ params: GetWorkerParams,
2522
+ parse_as: Literal["json"] = "json",
2523
+ headers: HeaderTypes | None = None,
2524
+ cookies: CookieTypes | None = None,
2525
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2526
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2527
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2528
+ extensions: RequestExtensions | None = None,
2529
+ ) -> PaginatedWorkerInfo:
2530
+ """
2531
+ List all workers in the system. Requires root access.
2532
+
2533
+ This endpoint automatically cleans up orphaned workers before returning results.
2534
+ """
2535
+ pass
2536
+
2537
+ @overload
2538
+ async def GET(
2539
+ self,
2540
+ path: Literal["/worker/{worker_id}"],
2541
+ *,
2542
+ params: GetWorkerByWorkerIdParams,
2543
+ parse_as: Literal["json"] = "json",
2544
+ headers: HeaderTypes | None = None,
2545
+ cookies: CookieTypes | None = None,
2546
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2547
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2548
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2549
+ extensions: RequestExtensions | None = None,
2550
+ ) -> WorkerInfo:
2551
+ """Get information about a specific worker. Requires root access."""
2552
+ pass
2553
+
2554
+ @overload
2555
+ async def GET(
2556
+ self,
2557
+ path: Literal["/telemetry/prediction/{prediction_id}"],
2558
+ *,
2559
+ params: GetTelemetryPredictionByPredictionIdParams,
2560
+ parse_as: Literal["json"] = "json",
2561
+ headers: HeaderTypes | None = None,
2562
+ cookies: CookieTypes | None = None,
2563
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2564
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2565
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2566
+ extensions: RequestExtensions | None = None,
2567
+ ) -> LabelPredictionWithMemoriesAndFeedback | ScorePredictionWithMemoriesAndFeedback:
2568
+ """Get a specific prediction by ID."""
2569
+ pass
2570
+
2571
+ @overload
2572
+ async def GET(
2573
+ self,
2574
+ path: Literal["/telemetry/prediction/{prediction_id}/explanation"],
2575
+ *,
2576
+ params: GetTelemetryPredictionByPredictionIdExplanationParams,
2577
+ parse_as: Literal["text"],
2578
+ headers: HeaderTypes | None = None,
2579
+ cookies: CookieTypes | None = None,
2580
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2581
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2582
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2583
+ extensions: RequestExtensions | None = None,
2584
+ ) -> str:
2585
+ """Get explanation for a prediction, optionally streaming the response."""
2586
+ pass
2587
+
2588
+ @overload
2589
+ async def GET(
2590
+ self,
2591
+ path: Literal["/telemetry/prediction/{prediction_id}/action"],
2592
+ *,
2593
+ params: GetTelemetryPredictionByPredictionIdActionParams,
2594
+ parse_as: Literal["json"] = "json",
2595
+ headers: HeaderTypes | None = None,
2596
+ cookies: CookieTypes | None = None,
2597
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2598
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2599
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2600
+ extensions: RequestExtensions | None = None,
2601
+ ) -> ActionRecommendation:
2602
+ """Get action recommendation for improving a specific prediction."""
2603
+ pass
2604
+
2605
+ @overload
2606
+ async def GET(
2607
+ self,
2608
+ path: Literal["/telemetry/prediction/{prediction_id}/memory_suggestions"],
2609
+ *,
2610
+ params: GetTelemetryPredictionByPredictionIdMemorySuggestionsParams,
2611
+ parse_as: Literal["json"] = "json",
2612
+ headers: HeaderTypes | None = None,
2613
+ cookies: CookieTypes | None = None,
2614
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2615
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2616
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2617
+ extensions: RequestExtensions | None = None,
2618
+ ) -> AddMemoryRecommendations:
2619
+ """
2620
+ Generate synthetic memory suggestions to improve a specific prediction.
2621
+
2622
+ The returned suggestions have labels as string representations of integer indices
2623
+ corresponding to the memoryset's label_names.
2624
+ """
2625
+ pass
2626
+
2627
+ @overload
2628
+ async def GET(
2629
+ self,
2630
+ path: Literal["/telemetry/feedback_category"],
2631
+ *,
2632
+ params: None = None,
2633
+ parse_as: Literal["json"] = "json",
2634
+ headers: HeaderTypes | None = None,
2635
+ cookies: CookieTypes | None = None,
2636
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2637
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2638
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2639
+ extensions: RequestExtensions | None = None,
2640
+ ) -> list[PredictionFeedbackCategory]:
2641
+ """List all feedback categories for the organization."""
2642
+ pass
2643
+
2644
+ @overload
2645
+ async def GET(
2646
+ self,
2647
+ path: Literal["/telemetry/feedback_category/{name_or_id}"],
2648
+ *,
2649
+ params: GetTelemetryFeedbackCategoryByNameOrIdParams,
2650
+ parse_as: Literal["json"] = "json",
2651
+ headers: HeaderTypes | None = None,
2652
+ cookies: CookieTypes | None = None,
2653
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2654
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2655
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2656
+ extensions: RequestExtensions | None = None,
2657
+ ) -> PredictionFeedbackCategory:
2658
+ """Get a feedback category by name or ID."""
2659
+ pass
2660
+
2661
+ @overload
2662
+ async def GET(
2663
+ self,
2664
+ path: Literal["/agents/bootstrap_classification_model/{job_id}"],
2665
+ *,
2666
+ params: GetAgentsBootstrapClassificationModelByJobIdParams,
2667
+ parse_as: Literal["json"] = "json",
2668
+ headers: HeaderTypes | None = None,
2669
+ cookies: CookieTypes | None = None,
2670
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2671
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2672
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2673
+ extensions: RequestExtensions | None = None,
2674
+ ) -> BootstrapClassificationModelResponse:
2675
+ """Get the status of a bootstrap labeled memory data job"""
2676
+ pass
2677
+
2678
+ async def GET(
2679
+ self,
2680
+ path: str,
2681
+ *,
2682
+ params: Mapping[str, Any] | None = None,
2683
+ parse_as: Literal["json", "text"] | None = "json",
2684
+ headers: HeaderTypes | None = None,
2685
+ cookies: CookieTypes | None = None,
2686
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2687
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2688
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2689
+ extensions: RequestExtensions | None = None,
2690
+ ) -> Any:
2691
+ path_params, query_params = self._parse_params(params or {}, path)
2692
+ res = await self.get(
2693
+ path.format(**path_params),
2694
+ params=query_params,
2695
+ headers=headers,
2696
+ cookies=cookies,
2697
+ auth=auth,
2698
+ follow_redirects=follow_redirects,
2699
+ timeout=timeout,
2700
+ extensions=extensions,
2701
+ )
2702
+ res.raise_for_status()
2703
+ return (
2704
+ None
2705
+ if res.status_code == 204
2706
+ else res.json() if parse_as == "json" else res.text if parse_as == "text" else res.content
2707
+ )
2708
+
2709
+ @overload
2710
+ async def DELETE(
2711
+ self,
2712
+ path: Literal["/cleanup"],
2713
+ *,
2714
+ params: None = None,
2715
+ parse_as: Literal["json"] = "json",
2716
+ headers: HeaderTypes | None = None,
2717
+ cookies: CookieTypes | None = None,
2718
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2719
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2720
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2721
+ extensions: RequestExtensions | None = None,
2722
+ ) -> CleanupResponse:
2723
+ """Cleanup orphaned milvus collections and blobs"""
2724
+ pass
2725
+
2726
+ @overload
2727
+ async def DELETE(
2728
+ self,
2729
+ path: Literal["/auth/api_key/{name_or_id}"],
2730
+ *,
2731
+ params: DeleteAuthApiKeyByNameOrIdParams,
2732
+ parse_as: Literal["json"] = "json",
2733
+ headers: HeaderTypes | None = None,
2734
+ cookies: CookieTypes | None = None,
2735
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2736
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2737
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2738
+ extensions: RequestExtensions | None = None,
2739
+ ) -> None:
2740
+ """Delete an API key by name or ID."""
2741
+ pass
2742
+
2743
+ @overload
2744
+ async def DELETE(
2745
+ self,
2746
+ path: Literal["/auth/org"],
2747
+ *,
2748
+ params: None = None,
2749
+ parse_as: Literal["json"] = "json",
2750
+ headers: HeaderTypes | None = None,
2751
+ cookies: CookieTypes | None = None,
2752
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2753
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2754
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2755
+ extensions: RequestExtensions | None = None,
2756
+ ) -> None:
2757
+ """Deletes the org and all associated resources"""
2758
+ pass
2759
+
2760
+ @overload
2761
+ async def DELETE(
2762
+ self,
2763
+ path: Literal["/memoryset/{name_or_id}"],
2764
+ *,
2765
+ params: DeleteMemorysetByNameOrIdParams,
2766
+ parse_as: Literal["json"] = "json",
2767
+ headers: HeaderTypes | None = None,
2768
+ cookies: CookieTypes | None = None,
2769
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2770
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2771
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2772
+ extensions: RequestExtensions | None = None,
2773
+ ) -> None:
2774
+ pass
2775
+
2776
+ @overload
2777
+ async def DELETE(
2778
+ self,
2779
+ path: Literal["/memoryset/{name_or_id}/memory/{memory_id}"],
2780
+ *,
2781
+ params: DeleteMemorysetByNameOrIdMemoryByMemoryIdParams,
2782
+ parse_as: Literal["json"] = "json",
2783
+ headers: HeaderTypes | None = None,
2784
+ cookies: CookieTypes | None = None,
2785
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2786
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2787
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2788
+ extensions: RequestExtensions | None = None,
2789
+ ) -> None:
2790
+ pass
2791
+
2792
+ @overload
2793
+ async def DELETE(
2794
+ self,
2795
+ path: Literal["/finetuned_embedding_model/{name_or_id}"],
2796
+ *,
2797
+ params: DeleteFinetunedEmbeddingModelByNameOrIdParams,
2798
+ parse_as: Literal["json"] = "json",
2799
+ headers: HeaderTypes | None = None,
2800
+ cookies: CookieTypes | None = None,
2801
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2802
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2803
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2804
+ extensions: RequestExtensions | None = None,
2805
+ ) -> None:
2806
+ """Delete a finetuned embedding model by name or ID."""
2807
+ pass
2808
+
2809
+ @overload
2810
+ async def DELETE(
2811
+ self,
2812
+ path: Literal["/datasource/{name_or_id}"],
2813
+ *,
2814
+ params: DeleteDatasourceByNameOrIdParams,
2815
+ parse_as: Literal["json"] = "json",
2816
+ headers: HeaderTypes | None = None,
2817
+ cookies: CookieTypes | None = None,
2818
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2819
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2820
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2821
+ extensions: RequestExtensions | None = None,
2822
+ ) -> None:
2823
+ """Delete a datasource by name or ID."""
2824
+ pass
2825
+
2826
+ @overload
2827
+ async def DELETE(
2828
+ self,
2829
+ path: Literal["/classification_model/{name_or_id}"],
2830
+ *,
2831
+ params: DeleteClassificationModelByNameOrIdParams,
2832
+ parse_as: Literal["json"] = "json",
2833
+ headers: HeaderTypes | None = None,
2834
+ cookies: CookieTypes | None = None,
2835
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2836
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2837
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2838
+ extensions: RequestExtensions | None = None,
2839
+ ) -> None:
2840
+ pass
2841
+
2842
+ @overload
2843
+ async def DELETE(
2844
+ self,
2845
+ path: Literal["/regression_model/{name_or_id}"],
2846
+ *,
2847
+ params: DeleteRegressionModelByNameOrIdParams,
2848
+ parse_as: Literal["json"] = "json",
2849
+ headers: HeaderTypes | None = None,
2850
+ cookies: CookieTypes | None = None,
2851
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2852
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2853
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2854
+ extensions: RequestExtensions | None = None,
2855
+ ) -> None:
2856
+ pass
2857
+
2858
+ @overload
2859
+ async def DELETE(
2860
+ self,
2861
+ path: Literal["/classification_model/{model_name_or_id}/evaluation/{job_id}"],
2862
+ *,
2863
+ params: DeleteClassificationModelByModelNameOrIdEvaluationByJobIdParams,
2864
+ parse_as: Literal["json"] = "json",
2865
+ headers: HeaderTypes | None = None,
2866
+ cookies: CookieTypes | None = None,
2867
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2868
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2869
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2870
+ extensions: RequestExtensions | None = None,
2871
+ ) -> None:
2872
+ pass
2873
+
2874
+ @overload
2875
+ async def DELETE(
2876
+ self,
2877
+ path: Literal["/regression_model/{model_name_or_id}/evaluation/{job_id}"],
2878
+ *,
2879
+ params: DeleteRegressionModelByModelNameOrIdEvaluationByJobIdParams,
2880
+ parse_as: Literal["json"] = "json",
2881
+ headers: HeaderTypes | None = None,
2882
+ cookies: CookieTypes | None = None,
2883
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2884
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2885
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2886
+ extensions: RequestExtensions | None = None,
2887
+ ) -> None:
2888
+ pass
2889
+
2890
+ @overload
2891
+ async def DELETE(
2892
+ self,
2893
+ path: Literal["/job/{job_id}/abort"],
2894
+ *,
2895
+ params: DeleteJobByJobIdAbortParams,
2896
+ parse_as: Literal["json"] = "json",
2897
+ headers: HeaderTypes | None = None,
2898
+ cookies: CookieTypes | None = None,
2899
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2900
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2901
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2902
+ extensions: RequestExtensions | None = None,
2903
+ ) -> None:
2904
+ pass
2905
+
2906
+ @overload
2907
+ async def DELETE(
2908
+ self,
2909
+ path: Literal["/telemetry/feedback_category/{name_or_id}"],
2910
+ *,
2911
+ params: DeleteTelemetryFeedbackCategoryByNameOrIdParams,
2912
+ parse_as: Literal["json"] = "json",
2913
+ headers: HeaderTypes | None = None,
2914
+ cookies: CookieTypes | None = None,
2915
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2916
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2917
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2918
+ extensions: RequestExtensions | None = None,
2919
+ ) -> None:
2920
+ """Delete a feedback category and all associated feedback records."""
2921
+ pass
2922
+
2923
+ async def DELETE(
2924
+ self,
2925
+ path: str,
2926
+ *,
2927
+ params: Mapping[str, Any] | None = None,
2928
+ parse_as: Literal["json", "text"] | None = "json",
2929
+ headers: HeaderTypes | None = None,
2930
+ cookies: CookieTypes | None = None,
2931
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2932
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2933
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2934
+ extensions: RequestExtensions | None = None,
2935
+ ) -> Any:
2936
+ path_params, query_params = self._parse_params(params or {}, path)
2937
+ res = await self.delete(
2938
+ path.format(**path_params),
2939
+ params=query_params,
2940
+ headers=headers,
2941
+ cookies=cookies,
2942
+ auth=auth,
2943
+ follow_redirects=follow_redirects,
2944
+ timeout=timeout,
2945
+ extensions=extensions,
2946
+ )
2947
+ res.raise_for_status()
2948
+ return (
2949
+ None
2950
+ if res.status_code == 204
2951
+ else res.json() if parse_as == "json" else res.text if parse_as == "text" else res.content
2952
+ )
2953
+
2954
+ @overload
2955
+ async def POST(
2956
+ self,
2957
+ path: Literal["/auth/api_key"],
2958
+ *,
2959
+ params: None = None,
2960
+ json: CreateApiKeyRequest,
2961
+ data: None = None,
2962
+ files: None = None,
2963
+ content: None = None,
2964
+ parse_as: Literal["json"] = "json",
2965
+ headers: HeaderTypes | None = None,
2966
+ cookies: CookieTypes | None = None,
2967
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2968
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2969
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2970
+ extensions: RequestExtensions | None = None,
2971
+ ) -> CreateApiKeyResponse:
2972
+ """Create a new API key for the organization."""
2973
+ pass
2974
+
2975
+ @overload
2976
+ async def POST(
2977
+ self,
2978
+ path: Literal["/auth/org/plan"],
2979
+ *,
2980
+ params: None = None,
2981
+ json: CreateOrgPlanRequest,
2982
+ data: None = None,
2983
+ files: None = None,
2984
+ content: None = None,
2985
+ parse_as: Literal["json"] = "json",
2986
+ headers: HeaderTypes | None = None,
2987
+ cookies: CookieTypes | None = None,
2988
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2989
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
2990
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
2991
+ extensions: RequestExtensions | None = None,
2992
+ ) -> OrgPlan:
2993
+ """Create an organization plan."""
2994
+ pass
2995
+
2996
+ @overload
2997
+ async def POST(
2998
+ self,
2999
+ path: Literal["/memoryset"],
3000
+ *,
3001
+ params: None = None,
3002
+ json: CreateMemorysetFromDatasourceRequest,
3003
+ data: None = None,
3004
+ files: None = None,
3005
+ content: None = None,
3006
+ parse_as: Literal["json"] = "json",
3007
+ headers: HeaderTypes | None = None,
3008
+ cookies: CookieTypes | None = None,
3009
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3010
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3011
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3012
+ extensions: RequestExtensions | None = None,
3013
+ ) -> MemorysetMetadata:
3014
+ pass
3015
+
3016
+ @overload
3017
+ async def POST(
3018
+ self,
3019
+ path: Literal["/memoryset/empty"],
3020
+ *,
3021
+ params: None = None,
3022
+ json: CreateMemorysetRequest,
3023
+ data: None = None,
3024
+ files: None = None,
3025
+ content: None = None,
3026
+ parse_as: Literal["json"] = "json",
3027
+ headers: HeaderTypes | None = None,
3028
+ cookies: CookieTypes | None = None,
3029
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3030
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3031
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3032
+ extensions: RequestExtensions | None = None,
3033
+ ) -> MemorysetMetadata:
3034
+ pass
3035
+
3036
+ @overload
3037
+ async def POST(
3038
+ self,
3039
+ path: Literal["/memoryset/{name_or_id}/clone"],
3040
+ *,
3041
+ params: PostMemorysetByNameOrIdCloneParams,
3042
+ json: CloneMemorysetRequest,
3043
+ data: None = None,
3044
+ files: None = None,
3045
+ content: None = None,
3046
+ parse_as: Literal["json"] = "json",
3047
+ headers: HeaderTypes | None = None,
3048
+ cookies: CookieTypes | None = None,
3049
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3050
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3051
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3052
+ extensions: RequestExtensions | None = None,
3053
+ ) -> MemorysetMetadata:
3054
+ pass
3055
+
3056
+ @overload
3057
+ async def POST(
3058
+ self,
3059
+ path: Literal["/batch_delete_memoryset"],
3060
+ *,
3061
+ params: None = None,
3062
+ json: DeleteMemorysetsRequest,
3063
+ data: None = None,
3064
+ files: None = None,
3065
+ content: None = None,
3066
+ parse_as: Literal["json"] = "json",
3067
+ headers: HeaderTypes | None = None,
3068
+ cookies: CookieTypes | None = None,
3069
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3070
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3071
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3072
+ extensions: RequestExtensions | None = None,
3073
+ ) -> None:
3074
+ pass
3075
+
3076
+ @overload
3077
+ async def POST(
3078
+ self,
3079
+ path: Literal["/gpu/memoryset/{name_or_id}/lookup"],
3080
+ *,
3081
+ params: PostGpuMemorysetByNameOrIdLookupParams,
3082
+ json: LookupRequest,
3083
+ data: None = None,
3084
+ files: None = None,
3085
+ content: None = None,
3086
+ parse_as: Literal["json"] = "json",
3087
+ headers: HeaderTypes | None = None,
3088
+ cookies: CookieTypes | None = None,
3089
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3090
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3091
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3092
+ extensions: RequestExtensions | None = None,
3093
+ ) -> list[list[LabeledMemoryLookup | ScoredMemoryLookup]]:
3094
+ pass
3095
+
3096
+ @overload
3097
+ async def POST(
3098
+ self,
3099
+ path: Literal["/memoryset/{name_or_id}/memories/get"],
3100
+ *,
3101
+ params: PostMemorysetByNameOrIdMemoriesGetParams,
3102
+ json: GetMemoriesRequest,
3103
+ data: None = None,
3104
+ files: None = None,
3105
+ content: None = None,
3106
+ parse_as: Literal["json"] = "json",
3107
+ headers: HeaderTypes | None = None,
3108
+ cookies: CookieTypes | None = None,
3109
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3110
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3111
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3112
+ extensions: RequestExtensions | None = None,
3113
+ ) -> list[LabeledMemory] | list[ScoredMemory]:
3114
+ pass
3115
+
3116
+ @overload
3117
+ async def POST(
3118
+ self,
3119
+ path: Literal["/memoryset/{name_or_id}/memories"],
3120
+ *,
3121
+ params: PostMemorysetByNameOrIdMemoriesParams,
3122
+ json: ListMemoriesRequest | None = None,
3123
+ data: None = None,
3124
+ files: None = None,
3125
+ content: None = None,
3126
+ parse_as: Literal["json"] = "json",
3127
+ headers: HeaderTypes | None = None,
3128
+ cookies: CookieTypes | None = None,
3129
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3130
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3131
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3132
+ extensions: RequestExtensions | None = None,
3133
+ ) -> list[LabeledMemory] | list[ScoredMemory]:
3134
+ pass
3135
+
3136
+ @overload
3137
+ async def POST(
3138
+ self,
3139
+ path: Literal["/memoryset/{name_or_id}/memories/delete"],
3140
+ *,
3141
+ params: PostMemorysetByNameOrIdMemoriesDeleteParams,
3142
+ json: DeleteMemoriesRequest,
3143
+ data: None = None,
3144
+ files: None = None,
3145
+ content: None = None,
3146
+ parse_as: Literal["json"] = "json",
3147
+ headers: HeaderTypes | None = None,
3148
+ cookies: CookieTypes | None = None,
3149
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3150
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3151
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3152
+ extensions: RequestExtensions | None = None,
3153
+ ) -> None:
3154
+ pass
3155
+
3156
+ @overload
3157
+ async def POST(
3158
+ self,
3159
+ path: Literal["/gpu/memoryset/{name_or_id}/memory"],
3160
+ *,
3161
+ params: PostGpuMemorysetByNameOrIdMemoryParams,
3162
+ json: PostGpuMemorysetByNameOrIdMemoryRequest,
3163
+ data: None = None,
3164
+ files: None = None,
3165
+ content: None = None,
3166
+ parse_as: Literal["json"] = "json",
3167
+ headers: HeaderTypes | None = None,
3168
+ cookies: CookieTypes | None = None,
3169
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3170
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3171
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3172
+ extensions: RequestExtensions | None = None,
3173
+ ) -> list[str]:
3174
+ pass
3175
+
3176
+ @overload
3177
+ async def POST(
3178
+ self,
3179
+ path: Literal["/memoryset/{name_or_id}/analysis"],
3180
+ *,
3181
+ params: PostMemorysetByNameOrIdAnalysisParams,
3182
+ json: MemorysetAnalysisRequest,
3183
+ data: None = None,
3184
+ files: None = None,
3185
+ content: None = None,
3186
+ parse_as: Literal["json"] = "json",
3187
+ headers: HeaderTypes | None = None,
3188
+ cookies: CookieTypes | None = None,
3189
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3190
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3191
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3192
+ extensions: RequestExtensions | None = None,
3193
+ ) -> MemorysetAnalysisResponse:
3194
+ pass
3195
+
3196
+ @overload
3197
+ async def POST(
3198
+ self,
3199
+ path: Literal["/memoryset/{name_or_id}/memory/{memory_id}/cascading_edits"],
3200
+ *,
3201
+ params: PostMemorysetByNameOrIdMemoryByMemoryIdCascadingEditsParams,
3202
+ json: CascadeEditSuggestionsRequest,
3203
+ data: None = None,
3204
+ files: None = None,
3205
+ content: None = None,
3206
+ parse_as: Literal["json"] = "json",
3207
+ headers: HeaderTypes | None = None,
3208
+ cookies: CookieTypes | None = None,
3209
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3210
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3211
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3212
+ extensions: RequestExtensions | None = None,
3213
+ ) -> list[CascadingEditSuggestion]:
3214
+ pass
3215
+
3216
+ @overload
3217
+ async def POST(
3218
+ self,
3219
+ path: Literal["/finetuned_embedding_model"],
3220
+ *,
3221
+ params: None = None,
3222
+ json: FinetuneEmbeddingModelRequest,
3223
+ data: None = None,
3224
+ files: None = None,
3225
+ content: None = None,
3226
+ parse_as: Literal["json"] = "json",
3227
+ headers: HeaderTypes | None = None,
3228
+ cookies: CookieTypes | None = None,
3229
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3230
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3231
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3232
+ extensions: RequestExtensions | None = None,
3233
+ ) -> FinetunedEmbeddingModelMetadata:
3234
+ """Create a finetuned embedding model."""
3235
+ pass
3236
+
3237
+ @overload
3238
+ async def POST(
3239
+ self,
3240
+ path: Literal["/gpu/finetuned_embedding_model/{name_or_id}/embedding"],
3241
+ *,
3242
+ params: PostGpuFinetunedEmbeddingModelByNameOrIdEmbeddingParams,
3243
+ json: EmbedRequest,
3244
+ data: None = None,
3245
+ files: None = None,
3246
+ content: None = None,
3247
+ parse_as: Literal["json"] = "json",
3248
+ headers: HeaderTypes | None = None,
3249
+ cookies: CookieTypes | None = None,
3250
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3251
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3252
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3253
+ extensions: RequestExtensions | None = None,
3254
+ ) -> list[list[float]]:
3255
+ """Embed values using a finetuned embedding model."""
3256
+ pass
3257
+
3258
+ @overload
3259
+ async def POST(
3260
+ self,
3261
+ path: Literal["/gpu/pretrained_embedding_model/{model_name}/embedding"],
3262
+ *,
3263
+ params: PostGpuPretrainedEmbeddingModelByModelNameEmbeddingParams,
3264
+ json: EmbedRequest,
3265
+ data: None = None,
3266
+ files: None = None,
3267
+ content: None = None,
3268
+ parse_as: Literal["json"] = "json",
3269
+ headers: HeaderTypes | None = None,
3270
+ cookies: CookieTypes | None = None,
3271
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3272
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3273
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3274
+ extensions: RequestExtensions | None = None,
3275
+ ) -> list[list[float]]:
3276
+ """Embed values using a pretrained embedding model."""
3277
+ pass
3278
+
3279
+ @overload
3280
+ async def POST(
3281
+ self,
3282
+ path: Literal["/finetuned_embedding_model/{name_or_id}/evaluation"],
3283
+ *,
3284
+ params: PostFinetunedEmbeddingModelByNameOrIdEvaluationParams,
3285
+ json: EmbeddingEvaluationRequest,
3286
+ data: None = None,
3287
+ files: None = None,
3288
+ content: None = None,
3289
+ parse_as: Literal["json"] = "json",
3290
+ headers: HeaderTypes | None = None,
3291
+ cookies: CookieTypes | None = None,
3292
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3293
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3294
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3295
+ extensions: RequestExtensions | None = None,
3296
+ ) -> EmbeddingEvaluationResponse:
3297
+ """Evaluate a finetuned embedding model as a KNN classifier or regressor."""
3298
+ pass
3299
+
3300
+ @overload
3301
+ async def POST(
3302
+ self,
3303
+ path: Literal["/pretrained_embedding_model/{model_name}/evaluation"],
3304
+ *,
3305
+ params: PostPretrainedEmbeddingModelByModelNameEvaluationParams,
3306
+ json: EmbeddingEvaluationRequest,
3307
+ data: None = None,
3308
+ files: None = None,
3309
+ content: None = None,
3310
+ parse_as: Literal["json"] = "json",
3311
+ headers: HeaderTypes | None = None,
3312
+ cookies: CookieTypes | None = None,
3313
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3314
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3315
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3316
+ extensions: RequestExtensions | None = None,
3317
+ ) -> EmbeddingEvaluationResponse:
3318
+ """Evaluate a pretrained embedding model as a KNN classifier or regressor."""
3319
+ pass
3320
+
3321
+ @overload
3322
+ async def POST(
3323
+ self,
3324
+ path: Literal["/datasource/upload"],
3325
+ *,
3326
+ params: None = None,
3327
+ json: None = None,
3328
+ data: PostDatasourceUploadRequest,
3329
+ files: dict[Literal["files"], FileTypes] | list[tuple[Literal["files"], FileTypes]],
3330
+ content: None = None,
3331
+ parse_as: Literal["json"] = "json",
3332
+ headers: HeaderTypes | None = None,
3333
+ cookies: CookieTypes | None = None,
3334
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3335
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3336
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3337
+ extensions: RequestExtensions | None = None,
3338
+ ) -> DatasourceMetadata:
3339
+ """
3340
+ Create a datasource by uploading files.
3341
+
3342
+ Supports multiple file upload scenarios:
3343
+ - Multiple files: HuggingFace Dataset format (dataset_info.json, state.json, .arrow files, etc.)
3344
+ - Single file: CSV, JSON, JSONL, Parquet, or Pickle files
3345
+ """
3346
+ pass
3347
+
3348
+ @overload
3349
+ async def POST(
3350
+ self,
3351
+ path: Literal["/datasource"],
3352
+ *,
3353
+ params: None = None,
3354
+ json: CreateDatasourceFromContentRequest,
3355
+ data: None = None,
3356
+ files: None = None,
3357
+ content: None = None,
3358
+ parse_as: Literal["json"] = "json",
3359
+ headers: HeaderTypes | None = None,
3360
+ cookies: CookieTypes | None = None,
3361
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3362
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3363
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3364
+ extensions: RequestExtensions | None = None,
3365
+ ) -> DatasourceMetadata:
3366
+ """
3367
+ Create a datasource from JSON content.
3368
+
3369
+ Automatically detects and supports multiple JSON formats:
3370
+ - List of records: [{"col1": val1, "col2": val2}, {"col1": val3, "col2": val4}, ...]
3371
+ - Dictionary of columns: {"col1": [val1, val3, ...], "col2": [val2, val4, ...]}
3372
+ """
3373
+ pass
3374
+
3375
+ @overload
3376
+ async def POST(
3377
+ self,
3378
+ path: Literal["/datasource/{name_or_id}/rows"],
3379
+ *,
3380
+ params: PostDatasourceByNameOrIdRowsParams,
3381
+ json: GetDatasourceRowsRequest,
3382
+ data: None = None,
3383
+ files: None = None,
3384
+ content: None = None,
3385
+ parse_as: Literal["json"] = "json",
3386
+ headers: HeaderTypes | None = None,
3387
+ cookies: CookieTypes | None = None,
3388
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3389
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3390
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3391
+ extensions: RequestExtensions | None = None,
3392
+ ) -> list[dict[str, Any]]:
3393
+ """Get rows from a specific datasource with optional filtering."""
3394
+ pass
3395
+
3396
+ @overload
3397
+ async def POST(
3398
+ self,
3399
+ path: Literal["/datasource/{name_or_id}/rows/count"],
3400
+ *,
3401
+ params: PostDatasourceByNameOrIdRowsCountParams,
3402
+ json: GetDatasourceRowCountRequest,
3403
+ data: None = None,
3404
+ files: None = None,
3405
+ content: None = None,
3406
+ parse_as: Literal["json"] = "json",
3407
+ headers: HeaderTypes | None = None,
3408
+ cookies: CookieTypes | None = None,
3409
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3410
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3411
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3412
+ extensions: RequestExtensions | None = None,
3413
+ ) -> int:
3414
+ """Get row count from a specific datasource with optional filtering."""
3415
+ pass
3416
+
3417
+ @overload
3418
+ async def POST(
3419
+ self,
3420
+ path: Literal["/datasource/bootstrap_memory_data"],
3421
+ *,
3422
+ params: None = None,
3423
+ json: BootstrapLabeledMemoryDataInput,
3424
+ data: None = None,
3425
+ files: None = None,
3426
+ content: None = None,
3427
+ parse_as: Literal["json"] = "json",
3428
+ headers: HeaderTypes | None = None,
3429
+ cookies: CookieTypes | None = None,
3430
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3431
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3432
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3433
+ extensions: RequestExtensions | None = None,
3434
+ ) -> BootstrapLabeledMemoryDataResult:
3435
+ """
3436
+ Bootstrap memory data using an AI agent.
3437
+
3438
+ This endpoint uses the bootstrap labeled memory data agent to generate
3439
+ high-quality, diverse training examples for a classification model.
3440
+ """
3441
+ pass
3442
+
3443
+ @overload
3444
+ async def POST(
3445
+ self,
3446
+ path: Literal["/classification_model"],
3447
+ *,
3448
+ params: None = None,
3449
+ json: CreateClassificationModelRequest,
3450
+ data: None = None,
3451
+ files: None = None,
3452
+ content: None = None,
3453
+ parse_as: Literal["json"] = "json",
3454
+ headers: HeaderTypes | None = None,
3455
+ cookies: CookieTypes | None = None,
3456
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3457
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3458
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3459
+ extensions: RequestExtensions | None = None,
3460
+ ) -> ClassificationModelMetadata:
3461
+ pass
3462
+
3463
+ @overload
3464
+ async def POST(
3465
+ self,
3466
+ path: Literal["/regression_model"],
3467
+ *,
3468
+ params: None = None,
3469
+ json: CreateRegressionModelRequest,
3470
+ data: None = None,
3471
+ files: None = None,
3472
+ content: None = None,
3473
+ parse_as: Literal["json"] = "json",
3474
+ headers: HeaderTypes | None = None,
3475
+ cookies: CookieTypes | None = None,
3476
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3477
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3478
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3479
+ extensions: RequestExtensions | None = None,
3480
+ ) -> RegressionModelMetadata:
3481
+ pass
3482
+
3483
+ @overload
3484
+ async def POST(
3485
+ self,
3486
+ path: Literal["/gpu/classification_model/{name_or_id}/prediction"],
3487
+ *,
3488
+ params: PostGpuClassificationModelByNameOrIdPredictionParams,
3489
+ json: ClassificationPredictionRequest,
3490
+ data: None = None,
3491
+ files: None = None,
3492
+ content: None = None,
3493
+ parse_as: Literal["json"] = "json",
3494
+ headers: HeaderTypes | None = None,
3495
+ cookies: CookieTypes | None = None,
3496
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3497
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3498
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3499
+ extensions: RequestExtensions | None = None,
3500
+ ) -> list[BaseLabelPredictionResult]:
3501
+ pass
3502
+
3503
+ @overload
3504
+ async def POST(
3505
+ self,
3506
+ path: Literal["/classification_model/{name_or_id}/prediction"],
3507
+ *,
3508
+ params: PostClassificationModelByNameOrIdPredictionParams,
3509
+ json: ClassificationPredictionRequest,
3510
+ data: None = None,
3511
+ files: None = None,
3512
+ content: None = None,
3513
+ parse_as: Literal["json"] = "json",
3514
+ headers: HeaderTypes | None = None,
3515
+ cookies: CookieTypes | None = None,
3516
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3517
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3518
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3519
+ extensions: RequestExtensions | None = None,
3520
+ ) -> list[BaseLabelPredictionResult]:
3521
+ pass
3522
+
3523
+ @overload
3524
+ async def POST(
3525
+ self,
3526
+ path: Literal["/gpu/regression_model/{name_or_id}/prediction"],
3527
+ *,
3528
+ params: PostGpuRegressionModelByNameOrIdPredictionParams,
3529
+ json: RegressionPredictionRequest,
3530
+ data: None = None,
3531
+ files: None = None,
3532
+ content: None = None,
3533
+ parse_as: Literal["json"] = "json",
3534
+ headers: HeaderTypes | None = None,
3535
+ cookies: CookieTypes | None = None,
3536
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3537
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3538
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3539
+ extensions: RequestExtensions | None = None,
3540
+ ) -> list[BaseScorePredictionResult]:
3541
+ pass
3542
+
3543
+ @overload
3544
+ async def POST(
3545
+ self,
3546
+ path: Literal["/regression_model/{name_or_id}/prediction"],
3547
+ *,
3548
+ params: PostRegressionModelByNameOrIdPredictionParams,
3549
+ json: RegressionPredictionRequest,
3550
+ data: None = None,
3551
+ files: None = None,
3552
+ content: None = None,
3553
+ parse_as: Literal["json"] = "json",
3554
+ headers: HeaderTypes | None = None,
3555
+ cookies: CookieTypes | None = None,
3556
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3557
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3558
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3559
+ extensions: RequestExtensions | None = None,
3560
+ ) -> list[BaseScorePredictionResult]:
3561
+ pass
3562
+
3563
+ @overload
3564
+ async def POST(
3565
+ self,
3566
+ path: Literal["/classification_model/{model_name_or_id}/evaluation"],
3567
+ *,
3568
+ params: PostClassificationModelByModelNameOrIdEvaluationParams,
3569
+ json: ClassificationEvaluationRequest,
3570
+ data: None = None,
3571
+ files: None = None,
3572
+ content: None = None,
3573
+ parse_as: Literal["json"] = "json",
3574
+ headers: HeaderTypes | None = None,
3575
+ cookies: CookieTypes | None = None,
3576
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3577
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3578
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3579
+ extensions: RequestExtensions | None = None,
3580
+ ) -> EvaluationResponse:
3581
+ pass
3582
+
3583
+ @overload
3584
+ async def POST(
3585
+ self,
3586
+ path: Literal["/regression_model/{model_name_or_id}/evaluation"],
3587
+ *,
3588
+ params: PostRegressionModelByModelNameOrIdEvaluationParams,
3589
+ json: RegressionEvaluationRequest,
3590
+ data: None = None,
3591
+ files: None = None,
3592
+ content: None = None,
3593
+ parse_as: Literal["json"] = "json",
3594
+ headers: HeaderTypes | None = None,
3595
+ cookies: CookieTypes | None = None,
3596
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3597
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3598
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3599
+ extensions: RequestExtensions | None = None,
3600
+ ) -> EvaluationResponse:
3601
+ pass
3602
+
3603
+ @overload
3604
+ async def POST(
3605
+ self,
3606
+ path: Literal["/telemetry/prediction"],
3607
+ *,
3608
+ params: None = None,
3609
+ json: ListPredictionsRequest | None = None,
3610
+ data: None = None,
3611
+ files: None = None,
3612
+ content: None = None,
3613
+ parse_as: Literal["json"] = "json",
3614
+ headers: HeaderTypes | None = None,
3615
+ cookies: CookieTypes | None = None,
3616
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3617
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3618
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3619
+ extensions: RequestExtensions | None = None,
3620
+ ) -> list[LabelPredictionWithMemoriesAndFeedback | ScorePredictionWithMemoriesAndFeedback]:
3621
+ """List predictions with optional filtering and sorting."""
3622
+ pass
3623
+
3624
+ @overload
3625
+ async def POST(
3626
+ self,
3627
+ path: Literal["/telemetry/prediction/count"],
3628
+ *,
3629
+ params: None = None,
3630
+ json: CountPredictionsRequest | None = None,
3631
+ data: None = None,
3632
+ files: None = None,
3633
+ content: None = None,
3634
+ parse_as: Literal["json"] = "json",
3635
+ headers: HeaderTypes | None = None,
3636
+ cookies: CookieTypes | None = None,
3637
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3638
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3639
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3640
+ extensions: RequestExtensions | None = None,
3641
+ ) -> int:
3642
+ """Count predictions with optional filtering."""
3643
+ pass
3644
+
3645
+ @overload
3646
+ async def POST(
3647
+ self,
3648
+ path: Literal["/telemetry/memories"],
3649
+ *,
3650
+ params: None = None,
3651
+ json: TelemetryMemoriesRequest,
3652
+ data: None = None,
3653
+ files: None = None,
3654
+ content: None = None,
3655
+ parse_as: Literal["json"] = "json",
3656
+ headers: HeaderTypes | None = None,
3657
+ cookies: CookieTypes | None = None,
3658
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3659
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3660
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3661
+ extensions: RequestExtensions | None = None,
3662
+ ) -> PaginatedUnionLabeledMemoryWithFeedbackMetricsScoredMemoryWithFeedbackMetrics:
3663
+ """
3664
+ List memories with feedback metrics.
3665
+ **Note**: This endpoint will ONLY return memories that have been used in a prediction.
3666
+ If you want to query ALL memories WITHOUT feedback metrics, use the query_memoryset endpoint.
3667
+ """
3668
+ pass
3669
+
3670
+ @overload
3671
+ async def POST(
3672
+ self,
3673
+ path: Literal["/agents/bootstrap_classification_model"],
3674
+ *,
3675
+ params: None = None,
3676
+ json: BootstrapClassificationModelRequest,
3677
+ data: None = None,
3678
+ files: None = None,
3679
+ content: None = None,
3680
+ parse_as: Literal["json"] = "json",
3681
+ headers: HeaderTypes | None = None,
3682
+ cookies: CookieTypes | None = None,
3683
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3684
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3685
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3686
+ extensions: RequestExtensions | None = None,
3687
+ ) -> BootstrapClassificationModelResponse:
3688
+ """
3689
+ Bootstrap a classification model by creating a memoryset with generated memories and a classification model.
3690
+
3691
+ This endpoint uses the bootstrap_labeled_memory_data agent to generate:
3692
+ 1. Memoryset configuration with appropriate settings
3693
+ 2. Model configuration with optimal parameters
3694
+ 3. High-quality training memories for each label
3695
+
3696
+ The process involves:
3697
+ 1. Calling the agent to generate configurations and memories
3698
+ 2. Creating a datasource from the generated memories
3699
+ 3. Creating a memoryset from the datasource
3700
+ 4. Creating a classification model from the memoryset
3701
+ """
3702
+ pass
3703
+
3704
+ async def POST(
3705
+ self,
3706
+ path: str,
3707
+ *,
3708
+ params: Mapping[str, Any] | None = None,
3709
+ json: Any | None = None,
3710
+ data: Mapping[str, Any] | None = None,
3711
+ content: RequestContent | None = None,
3712
+ files: dict[Any, FileTypes] | list[tuple[Any, FileTypes]] | None = None,
3713
+ parse_as: Literal["json", "text"] | None = "json",
3714
+ headers: HeaderTypes | None = None,
3715
+ cookies: CookieTypes | None = None,
3716
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3717
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3718
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3719
+ extensions: RequestExtensions | None = None,
3720
+ ) -> Any:
3721
+ path_params, query_params = self._parse_params(params or {}, path)
3722
+ res = await self.post(
3723
+ path.format(**path_params),
3724
+ params=query_params,
3725
+ content=content,
3726
+ data=data,
3727
+ files=files,
3728
+ json=json,
3729
+ headers=headers,
3730
+ cookies=cookies,
3731
+ auth=auth,
3732
+ follow_redirects=follow_redirects,
3733
+ timeout=timeout,
3734
+ extensions=extensions,
3735
+ )
3736
+ res.raise_for_status()
3737
+ return (
3738
+ None
3739
+ if res.status_code == 204
3740
+ else res.json() if parse_as == "json" else res.text if parse_as == "text" else res.content
3741
+ )
3742
+
3743
+ @overload
3744
+ async def PUT(
3745
+ self,
3746
+ path: Literal["/auth/org/plan"],
3747
+ *,
3748
+ params: None = None,
3749
+ json: UpdateOrgPlanRequest,
3750
+ data: None = None,
3751
+ files: None = None,
3752
+ content: None = None,
3753
+ parse_as: Literal["json"] = "json",
3754
+ headers: HeaderTypes | None = None,
3755
+ cookies: CookieTypes | None = None,
3756
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3757
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3758
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3759
+ extensions: RequestExtensions | None = None,
3760
+ ) -> OrgPlan:
3761
+ """Update the organization plan."""
3762
+ pass
3763
+
3764
+ @overload
3765
+ async def PUT(
3766
+ self,
3767
+ path: Literal["/telemetry/prediction/feedback"],
3768
+ *,
3769
+ params: None = None,
3770
+ json: PutTelemetryPredictionFeedbackRequest,
3771
+ data: None = None,
3772
+ files: None = None,
3773
+ content: None = None,
3774
+ parse_as: Literal["json"] = "json",
3775
+ headers: HeaderTypes | None = None,
3776
+ cookies: CookieTypes | None = None,
3777
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3778
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3779
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3780
+ extensions: RequestExtensions | None = None,
3781
+ ) -> PredictionFeedbackResult:
3782
+ """Record feedback for predictions, handling updates, deletions, and insertions."""
3783
+ pass
3784
+
3785
+ async def PUT(
3786
+ self,
3787
+ path: str,
3788
+ *,
3789
+ params: Mapping[str, Any] | None = None,
3790
+ json: Any | None = None,
3791
+ data: Mapping[str, Any] | None = None,
3792
+ content: RequestContent | None = None,
3793
+ files: dict[Any, FileTypes] | list[tuple[Any, FileTypes]] | None = None,
3794
+ parse_as: Literal["json", "text"] | None = "json",
3795
+ headers: HeaderTypes | None = None,
3796
+ cookies: CookieTypes | None = None,
3797
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3798
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3799
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3800
+ extensions: RequestExtensions | None = None,
3801
+ ) -> Any:
3802
+ path_params, query_params = self._parse_params(params or {}, path)
3803
+ res = await self.put(
3804
+ path.format(**path_params),
3805
+ params=query_params,
3806
+ content=content,
3807
+ data=data,
3808
+ files=files,
3809
+ json=json,
3810
+ headers=headers,
3811
+ cookies=cookies,
3812
+ auth=auth,
3813
+ follow_redirects=follow_redirects,
3814
+ timeout=timeout,
3815
+ extensions=extensions,
3816
+ )
3817
+ res.raise_for_status()
3818
+ return (
3819
+ None
3820
+ if res.status_code == 204
3821
+ else res.json() if parse_as == "json" else res.text if parse_as == "text" else res.content
3822
+ )
3823
+
3824
+ @overload
3825
+ async def PATCH(
3826
+ self,
3827
+ path: Literal["/memoryset/{name_or_id}"],
3828
+ *,
3829
+ params: PatchMemorysetByNameOrIdParams,
3830
+ json: MemorysetUpdate,
3831
+ data: None = None,
3832
+ files: None = None,
3833
+ content: None = None,
3834
+ parse_as: Literal["json"] = "json",
3835
+ headers: HeaderTypes | None = None,
3836
+ cookies: CookieTypes | None = None,
3837
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3838
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3839
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3840
+ extensions: RequestExtensions | None = None,
3841
+ ) -> MemorysetMetadata:
3842
+ pass
3843
+
3844
+ @overload
3845
+ async def PATCH(
3846
+ self,
3847
+ path: Literal["/gpu/memoryset/{name_or_id}/memory"],
3848
+ *,
3849
+ params: PatchGpuMemorysetByNameOrIdMemoryParams,
3850
+ json: PatchGpuMemorysetByNameOrIdMemoryRequest,
3851
+ data: None = None,
3852
+ files: None = None,
3853
+ content: None = None,
3854
+ parse_as: Literal["json"] = "json",
3855
+ headers: HeaderTypes | None = None,
3856
+ cookies: CookieTypes | None = None,
3857
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3858
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3859
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3860
+ extensions: RequestExtensions | None = None,
3861
+ ) -> LabeledMemory | ScoredMemory:
3862
+ pass
3863
+
3864
+ @overload
3865
+ async def PATCH(
3866
+ self,
3867
+ path: Literal["/gpu/memoryset/{name_or_id}/memories"],
3868
+ *,
3869
+ params: PatchGpuMemorysetByNameOrIdMemoriesParams,
3870
+ json: PatchGpuMemorysetByNameOrIdMemoriesRequest,
3871
+ data: None = None,
3872
+ files: None = None,
3873
+ content: None = None,
3874
+ parse_as: Literal["json"] = "json",
3875
+ headers: HeaderTypes | None = None,
3876
+ cookies: CookieTypes | None = None,
3877
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3878
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3879
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3880
+ extensions: RequestExtensions | None = None,
3881
+ ) -> list[LabeledMemory] | list[ScoredMemory]:
3882
+ pass
3883
+
3884
+ @overload
3885
+ async def PATCH(
3886
+ self,
3887
+ path: Literal["/classification_model/{name_or_id}"],
3888
+ *,
3889
+ params: PatchClassificationModelByNameOrIdParams,
3890
+ json: PredictiveModelUpdate,
3891
+ data: None = None,
3892
+ files: None = None,
3893
+ content: None = None,
3894
+ parse_as: Literal["json"] = "json",
3895
+ headers: HeaderTypes | None = None,
3896
+ cookies: CookieTypes | None = None,
3897
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3898
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3899
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3900
+ extensions: RequestExtensions | None = None,
3901
+ ) -> ClassificationModelMetadata:
3902
+ pass
3903
+
3904
+ @overload
3905
+ async def PATCH(
3906
+ self,
3907
+ path: Literal["/regression_model/{name_or_id}"],
3908
+ *,
3909
+ params: PatchRegressionModelByNameOrIdParams,
3910
+ json: PredictiveModelUpdate,
3911
+ data: None = None,
3912
+ files: None = None,
3913
+ content: None = None,
3914
+ parse_as: Literal["json"] = "json",
3915
+ headers: HeaderTypes | None = None,
3916
+ cookies: CookieTypes | None = None,
3917
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3918
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3919
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3920
+ extensions: RequestExtensions | None = None,
3921
+ ) -> RegressionModelMetadata:
3922
+ pass
3923
+
3924
+ @overload
3925
+ async def PATCH(
3926
+ self,
3927
+ path: Literal["/telemetry/prediction/{prediction_id}"],
3928
+ *,
3929
+ params: PatchTelemetryPredictionByPredictionIdParams,
3930
+ json: UpdatePredictionRequest,
3931
+ data: None = None,
3932
+ files: None = None,
3933
+ content: None = None,
3934
+ parse_as: Literal["json"] = "json",
3935
+ headers: HeaderTypes | None = None,
3936
+ cookies: CookieTypes | None = None,
3937
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3938
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3939
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3940
+ extensions: RequestExtensions | None = None,
3941
+ ) -> Any:
3942
+ """Update a prediction with new expected values, tags, or memory ID."""
3943
+ pass
3944
+
3945
+ async def PATCH(
3946
+ self,
3947
+ path: str,
3948
+ *,
3949
+ params: Mapping[str, Any] | None = None,
3950
+ json: Any | None = None,
3951
+ data: Mapping[str, Any] | None = None,
3952
+ content: RequestContent | None = None,
3953
+ files: dict[Any, FileTypes] | list[tuple[Any, FileTypes]] | None = None,
3954
+ parse_as: Literal["json", "text"] | None = "json",
3955
+ headers: HeaderTypes | None = None,
3956
+ cookies: CookieTypes | None = None,
3957
+ auth: AuthTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3958
+ follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
3959
+ timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
3960
+ extensions: RequestExtensions | None = None,
3961
+ ) -> Any:
3962
+ path_params, query_params = self._parse_params(params or {}, path)
3963
+ res = await self.patch(
3964
+ path.format(**path_params),
3965
+ params=query_params,
3966
+ content=content,
3967
+ data=data,
3968
+ files=files,
3969
+ json=json,
3970
+ headers=headers,
3971
+ cookies=cookies,
3972
+ auth=auth,
3973
+ follow_redirects=follow_redirects,
3974
+ timeout=timeout,
3975
+ extensions=extensions,
3976
+ )
3977
+ res.raise_for_status()
3978
+ return (
3979
+ None
3980
+ if res.status_code == 204
3981
+ else res.json() if parse_as == "json" else res.text if parse_as == "text" else res.content
3982
+ )
3983
+
3984
+ @staticmethod
3985
+ async def _raise_error_for_response(response: Response) -> None:
3986
+ if response.status_code == 401:
3987
+ raise ValueError("Invalid API key")
3988
+ # elif response.status_code == 402:
3989
+ # res = cast(QuotaExceededErrorResponse, json.loads((await response.aread()).decode(response.encoding or "utf-8")))
3990
+
3991
+ # raise RuntimeError(
3992
+ # f"{res['quota_type'].replace('_', ' ').title()} limit reached ({res['current']}/{res['quota_limit']})"
3993
+ # )
3994
+ elif response.status_code == 403:
3995
+ raise PermissionError(json.loads((await response.aread()).decode(response.encoding or "utf-8"))["reason"])
3996
+ elif response.status_code == 404:
3997
+ res = cast(NotFoundErrorResponse, json.loads((await response.aread()).decode(response.encoding or "utf-8")))
3998
+ if res["resource"] is not None:
3999
+ raise LookupError(f"The {res['resource']} you are looking for does not exist")
4000
+ else:
4001
+ raise RuntimeError(f"Unknown API route: {response.url}")
4002
+ elif response.status_code == 405:
4003
+ raise RuntimeError(f"Unknown method {response.request.method} for API route: {response.url}")
4004
+ elif response.status_code == 409:
4005
+ res = cast(
4006
+ ConstraintViolationErrorResponse,
4007
+ json.loads((await response.aread()).decode(response.encoding or "utf-8")),
4008
+ )
4009
+ raise RuntimeError(res["constraint"])
4010
+ elif response.status_code == 422:
4011
+ res = cast(
4012
+ InvalidInputErrorResponse, json.loads((await response.aread()).decode(response.encoding or "utf-8"))
4013
+ )
4014
+ issues = [f"{issue['loc'][-1]}: {issue['msg']}" for issue in res["validation_issues"]]
4015
+ raise ValueError("Invalid input:\n\t" + "\n\t".join(issues))
4016
+ elif response.status_code == 500:
4017
+ res = cast(
4018
+ InternalServerErrorResponse, json.loads((await response.aread()).decode(response.encoding or "utf-8"))
4019
+ )
4020
+ raise RuntimeError(f"Unexpected server error: {res['message']}")
4021
+ elif response.status_code == 503:
4022
+ raise RuntimeError("Orca API is currently unavailable, please try again later")
4023
+ elif response.status_code >= 400:
4024
+ raise RuntimeError(f"Unexpected status code: {response.status_code}")
4025
+
4026
+ @staticmethod
4027
+ async def _instrument_request(request: Request) -> None:
4028
+ request.headers["X-Request-ID"] = str(uuid.uuid4())
4029
+
4030
+ def __init__(
4031
+ self,
4032
+ *,
4033
+ api_key: str | None = None,
4034
+ base_url: URL | str = "",
4035
+ headers: HeaderTypes | None = None,
4036
+ transport: AsyncBaseTransport | None = None,
4037
+ timeout: TimeoutTypes | None = None,
4038
+ limits: Limits | None = None,
4039
+ max_redirects: int = 20,
4040
+ event_hooks: None | (Mapping[str, list[Callable[..., Any]]]) = None,
4041
+ http1: bool = True,
4042
+ http2: bool = False,
4043
+ proxy: str | URL | Proxy | None = None,
4044
+ log_level: int = logging.WARNING,
4045
+ ) -> None:
4046
+ """
4047
+ Initialize an OrcaAPI async httpx client
4048
+
4049
+ Params:
4050
+ api_key: API key to use for authentication, will default to ORCA_API_KEY if not set.
4051
+ base_url: URL of the OrcaAPI, will default to ORCA_API_URL or the cloud API URL if not set.
4052
+ """
4053
+ logging.getLogger("httpx").setLevel(log_level)
4054
+ logging.getLogger("httpcore").setLevel(log_level)
4055
+ super().__init__(
4056
+ headers={"Api-Key": api_key or os.environ.get("ORCA_API_KEY", "")} | dict(Headers(headers or {}).items()),
4057
+ http1=http1,
4058
+ http2=http2,
4059
+ proxy=proxy,
4060
+ timeout=timeout or Timeout(connect=3, read=20, write=10, pool=5),
4061
+ follow_redirects=True,
4062
+ limits=limits or Limits(max_connections=100, max_keepalive_connections=20),
4063
+ max_redirects=max_redirects,
4064
+ event_hooks=event_hooks
4065
+ or {"request": [self._instrument_request], "response": [self._raise_error_for_response]},
4066
+ base_url=base_url or os.environ.get("ORCA_API_URL", "https://api.orcadb.ai/"),
4067
+ transport=transport
4068
+ or RetryTransport(
4069
+ transport=AsyncHTTPTransport(),
4070
+ retry=Retry(
4071
+ total=5,
4072
+ backoff_factor=0.5,
4073
+ allowed_methods=["GET", "POST", "PUT", "PATCH", "DELETE"],
4074
+ status_forcelist=[429, 500, 502, 503, 504],
4075
+ ),
4076
+ ),
4077
+ )
4078
+
4079
+ @property
4080
+ def api_key(self) -> str:
4081
+ return self.headers["Api-Key"]
4082
+
4083
+ @api_key.setter
4084
+ def api_key(self, api_key: str) -> None:
4085
+ self.headers.update(Headers({"Api-Key": api_key}))
4086
+
4087
+ client_ctx = ContextVar[Self | None]("orca_async_client", default=None)
4088
+ default_client: Self | None = None
4089
+
4090
+ @contextmanager
4091
+ def use(self) -> Generator[None, None, None]:
4092
+ """Context manager to inject this async client into OrcaSDK async methods"""
4093
+ token = self.client_ctx.set(self)
4094
+ try:
4095
+ yield
4096
+ finally:
4097
+ self.client_ctx.reset(token)
4098
+
4099
+ @classmethod
4100
+ def _resolve_client(cls, client: Self | None = None) -> Self:
4101
+ client = client or cls.client_ctx.get() or cls.default_client
4102
+ if not client:
4103
+ client = cls.default_client = cls()
4104
+ return client