orq-ai-sdk 4.2.0rc28__py3-none-any.whl → 4.2.6__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 (167) hide show
  1. orq_ai_sdk/_hooks/globalhook.py +0 -1
  2. orq_ai_sdk/_version.py +3 -3
  3. orq_ai_sdk/audio.py +30 -0
  4. orq_ai_sdk/basesdk.py +20 -6
  5. orq_ai_sdk/chat.py +22 -0
  6. orq_ai_sdk/completions.py +332 -0
  7. orq_ai_sdk/contacts.py +43 -855
  8. orq_ai_sdk/deployments.py +61 -0
  9. orq_ai_sdk/edits.py +258 -0
  10. orq_ai_sdk/embeddings.py +238 -0
  11. orq_ai_sdk/generations.py +272 -0
  12. orq_ai_sdk/identities.py +1037 -0
  13. orq_ai_sdk/images.py +28 -0
  14. orq_ai_sdk/models/__init__.py +5341 -737
  15. orq_ai_sdk/models/actionreviewedstreamingevent.py +18 -1
  16. orq_ai_sdk/models/actionreviewrequestedstreamingevent.py +44 -1
  17. orq_ai_sdk/models/agenterroredstreamingevent.py +18 -1
  18. orq_ai_sdk/models/agentinactivestreamingevent.py +168 -70
  19. orq_ai_sdk/models/agentmessagecreatedstreamingevent.py +18 -2
  20. orq_ai_sdk/models/agentresponsemessage.py +18 -2
  21. orq_ai_sdk/models/agentstartedstreamingevent.py +127 -2
  22. orq_ai_sdk/models/agentthoughtstreamingevent.py +178 -211
  23. orq_ai_sdk/models/conversationresponse.py +31 -20
  24. orq_ai_sdk/models/conversationwithmessagesresponse.py +31 -20
  25. orq_ai_sdk/models/createagentrequestop.py +1922 -384
  26. orq_ai_sdk/models/createagentresponse.py +147 -91
  27. orq_ai_sdk/models/createagentresponserequestop.py +111 -2
  28. orq_ai_sdk/models/createchatcompletionop.py +1375 -861
  29. orq_ai_sdk/models/createchunkop.py +46 -19
  30. orq_ai_sdk/models/createcompletionop.py +1890 -0
  31. orq_ai_sdk/models/createcontactop.py +45 -56
  32. orq_ai_sdk/models/createconversationop.py +61 -39
  33. orq_ai_sdk/models/createconversationresponseop.py +68 -4
  34. orq_ai_sdk/models/createdatasetitemop.py +424 -80
  35. orq_ai_sdk/models/createdatasetop.py +19 -2
  36. orq_ai_sdk/models/createdatasourceop.py +92 -26
  37. orq_ai_sdk/models/createembeddingop.py +384 -0
  38. orq_ai_sdk/models/createevalop.py +552 -24
  39. orq_ai_sdk/models/createidentityop.py +176 -0
  40. orq_ai_sdk/models/createimageeditop.py +504 -0
  41. orq_ai_sdk/models/createimageop.py +208 -117
  42. orq_ai_sdk/models/createimagevariationop.py +486 -0
  43. orq_ai_sdk/models/createknowledgeop.py +186 -121
  44. orq_ai_sdk/models/creatememorydocumentop.py +50 -1
  45. orq_ai_sdk/models/creatememoryop.py +34 -21
  46. orq_ai_sdk/models/creatememorystoreop.py +34 -1
  47. orq_ai_sdk/models/createmoderationop.py +521 -0
  48. orq_ai_sdk/models/createpromptop.py +2748 -1252
  49. orq_ai_sdk/models/creatererankop.py +416 -0
  50. orq_ai_sdk/models/createresponseop.py +2567 -0
  51. orq_ai_sdk/models/createspeechop.py +316 -0
  52. orq_ai_sdk/models/createtoolop.py +537 -12
  53. orq_ai_sdk/models/createtranscriptionop.py +562 -0
  54. orq_ai_sdk/models/createtranslationop.py +540 -0
  55. orq_ai_sdk/models/datapart.py +18 -1
  56. orq_ai_sdk/models/deletechunksop.py +34 -1
  57. orq_ai_sdk/models/{deletecontactop.py → deleteidentityop.py} +9 -9
  58. orq_ai_sdk/models/deletepromptop.py +26 -0
  59. orq_ai_sdk/models/deploymentcreatemetricop.py +362 -76
  60. orq_ai_sdk/models/deploymentgetconfigop.py +635 -194
  61. orq_ai_sdk/models/deploymentinvokeop.py +168 -173
  62. orq_ai_sdk/models/deploymentsop.py +195 -58
  63. orq_ai_sdk/models/deploymentstreamop.py +652 -304
  64. orq_ai_sdk/models/errorpart.py +18 -1
  65. orq_ai_sdk/models/filecontentpartschema.py +18 -1
  66. orq_ai_sdk/models/filegetop.py +19 -2
  67. orq_ai_sdk/models/filelistop.py +35 -2
  68. orq_ai_sdk/models/filepart.py +50 -1
  69. orq_ai_sdk/models/fileuploadop.py +51 -2
  70. orq_ai_sdk/models/generateconversationnameop.py +31 -20
  71. orq_ai_sdk/models/get_v2_evaluators_id_versionsop.py +34 -1
  72. orq_ai_sdk/models/get_v2_tools_tool_id_versions_version_id_op.py +18 -1
  73. orq_ai_sdk/models/get_v2_tools_tool_id_versionsop.py +34 -1
  74. orq_ai_sdk/models/getallmemoriesop.py +34 -21
  75. orq_ai_sdk/models/getallmemorydocumentsop.py +42 -1
  76. orq_ai_sdk/models/getallmemorystoresop.py +34 -1
  77. orq_ai_sdk/models/getallpromptsop.py +1690 -230
  78. orq_ai_sdk/models/getalltoolsop.py +325 -8
  79. orq_ai_sdk/models/getchunkscountop.py +34 -1
  80. orq_ai_sdk/models/getevalsop.py +395 -43
  81. orq_ai_sdk/models/getonechunkop.py +14 -19
  82. orq_ai_sdk/models/getoneknowledgeop.py +116 -96
  83. orq_ai_sdk/models/getonepromptop.py +1673 -230
  84. orq_ai_sdk/models/getpromptversionop.py +1670 -216
  85. orq_ai_sdk/models/imagecontentpartschema.py +50 -1
  86. orq_ai_sdk/models/internal/globals.py +18 -1
  87. orq_ai_sdk/models/invokeagentop.py +140 -2
  88. orq_ai_sdk/models/invokedeploymentrequest.py +418 -80
  89. orq_ai_sdk/models/invokeevalop.py +160 -131
  90. orq_ai_sdk/models/listagentsop.py +793 -166
  91. orq_ai_sdk/models/listchunksop.py +32 -19
  92. orq_ai_sdk/models/listchunkspaginatedop.py +46 -19
  93. orq_ai_sdk/models/listconversationsop.py +18 -1
  94. orq_ai_sdk/models/listdatasetdatapointsop.py +252 -42
  95. orq_ai_sdk/models/listdatasetsop.py +35 -2
  96. orq_ai_sdk/models/listdatasourcesop.py +35 -26
  97. orq_ai_sdk/models/{listcontactsop.py → listidentitiesop.py} +89 -79
  98. orq_ai_sdk/models/listknowledgebasesop.py +132 -96
  99. orq_ai_sdk/models/listmodelsop.py +1 -0
  100. orq_ai_sdk/models/listpromptversionsop.py +1684 -216
  101. orq_ai_sdk/models/parseop.py +161 -17
  102. orq_ai_sdk/models/partdoneevent.py +19 -2
  103. orq_ai_sdk/models/post_v2_router_ocrop.py +408 -0
  104. orq_ai_sdk/models/publiccontact.py +27 -4
  105. orq_ai_sdk/models/publicidentity.py +62 -0
  106. orq_ai_sdk/models/reasoningpart.py +19 -2
  107. orq_ai_sdk/models/refusalpartschema.py +18 -1
  108. orq_ai_sdk/models/remoteconfigsgetconfigop.py +34 -1
  109. orq_ai_sdk/models/responsedoneevent.py +114 -84
  110. orq_ai_sdk/models/responsestartedevent.py +18 -1
  111. orq_ai_sdk/models/retrieveagentrequestop.py +787 -166
  112. orq_ai_sdk/models/retrievedatapointop.py +236 -42
  113. orq_ai_sdk/models/retrievedatasetop.py +19 -2
  114. orq_ai_sdk/models/retrievedatasourceop.py +17 -26
  115. orq_ai_sdk/models/{retrievecontactop.py → retrieveidentityop.py} +38 -41
  116. orq_ai_sdk/models/retrievememorydocumentop.py +18 -1
  117. orq_ai_sdk/models/retrievememoryop.py +18 -21
  118. orq_ai_sdk/models/retrievememorystoreop.py +18 -1
  119. orq_ai_sdk/models/retrievetoolop.py +309 -8
  120. orq_ai_sdk/models/runagentop.py +1451 -197
  121. orq_ai_sdk/models/searchknowledgeop.py +108 -1
  122. orq_ai_sdk/models/security.py +18 -1
  123. orq_ai_sdk/models/streamagentop.py +93 -2
  124. orq_ai_sdk/models/streamrunagentop.py +1428 -195
  125. orq_ai_sdk/models/textcontentpartschema.py +34 -1
  126. orq_ai_sdk/models/thinkingconfigenabledschema.py +18 -1
  127. orq_ai_sdk/models/toolcallpart.py +18 -1
  128. orq_ai_sdk/models/tooldoneevent.py +18 -1
  129. orq_ai_sdk/models/toolexecutionfailedstreamingevent.py +50 -1
  130. orq_ai_sdk/models/toolexecutionfinishedstreamingevent.py +34 -1
  131. orq_ai_sdk/models/toolexecutionstartedstreamingevent.py +34 -1
  132. orq_ai_sdk/models/toolresultpart.py +18 -1
  133. orq_ai_sdk/models/toolreviewrequestedevent.py +18 -1
  134. orq_ai_sdk/models/toolstartedevent.py +18 -1
  135. orq_ai_sdk/models/updateagentop.py +1951 -404
  136. orq_ai_sdk/models/updatechunkop.py +46 -19
  137. orq_ai_sdk/models/updateconversationop.py +61 -39
  138. orq_ai_sdk/models/updatedatapointop.py +424 -80
  139. orq_ai_sdk/models/updatedatasetop.py +51 -2
  140. orq_ai_sdk/models/updatedatasourceop.py +17 -26
  141. orq_ai_sdk/models/updateevalop.py +577 -16
  142. orq_ai_sdk/models/{updatecontactop.py → updateidentityop.py} +78 -68
  143. orq_ai_sdk/models/updateknowledgeop.py +234 -190
  144. orq_ai_sdk/models/updatememorydocumentop.py +50 -1
  145. orq_ai_sdk/models/updatememoryop.py +50 -21
  146. orq_ai_sdk/models/updatememorystoreop.py +66 -1
  147. orq_ai_sdk/models/updatepromptop.py +2844 -1450
  148. orq_ai_sdk/models/updatetoolop.py +592 -9
  149. orq_ai_sdk/models/usermessagerequest.py +18 -2
  150. orq_ai_sdk/moderations.py +218 -0
  151. orq_ai_sdk/orq_completions.py +660 -0
  152. orq_ai_sdk/orq_responses.py +398 -0
  153. orq_ai_sdk/prompts.py +28 -36
  154. orq_ai_sdk/rerank.py +232 -0
  155. orq_ai_sdk/router.py +89 -641
  156. orq_ai_sdk/sdk.py +3 -0
  157. orq_ai_sdk/speech.py +251 -0
  158. orq_ai_sdk/transcriptions.py +326 -0
  159. orq_ai_sdk/translations.py +298 -0
  160. orq_ai_sdk/utils/__init__.py +13 -1
  161. orq_ai_sdk/variations.py +254 -0
  162. orq_ai_sdk-4.2.6.dist-info/METADATA +888 -0
  163. orq_ai_sdk-4.2.6.dist-info/RECORD +263 -0
  164. {orq_ai_sdk-4.2.0rc28.dist-info → orq_ai_sdk-4.2.6.dist-info}/WHEEL +2 -1
  165. orq_ai_sdk-4.2.6.dist-info/top_level.txt +1 -0
  166. orq_ai_sdk-4.2.0rc28.dist-info/METADATA +0 -867
  167. orq_ai_sdk-4.2.0rc28.dist-info/RECORD +0 -233
@@ -24,8 +24,8 @@ from typing import Any, Dict, List, Optional
24
24
  from typing_extensions import Annotated, NotRequired, TypedDict
25
25
 
26
26
 
27
- class UpdateContactRequestBodyTypedDict(TypedDict):
28
- r"""Contact fields to update"""
27
+ class UpdateIdentityRequestBodyTypedDict(TypedDict):
28
+ r"""Identity fields to update"""
29
29
 
30
30
  display_name: NotRequired[Nullable[str]]
31
31
  r"""Display name or nickname of the contact user. This is typically shown in user interfaces."""
@@ -39,8 +39,8 @@ class UpdateContactRequestBodyTypedDict(TypedDict):
39
39
  r"""Additional custom metadata associated with the contact as key-value pairs. Use this to store any extra information specific to your application."""
40
40
 
41
41
 
42
- class UpdateContactRequestBody(BaseModel):
43
- r"""Contact fields to update"""
42
+ class UpdateIdentityRequestBody(BaseModel):
43
+ r"""Identity fields to update"""
44
44
 
45
45
  display_name: OptionalNullable[str] = UNSET
46
46
  r"""Display name or nickname of the contact user. This is typically shown in user interfaces."""
@@ -59,69 +59,82 @@ class UpdateContactRequestBody(BaseModel):
59
59
 
60
60
  @model_serializer(mode="wrap")
61
61
  def serialize_model(self, handler):
62
- optional_fields = ["display_name", "email", "avatar_url", "tags", "metadata"]
63
- nullable_fields = ["display_name", "email", "avatar_url"]
64
- null_default_fields = []
65
-
62
+ optional_fields = set(
63
+ ["display_name", "email", "avatar_url", "tags", "metadata"]
64
+ )
65
+ nullable_fields = set(["display_name", "email", "avatar_url"])
66
66
  serialized = handler(self)
67
-
68
67
  m = {}
69
68
 
70
69
  for n, f in type(self).model_fields.items():
71
70
  k = f.alias or n
72
71
  val = serialized.get(k)
73
- serialized.pop(k, None)
74
-
75
- optional_nullable = k in optional_fields and k in nullable_fields
76
- is_set = (
77
- self.__pydantic_fields_set__.intersection({n})
78
- or k in null_default_fields
79
- ) # pylint: disable=no-member
80
-
81
- if val is not None and val != UNSET_SENTINEL:
82
- m[k] = val
83
- elif val != UNSET_SENTINEL and (
84
- not k in optional_fields or (optional_nullable and is_set)
85
- ):
86
- m[k] = val
72
+ is_nullable_and_explicitly_set = (
73
+ k in nullable_fields
74
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
75
+ )
76
+
77
+ if val != UNSET_SENTINEL:
78
+ if (
79
+ val is not None
80
+ or k not in optional_fields
81
+ or is_nullable_and_explicitly_set
82
+ ):
83
+ m[k] = val
87
84
 
88
85
  return m
89
86
 
90
87
 
91
- class UpdateContactRequestTypedDict(TypedDict):
88
+ class UpdateIdentityRequestTypedDict(TypedDict):
92
89
  id: str
93
- r"""Unique contact id or external id"""
94
- request_body: NotRequired[UpdateContactRequestBodyTypedDict]
95
- r"""Contact fields to update"""
90
+ r"""Unique identity id or external id"""
91
+ request_body: NotRequired[UpdateIdentityRequestBodyTypedDict]
92
+ r"""Identity fields to update"""
96
93
 
97
94
 
98
- class UpdateContactRequest(BaseModel):
95
+ class UpdateIdentityRequest(BaseModel):
99
96
  id: Annotated[
100
97
  str, FieldMetadata(path=PathParamMetadata(style="simple", explode=False))
101
98
  ]
102
- r"""Unique contact id or external id"""
99
+ r"""Unique identity id or external id"""
103
100
 
104
101
  request_body: Annotated[
105
- Optional[UpdateContactRequestBody],
102
+ Optional[UpdateIdentityRequestBody],
106
103
  FieldMetadata(request=RequestMetadata(media_type="application/json")),
107
104
  ] = None
108
- r"""Contact fields to update"""
105
+ r"""Identity fields to update"""
106
+
107
+ @model_serializer(mode="wrap")
108
+ def serialize_model(self, handler):
109
+ optional_fields = set(["RequestBody"])
110
+ serialized = handler(self)
111
+ m = {}
109
112
 
113
+ for n, f in type(self).model_fields.items():
114
+ k = f.alias or n
115
+ val = serialized.get(k)
110
116
 
111
- class UpdateContactContactsResponseBodyData(BaseModel):
117
+ if val != UNSET_SENTINEL:
118
+ if val is not None or k not in optional_fields:
119
+ m[k] = val
120
+
121
+ return m
122
+
123
+
124
+ class UpdateIdentityIdentitiesResponseBodyData(BaseModel):
112
125
  message: str
113
126
  r"""Error message"""
114
127
 
115
128
 
116
129
  @dataclass(unsafe_hash=True)
117
- class UpdateContactContactsResponseBody(OrqError):
118
- r"""Contact not found"""
130
+ class UpdateIdentityIdentitiesResponseBody(OrqError):
131
+ r"""Identity not found"""
119
132
 
120
- data: UpdateContactContactsResponseBodyData = field(hash=False)
133
+ data: UpdateIdentityIdentitiesResponseBodyData = field(hash=False)
121
134
 
122
135
  def __init__(
123
136
  self,
124
- data: UpdateContactContactsResponseBodyData,
137
+ data: UpdateIdentityIdentitiesResponseBodyData,
125
138
  raw_response: httpx.Response,
126
139
  body: Optional[str] = None,
127
140
  ):
@@ -131,8 +144,8 @@ class UpdateContactContactsResponseBody(OrqError):
131
144
  object.__setattr__(self, "data", data)
132
145
 
133
146
 
134
- class UpdateContactResponseBodyTypedDict(TypedDict):
135
- r"""Updated contact"""
147
+ class UpdateIdentityResponseBodyTypedDict(TypedDict):
148
+ r"""Updated identity"""
136
149
 
137
150
  id: str
138
151
  r"""Unique ULID (Universally Unique Lexicographically Sortable Identifier) for the contact"""
@@ -154,8 +167,8 @@ class UpdateContactResponseBodyTypedDict(TypedDict):
154
167
  r"""The date and time the resource was last updated"""
155
168
 
156
169
 
157
- class UpdateContactResponseBody(BaseModel):
158
- r"""Updated contact"""
170
+ class UpdateIdentityResponseBody(BaseModel):
171
+ r"""Updated identity"""
159
172
 
160
173
  id: Annotated[str, pydantic.Field(alias="_id")]
161
174
  r"""Unique ULID (Universally Unique Lexicographically Sortable Identifier) for the contact"""
@@ -181,43 +194,40 @@ class UpdateContactResponseBody(BaseModel):
181
194
  created: Optional[datetime] = None
182
195
  r"""The date and time the resource was created"""
183
196
 
184
- updated: Optional[datetime] = parse_datetime("2026-01-14T08:04:31.906Z")
197
+ updated: Optional[datetime] = parse_datetime("2026-01-25T15:02:07.185Z")
185
198
  r"""The date and time the resource was last updated"""
186
199
 
187
200
  @model_serializer(mode="wrap")
188
201
  def serialize_model(self, handler):
189
- optional_fields = [
190
- "display_name",
191
- "email",
192
- "avatar_url",
193
- "tags",
194
- "metadata",
195
- "created",
196
- "updated",
197
- ]
198
- nullable_fields = ["display_name", "email", "avatar_url"]
199
- null_default_fields = []
200
-
202
+ optional_fields = set(
203
+ [
204
+ "display_name",
205
+ "email",
206
+ "avatar_url",
207
+ "tags",
208
+ "metadata",
209
+ "created",
210
+ "updated",
211
+ ]
212
+ )
213
+ nullable_fields = set(["display_name", "email", "avatar_url"])
201
214
  serialized = handler(self)
202
-
203
215
  m = {}
204
216
 
205
217
  for n, f in type(self).model_fields.items():
206
218
  k = f.alias or n
207
219
  val = serialized.get(k)
208
- serialized.pop(k, None)
209
-
210
- optional_nullable = k in optional_fields and k in nullable_fields
211
- is_set = (
212
- self.__pydantic_fields_set__.intersection({n})
213
- or k in null_default_fields
214
- ) # pylint: disable=no-member
215
-
216
- if val is not None and val != UNSET_SENTINEL:
217
- m[k] = val
218
- elif val != UNSET_SENTINEL and (
219
- not k in optional_fields or (optional_nullable and is_set)
220
- ):
221
- m[k] = val
220
+ is_nullable_and_explicitly_set = (
221
+ k in nullable_fields
222
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
223
+ )
224
+
225
+ if val != UNSET_SENTINEL:
226
+ if (
227
+ val is not None
228
+ or k not in optional_fields
229
+ or is_nullable_and_explicitly_set
230
+ ):
231
+ m[k] = val
222
232
 
223
233
  return m