supermemory 0.1.0a1__py3-none-any.whl → 3.0.0a1__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 (35) hide show
  1. supermemory/__init__.py +5 -0
  2. supermemory/_client.py +29 -29
  3. supermemory/_files.py +1 -1
  4. supermemory/_utils/_proxy.py +4 -1
  5. supermemory/_utils/_resources_proxy.py +24 -0
  6. supermemory/_version.py +1 -1
  7. supermemory/resources/__init__.py +33 -33
  8. supermemory/resources/{connection.py → connections.py} +154 -61
  9. supermemory/resources/{memory.py → memories.py} +264 -88
  10. supermemory/resources/search.py +92 -50
  11. supermemory/resources/settings.py +58 -11
  12. supermemory/types/__init__.py +10 -2
  13. supermemory/types/connection_create_params.py +5 -2
  14. supermemory/types/connection_create_response.py +7 -1
  15. supermemory/types/connection_get_response.py +21 -0
  16. supermemory/types/connection_list_params.py +13 -0
  17. supermemory/types/connection_list_response.py +25 -0
  18. supermemory/types/memory_add_params.py +18 -0
  19. supermemory/types/{memory_create_response.py → memory_add_response.py} +2 -2
  20. supermemory/types/memory_get_response.py +3 -19
  21. supermemory/types/memory_list_response.py +48 -12
  22. supermemory/types/memory_update_params.py +18 -0
  23. supermemory/types/memory_update_response.py +11 -0
  24. supermemory/types/memory_upload_file_params.py +13 -0
  25. supermemory/types/memory_upload_file_response.py +11 -0
  26. supermemory/types/search_execute_params.py +36 -6
  27. supermemory/types/setting_get_response.py +11 -0
  28. supermemory/types/setting_update_params.py +4 -12
  29. supermemory/types/setting_update_response.py +3 -11
  30. {supermemory-0.1.0a1.dist-info → supermemory-3.0.0a1.dist-info}/METADATA +24 -7
  31. supermemory-3.0.0a1.dist-info/RECORD +56 -0
  32. supermemory/types/memory_create_params.py +0 -23
  33. supermemory-0.1.0a1.dist-info/RECORD +0 -47
  34. {supermemory-0.1.0a1.dist-info → supermemory-3.0.0a1.dist-info}/WHEEL +0 -0
  35. {supermemory-0.1.0a1.dist-info → supermemory-3.0.0a1.dist-info}/licenses/LICENSE +0 -0
@@ -2,14 +2,14 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Dict, Union
5
+ from typing import Dict, List, Union, Mapping, cast
6
6
  from typing_extensions import Literal
7
7
 
8
8
  import httpx
9
9
 
10
- from ..types import memory_list_params, memory_create_params
11
- from .._types import NOT_GIVEN, Body, Query, Headers, NotGiven
12
- from .._utils import maybe_transform, async_maybe_transform
10
+ from ..types import memory_add_params, memory_list_params, memory_update_params, memory_upload_file_params
11
+ from .._types import NOT_GIVEN, Body, Query, Headers, NotGiven, FileTypes
12
+ from .._utils import extract_files, maybe_transform, deepcopy_minimal, async_maybe_transform
13
13
  from .._compat import cached_property
14
14
  from .._resource import SyncAPIResource, AsyncAPIResource
15
15
  from .._response import (
@@ -19,58 +19,54 @@ from .._response import (
19
19
  async_to_streamed_response_wrapper,
20
20
  )
21
21
  from .._base_client import make_request_options
22
+ from ..types.memory_add_response import MemoryAddResponse
22
23
  from ..types.memory_get_response import MemoryGetResponse
23
24
  from ..types.memory_list_response import MemoryListResponse
24
- from ..types.memory_create_response import MemoryCreateResponse
25
25
  from ..types.memory_delete_response import MemoryDeleteResponse
26
+ from ..types.memory_update_response import MemoryUpdateResponse
27
+ from ..types.memory_upload_file_response import MemoryUploadFileResponse
26
28
 
27
- __all__ = ["MemoryResource", "AsyncMemoryResource"]
29
+ __all__ = ["MemoriesResource", "AsyncMemoriesResource"]
28
30
 
29
31
 
30
- class MemoryResource(SyncAPIResource):
32
+ class MemoriesResource(SyncAPIResource):
31
33
  @cached_property
32
- def with_raw_response(self) -> MemoryResourceWithRawResponse:
34
+ def with_raw_response(self) -> MemoriesResourceWithRawResponse:
33
35
  """
34
36
  This property can be used as a prefix for any HTTP method call to return
35
37
  the raw response object instead of the parsed content.
36
38
 
37
39
  For more information, see https://www.github.com/supermemoryai/python-sdk#accessing-raw-response-data-eg-headers
38
40
  """
39
- return MemoryResourceWithRawResponse(self)
41
+ return MemoriesResourceWithRawResponse(self)
40
42
 
41
43
  @cached_property
42
- def with_streaming_response(self) -> MemoryResourceWithStreamingResponse:
44
+ def with_streaming_response(self) -> MemoriesResourceWithStreamingResponse:
43
45
  """
44
46
  An alternative to `.with_raw_response` that doesn't eagerly read the response body.
45
47
 
46
48
  For more information, see https://www.github.com/supermemoryai/python-sdk#with_streaming_response
47
49
  """
48
- return MemoryResourceWithStreamingResponse(self)
50
+ return MemoriesResourceWithStreamingResponse(self)
49
51
 
50
- def create(
52
+ def update(
51
53
  self,
54
+ id: str,
52
55
  *,
53
56
  content: str,
54
- id: str | NotGiven = NOT_GIVEN,
57
+ container_tags: List[str] | NotGiven = NOT_GIVEN,
55
58
  metadata: Dict[str, Union[str, float, bool]] | NotGiven = NOT_GIVEN,
56
- user_id: str | NotGiven = NOT_GIVEN,
57
59
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
58
60
  # The extra values given here take precedence over values defined on the client or passed to this method.
59
61
  extra_headers: Headers | None = None,
60
62
  extra_query: Query | None = None,
61
63
  extra_body: Body | None = None,
62
64
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
63
- ) -> MemoryCreateResponse:
65
+ ) -> MemoryUpdateResponse:
64
66
  """
65
- Add a new memory with content and metadata
67
+ Update a memory with any content type (text, url, file, etc.) and metadata
66
68
 
67
69
  Args:
68
- content: Content of the memory
69
-
70
- metadata: Optional metadata for the memory
71
-
72
- user_id: Optional end user ID this memory belongs to
73
-
74
70
  extra_headers: Send extra headers
75
71
 
76
72
  extra_query: Add additional query parameters to the request
@@ -79,21 +75,22 @@ class MemoryResource(SyncAPIResource):
79
75
 
80
76
  timeout: Override the client-level default timeout for this request, in seconds
81
77
  """
82
- return self._post(
83
- "/add",
78
+ if not id:
79
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
80
+ return self._patch(
81
+ f"/v3/memories/{id}",
84
82
  body=maybe_transform(
85
83
  {
86
84
  "content": content,
87
- "id": id,
85
+ "container_tags": container_tags,
88
86
  "metadata": metadata,
89
- "user_id": user_id,
90
87
  },
91
- memory_create_params.MemoryCreateParams,
88
+ memory_update_params.MemoryUpdateParams,
92
89
  ),
93
90
  options=make_request_options(
94
91
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
95
92
  ),
96
- cast_to=MemoryCreateResponse,
93
+ cast_to=MemoryUpdateResponse,
97
94
  )
98
95
 
99
96
  def list(
@@ -134,7 +131,7 @@ class MemoryResource(SyncAPIResource):
134
131
  timeout: Override the client-level default timeout for this request, in seconds
135
132
  """
136
133
  return self._get(
137
- "/memories",
134
+ "/v3/memories",
138
135
  options=make_request_options(
139
136
  extra_headers=extra_headers,
140
137
  extra_query=extra_query,
@@ -180,13 +177,54 @@ class MemoryResource(SyncAPIResource):
180
177
  if not id:
181
178
  raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
182
179
  return self._delete(
183
- f"/delete/{id}",
180
+ f"/v3/memories/{id}",
184
181
  options=make_request_options(
185
182
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
186
183
  ),
187
184
  cast_to=MemoryDeleteResponse,
188
185
  )
189
186
 
187
+ def add(
188
+ self,
189
+ *,
190
+ content: str,
191
+ container_tags: List[str] | NotGiven = NOT_GIVEN,
192
+ metadata: Dict[str, Union[str, float, bool]] | NotGiven = NOT_GIVEN,
193
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
194
+ # The extra values given here take precedence over values defined on the client or passed to this method.
195
+ extra_headers: Headers | None = None,
196
+ extra_query: Query | None = None,
197
+ extra_body: Body | None = None,
198
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
199
+ ) -> MemoryAddResponse:
200
+ """
201
+ Add a memory with any content type (text, url, file, etc.) and metadata
202
+
203
+ Args:
204
+ extra_headers: Send extra headers
205
+
206
+ extra_query: Add additional query parameters to the request
207
+
208
+ extra_body: Add additional JSON properties to the request
209
+
210
+ timeout: Override the client-level default timeout for this request, in seconds
211
+ """
212
+ return self._post(
213
+ "/v3/memories",
214
+ body=maybe_transform(
215
+ {
216
+ "content": content,
217
+ "container_tags": container_tags,
218
+ "metadata": metadata,
219
+ },
220
+ memory_add_params.MemoryAddParams,
221
+ ),
222
+ options=make_request_options(
223
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
224
+ ),
225
+ cast_to=MemoryAddResponse,
226
+ )
227
+
190
228
  def get(
191
229
  self,
192
230
  id: str,
@@ -213,58 +251,91 @@ class MemoryResource(SyncAPIResource):
213
251
  if not id:
214
252
  raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
215
253
  return self._get(
216
- f"/memory/{id}",
254
+ f"/v3/memories/{id}",
217
255
  options=make_request_options(
218
256
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
219
257
  ),
220
258
  cast_to=MemoryGetResponse,
221
259
  )
222
260
 
261
+ def upload_file(
262
+ self,
263
+ *,
264
+ file: FileTypes,
265
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
266
+ # The extra values given here take precedence over values defined on the client or passed to this method.
267
+ extra_headers: Headers | None = None,
268
+ extra_query: Query | None = None,
269
+ extra_body: Body | None = None,
270
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
271
+ ) -> MemoryUploadFileResponse:
272
+ """
273
+ Upload a file to be processed
274
+
275
+ Args:
276
+ extra_headers: Send extra headers
277
+
278
+ extra_query: Add additional query parameters to the request
279
+
280
+ extra_body: Add additional JSON properties to the request
281
+
282
+ timeout: Override the client-level default timeout for this request, in seconds
283
+ """
284
+ body = deepcopy_minimal({"file": file})
285
+ files = extract_files(cast(Mapping[str, object], body), paths=[["file"]])
286
+ # It should be noted that the actual Content-Type header that will be
287
+ # sent to the server will contain a `boundary` parameter, e.g.
288
+ # multipart/form-data; boundary=---abc--
289
+ extra_headers = {"Content-Type": "multipart/form-data", **(extra_headers or {})}
290
+ return self._post(
291
+ "/v3/memories/file",
292
+ body=maybe_transform(body, memory_upload_file_params.MemoryUploadFileParams),
293
+ files=files,
294
+ options=make_request_options(
295
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
296
+ ),
297
+ cast_to=MemoryUploadFileResponse,
298
+ )
299
+
223
300
 
224
- class AsyncMemoryResource(AsyncAPIResource):
301
+ class AsyncMemoriesResource(AsyncAPIResource):
225
302
  @cached_property
226
- def with_raw_response(self) -> AsyncMemoryResourceWithRawResponse:
303
+ def with_raw_response(self) -> AsyncMemoriesResourceWithRawResponse:
227
304
  """
228
305
  This property can be used as a prefix for any HTTP method call to return
229
306
  the raw response object instead of the parsed content.
230
307
 
231
308
  For more information, see https://www.github.com/supermemoryai/python-sdk#accessing-raw-response-data-eg-headers
232
309
  """
233
- return AsyncMemoryResourceWithRawResponse(self)
310
+ return AsyncMemoriesResourceWithRawResponse(self)
234
311
 
235
312
  @cached_property
236
- def with_streaming_response(self) -> AsyncMemoryResourceWithStreamingResponse:
313
+ def with_streaming_response(self) -> AsyncMemoriesResourceWithStreamingResponse:
237
314
  """
238
315
  An alternative to `.with_raw_response` that doesn't eagerly read the response body.
239
316
 
240
317
  For more information, see https://www.github.com/supermemoryai/python-sdk#with_streaming_response
241
318
  """
242
- return AsyncMemoryResourceWithStreamingResponse(self)
319
+ return AsyncMemoriesResourceWithStreamingResponse(self)
243
320
 
244
- async def create(
321
+ async def update(
245
322
  self,
323
+ id: str,
246
324
  *,
247
325
  content: str,
248
- id: str | NotGiven = NOT_GIVEN,
326
+ container_tags: List[str] | NotGiven = NOT_GIVEN,
249
327
  metadata: Dict[str, Union[str, float, bool]] | NotGiven = NOT_GIVEN,
250
- user_id: str | NotGiven = NOT_GIVEN,
251
328
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
252
329
  # The extra values given here take precedence over values defined on the client or passed to this method.
253
330
  extra_headers: Headers | None = None,
254
331
  extra_query: Query | None = None,
255
332
  extra_body: Body | None = None,
256
333
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
257
- ) -> MemoryCreateResponse:
334
+ ) -> MemoryUpdateResponse:
258
335
  """
259
- Add a new memory with content and metadata
336
+ Update a memory with any content type (text, url, file, etc.) and metadata
260
337
 
261
338
  Args:
262
- content: Content of the memory
263
-
264
- metadata: Optional metadata for the memory
265
-
266
- user_id: Optional end user ID this memory belongs to
267
-
268
339
  extra_headers: Send extra headers
269
340
 
270
341
  extra_query: Add additional query parameters to the request
@@ -273,21 +344,22 @@ class AsyncMemoryResource(AsyncAPIResource):
273
344
 
274
345
  timeout: Override the client-level default timeout for this request, in seconds
275
346
  """
276
- return await self._post(
277
- "/add",
347
+ if not id:
348
+ raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
349
+ return await self._patch(
350
+ f"/v3/memories/{id}",
278
351
  body=await async_maybe_transform(
279
352
  {
280
353
  "content": content,
281
- "id": id,
354
+ "container_tags": container_tags,
282
355
  "metadata": metadata,
283
- "user_id": user_id,
284
356
  },
285
- memory_create_params.MemoryCreateParams,
357
+ memory_update_params.MemoryUpdateParams,
286
358
  ),
287
359
  options=make_request_options(
288
360
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
289
361
  ),
290
- cast_to=MemoryCreateResponse,
362
+ cast_to=MemoryUpdateResponse,
291
363
  )
292
364
 
293
365
  async def list(
@@ -328,7 +400,7 @@ class AsyncMemoryResource(AsyncAPIResource):
328
400
  timeout: Override the client-level default timeout for this request, in seconds
329
401
  """
330
402
  return await self._get(
331
- "/memories",
403
+ "/v3/memories",
332
404
  options=make_request_options(
333
405
  extra_headers=extra_headers,
334
406
  extra_query=extra_query,
@@ -374,13 +446,54 @@ class AsyncMemoryResource(AsyncAPIResource):
374
446
  if not id:
375
447
  raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
376
448
  return await self._delete(
377
- f"/delete/{id}",
449
+ f"/v3/memories/{id}",
378
450
  options=make_request_options(
379
451
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
380
452
  ),
381
453
  cast_to=MemoryDeleteResponse,
382
454
  )
383
455
 
456
+ async def add(
457
+ self,
458
+ *,
459
+ content: str,
460
+ container_tags: List[str] | NotGiven = NOT_GIVEN,
461
+ metadata: Dict[str, Union[str, float, bool]] | NotGiven = NOT_GIVEN,
462
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
463
+ # The extra values given here take precedence over values defined on the client or passed to this method.
464
+ extra_headers: Headers | None = None,
465
+ extra_query: Query | None = None,
466
+ extra_body: Body | None = None,
467
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
468
+ ) -> MemoryAddResponse:
469
+ """
470
+ Add a memory with any content type (text, url, file, etc.) and metadata
471
+
472
+ Args:
473
+ extra_headers: Send extra headers
474
+
475
+ extra_query: Add additional query parameters to the request
476
+
477
+ extra_body: Add additional JSON properties to the request
478
+
479
+ timeout: Override the client-level default timeout for this request, in seconds
480
+ """
481
+ return await self._post(
482
+ "/v3/memories",
483
+ body=await async_maybe_transform(
484
+ {
485
+ "content": content,
486
+ "container_tags": container_tags,
487
+ "metadata": metadata,
488
+ },
489
+ memory_add_params.MemoryAddParams,
490
+ ),
491
+ options=make_request_options(
492
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
493
+ ),
494
+ cast_to=MemoryAddResponse,
495
+ )
496
+
384
497
  async def get(
385
498
  self,
386
499
  id: str,
@@ -407,81 +520,144 @@ class AsyncMemoryResource(AsyncAPIResource):
407
520
  if not id:
408
521
  raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
409
522
  return await self._get(
410
- f"/memory/{id}",
523
+ f"/v3/memories/{id}",
411
524
  options=make_request_options(
412
525
  extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
413
526
  ),
414
527
  cast_to=MemoryGetResponse,
415
528
  )
416
529
 
530
+ async def upload_file(
531
+ self,
532
+ *,
533
+ file: FileTypes,
534
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
535
+ # The extra values given here take precedence over values defined on the client or passed to this method.
536
+ extra_headers: Headers | None = None,
537
+ extra_query: Query | None = None,
538
+ extra_body: Body | None = None,
539
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
540
+ ) -> MemoryUploadFileResponse:
541
+ """
542
+ Upload a file to be processed
543
+
544
+ Args:
545
+ extra_headers: Send extra headers
546
+
547
+ extra_query: Add additional query parameters to the request
548
+
549
+ extra_body: Add additional JSON properties to the request
550
+
551
+ timeout: Override the client-level default timeout for this request, in seconds
552
+ """
553
+ body = deepcopy_minimal({"file": file})
554
+ files = extract_files(cast(Mapping[str, object], body), paths=[["file"]])
555
+ # It should be noted that the actual Content-Type header that will be
556
+ # sent to the server will contain a `boundary` parameter, e.g.
557
+ # multipart/form-data; boundary=---abc--
558
+ extra_headers = {"Content-Type": "multipart/form-data", **(extra_headers or {})}
559
+ return await self._post(
560
+ "/v3/memories/file",
561
+ body=await async_maybe_transform(body, memory_upload_file_params.MemoryUploadFileParams),
562
+ files=files,
563
+ options=make_request_options(
564
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
565
+ ),
566
+ cast_to=MemoryUploadFileResponse,
567
+ )
568
+
417
569
 
418
- class MemoryResourceWithRawResponse:
419
- def __init__(self, memory: MemoryResource) -> None:
420
- self._memory = memory
570
+ class MemoriesResourceWithRawResponse:
571
+ def __init__(self, memories: MemoriesResource) -> None:
572
+ self._memories = memories
421
573
 
422
- self.create = to_raw_response_wrapper(
423
- memory.create,
574
+ self.update = to_raw_response_wrapper(
575
+ memories.update,
424
576
  )
425
577
  self.list = to_raw_response_wrapper(
426
- memory.list,
578
+ memories.list,
427
579
  )
428
580
  self.delete = to_raw_response_wrapper(
429
- memory.delete,
581
+ memories.delete,
582
+ )
583
+ self.add = to_raw_response_wrapper(
584
+ memories.add,
430
585
  )
431
586
  self.get = to_raw_response_wrapper(
432
- memory.get,
587
+ memories.get,
588
+ )
589
+ self.upload_file = to_raw_response_wrapper(
590
+ memories.upload_file,
433
591
  )
434
592
 
435
593
 
436
- class AsyncMemoryResourceWithRawResponse:
437
- def __init__(self, memory: AsyncMemoryResource) -> None:
438
- self._memory = memory
594
+ class AsyncMemoriesResourceWithRawResponse:
595
+ def __init__(self, memories: AsyncMemoriesResource) -> None:
596
+ self._memories = memories
439
597
 
440
- self.create = async_to_raw_response_wrapper(
441
- memory.create,
598
+ self.update = async_to_raw_response_wrapper(
599
+ memories.update,
442
600
  )
443
601
  self.list = async_to_raw_response_wrapper(
444
- memory.list,
602
+ memories.list,
445
603
  )
446
604
  self.delete = async_to_raw_response_wrapper(
447
- memory.delete,
605
+ memories.delete,
606
+ )
607
+ self.add = async_to_raw_response_wrapper(
608
+ memories.add,
448
609
  )
449
610
  self.get = async_to_raw_response_wrapper(
450
- memory.get,
611
+ memories.get,
612
+ )
613
+ self.upload_file = async_to_raw_response_wrapper(
614
+ memories.upload_file,
451
615
  )
452
616
 
453
617
 
454
- class MemoryResourceWithStreamingResponse:
455
- def __init__(self, memory: MemoryResource) -> None:
456
- self._memory = memory
618
+ class MemoriesResourceWithStreamingResponse:
619
+ def __init__(self, memories: MemoriesResource) -> None:
620
+ self._memories = memories
457
621
 
458
- self.create = to_streamed_response_wrapper(
459
- memory.create,
622
+ self.update = to_streamed_response_wrapper(
623
+ memories.update,
460
624
  )
461
625
  self.list = to_streamed_response_wrapper(
462
- memory.list,
626
+ memories.list,
463
627
  )
464
628
  self.delete = to_streamed_response_wrapper(
465
- memory.delete,
629
+ memories.delete,
630
+ )
631
+ self.add = to_streamed_response_wrapper(
632
+ memories.add,
466
633
  )
467
634
  self.get = to_streamed_response_wrapper(
468
- memory.get,
635
+ memories.get,
636
+ )
637
+ self.upload_file = to_streamed_response_wrapper(
638
+ memories.upload_file,
469
639
  )
470
640
 
471
641
 
472
- class AsyncMemoryResourceWithStreamingResponse:
473
- def __init__(self, memory: AsyncMemoryResource) -> None:
474
- self._memory = memory
642
+ class AsyncMemoriesResourceWithStreamingResponse:
643
+ def __init__(self, memories: AsyncMemoriesResource) -> None:
644
+ self._memories = memories
475
645
 
476
- self.create = async_to_streamed_response_wrapper(
477
- memory.create,
646
+ self.update = async_to_streamed_response_wrapper(
647
+ memories.update,
478
648
  )
479
649
  self.list = async_to_streamed_response_wrapper(
480
- memory.list,
650
+ memories.list,
481
651
  )
482
652
  self.delete = async_to_streamed_response_wrapper(
483
- memory.delete,
653
+ memories.delete,
654
+ )
655
+ self.add = async_to_streamed_response_wrapper(
656
+ memories.add,
484
657
  )
485
658
  self.get = async_to_streamed_response_wrapper(
486
- memory.get,
659
+ memories.get,
660
+ )
661
+ self.upload_file = async_to_streamed_response_wrapper(
662
+ memories.upload_file,
487
663
  )