dataiku-api-client 14.4.1__tar.gz → 14.4.3__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.
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/HISTORY.txt +11 -0
- {dataiku_api_client-14.4.1/dataiku_api_client.egg-info → dataiku_api_client-14.4.3}/PKG-INFO +13 -2
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3/dataiku_api_client.egg-info}/PKG-INFO +13 -2
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataiku_api_client.egg-info/SOURCES.txt +10 -1
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/__init__.py +11 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/agent.py +4 -2
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/document_extractor.py +159 -29
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/langchain/tool.py +4 -2
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/project.py +10 -8
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/recipe.py +97 -1
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dssclient.py +19 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/govern/time_series.py +1 -1
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/govern_client.py +1 -1
- dataiku_api_client-14.4.3/dataikuapi/launchpad/__init__.py +4 -0
- dataiku_api_client-14.4.3/dataikuapi/launchpad/exceptions.py +111 -0
- dataiku_api_client-14.4.3/dataikuapi/launchpad/group.py +464 -0
- dataiku_api_client-14.4.3/dataikuapi/launchpad/node.py +45 -0
- dataiku_api_client-14.4.3/dataikuapi/launchpad/profile.py +77 -0
- dataiku_api_client-14.4.3/dataikuapi/launchpad/response.py +70 -0
- dataiku_api_client-14.4.3/dataikuapi/launchpad/task.py +108 -0
- dataiku_api_client-14.4.3/dataikuapi/launchpad/user.py +344 -0
- dataiku_api_client-14.4.3/dataikuapi/launchpad_client.py +616 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/setup.py +2 -2
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/LICENSE.txt +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/MANIFEST.in +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/README +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataiku_api_client.egg-info/dependency_links.txt +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataiku_api_client.egg-info/requires.txt +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataiku_api_client.egg-info/top_level.txt +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/apinode_admin/__init__.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/apinode_admin/auth.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/apinode_admin/service.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/apinode_admin_client.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/apinode_client.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/auth.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/base_client.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/__init__.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/admin.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/agent_review.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/agent_tool.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/analysis.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/apideployer.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/apiservice.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/app.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/businessapp.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/codestudio.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/continuousactivity.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/dashboard.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/data_collection.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/data_directories_footprint.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/data_quality.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/dataset.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/discussion.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/drift.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/enterprise_asset_library.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/evaluationcomparison.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/evaluationstore.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/feature_store.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/flow.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/future.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/insight.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/job.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/jupyternotebook.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/knowledgebank.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/labeling_task.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/langchain/__init__.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/langchain/embeddings.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/langchain/knowledge_bank.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/langchain/llm.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/langchain/utils.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/llm.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/llm_tracing/__init__.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/macro.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/managedfolder.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/meaning.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/messaging_channel.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/metrics.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/ml.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/mlflow.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/modelcomparison.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/modelevaluationstore.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/notebook.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/plugin.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/project_standards.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/projectdeployer.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/projectfolder.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/projectlibrary.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/retrieval_augmented_llm.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/savedmodel.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/scenario.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/semantic_model.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/sqlnotebook.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/sqlquery.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/statistics.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/streaming_endpoint.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/tools/__init__.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/tools/codegen.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/tools/langchain.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/unifiedmonitoring.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/utils.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/webapp.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/wiki.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/workspace.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss_plugin_mlflow/__init__.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss_plugin_mlflow/artifact_repository.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss_plugin_mlflow/header_provider.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss_plugin_mlflow/utils.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/fm/__init__.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/fm/cloudaccounts.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/fm/future.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/fm/instances.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/fm/instancesettingstemplates.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/fm/loadbalancers.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/fm/tenant.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/fm/virtualnetworks.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/fmclient.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/govern/__init__.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/govern/admin.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/govern/admin_blueprint_designer.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/govern/admin_custom_pages_handler.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/govern/admin_roles_permissions_handler.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/govern/artifact.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/govern/artifact_search.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/govern/blueprint.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/govern/custom_page.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/govern/future.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/govern/uploaded_file.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/govern/users_container.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/iam/__init__.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/iam/settings.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/utils.py +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/requirements.txt +0 -0
- {dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/setup.cfg +0 -0
|
@@ -2,6 +2,17 @@ Changelog
|
|
|
2
2
|
==========
|
|
3
3
|
|
|
4
4
|
|
|
5
|
+
14.4.3 (2026-03-19)
|
|
6
|
+
-------------------
|
|
7
|
+
|
|
8
|
+
* Initial release for DSS 14.4.3
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
14.4.2 (2026-03-06)
|
|
12
|
+
-------------------
|
|
13
|
+
|
|
14
|
+
* Initial release for DSS 14.4.2
|
|
15
|
+
|
|
5
16
|
14.4.1 (2026-02-23)
|
|
6
17
|
-------------------
|
|
7
18
|
|
{dataiku_api_client-14.4.1/dataiku_api_client.egg-info → dataiku_api_client-14.4.3}/PKG-INFO
RENAMED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dataiku-api-client
|
|
3
|
-
Version: 14.4.
|
|
3
|
+
Version: 14.4.3
|
|
4
4
|
Summary: Python API client for Dataiku APIs
|
|
5
5
|
Home-page: https://www.dataiku.com
|
|
6
|
-
Download-URL: https://github.com/dataiku/dataiku-api-client-python/tarball/14.4.
|
|
6
|
+
Download-URL: https://github.com/dataiku/dataiku-api-client-python/tarball/14.4.3
|
|
7
7
|
Author: Dataiku
|
|
8
8
|
Author-email: support@dataiku.com
|
|
9
9
|
License: Apache Software License
|
|
@@ -36,6 +36,17 @@ Changelog
|
|
|
36
36
|
==========
|
|
37
37
|
|
|
38
38
|
|
|
39
|
+
14.4.3 (2026-03-19)
|
|
40
|
+
-------------------
|
|
41
|
+
|
|
42
|
+
* Initial release for DSS 14.4.3
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
14.4.2 (2026-03-06)
|
|
46
|
+
-------------------
|
|
47
|
+
|
|
48
|
+
* Initial release for DSS 14.4.2
|
|
49
|
+
|
|
39
50
|
14.4.1 (2026-02-23)
|
|
40
51
|
-------------------
|
|
41
52
|
|
{dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3/dataiku_api_client.egg-info}/PKG-INFO
RENAMED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dataiku-api-client
|
|
3
|
-
Version: 14.4.
|
|
3
|
+
Version: 14.4.3
|
|
4
4
|
Summary: Python API client for Dataiku APIs
|
|
5
5
|
Home-page: https://www.dataiku.com
|
|
6
|
-
Download-URL: https://github.com/dataiku/dataiku-api-client-python/tarball/14.4.
|
|
6
|
+
Download-URL: https://github.com/dataiku/dataiku-api-client-python/tarball/14.4.3
|
|
7
7
|
Author: Dataiku
|
|
8
8
|
Author-email: support@dataiku.com
|
|
9
9
|
License: Apache Software License
|
|
@@ -36,6 +36,17 @@ Changelog
|
|
|
36
36
|
==========
|
|
37
37
|
|
|
38
38
|
|
|
39
|
+
14.4.3 (2026-03-19)
|
|
40
|
+
-------------------
|
|
41
|
+
|
|
42
|
+
* Initial release for DSS 14.4.3
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
14.4.2 (2026-03-06)
|
|
46
|
+
-------------------
|
|
47
|
+
|
|
48
|
+
* Initial release for DSS 14.4.2
|
|
49
|
+
|
|
39
50
|
14.4.1 (2026-02-23)
|
|
40
51
|
-------------------
|
|
41
52
|
|
{dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataiku_api_client.egg-info/SOURCES.txt
RENAMED
|
@@ -17,6 +17,7 @@ dataikuapi/base_client.py
|
|
|
17
17
|
dataikuapi/dssclient.py
|
|
18
18
|
dataikuapi/fmclient.py
|
|
19
19
|
dataikuapi/govern_client.py
|
|
20
|
+
dataikuapi/launchpad_client.py
|
|
20
21
|
dataikuapi/utils.py
|
|
21
22
|
dataikuapi/apinode_admin/__init__.py
|
|
22
23
|
dataikuapi/apinode_admin/auth.py
|
|
@@ -119,4 +120,12 @@ dataikuapi/govern/time_series.py
|
|
|
119
120
|
dataikuapi/govern/uploaded_file.py
|
|
120
121
|
dataikuapi/govern/users_container.py
|
|
121
122
|
dataikuapi/iam/__init__.py
|
|
122
|
-
dataikuapi/iam/settings.py
|
|
123
|
+
dataikuapi/iam/settings.py
|
|
124
|
+
dataikuapi/launchpad/__init__.py
|
|
125
|
+
dataikuapi/launchpad/exceptions.py
|
|
126
|
+
dataikuapi/launchpad/group.py
|
|
127
|
+
dataikuapi/launchpad/node.py
|
|
128
|
+
dataikuapi/launchpad/profile.py
|
|
129
|
+
dataikuapi/launchpad/response.py
|
|
130
|
+
dataikuapi/launchpad/task.py
|
|
131
|
+
dataikuapi/launchpad/user.py
|
|
@@ -8,3 +8,14 @@ from .apinode_admin_client import APINodeAdminClient
|
|
|
8
8
|
from .dss.recipe import GroupingRecipeCreator, UpsertRecipeCreator, JoinRecipeCreator, StackRecipeCreator, WindowRecipeCreator, SyncRecipeCreator, SamplingRecipeCreator, SQLQueryRecipeCreator, CodeRecipeCreator, SplitRecipeCreator, SortRecipeCreator, TopNRecipeCreator, DistinctRecipeCreator, DownloadRecipeCreator, PredictionScoringRecipeCreator, ClusteringScoringRecipeCreator
|
|
9
9
|
|
|
10
10
|
from .dss.admin import DSSUserImpersonationRule, DSSGroupImpersonationRule
|
|
11
|
+
|
|
12
|
+
import sys
|
|
13
|
+
import warnings
|
|
14
|
+
|
|
15
|
+
if sys.version_info >= (3, 6):
|
|
16
|
+
from .launchpad_client import LaunchpadClient
|
|
17
|
+
else:
|
|
18
|
+
warnings.warn(
|
|
19
|
+
"dataikuapi.LaunchpadClient is only available for Python 3.6 and above",
|
|
20
|
+
DeprecationWarning,
|
|
21
|
+
)
|
|
@@ -189,13 +189,13 @@ class DSSAgentVersionSettings(object):
|
|
|
189
189
|
:rtype: :class:`str`
|
|
190
190
|
"""
|
|
191
191
|
if not self._agent_settings.type == "TOOLS_USING_AGENT":
|
|
192
|
-
raise ValueError("Only valid for Visual Agents")
|
|
192
|
+
raise ValueError("Only valid for Simple Visual Agents")
|
|
193
193
|
return self._version_settings["toolsUsingAgentSettings"]["llmId"]
|
|
194
194
|
|
|
195
195
|
@llm_id.setter
|
|
196
196
|
def llm_id(self, value):
|
|
197
197
|
if not self._agent_settings.type == "TOOLS_USING_AGENT":
|
|
198
|
-
raise ValueError("Only valid for Visual Agents")
|
|
198
|
+
raise ValueError("Only valid for Simple Visual Agents")
|
|
199
199
|
self._version_settings["toolsUsingAgentSettings"]["llmId"] = value
|
|
200
200
|
|
|
201
201
|
@property
|
|
@@ -206,6 +206,8 @@ class DSSAgentVersionSettings(object):
|
|
|
206
206
|
Each tool is a dict, containing at least "toolRef", which is the identifier of the tool.
|
|
207
207
|
The dict may also contain "additionalDescription" which is added to the description of the tool
|
|
208
208
|
"""
|
|
209
|
+
if not self._agent_settings.type == "TOOLS_USING_AGENT":
|
|
210
|
+
raise ValueError("Only valid for Simple Visual Agents")
|
|
209
211
|
return self._version_settings["toolsUsingAgentSettings"]["tools"]
|
|
210
212
|
|
|
211
213
|
|
{dataiku_api_client-14.4.1 → dataiku_api_client-14.4.3}/dataikuapi/dss/document_extractor.py
RENAMED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import base64
|
|
2
|
-
|
|
3
2
|
import copy
|
|
4
3
|
import json
|
|
4
|
+
import warnings
|
|
5
5
|
|
|
6
6
|
from dataikuapi.utils import _write_response_content_to_file
|
|
7
7
|
|
|
8
|
+
|
|
8
9
|
class DocumentExtractor(object):
|
|
9
10
|
"""
|
|
10
11
|
A handle to interact with a DSS-managed Document Extractor.
|
|
@@ -51,14 +52,14 @@ class DocumentExtractor(object):
|
|
|
51
52
|
extractor_request["inputs"] = {
|
|
52
53
|
"imagesRef": {
|
|
53
54
|
"type": images[0].type,
|
|
54
|
-
"inlineImages": [ir.
|
|
55
|
+
"inlineImages": [ir.as_dict() for ir in images]
|
|
55
56
|
}
|
|
56
57
|
}
|
|
57
58
|
elif all(isinstance(ir, ManagedFolderImageRef) for ir in images):
|
|
58
59
|
extractor_request["inputs"] = {
|
|
59
60
|
"imagesRef": {
|
|
60
61
|
"type": images[0].type,
|
|
61
|
-
"
|
|
62
|
+
"managedFolderRef": images[0].managed_folder_ref,
|
|
62
63
|
"imagesPaths": [ir.image_path for ir in images]
|
|
63
64
|
}
|
|
64
65
|
}
|
|
@@ -102,12 +103,12 @@ class DocumentExtractor(object):
|
|
|
102
103
|
|
|
103
104
|
extractor_request = {
|
|
104
105
|
"inputs": {
|
|
105
|
-
"document": document.
|
|
106
|
+
"document": document.as_dict()
|
|
106
107
|
},
|
|
107
108
|
"settings": {
|
|
108
109
|
"maxSectionDepth": max_section_depth,
|
|
109
110
|
"imageValidation": image_validation,
|
|
110
|
-
"
|
|
111
|
+
"outputManagedFolderRef": output_managed_folder,
|
|
111
112
|
}
|
|
112
113
|
}
|
|
113
114
|
if image_handling_mode == "IGNORE":
|
|
@@ -164,7 +165,7 @@ class DocumentExtractor(object):
|
|
|
164
165
|
|
|
165
166
|
extractor_request = {
|
|
166
167
|
"inputs": {
|
|
167
|
-
"document": document.
|
|
168
|
+
"document": document.as_dict()
|
|
168
169
|
},
|
|
169
170
|
"settings": {
|
|
170
171
|
}
|
|
@@ -212,7 +213,7 @@ class DocumentExtractor(object):
|
|
|
212
213
|
for idx, screenshot in enumerate(response):
|
|
213
214
|
if (idx % fetch_size == 0) and idx != 0:
|
|
214
215
|
print(f"Computing the next {fetch_size} screenshots")
|
|
215
|
-
print(f"Screenshot #{idx}: {screenshot.
|
|
216
|
+
print(f"Screenshot #{idx}: {screenshot.as_dict()}")
|
|
216
217
|
|
|
217
218
|
# Alternatively, response being an iterable, you can compute & fetch all screenshots at once:
|
|
218
219
|
response = doc_extractor.generate_pages_screenshots(document_ref)
|
|
@@ -275,12 +276,30 @@ class ScreenshotterRequest(object):
|
|
|
275
276
|
self.fetch_size = fetch_size
|
|
276
277
|
|
|
277
278
|
def as_json(self):
|
|
279
|
+
"""
|
|
280
|
+
Get a dictionary representation.
|
|
281
|
+
|
|
282
|
+
.. caution::
|
|
283
|
+
|
|
284
|
+
Deprecated, use :meth:`as_dict` instead
|
|
285
|
+
|
|
286
|
+
:rtype: dict
|
|
287
|
+
"""
|
|
288
|
+
warnings.warn("ScreenshotterRequest.as_json is deprecated, please use as_dict", DeprecationWarning)
|
|
289
|
+
return self.as_dict()
|
|
290
|
+
|
|
291
|
+
def as_dict(self):
|
|
292
|
+
"""
|
|
293
|
+
Get a dictionary representation.
|
|
294
|
+
|
|
295
|
+
:rtype: dict
|
|
296
|
+
"""
|
|
278
297
|
return {
|
|
279
298
|
"inputs": {
|
|
280
|
-
"document": self.document.
|
|
299
|
+
"document": self.document.as_dict(),
|
|
281
300
|
},
|
|
282
301
|
"settings": {
|
|
283
|
-
"
|
|
302
|
+
"outputManagedFolderRef": self.output_managed_folder,
|
|
284
303
|
"paginationOffset": self.offset,
|
|
285
304
|
"paginationSize": self.fetch_size,
|
|
286
305
|
}
|
|
@@ -300,7 +319,7 @@ class ScreenshotterResponse(object):
|
|
|
300
319
|
self.project_key = project_key
|
|
301
320
|
self.screenshotter_request = screenshotter_request
|
|
302
321
|
self._current_data = self.client._perform_json("POST", "/projects/%s/document-extractors/screenshotter" % self.project_key,
|
|
303
|
-
raw_body={"screenshotRequest": json.dumps(screenshotter_request.
|
|
322
|
+
raw_body={"screenshotRequest": json.dumps(screenshotter_request.as_dict())},
|
|
304
323
|
files={"file": screenshotter_request.document.file} if isinstance(screenshotter_request.document,
|
|
305
324
|
LocalFileDocumentRef) else None)
|
|
306
325
|
self._fail_unless_success()
|
|
@@ -324,7 +343,7 @@ class ScreenshotterResponse(object):
|
|
|
324
343
|
self.screenshotter_request.offset = screenshot_index
|
|
325
344
|
self.screenshotter_request.document = self.document
|
|
326
345
|
self._current_data = self.client._perform_json("POST", "/projects/%s/document-extractors/screenshotter" % self.project_key,
|
|
327
|
-
raw_body={"screenshotRequest": json.dumps(self.screenshotter_request.
|
|
346
|
+
raw_body={"screenshotRequest": json.dumps(self.screenshotter_request.as_dict())},
|
|
328
347
|
files={"file": self.document.file} if isinstance(self.document, LocalFileDocumentRef) else None)
|
|
329
348
|
self._fail_unless_success()
|
|
330
349
|
self._update_screenshot_list_at_index(screenshot_index)
|
|
@@ -335,7 +354,7 @@ class ScreenshotterResponse(object):
|
|
|
335
354
|
res = [InlineImageRef(image["content"], image["mimeType"] if "mimeType" in image else None) for image in
|
|
336
355
|
self._current_data["imagesRefs"]["inlineImages"]]
|
|
337
356
|
elif self._current_data["imagesRefs"]["type"] == "managed_folder":
|
|
338
|
-
res = [ManagedFolderImageRef(self._current_data["imagesRefs"]["
|
|
357
|
+
res = [ManagedFolderImageRef(self._current_data["imagesRefs"]["managedFolderRef"], path) for path in self._current_data["imagesRefs"]["imagesPaths"]]
|
|
339
358
|
else:
|
|
340
359
|
raise ValueError("Did not return valid images ref")
|
|
341
360
|
if not self.keep_fetched:
|
|
@@ -376,7 +395,9 @@ class ScreenshotterResponse(object):
|
|
|
376
395
|
"""
|
|
377
396
|
doc_type = self._current_data.get("documentRef").get("type")
|
|
378
397
|
if doc_type == "managed_folder":
|
|
379
|
-
|
|
398
|
+
document_ref = self._current_data.get("documentRef")
|
|
399
|
+
managed_folder_ref = document_ref.get("managedFolderRef") or document_ref.get("managedFolderId")
|
|
400
|
+
return ManagedFolderDocumentRef(document_ref.get("filePath"), managed_folder_ref)
|
|
380
401
|
if doc_type == "tmp_file":
|
|
381
402
|
return _TmpDocumentRef(self._current_data.get("documentRef").get("tmpFileName"), self._current_data.get("documentRef").get("originalFileName"))
|
|
382
403
|
else:
|
|
@@ -513,19 +534,19 @@ class StructuredExtractorResponse(object):
|
|
|
513
534
|
"""
|
|
514
535
|
|
|
515
536
|
def _flatten_using_dfs(node, current_outline):
|
|
516
|
-
if not node or
|
|
537
|
+
if not node or "type" not in node:
|
|
517
538
|
return []
|
|
518
539
|
elif node["type"] == "text" or node["type"] == "table":
|
|
519
|
-
if
|
|
540
|
+
if "text" not in node or not node["text"]:
|
|
520
541
|
return []
|
|
521
542
|
return [{"text": node["text"], "outline": current_outline}]
|
|
522
543
|
elif node["type"] == "image":
|
|
523
|
-
if
|
|
544
|
+
if "description" not in node or not node["description"]:
|
|
524
545
|
return []
|
|
525
546
|
return [{"text": node["description"], "outline": current_outline}]
|
|
526
547
|
elif node["type"] not in ["document", "section", "slide"]:
|
|
527
548
|
raise ValueError("Unsupported structured content type: " + node["type"])
|
|
528
|
-
if
|
|
549
|
+
if "content" not in node:
|
|
529
550
|
return []
|
|
530
551
|
deeper_outline = copy.deepcopy(current_outline)
|
|
531
552
|
if node["type"] == "section":
|
|
@@ -559,7 +580,7 @@ class PDFConversionResponse(object):
|
|
|
559
580
|
self.path_in_output_folder = path_in_output_folder
|
|
560
581
|
pdf_convert_request = {
|
|
561
582
|
"inputs": {
|
|
562
|
-
"document": document.
|
|
583
|
+
"document": document.as_dict()
|
|
563
584
|
}
|
|
564
585
|
}
|
|
565
586
|
if output_managed_folder is not None:
|
|
@@ -619,7 +640,9 @@ class PDFConversionResponse(object):
|
|
|
619
640
|
if self.output_managed_folder is None:
|
|
620
641
|
return None
|
|
621
642
|
else:
|
|
622
|
-
|
|
643
|
+
document_ref = self._data.get("documentRef")
|
|
644
|
+
managed_folder_ref = document_ref.get("managedFolderRef") or document_ref.get("managedFolderId")
|
|
645
|
+
return ManagedFolderDocumentRef(document_ref.get("filePath"), managed_folder_ref)
|
|
623
646
|
|
|
624
647
|
@property
|
|
625
648
|
def success(self):
|
|
@@ -685,7 +708,7 @@ class VlmExtractorResponse(object):
|
|
|
685
708
|
|
|
686
709
|
|
|
687
710
|
class InputRef(object):
|
|
688
|
-
def
|
|
711
|
+
def as_dict(self):
|
|
689
712
|
raise NotImplementedError
|
|
690
713
|
|
|
691
714
|
|
|
@@ -703,7 +726,7 @@ class DocumentRef(InputRef):
|
|
|
703
726
|
self.type = None
|
|
704
727
|
self.mime_type = mime_type
|
|
705
728
|
|
|
706
|
-
def
|
|
729
|
+
def as_dict(self):
|
|
707
730
|
raise NotImplementedError
|
|
708
731
|
|
|
709
732
|
|
|
@@ -732,6 +755,19 @@ class LocalFileDocumentRef(DocumentRef):
|
|
|
732
755
|
self.file = fp
|
|
733
756
|
|
|
734
757
|
def as_json(self):
|
|
758
|
+
"""
|
|
759
|
+
Get a dictionary representation.
|
|
760
|
+
|
|
761
|
+
.. caution::
|
|
762
|
+
|
|
763
|
+
Deprecated, use :meth:`as_dict` instead
|
|
764
|
+
|
|
765
|
+
:rtype: dict
|
|
766
|
+
"""
|
|
767
|
+
warnings.warn("LocalFileDocumentRef.as_json is deprecated, please use as_dict", DeprecationWarning)
|
|
768
|
+
return self.as_dict()
|
|
769
|
+
|
|
770
|
+
def as_dict(self):
|
|
735
771
|
return {
|
|
736
772
|
"type": self.type,
|
|
737
773
|
"mimeType": self.mime_type,
|
|
@@ -758,6 +794,19 @@ class _TmpDocumentRef(DocumentRef):
|
|
|
758
794
|
self.original_file_name = original_file_name
|
|
759
795
|
|
|
760
796
|
def as_json(self):
|
|
797
|
+
"""
|
|
798
|
+
Get a dictionary representation.
|
|
799
|
+
|
|
800
|
+
.. caution::
|
|
801
|
+
|
|
802
|
+
Deprecated, use :meth:`as_dict` instead
|
|
803
|
+
|
|
804
|
+
:rtype: dict
|
|
805
|
+
"""
|
|
806
|
+
warnings.warn("_TmpDocumentRef.as_json is deprecated, please use as_dict", DeprecationWarning)
|
|
807
|
+
return self.as_dict()
|
|
808
|
+
|
|
809
|
+
def as_dict(self):
|
|
761
810
|
return {
|
|
762
811
|
"type": self.type,
|
|
763
812
|
"tmpFileName": self.tmp_file_name,
|
|
@@ -789,13 +838,36 @@ class ManagedFolderDocumentRef(DocumentRef):
|
|
|
789
838
|
super(ManagedFolderDocumentRef, self).__init__(mime_type)
|
|
790
839
|
self.type = "managed_folder"
|
|
791
840
|
self.file_path = file_path
|
|
792
|
-
self.
|
|
841
|
+
self.managed_folder_ref = managed_folder_id
|
|
842
|
+
|
|
843
|
+
@property
|
|
844
|
+
def managed_folder_id(self):
|
|
845
|
+
warnings.warn("ManagedFolderDocumentRef.managed_folder_id is deprecated, please use managed_folder_ref", DeprecationWarning)
|
|
846
|
+
return self.managed_folder_ref
|
|
793
847
|
|
|
794
848
|
def as_json(self):
|
|
849
|
+
"""
|
|
850
|
+
Get a dictionary representation.
|
|
851
|
+
|
|
852
|
+
.. caution::
|
|
853
|
+
|
|
854
|
+
Deprecated, use :meth:`as_dict` instead
|
|
855
|
+
|
|
856
|
+
:rtype: dict
|
|
857
|
+
"""
|
|
858
|
+
warnings.warn("ManagedFolderDocumentRef.as_json is deprecated, please use as_dict", DeprecationWarning)
|
|
859
|
+
return self.as_dict()
|
|
860
|
+
|
|
861
|
+
def as_dict(self):
|
|
862
|
+
"""
|
|
863
|
+
Get a dictionary representation.
|
|
864
|
+
|
|
865
|
+
:rtype: dict
|
|
866
|
+
"""
|
|
795
867
|
return {
|
|
796
868
|
"type": self.type,
|
|
797
869
|
"filePath": self.file_path,
|
|
798
|
-
"
|
|
870
|
+
"managedFolderRef": self.managed_folder_ref,
|
|
799
871
|
"mimeType": self.mime_type,
|
|
800
872
|
}
|
|
801
873
|
|
|
@@ -818,6 +890,23 @@ class InlineDocumentRef(DocumentRef):
|
|
|
818
890
|
self.content_type = content_type
|
|
819
891
|
|
|
820
892
|
def as_json(self):
|
|
893
|
+
"""
|
|
894
|
+
Get a dictionary representation.
|
|
895
|
+
|
|
896
|
+
.. caution::
|
|
897
|
+
|
|
898
|
+
Deprecated, use :meth:`as_dict` instead
|
|
899
|
+
|
|
900
|
+
:rtype: dict
|
|
901
|
+
"""
|
|
902
|
+
return self.as_dict()
|
|
903
|
+
|
|
904
|
+
def as_dict(self):
|
|
905
|
+
"""
|
|
906
|
+
Get a dictionary representation.
|
|
907
|
+
|
|
908
|
+
:rtype: dict
|
|
909
|
+
"""
|
|
821
910
|
return {
|
|
822
911
|
"type": self.type,
|
|
823
912
|
"content": self.content,
|
|
@@ -854,7 +943,7 @@ class ImageRef(InputRef):
|
|
|
854
943
|
super(ImageRef, self).__init__()
|
|
855
944
|
self.type = None
|
|
856
945
|
|
|
857
|
-
def
|
|
946
|
+
def as_dict(self):
|
|
858
947
|
raise NotImplementedError
|
|
859
948
|
|
|
860
949
|
|
|
@@ -891,6 +980,24 @@ class InlineImageRef(ImageRef):
|
|
|
891
980
|
self.mime_type = mime_type
|
|
892
981
|
|
|
893
982
|
def as_json(self):
|
|
983
|
+
"""
|
|
984
|
+
Get a dictionary representation.
|
|
985
|
+
|
|
986
|
+
.. caution::
|
|
987
|
+
|
|
988
|
+
Deprecated, use :meth:`as_dict` instead
|
|
989
|
+
|
|
990
|
+
:rtype: dict
|
|
991
|
+
"""
|
|
992
|
+
warnings.warn("InlineImageRef.as_json is deprecated, please use as_dict", DeprecationWarning)
|
|
993
|
+
return self.as_dict()
|
|
994
|
+
|
|
995
|
+
def as_dict(self):
|
|
996
|
+
"""
|
|
997
|
+
Get a dictionary representation.
|
|
998
|
+
|
|
999
|
+
:rtype: dict
|
|
1000
|
+
"""
|
|
894
1001
|
res = {
|
|
895
1002
|
"type": self.type,
|
|
896
1003
|
"content": self.image
|
|
@@ -908,25 +1015,48 @@ class ManagedFolderImageRef(ImageRef):
|
|
|
908
1015
|
|
|
909
1016
|
.. code-block:: python
|
|
910
1017
|
|
|
911
|
-
managed_img = ManagedFolderImageRef('
|
|
1018
|
+
managed_img = ManagedFolderImageRef('managed_folder_ref', 'path_in_folder/image.png')
|
|
912
1019
|
|
|
913
1020
|
# Extract a text summary from the image using a vision LLM:
|
|
914
1021
|
resp = doc_ex.vlm_extract([managed_img], 'llm_id')
|
|
915
1022
|
"""
|
|
916
1023
|
|
|
917
|
-
def __init__(self,
|
|
1024
|
+
def __init__(self, managed_folder_ref, image_path):
|
|
918
1025
|
"""
|
|
919
|
-
:param str
|
|
1026
|
+
:param str managed_folder_ref: identifier of the folder containing the image
|
|
920
1027
|
:param str image_path: path to the image file inside the managed folder
|
|
921
1028
|
"""
|
|
922
1029
|
super(ManagedFolderImageRef, self).__init__()
|
|
923
1030
|
self.type = "managed_folder"
|
|
924
|
-
self.
|
|
1031
|
+
self.managed_folder_ref = managed_folder_ref
|
|
925
1032
|
self.image_path = image_path
|
|
926
1033
|
|
|
1034
|
+
@property
|
|
1035
|
+
def managed_folder_id(self):
|
|
1036
|
+
warnings.warn("ManagedFolderImageRef.managed_folder_id is deprecated, please use managed_folder_ref", DeprecationWarning)
|
|
1037
|
+
return self.managed_folder_ref
|
|
1038
|
+
|
|
927
1039
|
def as_json(self):
|
|
1040
|
+
"""
|
|
1041
|
+
Get a dictionary representation.
|
|
1042
|
+
|
|
1043
|
+
.. caution::
|
|
1044
|
+
|
|
1045
|
+
Deprecated, use :meth:`as_dict` instead
|
|
1046
|
+
|
|
1047
|
+
:rtype: dict
|
|
1048
|
+
"""
|
|
1049
|
+
warnings.warn("ManagedFolderImageRef.as_json is deprecated, please use as_dict", DeprecationWarning)
|
|
1050
|
+
return self.as_dict()
|
|
1051
|
+
|
|
1052
|
+
def as_dict(self):
|
|
1053
|
+
"""
|
|
1054
|
+
Get a dictionary representation.
|
|
1055
|
+
|
|
1056
|
+
:rtype: dict
|
|
1057
|
+
"""
|
|
928
1058
|
return {
|
|
929
1059
|
"type": self.type,
|
|
930
|
-
"
|
|
1060
|
+
"managedFolderRef": self.managed_folder_ref,
|
|
931
1061
|
"imagePath": self.image_path
|
|
932
1062
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import textwrap
|
|
1
2
|
import warnings
|
|
2
3
|
from typing import Optional, Callable, Literal, Type, Any, Dict
|
|
3
4
|
|
|
@@ -31,6 +32,7 @@ class DKUStructuredTool(StructuredTool):
|
|
|
31
32
|
def dku_from_function(
|
|
32
33
|
cls,
|
|
33
34
|
func: Optional[Callable] = None,
|
|
35
|
+
coroutine: Optional[Callable] = None,
|
|
34
36
|
name: Optional[str] = None,
|
|
35
37
|
description: Optional[str] = None,
|
|
36
38
|
return_direct: bool = False,
|
|
@@ -96,12 +98,12 @@ class DKUStructuredTool(StructuredTool):
|
|
|
96
98
|
name = name or source_function.__name__
|
|
97
99
|
if args_schema is None and infer_schema:
|
|
98
100
|
# schema name is appended within function
|
|
99
|
-
args_schema = create_schema_from_function(
|
|
101
|
+
args_schema = create_schema_from_function( # noqa: F821
|
|
100
102
|
name,
|
|
101
103
|
source_function,
|
|
102
104
|
parse_docstring=parse_docstring,
|
|
103
105
|
error_on_invalid_docstring=error_on_invalid_docstring,
|
|
104
|
-
filter_args=_filter_schema_args(source_function),
|
|
106
|
+
filter_args=_filter_schema_args(source_function), # noqa: F821
|
|
105
107
|
)
|
|
106
108
|
description_ = description
|
|
107
109
|
if description is None and not parse_docstring:
|
|
@@ -1829,13 +1829,13 @@ class DSSProject(object):
|
|
|
1829
1829
|
if template_ref is not None:
|
|
1830
1830
|
if not isinstance(template_ref, DocumentRef):
|
|
1831
1831
|
raise ValueError("Unsupported template document ref type %s, document templating only supports DocumentRef objects", template_ref.type)
|
|
1832
|
-
payload["templateRef"] = template_ref.
|
|
1832
|
+
payload["templateRef"] = template_ref.as_dict()
|
|
1833
1833
|
|
|
1834
1834
|
if output_ref is None:
|
|
1835
1835
|
output_ref = InlineDocumentRef("", InlineDocumentRef.CONTENT_TYPE_PLAIN_TEXT)
|
|
1836
1836
|
if not isinstance(output_ref, DocumentRef):
|
|
1837
1837
|
raise ValueError("Unsupported output document ref type %s, document templating only supports DocumentRef objects", template_ref.type)
|
|
1838
|
-
payload["destinationRef"] = output_ref.
|
|
1838
|
+
payload["destinationRef"] = output_ref.as_dict()
|
|
1839
1839
|
|
|
1840
1840
|
ret = self.client._perform_json(
|
|
1841
1841
|
"POST",
|
|
@@ -2315,7 +2315,8 @@ class DSSProject(object):
|
|
|
2315
2315
|
return recipe.EmbedDocumentsRecipeCreator(name, self)
|
|
2316
2316
|
elif type == "extract_content":
|
|
2317
2317
|
return recipe.ExtractContentRecipeCreator(name, self)
|
|
2318
|
-
|
|
2318
|
+
elif type == "prompt":
|
|
2319
|
+
return recipe.PromptRecipeCreator(name, self)
|
|
2319
2320
|
|
|
2320
2321
|
########################################################
|
|
2321
2322
|
# Flow
|
|
@@ -2740,6 +2741,7 @@ class DSSProject(object):
|
|
|
2740
2741
|
* FAISS *(not recommended)*
|
|
2741
2742
|
* QDRANT_LOCAL *(not recommended)*
|
|
2742
2743
|
* MILVUS_LOCAL
|
|
2744
|
+
* MILVUS_REMOTE
|
|
2743
2745
|
|
|
2744
2746
|
:param str embedding_llm_id: The id of the embedding LLM. It has to have the TEXT_EMBEDDING_EXTRACTION purpose.
|
|
2745
2747
|
:param Optional[dict] settings: Additional settings for the knowledge bank, including:
|
|
@@ -2891,7 +2893,7 @@ class DSSProject(object):
|
|
|
2891
2893
|
Create a new agent in the project, and return a handle to interact with it
|
|
2892
2894
|
|
|
2893
2895
|
:param str name: The name for the new agent. This does not need to be unique
|
|
2894
|
-
:param str type: one of PYTHON_AGENT, PLUGIN_AGENT or
|
|
2896
|
+
:param str type: one of PYTHON_AGENT, PLUGIN_AGENT, TOOLS_USING_AGENT or STRUCTURED_AGENT (Visual Agent)
|
|
2895
2897
|
:param str plugin_agent_type: only if type=PLUGIN_AGENT, the id of the custom plugin component
|
|
2896
2898
|
|
|
2897
2899
|
:returns: a :class:`dataikuapi.dss.agent.DSSAgent` handle to interact with the newly-created agent
|
|
@@ -4004,13 +4006,13 @@ class DocumentTemplateRenderingResponse(object):
|
|
|
4004
4006
|
|
|
4005
4007
|
document_ref = self._raw["documentRef"]
|
|
4006
4008
|
if document_ref.get("type") == "managed_folder":
|
|
4007
|
-
if not "
|
|
4008
|
-
raise Exception("No output managed folder
|
|
4009
|
+
if not "managedFolderRef" in document_ref:
|
|
4010
|
+
raise Exception("No output managed folder ref available in the document ref")
|
|
4009
4011
|
if not "filePath" in document_ref:
|
|
4010
4012
|
raise Exception("No output file path available in the document ref")
|
|
4011
4013
|
return ManagedFolderDocumentRef(
|
|
4012
4014
|
document_ref["filePath"],
|
|
4013
|
-
document_ref["
|
|
4015
|
+
document_ref["managedFolderRef"],
|
|
4014
4016
|
mime_type=document_ref.get("mimeType"))
|
|
4015
4017
|
elif document_ref.get("type") == "inline_document":
|
|
4016
4018
|
if not "content" in document_ref:
|
|
@@ -4036,7 +4038,7 @@ class DocumentTemplateRenderingResponse(object):
|
|
|
4036
4038
|
document = self.document
|
|
4037
4039
|
if isinstance(document, ManagedFolderDocumentRef):
|
|
4038
4040
|
project = self.client.get_project(self.project_key)
|
|
4039
|
-
folder = project.get_managed_folder(document.
|
|
4041
|
+
folder = project.get_managed_folder(document.managed_folder_ref)
|
|
4040
4042
|
response = folder.get_file(document.file_path)
|
|
4041
4043
|
response.raise_for_status()
|
|
4042
4044
|
if document.mime_type == "text/plain":
|