layernext-beta 3.9.2b1__tar.gz → 3.9.2b2__tar.gz
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.
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/PKG-INFO +9 -6
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/__init__.py +8 -4
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/__init__.py +2 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/datalakeinterface.py +1 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext_beta.egg-info/PKG-INFO +9 -6
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext_beta.egg-info/SOURCES.txt +2 -1
- layernext_beta-3.9.2b2/tests/test_cli.py +33 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/LICENSE +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/README.md +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/automatic_analysis/__init__.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/automatic_analysis/automatic_analysis.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/automatic_analysis/automatic_analysis_interface.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/automatic_analysis/status_check_autoannotate_project.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/automatic_analysis/support.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/annotation.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/aws_s3_client.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/azure_client.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/constants.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/dataset.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/file_trash.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/file_upload.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/gcs_client.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/ground_truth.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/keys.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/label.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/logger.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/metadata.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/model_run.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/mongo_json_encoder.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/query.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/storage_client.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/storage_interface.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/datalake/storage_upload.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/dataset/__init__.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/dataset/dataset.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/dataset/datasetinterface.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/dataset/logger.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/dataset/sync.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/studio/__init__.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/studio/logger.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/studio/project.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/studio/studiointerface.py +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext_beta.egg-info/dependency_links.txt +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext_beta.egg-info/requires.txt +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext_beta.egg-info/top_level.txt +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/setup.cfg +0 -0
- {layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/setup.py +0 -0
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: layernext-beta
|
|
3
|
-
Version: 3.9.
|
|
3
|
+
Version: 3.9.2b2
|
|
4
4
|
Summary: LayerNext Python SDK
|
|
5
|
-
Home-page: UNKNOWN
|
|
6
5
|
Author: LayerNext
|
|
7
6
|
Author-email: <support@layernext.ai>
|
|
8
|
-
License: UNKNOWN
|
|
9
7
|
Keywords: python,datalake,datasetsync,ai,annotation,layernext,layernext,machine learning
|
|
10
|
-
Platform: UNKNOWN
|
|
11
8
|
Classifier: Development Status :: 1 - Planning
|
|
12
9
|
Classifier: Intended Audience :: Developers
|
|
13
10
|
Classifier: Programming Language :: Python :: 3
|
|
@@ -16,6 +13,14 @@ Classifier: Operating System :: MacOS :: MacOS X
|
|
|
16
13
|
Classifier: Operating System :: Microsoft :: Windows
|
|
17
14
|
Description-Content-Type: text/markdown
|
|
18
15
|
License-File: LICENSE
|
|
16
|
+
Requires-Dist: requests
|
|
17
|
+
Requires-Dist: uuid
|
|
18
|
+
Requires-Dist: python-dotenv
|
|
19
|
+
Requires-Dist: azure-storage-blob
|
|
20
|
+
Requires-Dist: tqdm
|
|
21
|
+
Requires-Dist: PyYAML
|
|
22
|
+
Requires-Dist: Deprecated
|
|
23
|
+
Requires-Dist: pymongo
|
|
19
24
|
|
|
20
25
|
|
|
21
26
|
# layernext-python-sdk
|
|
@@ -40,5 +45,3 @@ url = 'https://api.xxxx.layernext.ai'
|
|
|
40
45
|
client = layernext.LayerNextClient(api_key, secret, url)
|
|
41
46
|
|
|
42
47
|
```
|
|
43
|
-
|
|
44
|
-
|
|
@@ -23,7 +23,7 @@ from layernext.datalake.logger import get_debug_logger
|
|
|
23
23
|
# Create a package-level logger
|
|
24
24
|
logger = get_debug_logger(__name__)
|
|
25
25
|
|
|
26
|
-
__version__ = "3.9.
|
|
26
|
+
__version__ = "3.9.2b2"
|
|
27
27
|
|
|
28
28
|
|
|
29
29
|
class LayerNextClient:
|
|
@@ -3143,6 +3143,7 @@ class LayerNextClient:
|
|
|
3143
3143
|
|
|
3144
3144
|
def query_documents_with_structure(
|
|
3145
3145
|
self,
|
|
3146
|
+
original_question: str,
|
|
3146
3147
|
document_categories: List[str],
|
|
3147
3148
|
document_keywords: List[str],
|
|
3148
3149
|
user_question: str,
|
|
@@ -3209,7 +3210,7 @@ class LayerNextClient:
|
|
|
3209
3210
|
unique_names = [doc["uniqueName"] for doc in filtered_doc_list]
|
|
3210
3211
|
|
|
3211
3212
|
document_element_dict = self.find_elements(
|
|
3212
|
-
unique_name_list=unique_names, user_question=user_question, chat_id=chat_id
|
|
3213
|
+
unique_name_list=unique_names, original_question=original_question, user_question=user_question, chat_id=chat_id
|
|
3213
3214
|
)
|
|
3214
3215
|
|
|
3215
3216
|
output_list = self.__prepare_doc_elements_list(
|
|
@@ -3240,6 +3241,7 @@ class LayerNextClient:
|
|
|
3240
3241
|
|
|
3241
3242
|
document_element_dict = self.find_elements(
|
|
3242
3243
|
unique_name_list=doc_unique_name_list,
|
|
3244
|
+
original_question="",
|
|
3243
3245
|
user_question=user_question,
|
|
3244
3246
|
chat_id=chat_id,
|
|
3245
3247
|
is_target_documents_available=True,
|
|
@@ -3513,6 +3515,7 @@ class LayerNextClient:
|
|
|
3513
3515
|
def find_elements(
|
|
3514
3516
|
self,
|
|
3515
3517
|
unique_name_list: List[str],
|
|
3518
|
+
original_question: str,
|
|
3516
3519
|
user_question: str,
|
|
3517
3520
|
chat_id: str,
|
|
3518
3521
|
is_target_documents_available: bool = False,
|
|
@@ -3521,7 +3524,8 @@ class LayerNextClient:
|
|
|
3521
3524
|
Find elements of documents given with unique names (object keys) according to the user question
|
|
3522
3525
|
Parameters:
|
|
3523
3526
|
unique_name_list: List of document object keys that need to find from
|
|
3524
|
-
|
|
3527
|
+
original_question: actual question asked by user
|
|
3528
|
+
user_question: query sent by LLM in the single code
|
|
3525
3529
|
is_target_documents_available: True if target documents are already known (in case of uploading), False if documents were found by keyword match
|
|
3526
3530
|
Returns: List of dictionaries
|
|
3527
3531
|
"""
|
|
@@ -3530,7 +3534,7 @@ class LayerNextClient:
|
|
|
3530
3534
|
)
|
|
3531
3535
|
|
|
3532
3536
|
response = _datalake_client.find_elements_from_docs(
|
|
3533
|
-
unique_name_list, user_question, is_target_documents_available, chat_id
|
|
3537
|
+
unique_name_list, original_question, user_question, is_target_documents_available, chat_id
|
|
3534
3538
|
)
|
|
3535
3539
|
|
|
3536
3540
|
return response
|
|
@@ -740,12 +740,14 @@ class DatalakeClient:
|
|
|
740
740
|
def find_elements_from_docs(
|
|
741
741
|
self,
|
|
742
742
|
unique_name_list: List[str],
|
|
743
|
+
original_question: str,
|
|
743
744
|
user_question: str,
|
|
744
745
|
is_target_documents_available: bool,
|
|
745
746
|
chat_id: str,
|
|
746
747
|
):
|
|
747
748
|
payload = {
|
|
748
749
|
"userQuestion": user_question,
|
|
750
|
+
"originalQuestion": original_question,
|
|
749
751
|
"objectKeyList": unique_name_list,
|
|
750
752
|
"isTargetDocumentsExist": is_target_documents_available,
|
|
751
753
|
"converasationId": chat_id,
|
|
@@ -2010,6 +2010,7 @@ class DatalakeInterface:
|
|
|
2010
2010
|
if status_code == 200:
|
|
2011
2011
|
return response.json()
|
|
2012
2012
|
else:
|
|
2013
|
+
return {"success": False, "message": "Error in find_elements_from_docs"}
|
|
2013
2014
|
raise Exception(f"{res['error']['message']}")
|
|
2014
2015
|
|
|
2015
2016
|
def extract_doc_content(self, payload: dict):
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: layernext-beta
|
|
3
|
-
Version: 3.9.
|
|
3
|
+
Version: 3.9.2b2
|
|
4
4
|
Summary: LayerNext Python SDK
|
|
5
|
-
Home-page: UNKNOWN
|
|
6
5
|
Author: LayerNext
|
|
7
6
|
Author-email: <support@layernext.ai>
|
|
8
|
-
License: UNKNOWN
|
|
9
7
|
Keywords: python,datalake,datasetsync,ai,annotation,layernext,layernext,machine learning
|
|
10
|
-
Platform: UNKNOWN
|
|
11
8
|
Classifier: Development Status :: 1 - Planning
|
|
12
9
|
Classifier: Intended Audience :: Developers
|
|
13
10
|
Classifier: Programming Language :: Python :: 3
|
|
@@ -16,6 +13,14 @@ Classifier: Operating System :: MacOS :: MacOS X
|
|
|
16
13
|
Classifier: Operating System :: Microsoft :: Windows
|
|
17
14
|
Description-Content-Type: text/markdown
|
|
18
15
|
License-File: LICENSE
|
|
16
|
+
Requires-Dist: requests
|
|
17
|
+
Requires-Dist: uuid
|
|
18
|
+
Requires-Dist: python-dotenv
|
|
19
|
+
Requires-Dist: azure-storage-blob
|
|
20
|
+
Requires-Dist: tqdm
|
|
21
|
+
Requires-Dist: PyYAML
|
|
22
|
+
Requires-Dist: Deprecated
|
|
23
|
+
Requires-Dist: pymongo
|
|
19
24
|
|
|
20
25
|
|
|
21
26
|
# layernext-python-sdk
|
|
@@ -40,5 +45,3 @@ url = 'https://api.xxxx.layernext.ai'
|
|
|
40
45
|
client = layernext.LayerNextClient(api_key, secret, url)
|
|
41
46
|
|
|
42
47
|
```
|
|
43
|
-
|
|
44
|
-
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import os
|
|
2
|
+
import layernext
|
|
3
|
+
from dotenv import load_dotenv
|
|
4
|
+
|
|
5
|
+
from layernext.datalake.constants import MediaType
|
|
6
|
+
|
|
7
|
+
load_dotenv() # take environment variables from .env.
|
|
8
|
+
|
|
9
|
+
api_key = os.environ.get('API_KEY')
|
|
10
|
+
secret = os.environ.get('SECRET')
|
|
11
|
+
serverUrl = os.environ.get('LAYERX_URL')
|
|
12
|
+
|
|
13
|
+
client = layernext.LayerNextClient(api_key, secret, serverUrl)
|
|
14
|
+
|
|
15
|
+
# file_path = os.environ.get('FILE_TO_UPLOAD')
|
|
16
|
+
# client.upload_modelrun_from_json('val2017_image', 'Test 1.0.1', file_path, 'rectangle')
|
|
17
|
+
# client.upload_modelrun_from_json('val2017_image', 'Test 1.0.1', file_path, 'polygon')
|
|
18
|
+
# client.upload_modelrun_from_json('val2017_image', 'Test 1.0.1', file_path, 'line')
|
|
19
|
+
|
|
20
|
+
path = "C:/Users/chama/Downloads/testUpload"
|
|
21
|
+
# path = "C:/Users/chama/Downloads/training_set/test"
|
|
22
|
+
collection_type = MediaType.IMAGE.value
|
|
23
|
+
collection_name = ""
|
|
24
|
+
meta_data_object = {
|
|
25
|
+
"Captured Location": "test_location",
|
|
26
|
+
"Camera Id": "aaa",
|
|
27
|
+
"Tags": [
|
|
28
|
+
"#retail"
|
|
29
|
+
],
|
|
30
|
+
"bird": "flying"
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
# client.file_upload(path, collection_type, collection_name, meta_data_object)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext/automatic_analysis/automatic_analysis.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{layernext-beta-3.9.2b1 → layernext_beta-3.9.2b2}/layernext_beta.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|