dify-oapi2 0.1.1__py3-none-any.whl → 0.3.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.
- dify_oapi/api/completion/v1/model/annotation/annotation_info.py +43 -0
- dify_oapi/api/completion/v1/model/annotation/annotation_reply_settings_request.py +39 -0
- dify_oapi/api/completion/v1/model/annotation/annotation_reply_settings_request_body.py +33 -0
- dify_oapi/api/completion/v1/model/annotation/annotation_reply_settings_response.py +9 -0
- dify_oapi/api/completion/v1/model/annotation/create_annotation_request.py +32 -0
- dify_oapi/api/completion/v1/model/annotation/create_annotation_request_body.py +28 -0
- dify_oapi/api/completion/v1/model/annotation/create_annotation_response.py +9 -0
- dify_oapi/api/completion/v1/model/annotation/delete_annotation_request.py +30 -0
- dify_oapi/api/completion/v1/model/annotation/delete_annotation_response.py +7 -0
- dify_oapi/api/completion/v1/model/annotation/job_status_info.py +35 -0
- dify_oapi/api/completion/v1/model/annotation/list_annotations_request.py +32 -0
- dify_oapi/api/completion/v1/model/annotation/list_annotations_response.py +13 -0
- dify_oapi/api/completion/v1/model/annotation/query_annotation_reply_status_request.py +38 -0
- dify_oapi/api/completion/v1/model/annotation/query_annotation_reply_status_response.py +9 -0
- dify_oapi/api/completion/v1/model/annotation/update_annotation_request.py +38 -0
- dify_oapi/api/completion/v1/model/annotation/update_annotation_request_body.py +28 -0
- dify_oapi/api/completion/v1/model/annotation/update_annotation_response.py +9 -0
- dify_oapi/api/completion/v1/model/audio/audio_info.py +28 -0
- dify_oapi/api/completion/v1/model/audio/text_to_audio_request.py +32 -0
- dify_oapi/api/completion/v1/model/audio/text_to_audio_request_body.py +33 -0
- dify_oapi/api/completion/v1/model/audio/text_to_audio_response.py +9 -0
- dify_oapi/api/completion/v1/model/completion/completion_inputs.py +28 -0
- dify_oapi/api/completion/v1/model/completion/completion_message_info.py +46 -0
- dify_oapi/api/completion/v1/model/completion/completion_types.py +27 -0
- dify_oapi/api/completion/v1/model/completion/metadata.py +31 -0
- dify_oapi/api/completion/v1/model/completion/retriever_resource.py +58 -0
- dify_oapi/api/completion/v1/model/completion/send_message_request.py +32 -0
- dify_oapi/api/completion/v1/model/completion/send_message_request_body.py +76 -0
- dify_oapi/api/completion/v1/model/completion/send_message_response.py +9 -0
- dify_oapi/api/completion/v1/model/completion/stop_response_request.py +38 -0
- dify_oapi/api/completion/v1/model/completion/stop_response_request_body.py +23 -0
- dify_oapi/api/completion/v1/model/{stop_completion_response.py → completion/stop_response_response.py} +3 -1
- dify_oapi/api/completion/v1/model/completion/usage.py +78 -0
- dify_oapi/api/completion/v1/model/feedback/feedback_info.py +53 -0
- dify_oapi/api/completion/v1/model/feedback/get_feedbacks_request.py +32 -0
- dify_oapi/api/completion/v1/model/feedback/get_feedbacks_response.py +9 -0
- dify_oapi/api/completion/v1/model/feedback/message_feedback_request.py +38 -0
- dify_oapi/api/completion/v1/model/feedback/message_feedback_request_body.py +35 -0
- dify_oapi/api/completion/v1/model/feedback/message_feedback_response.py +7 -0
- dify_oapi/api/completion/v1/model/file/file_info.py +53 -0
- dify_oapi/api/completion/v1/model/file/upload_file_request.py +42 -0
- dify_oapi/api/completion/v1/model/file/upload_file_request_body.py +23 -0
- dify_oapi/api/completion/v1/model/file/upload_file_response.py +9 -0
- dify_oapi/api/completion/v1/model/info/app_info.py +43 -0
- dify_oapi/api/completion/v1/model/info/file_upload_config.py +23 -0
- dify_oapi/api/completion/v1/model/info/get_info_request.py +24 -0
- dify_oapi/api/completion/v1/model/info/get_info_response.py +9 -0
- dify_oapi/api/completion/v1/model/info/get_parameters_request.py +24 -0
- dify_oapi/api/completion/v1/model/info/get_parameters_response.py +9 -0
- dify_oapi/api/completion/v1/model/info/get_site_request.py +24 -0
- dify_oapi/api/completion/v1/model/info/get_site_response.py +9 -0
- dify_oapi/api/completion/v1/model/info/parameters_info.py +67 -0
- dify_oapi/api/completion/v1/model/info/site_info.py +90 -0
- dify_oapi/api/completion/v1/model/info/system_parameters.py +38 -0
- dify_oapi/api/completion/v1/model/info/user_input_form.py +43 -0
- dify_oapi/api/completion/v1/resource/__init__.py +5 -0
- dify_oapi/api/completion/v1/resource/annotation.py +99 -0
- dify_oapi/api/completion/v1/resource/audio.py +19 -0
- dify_oapi/api/completion/v1/resource/completion.py +36 -46
- dify_oapi/api/completion/v1/resource/feedback.py +33 -0
- dify_oapi/api/completion/v1/resource/file.py +19 -0
- dify_oapi/api/completion/v1/resource/info.py +39 -0
- dify_oapi/api/completion/v1/version.py +11 -1
- dify_oapi/api/knowledge_base/v1/model/dataset/create_request_body.py +3 -4
- dify_oapi/api/knowledge_base/v1/model/dataset/dataset_types.py +36 -0
- dify_oapi/api/knowledge_base/v1/model/dataset/retrieval_model.py +3 -6
- dify_oapi/api/knowledge_base/v1/model/document/create_by_text_request_body.py +7 -12
- dify_oapi/api/knowledge_base/v1/model/document/document_types.py +36 -0
- dify_oapi/api/knowledge_base/v1/model/metadata/metadata_types.py +15 -0
- dify_oapi/api/knowledge_base/v1/model/segment/segment_types.py +24 -0
- dify_oapi/api/knowledge_base/v1/model/tag/tag_types.py +12 -0
- dify_oapi/api/knowledge_base/v1/model/tag/update_response.py +5 -1
- dify_oapi/api/workflow/v1/model/file/__init__.py +1 -0
- dify_oapi/api/workflow/v1/model/file/file_info.py +53 -0
- dify_oapi/api/workflow/v1/model/file/preview_file_request.py +34 -0
- dify_oapi/api/workflow/v1/model/file/preview_file_response.py +9 -0
- dify_oapi/api/workflow/v1/model/file/upload_file_request.py +42 -0
- dify_oapi/api/workflow/v1/model/file/upload_file_request_body.py +23 -0
- dify_oapi/api/workflow/v1/model/file/upload_file_response.py +9 -0
- dify_oapi/api/workflow/v1/model/info/app_info.py +45 -0
- dify_oapi/api/workflow/v1/model/info/file_upload_config.py +45 -0
- dify_oapi/api/workflow/v1/model/info/get_info_request.py +24 -0
- dify_oapi/api/workflow/v1/model/info/get_info_response.py +9 -0
- dify_oapi/api/workflow/v1/model/info/get_parameters_request.py +24 -0
- dify_oapi/api/workflow/v1/model/info/get_parameters_response.py +9 -0
- dify_oapi/api/workflow/v1/model/info/get_site_request.py +24 -0
- dify_oapi/api/workflow/v1/model/info/get_site_response.py +9 -0
- dify_oapi/api/workflow/v1/model/info/parameters_info.py +37 -0
- dify_oapi/api/workflow/v1/model/info/site_info.py +75 -0
- dify_oapi/api/workflow/v1/model/info/system_parameters.py +38 -0
- dify_oapi/api/workflow/v1/model/info/user_input_form.py +43 -0
- dify_oapi/api/workflow/v1/model/log/__init__.py +0 -0
- dify_oapi/api/workflow/v1/model/log/end_user_info.py +38 -0
- dify_oapi/api/workflow/v1/model/log/get_workflow_logs_request.py +48 -0
- dify_oapi/api/workflow/v1/model/log/get_workflow_logs_response.py +13 -0
- dify_oapi/api/workflow/v1/model/log/log_info.py +57 -0
- dify_oapi/api/workflow/v1/model/log/workflow_run_log_info.py +65 -0
- dify_oapi/api/workflow/v1/model/workflow/execution_metadata.py +33 -0
- dify_oapi/api/workflow/v1/model/workflow/get_workflow_run_detail_request.py +30 -0
- dify_oapi/api/workflow/v1/model/{run_workflow_response.py → workflow/get_workflow_run_detail_response.py} +8 -11
- dify_oapi/api/workflow/v1/model/workflow/node_info.py +88 -0
- dify_oapi/api/workflow/v1/model/workflow/run_specific_workflow_request.py +38 -0
- dify_oapi/api/workflow/v1/model/workflow/run_specific_workflow_request_body.py +47 -0
- dify_oapi/api/workflow/v1/model/workflow/run_specific_workflow_response.py +9 -0
- dify_oapi/api/workflow/v1/model/{run_workflow_request.py → workflow/run_workflow_request.py} +4 -4
- dify_oapi/api/workflow/v1/model/workflow/run_workflow_request_body.py +47 -0
- dify_oapi/api/workflow/v1/model/workflow/run_workflow_response.py +9 -0
- dify_oapi/api/workflow/v1/model/{stop_workflow_request.py → workflow/stop_workflow_request.py} +9 -9
- dify_oapi/api/workflow/v1/model/{stop_workflow_request_body.py → workflow/stop_workflow_request_body.py} +3 -3
- dify_oapi/api/workflow/v1/model/{stop_workflow_response.py → workflow/stop_workflow_response.py} +2 -0
- dify_oapi/api/workflow/v1/model/workflow/streaming_event.py +42 -0
- dify_oapi/api/workflow/v1/model/workflow/workflow_file_info.py +40 -0
- dify_oapi/api/workflow/v1/model/workflow/workflow_inputs.py +56 -0
- dify_oapi/api/workflow/v1/model/workflow/workflow_run_data.py +72 -0
- dify_oapi/api/workflow/v1/model/workflow/workflow_run_info.py +35 -0
- dify_oapi/api/workflow/v1/model/workflow/workflow_types.py +54 -0
- dify_oapi/api/workflow/v1/resource/__init__.py +0 -1
- dify_oapi/api/workflow/v1/resource/file.py +63 -0
- dify_oapi/api/workflow/v1/resource/info.py +93 -0
- dify_oapi/api/workflow/v1/resource/log.py +43 -0
- dify_oapi/api/workflow/v1/resource/workflow.py +171 -53
- dify_oapi/api/workflow/v1/version.py +7 -1
- dify_oapi/core/http/transport/_misc.py +54 -14
- {dify_oapi2-0.1.1.dist-info → dify_oapi2-0.3.0.dist-info}/METADATA +10 -6
- {dify_oapi2-0.1.1.dist-info → dify_oapi2-0.3.0.dist-info}/RECORD +127 -34
- dify_oapi/api/completion/v1/model/completion_request.py +0 -34
- dify_oapi/api/completion/v1/model/completion_request_body.py +0 -43
- dify_oapi/api/completion/v1/model/completion_request_body_input.py +0 -38
- dify_oapi/api/completion/v1/model/completion_request_file.py +0 -49
- dify_oapi/api/completion/v1/model/completion_response.py +0 -18
- dify_oapi/api/completion/v1/model/stop_completion_request.py +0 -38
- dify_oapi/api/completion/v1/model/stop_completion_request_body.py +0 -23
- dify_oapi/api/workflow/v1/model/get_workflow_log_request.py +0 -50
- dify_oapi/api/workflow/v1/model/get_workflow_log_response.py +0 -42
- dify_oapi/api/workflow/v1/model/get_workflow_result_request.py +0 -30
- dify_oapi/api/workflow/v1/model/get_workflow_result_response.py +0 -17
- dify_oapi/api/workflow/v1/model/run_workflow_request_body.py +0 -42
- dify_oapi/api/workflow/v1/model/run_workflow_request_file.py +0 -50
- {dify_oapi2-0.1.1.dist-info → dify_oapi2-0.3.0.dist-info}/LICENSE +0 -0
- {dify_oapi2-0.1.1.dist-info → dify_oapi2-0.3.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,24 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from dify_oapi.core.enum import HttpMethod
|
4
|
+
from dify_oapi.core.model.base_request import BaseRequest
|
5
|
+
|
6
|
+
|
7
|
+
class GetParametersRequest(BaseRequest):
|
8
|
+
def __init__(self):
|
9
|
+
super().__init__()
|
10
|
+
|
11
|
+
@staticmethod
|
12
|
+
def builder() -> GetParametersRequestBuilder:
|
13
|
+
return GetParametersRequestBuilder()
|
14
|
+
|
15
|
+
|
16
|
+
class GetParametersRequestBuilder:
|
17
|
+
def __init__(self):
|
18
|
+
get_parameters_request = GetParametersRequest()
|
19
|
+
get_parameters_request.http_method = HttpMethod.GET
|
20
|
+
get_parameters_request.uri = "/v1/parameters"
|
21
|
+
self._get_parameters_request = get_parameters_request
|
22
|
+
|
23
|
+
def build(self) -> GetParametersRequest:
|
24
|
+
return self._get_parameters_request
|
@@ -0,0 +1,24 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from dify_oapi.core.enum import HttpMethod
|
4
|
+
from dify_oapi.core.model.base_request import BaseRequest
|
5
|
+
|
6
|
+
|
7
|
+
class GetSiteRequest(BaseRequest):
|
8
|
+
def __init__(self):
|
9
|
+
super().__init__()
|
10
|
+
|
11
|
+
@staticmethod
|
12
|
+
def builder() -> GetSiteRequestBuilder:
|
13
|
+
return GetSiteRequestBuilder()
|
14
|
+
|
15
|
+
|
16
|
+
class GetSiteRequestBuilder:
|
17
|
+
def __init__(self):
|
18
|
+
get_site_request = GetSiteRequest()
|
19
|
+
get_site_request.http_method = HttpMethod.GET
|
20
|
+
get_site_request.uri = "/v1/site"
|
21
|
+
self._get_site_request = get_site_request
|
22
|
+
|
23
|
+
def build(self) -> GetSiteRequest:
|
24
|
+
return self._get_site_request
|
@@ -0,0 +1,37 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from pydantic import BaseModel
|
4
|
+
|
5
|
+
from .file_upload_config import FileUploadConfig
|
6
|
+
from .system_parameters import SystemParameters
|
7
|
+
from .user_input_form import UserInputForm
|
8
|
+
|
9
|
+
|
10
|
+
class ParametersInfo(BaseModel):
|
11
|
+
user_input_form: list[UserInputForm] | None = None
|
12
|
+
file_upload: FileUploadConfig | None = None
|
13
|
+
system_parameters: SystemParameters | None = None
|
14
|
+
|
15
|
+
@staticmethod
|
16
|
+
def builder() -> ParametersInfoBuilder:
|
17
|
+
return ParametersInfoBuilder()
|
18
|
+
|
19
|
+
|
20
|
+
class ParametersInfoBuilder:
|
21
|
+
def __init__(self):
|
22
|
+
self._parameters_info = ParametersInfo()
|
23
|
+
|
24
|
+
def build(self) -> ParametersInfo:
|
25
|
+
return self._parameters_info
|
26
|
+
|
27
|
+
def user_input_form(self, user_input_form: list[UserInputForm]) -> ParametersInfoBuilder:
|
28
|
+
self._parameters_info.user_input_form = user_input_form
|
29
|
+
return self
|
30
|
+
|
31
|
+
def file_upload(self, file_upload: FileUploadConfig) -> ParametersInfoBuilder:
|
32
|
+
self._parameters_info.file_upload = file_upload
|
33
|
+
return self
|
34
|
+
|
35
|
+
def system_parameters(self, system_parameters: SystemParameters) -> ParametersInfoBuilder:
|
36
|
+
self._parameters_info.system_parameters = system_parameters
|
37
|
+
return self
|
@@ -0,0 +1,75 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from pydantic import BaseModel
|
4
|
+
|
5
|
+
from ..workflow.workflow_types import IconType
|
6
|
+
|
7
|
+
|
8
|
+
class SiteInfo(BaseModel):
|
9
|
+
title: str | None = None
|
10
|
+
icon_type: IconType | None = None
|
11
|
+
icon: str | None = None
|
12
|
+
icon_background: str | None = None
|
13
|
+
icon_url: str | None = None
|
14
|
+
description: str | None = None
|
15
|
+
copyright: str | None = None
|
16
|
+
privacy_policy: str | None = None
|
17
|
+
custom_disclaimer: str | None = None
|
18
|
+
default_language: str | None = None
|
19
|
+
show_workflow_steps: bool | None = None
|
20
|
+
|
21
|
+
@staticmethod
|
22
|
+
def builder() -> SiteInfoBuilder:
|
23
|
+
return SiteInfoBuilder()
|
24
|
+
|
25
|
+
|
26
|
+
class SiteInfoBuilder:
|
27
|
+
def __init__(self):
|
28
|
+
self._site_info = SiteInfo()
|
29
|
+
|
30
|
+
def build(self) -> SiteInfo:
|
31
|
+
return self._site_info
|
32
|
+
|
33
|
+
def title(self, title: str) -> SiteInfoBuilder:
|
34
|
+
self._site_info.title = title
|
35
|
+
return self
|
36
|
+
|
37
|
+
def icon_type(self, icon_type: IconType) -> SiteInfoBuilder:
|
38
|
+
self._site_info.icon_type = icon_type
|
39
|
+
return self
|
40
|
+
|
41
|
+
def icon(self, icon: str) -> SiteInfoBuilder:
|
42
|
+
self._site_info.icon = icon
|
43
|
+
return self
|
44
|
+
|
45
|
+
def icon_background(self, icon_background: str) -> SiteInfoBuilder:
|
46
|
+
self._site_info.icon_background = icon_background
|
47
|
+
return self
|
48
|
+
|
49
|
+
def icon_url(self, icon_url: str) -> SiteInfoBuilder:
|
50
|
+
self._site_info.icon_url = icon_url
|
51
|
+
return self
|
52
|
+
|
53
|
+
def description(self, description: str) -> SiteInfoBuilder:
|
54
|
+
self._site_info.description = description
|
55
|
+
return self
|
56
|
+
|
57
|
+
def copyright(self, copyright: str) -> SiteInfoBuilder:
|
58
|
+
self._site_info.copyright = copyright
|
59
|
+
return self
|
60
|
+
|
61
|
+
def privacy_policy(self, privacy_policy: str) -> SiteInfoBuilder:
|
62
|
+
self._site_info.privacy_policy = privacy_policy
|
63
|
+
return self
|
64
|
+
|
65
|
+
def custom_disclaimer(self, custom_disclaimer: str) -> SiteInfoBuilder:
|
66
|
+
self._site_info.custom_disclaimer = custom_disclaimer
|
67
|
+
return self
|
68
|
+
|
69
|
+
def default_language(self, default_language: str) -> SiteInfoBuilder:
|
70
|
+
self._site_info.default_language = default_language
|
71
|
+
return self
|
72
|
+
|
73
|
+
def show_workflow_steps(self, show_workflow_steps: bool) -> SiteInfoBuilder:
|
74
|
+
self._site_info.show_workflow_steps = show_workflow_steps
|
75
|
+
return self
|
@@ -0,0 +1,38 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from pydantic import BaseModel
|
4
|
+
|
5
|
+
|
6
|
+
class SystemParameters(BaseModel):
|
7
|
+
file_size_limit: int | None = None
|
8
|
+
image_file_size_limit: int | None = None
|
9
|
+
audio_file_size_limit: int | None = None
|
10
|
+
video_file_size_limit: int | None = None
|
11
|
+
|
12
|
+
@staticmethod
|
13
|
+
def builder() -> SystemParametersBuilder:
|
14
|
+
return SystemParametersBuilder()
|
15
|
+
|
16
|
+
|
17
|
+
class SystemParametersBuilder:
|
18
|
+
def __init__(self):
|
19
|
+
self._system_parameters = SystemParameters()
|
20
|
+
|
21
|
+
def build(self) -> SystemParameters:
|
22
|
+
return self._system_parameters
|
23
|
+
|
24
|
+
def file_size_limit(self, file_size_limit: int) -> SystemParametersBuilder:
|
25
|
+
self._system_parameters.file_size_limit = file_size_limit
|
26
|
+
return self
|
27
|
+
|
28
|
+
def image_file_size_limit(self, image_file_size_limit: int) -> SystemParametersBuilder:
|
29
|
+
self._system_parameters.image_file_size_limit = image_file_size_limit
|
30
|
+
return self
|
31
|
+
|
32
|
+
def audio_file_size_limit(self, audio_file_size_limit: int) -> SystemParametersBuilder:
|
33
|
+
self._system_parameters.audio_file_size_limit = audio_file_size_limit
|
34
|
+
return self
|
35
|
+
|
36
|
+
def video_file_size_limit(self, video_file_size_limit: int) -> SystemParametersBuilder:
|
37
|
+
self._system_parameters.video_file_size_limit = video_file_size_limit
|
38
|
+
return self
|
@@ -0,0 +1,43 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from pydantic import BaseModel
|
4
|
+
|
5
|
+
|
6
|
+
class UserInputForm(BaseModel):
|
7
|
+
label: str | None = None
|
8
|
+
variable: str | None = None
|
9
|
+
required: bool | None = None
|
10
|
+
default: str | None = None
|
11
|
+
options: list[str] | None = None
|
12
|
+
|
13
|
+
@staticmethod
|
14
|
+
def builder() -> UserInputFormBuilder:
|
15
|
+
return UserInputFormBuilder()
|
16
|
+
|
17
|
+
|
18
|
+
class UserInputFormBuilder:
|
19
|
+
def __init__(self):
|
20
|
+
self._user_input_form = UserInputForm()
|
21
|
+
|
22
|
+
def build(self) -> UserInputForm:
|
23
|
+
return self._user_input_form
|
24
|
+
|
25
|
+
def label(self, label: str) -> UserInputFormBuilder:
|
26
|
+
self._user_input_form.label = label
|
27
|
+
return self
|
28
|
+
|
29
|
+
def variable(self, variable: str) -> UserInputFormBuilder:
|
30
|
+
self._user_input_form.variable = variable
|
31
|
+
return self
|
32
|
+
|
33
|
+
def required(self, required: bool) -> UserInputFormBuilder:
|
34
|
+
self._user_input_form.required = required
|
35
|
+
return self
|
36
|
+
|
37
|
+
def default(self, default: str) -> UserInputFormBuilder:
|
38
|
+
self._user_input_form.default = default
|
39
|
+
return self
|
40
|
+
|
41
|
+
def options(self, options: list[str]) -> UserInputFormBuilder:
|
42
|
+
self._user_input_form.options = options
|
43
|
+
return self
|
File without changes
|
@@ -0,0 +1,38 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from pydantic import BaseModel
|
4
|
+
|
5
|
+
|
6
|
+
class EndUserInfo(BaseModel):
|
7
|
+
id: str | None = None
|
8
|
+
type: str | None = None
|
9
|
+
is_anonymous: bool | None = None
|
10
|
+
session_id: str | None = None
|
11
|
+
|
12
|
+
@staticmethod
|
13
|
+
def builder() -> EndUserInfoBuilder:
|
14
|
+
return EndUserInfoBuilder()
|
15
|
+
|
16
|
+
|
17
|
+
class EndUserInfoBuilder:
|
18
|
+
def __init__(self):
|
19
|
+
self._end_user_info = EndUserInfo()
|
20
|
+
|
21
|
+
def build(self) -> EndUserInfo:
|
22
|
+
return self._end_user_info
|
23
|
+
|
24
|
+
def id(self, id: str) -> EndUserInfoBuilder:
|
25
|
+
self._end_user_info.id = id
|
26
|
+
return self
|
27
|
+
|
28
|
+
def type(self, type: str) -> EndUserInfoBuilder:
|
29
|
+
self._end_user_info.type = type
|
30
|
+
return self
|
31
|
+
|
32
|
+
def is_anonymous(self, is_anonymous: bool) -> EndUserInfoBuilder:
|
33
|
+
self._end_user_info.is_anonymous = is_anonymous
|
34
|
+
return self
|
35
|
+
|
36
|
+
def session_id(self, session_id: str) -> EndUserInfoBuilder:
|
37
|
+
self._end_user_info.session_id = session_id
|
38
|
+
return self
|
@@ -0,0 +1,48 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from dify_oapi.core.enum import HttpMethod
|
4
|
+
from dify_oapi.core.model.base_request import BaseRequest
|
5
|
+
|
6
|
+
|
7
|
+
class GetWorkflowLogsRequest(BaseRequest):
|
8
|
+
def __init__(self):
|
9
|
+
super().__init__()
|
10
|
+
|
11
|
+
@staticmethod
|
12
|
+
def builder() -> GetWorkflowLogsRequestBuilder:
|
13
|
+
return GetWorkflowLogsRequestBuilder()
|
14
|
+
|
15
|
+
|
16
|
+
class GetWorkflowLogsRequestBuilder:
|
17
|
+
def __init__(self):
|
18
|
+
get_workflow_logs_request = GetWorkflowLogsRequest()
|
19
|
+
get_workflow_logs_request.http_method = HttpMethod.GET
|
20
|
+
get_workflow_logs_request.uri = "/v1/workflows/logs"
|
21
|
+
self._get_workflow_logs_request = get_workflow_logs_request
|
22
|
+
|
23
|
+
def build(self) -> GetWorkflowLogsRequest:
|
24
|
+
return self._get_workflow_logs_request
|
25
|
+
|
26
|
+
def keyword(self, keyword: str) -> GetWorkflowLogsRequestBuilder:
|
27
|
+
self._get_workflow_logs_request.add_query("keyword", keyword)
|
28
|
+
return self
|
29
|
+
|
30
|
+
def status(self, status: str) -> GetWorkflowLogsRequestBuilder:
|
31
|
+
self._get_workflow_logs_request.add_query("status", status)
|
32
|
+
return self
|
33
|
+
|
34
|
+
def page(self, page: int) -> GetWorkflowLogsRequestBuilder:
|
35
|
+
self._get_workflow_logs_request.add_query("page", str(page))
|
36
|
+
return self
|
37
|
+
|
38
|
+
def limit(self, limit: int) -> GetWorkflowLogsRequestBuilder:
|
39
|
+
self._get_workflow_logs_request.add_query("limit", str(limit))
|
40
|
+
return self
|
41
|
+
|
42
|
+
def created_by_end_user_session_id(self, session_id: str) -> GetWorkflowLogsRequestBuilder:
|
43
|
+
self._get_workflow_logs_request.add_query("created_by_end_user_session_id", session_id)
|
44
|
+
return self
|
45
|
+
|
46
|
+
def created_by_account(self, account: str) -> GetWorkflowLogsRequestBuilder:
|
47
|
+
self._get_workflow_logs_request.add_query("created_by_account", account)
|
48
|
+
return self
|
@@ -0,0 +1,13 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from dify_oapi.core.model.base_response import BaseResponse
|
4
|
+
|
5
|
+
from .log_info import LogInfo
|
6
|
+
|
7
|
+
|
8
|
+
class GetWorkflowLogsResponse(BaseResponse):
|
9
|
+
page: int | None = None
|
10
|
+
limit: int | None = None
|
11
|
+
total: int | None = None
|
12
|
+
has_more: bool | None = None
|
13
|
+
data: list[LogInfo] | None = None
|
@@ -0,0 +1,57 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from pydantic import BaseModel
|
4
|
+
|
5
|
+
from ..workflow.workflow_types import CreatedByRole, CreatedFrom
|
6
|
+
from .end_user_info import EndUserInfo
|
7
|
+
from .workflow_run_log_info import WorkflowRunLogInfo
|
8
|
+
|
9
|
+
|
10
|
+
class LogInfo(BaseModel):
|
11
|
+
id: str | None = None
|
12
|
+
workflow_run: WorkflowRunLogInfo | None = None
|
13
|
+
created_from: CreatedFrom | None = None
|
14
|
+
created_by_role: CreatedByRole | None = None
|
15
|
+
created_by_account: str | None = None
|
16
|
+
created_by_end_user: EndUserInfo | None = None
|
17
|
+
created_at: int | None = None
|
18
|
+
|
19
|
+
@staticmethod
|
20
|
+
def builder() -> LogInfoBuilder:
|
21
|
+
return LogInfoBuilder()
|
22
|
+
|
23
|
+
|
24
|
+
class LogInfoBuilder:
|
25
|
+
def __init__(self):
|
26
|
+
self._log_info = LogInfo()
|
27
|
+
|
28
|
+
def build(self) -> LogInfo:
|
29
|
+
return self._log_info
|
30
|
+
|
31
|
+
def id(self, id: str) -> LogInfoBuilder:
|
32
|
+
self._log_info.id = id
|
33
|
+
return self
|
34
|
+
|
35
|
+
def workflow_run(self, workflow_run: WorkflowRunLogInfo) -> LogInfoBuilder:
|
36
|
+
self._log_info.workflow_run = workflow_run
|
37
|
+
return self
|
38
|
+
|
39
|
+
def created_from(self, created_from: CreatedFrom) -> LogInfoBuilder:
|
40
|
+
self._log_info.created_from = created_from
|
41
|
+
return self
|
42
|
+
|
43
|
+
def created_by_role(self, created_by_role: CreatedByRole) -> LogInfoBuilder:
|
44
|
+
self._log_info.created_by_role = created_by_role
|
45
|
+
return self
|
46
|
+
|
47
|
+
def created_by_account(self, created_by_account: str) -> LogInfoBuilder:
|
48
|
+
self._log_info.created_by_account = created_by_account
|
49
|
+
return self
|
50
|
+
|
51
|
+
def created_by_end_user(self, created_by_end_user: EndUserInfo) -> LogInfoBuilder:
|
52
|
+
self._log_info.created_by_end_user = created_by_end_user
|
53
|
+
return self
|
54
|
+
|
55
|
+
def created_at(self, created_at: int) -> LogInfoBuilder:
|
56
|
+
self._log_info.created_at = created_at
|
57
|
+
return self
|
@@ -0,0 +1,65 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from pydantic import BaseModel
|
4
|
+
|
5
|
+
from ..workflow.workflow_types import LogStatus
|
6
|
+
|
7
|
+
|
8
|
+
class WorkflowRunLogInfo(BaseModel):
|
9
|
+
id: str | None = None
|
10
|
+
version: str | None = None
|
11
|
+
status: LogStatus | None = None
|
12
|
+
error: str | None = None
|
13
|
+
elapsed_time: float | None = None
|
14
|
+
total_tokens: int | None = None
|
15
|
+
total_steps: int | None = None
|
16
|
+
created_at: int | None = None
|
17
|
+
finished_at: int | None = None
|
18
|
+
|
19
|
+
@staticmethod
|
20
|
+
def builder() -> WorkflowRunLogInfoBuilder:
|
21
|
+
return WorkflowRunLogInfoBuilder()
|
22
|
+
|
23
|
+
|
24
|
+
class WorkflowRunLogInfoBuilder:
|
25
|
+
def __init__(self):
|
26
|
+
self._workflow_run_log_info = WorkflowRunLogInfo()
|
27
|
+
|
28
|
+
def build(self) -> WorkflowRunLogInfo:
|
29
|
+
return self._workflow_run_log_info
|
30
|
+
|
31
|
+
def id(self, id: str) -> WorkflowRunLogInfoBuilder:
|
32
|
+
self._workflow_run_log_info.id = id
|
33
|
+
return self
|
34
|
+
|
35
|
+
def version(self, version: str) -> WorkflowRunLogInfoBuilder:
|
36
|
+
self._workflow_run_log_info.version = version
|
37
|
+
return self
|
38
|
+
|
39
|
+
def status(self, status: LogStatus) -> WorkflowRunLogInfoBuilder:
|
40
|
+
self._workflow_run_log_info.status = status
|
41
|
+
return self
|
42
|
+
|
43
|
+
def error(self, error: str) -> WorkflowRunLogInfoBuilder:
|
44
|
+
self._workflow_run_log_info.error = error
|
45
|
+
return self
|
46
|
+
|
47
|
+
def elapsed_time(self, elapsed_time: float) -> WorkflowRunLogInfoBuilder:
|
48
|
+
self._workflow_run_log_info.elapsed_time = elapsed_time
|
49
|
+
return self
|
50
|
+
|
51
|
+
def total_tokens(self, total_tokens: int) -> WorkflowRunLogInfoBuilder:
|
52
|
+
self._workflow_run_log_info.total_tokens = total_tokens
|
53
|
+
return self
|
54
|
+
|
55
|
+
def total_steps(self, total_steps: int) -> WorkflowRunLogInfoBuilder:
|
56
|
+
self._workflow_run_log_info.total_steps = total_steps
|
57
|
+
return self
|
58
|
+
|
59
|
+
def created_at(self, created_at: int) -> WorkflowRunLogInfoBuilder:
|
60
|
+
self._workflow_run_log_info.created_at = created_at
|
61
|
+
return self
|
62
|
+
|
63
|
+
def finished_at(self, finished_at: int) -> WorkflowRunLogInfoBuilder:
|
64
|
+
self._workflow_run_log_info.finished_at = finished_at
|
65
|
+
return self
|
@@ -0,0 +1,33 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from pydantic import BaseModel
|
4
|
+
|
5
|
+
|
6
|
+
class ExecutionMetadata(BaseModel):
|
7
|
+
total_tokens: int | None = None
|
8
|
+
total_price: float | None = None
|
9
|
+
currency: str | None = None
|
10
|
+
|
11
|
+
@staticmethod
|
12
|
+
def builder() -> ExecutionMetadataBuilder:
|
13
|
+
return ExecutionMetadataBuilder()
|
14
|
+
|
15
|
+
|
16
|
+
class ExecutionMetadataBuilder:
|
17
|
+
def __init__(self):
|
18
|
+
self._execution_metadata = ExecutionMetadata()
|
19
|
+
|
20
|
+
def build(self) -> ExecutionMetadata:
|
21
|
+
return self._execution_metadata
|
22
|
+
|
23
|
+
def total_tokens(self, total_tokens: int) -> ExecutionMetadataBuilder:
|
24
|
+
self._execution_metadata.total_tokens = total_tokens
|
25
|
+
return self
|
26
|
+
|
27
|
+
def total_price(self, total_price: float) -> ExecutionMetadataBuilder:
|
28
|
+
self._execution_metadata.total_price = total_price
|
29
|
+
return self
|
30
|
+
|
31
|
+
def currency(self, currency: str) -> ExecutionMetadataBuilder:
|
32
|
+
self._execution_metadata.currency = currency
|
33
|
+
return self
|
@@ -0,0 +1,30 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from dify_oapi.core.enum import HttpMethod
|
4
|
+
from dify_oapi.core.model.base_request import BaseRequest
|
5
|
+
|
6
|
+
|
7
|
+
class GetWorkflowRunDetailRequest(BaseRequest):
|
8
|
+
def __init__(self) -> None:
|
9
|
+
super().__init__()
|
10
|
+
self.workflow_run_id: str | None = None
|
11
|
+
|
12
|
+
@staticmethod
|
13
|
+
def builder() -> GetWorkflowRunDetailRequestBuilder:
|
14
|
+
return GetWorkflowRunDetailRequestBuilder()
|
15
|
+
|
16
|
+
|
17
|
+
class GetWorkflowRunDetailRequestBuilder:
|
18
|
+
def __init__(self):
|
19
|
+
get_workflow_run_detail_request = GetWorkflowRunDetailRequest()
|
20
|
+
get_workflow_run_detail_request.http_method = HttpMethod.GET
|
21
|
+
get_workflow_run_detail_request.uri = "/v1/workflows/run/:workflow_run_id"
|
22
|
+
self._get_workflow_run_detail_request = get_workflow_run_detail_request
|
23
|
+
|
24
|
+
def build(self) -> GetWorkflowRunDetailRequest:
|
25
|
+
return self._get_workflow_run_detail_request
|
26
|
+
|
27
|
+
def workflow_run_id(self, workflow_run_id: str) -> GetWorkflowRunDetailRequestBuilder:
|
28
|
+
self._get_workflow_run_detail_request.workflow_run_id = workflow_run_id
|
29
|
+
self._get_workflow_run_detail_request.paths["workflow_run_id"] = workflow_run_id
|
30
|
+
return self
|
@@ -1,24 +1,21 @@
|
|
1
1
|
from __future__ import annotations
|
2
2
|
|
3
|
-
from
|
3
|
+
from typing import Any
|
4
4
|
|
5
5
|
from dify_oapi.core.model.base_response import BaseResponse
|
6
6
|
|
7
|
+
from .workflow_types import WorkflowStatus
|
7
8
|
|
8
|
-
class RunWorkflowResponse(BaseResponse):
|
9
|
-
workflow_run_id: str | None = None
|
10
|
-
task_id: str | None = None
|
11
|
-
data: RunWorkflowResponseData | None = None
|
12
9
|
|
13
|
-
|
14
|
-
class RunWorkflowResponseData(BaseModel):
|
10
|
+
class GetWorkflowRunDetailResponse(BaseResponse):
|
15
11
|
id: str | None = None
|
16
12
|
workflow_id: str | None = None
|
17
|
-
status:
|
18
|
-
|
13
|
+
status: WorkflowStatus | None = None
|
14
|
+
inputs: dict[str, Any] | None = None
|
15
|
+
outputs: dict[str, Any] | None = None
|
19
16
|
error: str | None = None
|
20
|
-
elapsed_time: float | None = None
|
21
|
-
total_tokens: int | None = None
|
22
17
|
total_steps: int | None = None
|
18
|
+
total_tokens: int | None = None
|
23
19
|
created_at: int | None = None
|
24
20
|
finished_at: int | None = None
|
21
|
+
elapsed_time: float | None = None
|
@@ -0,0 +1,88 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from typing import Any
|
4
|
+
|
5
|
+
from pydantic import BaseModel
|
6
|
+
|
7
|
+
from .execution_metadata import ExecutionMetadata
|
8
|
+
from .workflow_types import NodeType, WorkflowStatus
|
9
|
+
|
10
|
+
|
11
|
+
class NodeInfo(BaseModel):
|
12
|
+
id: str | None = None
|
13
|
+
node_id: str | None = None
|
14
|
+
node_type: NodeType | None = None
|
15
|
+
title: str | None = None
|
16
|
+
index: int | None = None
|
17
|
+
predecessor_node_id: str | None = None
|
18
|
+
inputs: dict[str, Any] | None = None
|
19
|
+
outputs: dict[str, Any] | None = None
|
20
|
+
status: WorkflowStatus | None = None
|
21
|
+
error: str | None = None
|
22
|
+
elapsed_time: float | None = None
|
23
|
+
execution_metadata: ExecutionMetadata | None = None
|
24
|
+
created_at: int | None = None
|
25
|
+
|
26
|
+
@staticmethod
|
27
|
+
def builder() -> NodeInfoBuilder:
|
28
|
+
return NodeInfoBuilder()
|
29
|
+
|
30
|
+
|
31
|
+
class NodeInfoBuilder:
|
32
|
+
def __init__(self):
|
33
|
+
self._node_info = NodeInfo()
|
34
|
+
|
35
|
+
def build(self) -> NodeInfo:
|
36
|
+
return self._node_info
|
37
|
+
|
38
|
+
def id(self, id: str) -> NodeInfoBuilder:
|
39
|
+
self._node_info.id = id
|
40
|
+
return self
|
41
|
+
|
42
|
+
def node_id(self, node_id: str) -> NodeInfoBuilder:
|
43
|
+
self._node_info.node_id = node_id
|
44
|
+
return self
|
45
|
+
|
46
|
+
def node_type(self, node_type: NodeType) -> NodeInfoBuilder:
|
47
|
+
self._node_info.node_type = node_type
|
48
|
+
return self
|
49
|
+
|
50
|
+
def title(self, title: str) -> NodeInfoBuilder:
|
51
|
+
self._node_info.title = title
|
52
|
+
return self
|
53
|
+
|
54
|
+
def index(self, index: int) -> NodeInfoBuilder:
|
55
|
+
self._node_info.index = index
|
56
|
+
return self
|
57
|
+
|
58
|
+
def predecessor_node_id(self, predecessor_node_id: str) -> NodeInfoBuilder:
|
59
|
+
self._node_info.predecessor_node_id = predecessor_node_id
|
60
|
+
return self
|
61
|
+
|
62
|
+
def inputs(self, inputs: dict[str, Any]) -> NodeInfoBuilder:
|
63
|
+
self._node_info.inputs = inputs
|
64
|
+
return self
|
65
|
+
|
66
|
+
def outputs(self, outputs: dict[str, Any]) -> NodeInfoBuilder:
|
67
|
+
self._node_info.outputs = outputs
|
68
|
+
return self
|
69
|
+
|
70
|
+
def status(self, status: WorkflowStatus) -> NodeInfoBuilder:
|
71
|
+
self._node_info.status = status
|
72
|
+
return self
|
73
|
+
|
74
|
+
def error(self, error: str) -> NodeInfoBuilder:
|
75
|
+
self._node_info.error = error
|
76
|
+
return self
|
77
|
+
|
78
|
+
def elapsed_time(self, elapsed_time: float) -> NodeInfoBuilder:
|
79
|
+
self._node_info.elapsed_time = elapsed_time
|
80
|
+
return self
|
81
|
+
|
82
|
+
def execution_metadata(self, execution_metadata: ExecutionMetadata) -> NodeInfoBuilder:
|
83
|
+
self._node_info.execution_metadata = execution_metadata
|
84
|
+
return self
|
85
|
+
|
86
|
+
def created_at(self, created_at: int) -> NodeInfoBuilder:
|
87
|
+
self._node_info.created_at = created_at
|
88
|
+
return self
|