usecortex-ai 0.4.0__py3-none-any.whl → 0.5.0__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.
usecortex_ai/__init__.py CHANGED
@@ -20,6 +20,7 @@ from .types import (
20
20
  Entity,
21
21
  ErrorResponse,
22
22
  FetchMode,
23
+ ForcefulRelationsPayload,
23
24
  GraphContext,
24
25
  HttpValidationError,
25
26
  Infra,
@@ -100,6 +101,7 @@ __all__ = [
100
101
  "ErrorResponse",
101
102
  "FetchMode",
102
103
  "ForbiddenError",
104
+ "ForcefulRelationsPayload",
103
105
  "GraphContext",
104
106
  "HttpValidationError",
105
107
  "Infra",
@@ -47,6 +47,7 @@ class SearchClient:
47
47
  graph_context: typing.Optional[bool] = OMIT,
48
48
  extra_context: typing.Optional[str] = OMIT,
49
49
  search_mode: typing.Optional[SearchMode] = OMIT,
50
+ filters: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
50
51
  request_options: typing.Optional[RequestOptions] = None,
51
52
  ) -> RetrievalResult:
52
53
  """
@@ -63,6 +64,11 @@ class SearchClient:
63
64
  - "fast" (default): Single query, faster response
64
65
  - "accurate": Multi-query generation with reranking, higher quality
65
66
 
67
+ Use `filters` to narrow results by metadata:
68
+ - Provide key-value pairs matching fields defined in your tenant_metadata_schema
69
+ - Example: `{"category": "engineering", "priority": "high"}`
70
+ - Filters are validated against your tenant schema for type safety
71
+
66
72
  Parameters
67
73
  ----------
68
74
  tenant_id : str
@@ -101,6 +107,9 @@ class SearchClient:
101
107
  search_mode : typing.Optional[SearchMode]
102
108
  What to search: 'sources' for documents or 'memories' for user memories
103
109
 
110
+ filters : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
111
+ Optional key-value pairs to filter search results by tenant metadata fields. Keys must match fields defined in tenant_metadata_schema during tenant creation. Supports exact match filtering on indexed metadata fields. Example: {'category': 'engineering', 'priority': 'high'}
112
+
104
113
  request_options : typing.Optional[RequestOptions]
105
114
  Request-specific configuration.
106
115
 
@@ -129,6 +138,7 @@ class SearchClient:
129
138
  graph_context=graph_context,
130
139
  extra_context=extra_context,
131
140
  search_mode=search_mode,
141
+ filters=filters,
132
142
  request_options=request_options,
133
143
  )
134
144
  return _response.data
@@ -336,6 +346,7 @@ class AsyncSearchClient:
336
346
  graph_context: typing.Optional[bool] = OMIT,
337
347
  extra_context: typing.Optional[str] = OMIT,
338
348
  search_mode: typing.Optional[SearchMode] = OMIT,
349
+ filters: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
339
350
  request_options: typing.Optional[RequestOptions] = None,
340
351
  ) -> RetrievalResult:
341
352
  """
@@ -352,6 +363,11 @@ class AsyncSearchClient:
352
363
  - "fast" (default): Single query, faster response
353
364
  - "accurate": Multi-query generation with reranking, higher quality
354
365
 
366
+ Use `filters` to narrow results by metadata:
367
+ - Provide key-value pairs matching fields defined in your tenant_metadata_schema
368
+ - Example: `{"category": "engineering", "priority": "high"}`
369
+ - Filters are validated against your tenant schema for type safety
370
+
355
371
  Parameters
356
372
  ----------
357
373
  tenant_id : str
@@ -390,6 +406,9 @@ class AsyncSearchClient:
390
406
  search_mode : typing.Optional[SearchMode]
391
407
  What to search: 'sources' for documents or 'memories' for user memories
392
408
 
409
+ filters : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
410
+ Optional key-value pairs to filter search results by tenant metadata fields. Keys must match fields defined in tenant_metadata_schema during tenant creation. Supports exact match filtering on indexed metadata fields. Example: {'category': 'engineering', 'priority': 'high'}
411
+
393
412
  request_options : typing.Optional[RequestOptions]
394
413
  Request-specific configuration.
395
414
 
@@ -422,6 +441,7 @@ class AsyncSearchClient:
422
441
  graph_context=graph_context,
423
442
  extra_context=extra_context,
424
443
  search_mode=search_mode,
444
+ filters=filters,
425
445
  request_options=request_options,
426
446
  )
427
447
  return _response.data
@@ -49,6 +49,7 @@ class RawSearchClient:
49
49
  graph_context: typing.Optional[bool] = OMIT,
50
50
  extra_context: typing.Optional[str] = OMIT,
51
51
  search_mode: typing.Optional[SearchMode] = OMIT,
52
+ filters: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
52
53
  request_options: typing.Optional[RequestOptions] = None,
53
54
  ) -> HttpResponse[RetrievalResult]:
54
55
  """
@@ -65,6 +66,11 @@ class RawSearchClient:
65
66
  - "fast" (default): Single query, faster response
66
67
  - "accurate": Multi-query generation with reranking, higher quality
67
68
 
69
+ Use `filters` to narrow results by metadata:
70
+ - Provide key-value pairs matching fields defined in your tenant_metadata_schema
71
+ - Example: `{"category": "engineering", "priority": "high"}`
72
+ - Filters are validated against your tenant schema for type safety
73
+
68
74
  Parameters
69
75
  ----------
70
76
  tenant_id : str
@@ -103,6 +109,9 @@ class RawSearchClient:
103
109
  search_mode : typing.Optional[SearchMode]
104
110
  What to search: 'sources' for documents or 'memories' for user memories
105
111
 
112
+ filters : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
113
+ Optional key-value pairs to filter search results by tenant metadata fields. Keys must match fields defined in tenant_metadata_schema during tenant creation. Supports exact match filtering on indexed metadata fields. Example: {'category': 'engineering', 'priority': 'high'}
114
+
106
115
  request_options : typing.Optional[RequestOptions]
107
116
  Request-specific configuration.
108
117
 
@@ -127,6 +136,7 @@ class RawSearchClient:
127
136
  "graph_context": graph_context,
128
137
  "extra_context": extra_context,
129
138
  "search_mode": search_mode,
139
+ "filters": filters,
130
140
  },
131
141
  headers={
132
142
  "content-type": "application/json",
@@ -633,6 +643,7 @@ class AsyncRawSearchClient:
633
643
  graph_context: typing.Optional[bool] = OMIT,
634
644
  extra_context: typing.Optional[str] = OMIT,
635
645
  search_mode: typing.Optional[SearchMode] = OMIT,
646
+ filters: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = OMIT,
636
647
  request_options: typing.Optional[RequestOptions] = None,
637
648
  ) -> AsyncHttpResponse[RetrievalResult]:
638
649
  """
@@ -649,6 +660,11 @@ class AsyncRawSearchClient:
649
660
  - "fast" (default): Single query, faster response
650
661
  - "accurate": Multi-query generation with reranking, higher quality
651
662
 
663
+ Use `filters` to narrow results by metadata:
664
+ - Provide key-value pairs matching fields defined in your tenant_metadata_schema
665
+ - Example: `{"category": "engineering", "priority": "high"}`
666
+ - Filters are validated against your tenant schema for type safety
667
+
652
668
  Parameters
653
669
  ----------
654
670
  tenant_id : str
@@ -687,6 +703,9 @@ class AsyncRawSearchClient:
687
703
  search_mode : typing.Optional[SearchMode]
688
704
  What to search: 'sources' for documents or 'memories' for user memories
689
705
 
706
+ filters : typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]]
707
+ Optional key-value pairs to filter search results by tenant metadata fields. Keys must match fields defined in tenant_metadata_schema during tenant creation. Supports exact match filtering on indexed metadata fields. Example: {'category': 'engineering', 'priority': 'high'}
708
+
690
709
  request_options : typing.Optional[RequestOptions]
691
710
  Request-specific configuration.
692
711
 
@@ -711,6 +730,7 @@ class AsyncRawSearchClient:
711
730
  "graph_context": graph_context,
712
731
  "extra_context": extra_context,
713
732
  "search_mode": search_mode,
733
+ "filters": filters,
714
734
  },
715
735
  headers={
716
736
  "content-type": "application/json",
@@ -19,6 +19,7 @@ from .delete_user_memory_response import DeleteUserMemoryResponse
19
19
  from .entity import Entity
20
20
  from .error_response import ErrorResponse
21
21
  from .fetch_mode import FetchMode
22
+ from .forceful_relations_payload import ForcefulRelationsPayload
22
23
  from .graph_context import GraphContext
23
24
  from .http_validation_error import HttpValidationError
24
25
  from .infra import Infra
@@ -76,6 +77,7 @@ __all__ = [
76
77
  "Entity",
77
78
  "ErrorResponse",
78
79
  "FetchMode",
80
+ "ForcefulRelationsPayload",
79
81
  "GraphContext",
80
82
  "HttpValidationError",
81
83
  "Infra",
@@ -0,0 +1,27 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ import pydantic
6
+ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+
8
+
9
+ class ForcefulRelationsPayload(UniversalBaseModel):
10
+ cortex_source_ids: typing.Optional[typing.List[str]] = pydantic.Field(default=None)
11
+ """
12
+ Cortex source IDs to forcefully relate to the uploaded source.
13
+ """
14
+
15
+ properties: typing.Optional[typing.Dict[str, typing.Optional[typing.Any]]] = pydantic.Field(default=None)
16
+ """
17
+ Optional properties to attach to the forceful relation.
18
+ """
19
+
20
+ if IS_PYDANTIC_V2:
21
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
22
+ else:
23
+
24
+ class Config:
25
+ frozen = True
26
+ smart_union = True
27
+ extra = pydantic.Extra.allow
@@ -4,6 +4,7 @@ import typing
4
4
 
5
5
  import pydantic
6
6
  from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
7
+ from .forceful_relations_payload import ForcefulRelationsPayload
7
8
  from .user_assistant_pair import UserAssistantPair
8
9
 
9
10
 
@@ -40,7 +41,7 @@ class MemoryItem(UniversalBaseModel):
40
41
 
41
42
  infer: typing.Optional[bool] = pydantic.Field(default=None)
42
43
  """
43
- If true, process and extract additional insights/inferences from the content before indexing. Useful for extracting implicit information from conversations.
44
+ If true, process and extract additional insights/inferences from the contentbefore indexingUseful for extracting implicit information from conversations
44
45
  """
45
46
 
46
47
  custom_instructions: typing.Optional[str] = pydantic.Field(default=None)
@@ -72,6 +73,11 @@ class MemoryItem(UniversalBaseModel):
72
73
  Example: > "{"title":"Q1 Report.pdf","author":"Alice Smith","file_id":"custom_file_123"}"
73
74
  """
74
75
 
76
+ relations: typing.Optional[ForcefulRelationsPayload] = pydantic.Field(default=None)
77
+ """
78
+ Forcefully connect 2 sources based on cortex source ids or common properties.
79
+ """
80
+
75
81
  if IS_PYDANTIC_V2:
76
82
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
77
83
  else:
@@ -15,6 +15,10 @@ class RetrievalResult(UniversalBaseModel):
15
15
 
16
16
  chunks: typing.Optional[typing.List[VectorStoreChunk]] = None
17
17
  graph_context: typing.Optional[GraphContext] = None
18
+ extra_context: typing.Optional[typing.Dict[str, VectorStoreChunk]] = pydantic.Field(default=None)
19
+ """
20
+ Map of chunk_uuid to VectorStoreChunk for extra context from forcefully related sources. Use chunk.extra_context_ids to look up chunks: extra_context[id] for id in chunk.extra_context_ids.
21
+ """
18
22
 
19
23
  if IS_PYDANTIC_V2:
20
24
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
@@ -62,6 +62,11 @@ class VectorStoreChunk(UniversalBaseModel):
62
62
  Custom metadata associated with your tenant
63
63
  """
64
64
 
65
+ extra_context_ids: typing.Optional[typing.List[str]] = pydantic.Field(default=None)
66
+ """
67
+ IDs of related chunks providing extra context (from forceful relations). Only present in accurate mode when sources have forceful relations.
68
+ """
69
+
65
70
  if IS_PYDANTIC_V2:
66
71
  model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
67
72
  else:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: usecortex-ai
3
- Version: 0.4.0
3
+ Version: 0.5.0
4
4
  Summary: The official Python SDK for the Cortex AI platform.
5
5
  Author-email: Soham Ratnaparkhi <soham@usecortex.ai>
6
6
  License: Copyright (c) 2024 Cortex AI
@@ -1,4 +1,4 @@
1
- usecortex_ai/__init__.py,sha256=WNZb0bTxzhtuFtEy3ispNZP36TztR-D3mXqhG-MV2sw,3673
1
+ usecortex_ai/__init__.py,sha256=rD8U2JdJeww4oRS58yQT7E4ELKnphMrH-CmRKT1MjRU,3735
2
2
  usecortex_ai/client.py,sha256=Q5pukJ7vnwW9DlVptgmBe9PRh-PHL_y0OP8ikvo7MGI,9633
3
3
  usecortex_ai/environment.py,sha256=IZ0X7CTz4V0TzNaMrw6E5GJklcTLxGJmrWEyH-LtYsc,162
4
4
  usecortex_ai/raw_client.py,sha256=XHaTjauK7dktQzjz0zapU6EM32vCi4h3g1bb6oVLwZE,3700
@@ -35,8 +35,8 @@ usecortex_ai/fetch/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa
35
35
  usecortex_ai/fetch/client.py,sha256=tbiCVuM_wjL67jkHIWar7H_SaHns3vVLtGWp4kHrSho,15476
36
36
  usecortex_ai/fetch/raw_client.py,sha256=9A2hndWmMkBjdUae-LuktiH-gavGUaJ_GaW28WLJlLc,47167
37
37
  usecortex_ai/search/__init__.py,sha256=iA8ksy3OzGPGNq_g8cVXsEiZuWyAEAnKI6fHUFWEE-A,131
38
- usecortex_ai/search/client.py,sha256=J8MhThRuu8lDTevFk01aeoiKIOYWVST2jV0AVKFE288,22004
39
- usecortex_ai/search/raw_client.py,sha256=41PozakYAirdrmo3By_dZMqHulFp6nXl602Hjog4oDI,49301
38
+ usecortex_ai/search/client.py,sha256=PAvX90mAUaR4M74Cj3gHBcZ8z3hOXbmyqIkcdm9ez4I,23580
39
+ usecortex_ai/search/raw_client.py,sha256=bXWnUllxhzjmV3wT7P1nYSBqz0qnuGp3i3M-80nVUsk,50891
40
40
  usecortex_ai/search/types/__init__.py,sha256=T0zQrrDzfvgmw2Deo_iYanUoxcVhZ9jDO_fS3CpSU9M,131
41
41
  usecortex_ai/search/types/alpha.py,sha256=ajQv7MA-jeqjZNfX7p4zx8VcPSBu8vHj-btZ_NIK2a4,113
42
42
  usecortex_ai/sources/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
@@ -45,7 +45,7 @@ usecortex_ai/sources/raw_client.py,sha256=Pz8q9bSzMmUSPHofHA5FyS8xisaDdkEK_CANl-
45
45
  usecortex_ai/tenant/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
46
46
  usecortex_ai/tenant/client.py,sha256=ZtNt7-ODnzc2wALqXvfF9uYmetucg96MrWdIpKOh_G4,10992
47
47
  usecortex_ai/tenant/raw_client.py,sha256=wQtQ4iDcUrXM1BGL88cyRF_xxrk93RIQqNGCmP8aVJg,27306
48
- usecortex_ai/types/__init__.py,sha256=C786mYuGbf5YHzfdb8Zl3uNYbZEZR3-7gNwp7wSQ58A,4256
48
+ usecortex_ai/types/__init__.py,sha256=VemryNPm7-iFi7IGSyOGUQswcMtsYM8ER8JtncJFVfg,4353
49
49
  usecortex_ai/types/actual_error_response.py,sha256=EBit_JO3u0FQrVAXDg0UXQktlULLPLtX8FF8J9mZSvY,580
50
50
  usecortex_ai/types/add_memory_response.py,sha256=OdU5jKhjzznhUCkNTTyr_f0HlDAv-QixHP1ArDK9dqI,1133
51
51
  usecortex_ai/types/api_key_info.py,sha256=spbHgc87xD5S2SChMa4Is7z1ZIdTP8aDA3YeQXENhyA,998
@@ -63,11 +63,12 @@ usecortex_ai/types/delete_user_memory_response.py,sha256=A3AkQUBrbcpjx_y6oSJgiHF
63
63
  usecortex_ai/types/entity.py,sha256=gMOML5b06-oDAqp8Ql9kzd4__4rnquemVSm9mF8x9Fo,1053
64
64
  usecortex_ai/types/error_response.py,sha256=7_MuOTWE3zj6kg6UptuYBFMAhV3KZGEkpsyirFvHJzA,633
65
65
  usecortex_ai/types/fetch_mode.py,sha256=9Mfz10_iyUNgvNYYm7TrpOT0hrOb01DDdulEMa9GzVM,159
66
+ usecortex_ai/types/forceful_relations_payload.py,sha256=gA8H4QiMA_64sAAFrFIFoCsVrnmAqudoenJkuq6vZyE,875
66
67
  usecortex_ai/types/graph_context.py,sha256=3EnA98Aj7s583d43Nu7t9XvB7G-HOZiK0gmMs6g5KqU,890
67
68
  usecortex_ai/types/http_validation_error.py,sha256=NNTK9AbbHXm0n9m1YcsG5zEaSn1n6RghohUX5R8LGzw,623
68
69
  usecortex_ai/types/infra.py,sha256=Fa-Dck9ndGmiqztyYszIon5nGeZ806sF223zoR13Mps,613
69
70
  usecortex_ai/types/insert_result.py,sha256=0znvjKKAZlyzdaKB4xF0cuwghO3Z1wX7TdHUEOGsiwc,981
70
- usecortex_ai/types/memory_item.py,sha256=uF0-mG8LDvqIe0ZdifXbBAMpKRQZ0CvpYa1tevtjB4A,2678
71
+ usecortex_ai/types/memory_item.py,sha256=SYyrb1oo38EJe3QJRL5Vd5D6Gu3T38nGPymjhp2Td2A,2926
71
72
  usecortex_ai/types/memory_result_item.py,sha256=FVsWLemKSQUPiFFmUQ06KXWrYzTeDWNVy75Z1MJNMd4,1204
72
73
  usecortex_ai/types/milvus_data_type.py,sha256=1PwgQNQGx2Ti1KgFSfpIbx5P9tprTk3hMncGbA-28Sk,381
73
74
  usecortex_ai/types/path_triplet.py,sha256=Yik6VXD7PI5C8mvEmcmib1nSJg3AhEu9b0UPvTua_yY,648
@@ -78,7 +79,7 @@ usecortex_ai/types/raw_embedding_document.py,sha256=HorAQZpXX3sHegfscd_IHHvhUswQ
78
79
  usecortex_ai/types/raw_embedding_search_result.py,sha256=nrvvBkNF9zN13dKjhxqfAJJHT4sxEavtQ02hd-1QFjM,1243
79
80
  usecortex_ai/types/raw_embedding_vector.py,sha256=iujHus3NeEKS3oFd7h02M7cJKJQeWBiiB6kajSHC7no,773
80
81
  usecortex_ai/types/relation_evidence.py,sha256=MahpZicfR31USMG-PI3eXSWFCgOOKcR73d0sVt3rfCw,2052
81
- usecortex_ai/types/retrieval_result.py,sha256=bxkwJuJxwgr87Ck99Im-GA_FASenZ3qi0EfO7tqFsdo,787
82
+ usecortex_ai/types/retrieval_result.py,sha256=lOxMSuunI5Cx5_iv-kBvNaclX11eopowDgGuOJnemSA,1098
82
83
  usecortex_ai/types/retrieve_mode.py,sha256=s2nGRBzRRCu5OPIdXi5hhPZ18qBTVz6_T4qU8PoGJr4,156
83
84
  usecortex_ai/types/scored_path_response.py,sha256=VXAzT5KKWGQr5qjArxu85tZxZrvvQV0fGsery-Lf_E4,805
84
85
  usecortex_ai/types/search_mode.py,sha256=utxMfGgisoxvHQwIo0y3hf0W0jFlQVnGCUuVpBEEd4k,157
@@ -100,14 +101,14 @@ usecortex_ai/types/triplet_with_evidence.py,sha256=Jqgbxo60zi14CdfgecdkKnkXG2Yi-
100
101
  usecortex_ai/types/user_assistant_pair.py,sha256=l0xGFuHHfo9rbD_2jcL_oCL8kq5CFm819AowYRkhUoY,766
101
102
  usecortex_ai/types/validation_error.py,sha256=Ou-GSQTdmDFWIFlP_y9ka_EUAavqFEFLonU9srAkJdc,642
102
103
  usecortex_ai/types/validation_error_loc_item.py,sha256=LAtjCHIllWRBFXvAZ5QZpp7CPXjdtN9EB7HrLVo6EP0,128
103
- usecortex_ai/types/vector_store_chunk.py,sha256=6ihNmz1PlLKLKU_Z04z7esaOdiCtCtguyHSGoE6p4x8,2266
104
+ usecortex_ai/types/vector_store_chunk.py,sha256=fXtMBi8uc2WpBGrU6DTvpt64uY9yiCVXlDCpPywOzeY,2516
104
105
  usecortex_ai/upload/__init__.py,sha256=F13WAucSniaKhJJNLe2PAYEbITadfFEaYTIMv-T0ktg,211
105
106
  usecortex_ai/upload/client.py,sha256=EAoarsMfEl3YameTFIR2twLCcnuL4qL_n49rukk0O0E,21111
106
107
  usecortex_ai/upload/raw_client.py,sha256=f4wdJdckERw6GijhDWRogwTh-oMiJcpVrmTuud3qXyY,61218
107
108
  usecortex_ai/upload/types/__init__.py,sha256=hKOtGnwwQrjeCTlNrDhclmhSH1jLNLLmPl-Sb4YC2MU,259
108
109
  usecortex_ai/upload/types/body_upload_app_ingestion_upload_app_post_app_sources.py,sha256=MonlCkXtrGYunPHLMnsjlmO_w61qCM08T03WxLIKPvQ,227
109
- usecortex_ai-0.4.0.dist-info/licenses/LICENSE,sha256=Y4M0dr3NLw8mFQQ2MBdnC0YsrmcJ93WZ7-DgCliupK8,1245
110
- usecortex_ai-0.4.0.dist-info/METADATA,sha256=AbpH0vef3v-njyph6jodpG9WbUWJrONX2AlGGbY20VQ,7942
111
- usecortex_ai-0.4.0.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
112
- usecortex_ai-0.4.0.dist-info/top_level.txt,sha256=TQ77el6hL0CvN7BTXJVFTqZ5ot1_kHKo2ZnEcOvZsjo,13
113
- usecortex_ai-0.4.0.dist-info/RECORD,,
110
+ usecortex_ai-0.5.0.dist-info/licenses/LICENSE,sha256=6LmuyFokcoKlKFcADtfwpylDp6lGgp14s0WoS-mMI8k,1266
111
+ usecortex_ai-0.5.0.dist-info/METADATA,sha256=shPLAQTcCDdK-g5QRPUUMhvEriXrqRO6R0YN82xSaBQ,7942
112
+ usecortex_ai-0.5.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
113
+ usecortex_ai-0.5.0.dist-info/top_level.txt,sha256=TQ77el6hL0CvN7BTXJVFTqZ5ot1_kHKo2ZnEcOvZsjo,13
114
+ usecortex_ai-0.5.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.10.1)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,22 +1,22 @@
1
- Copyright (c) 2024 Cortex AI
2
-
3
- All Rights Reserved.
4
-
5
- PROPRIETARY AND CONFIDENTIAL
6
-
7
- This software is the proprietary and confidential property of Cortex AI ("the Company").
8
- Permission is hereby granted to users to install and use this software as part of the Cortex AI service, subject to the terms and conditions of the service agreement entered into with the Company.
9
-
10
- You may not, without the express written permission of the Company:
11
-
12
- 1. Copy, modify, or create derivative works of the software.
13
- 2. Distribute, sell, rent, lease, sublicense, or otherwise transfer the software to any third party.
14
- 3. Reverse engineer, decompile, or disassemble the software, except and only to the extent that such activity is expressly permitted by applicable law notwithstanding this limitation.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1
+ Copyright (c) 2024 Cortex AI
2
+
3
+ All Rights Reserved.
4
+
5
+ PROPRIETARY AND CONFIDENTIAL
6
+
7
+ This software is the proprietary and confidential property of Cortex AI ("the Company").
8
+ Permission is hereby granted to users to install and use this software as part of the Cortex AI service, subject to the terms and conditions of the service agreement entered into with the Company.
9
+
10
+ You may not, without the express written permission of the Company:
11
+
12
+ 1. Copy, modify, or create derivative works of the software.
13
+ 2. Distribute, sell, rent, lease, sublicense, or otherwise transfer the software to any third party.
14
+ 3. Reverse engineer, decompile, or disassemble the software, except and only to the extent that such activity is expressly permitted by applicable law notwithstanding this limitation.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
22
  SOFTWARE.