dify-oapi2 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.
- dify_oapi/api/chat/v1/model/__init__.py +37 -0
- dify_oapi/api/chat/v1/model/agent_thought.py +69 -0
- dify_oapi/api/chat/v1/model/annotation_info.py +43 -0
- dify_oapi/api/chat/v1/model/app_info.py +35 -0
- dify_oapi/api/chat/v1/model/app_parameters.py +494 -0
- dify_oapi/api/chat/v1/model/audio_to_text_request_body.py +2 -2
- dify_oapi/api/chat/v1/model/chat_file.py +53 -0
- dify_oapi/api/chat/v1/model/chat_request_body.py +26 -13
- dify_oapi/api/chat/v1/model/chat_response.py +12 -2
- dify_oapi/api/chat/v1/model/chat_types.py +65 -0
- dify_oapi/api/chat/v1/model/configure_annotation_reply_request.py +36 -0
- dify_oapi/api/chat/v1/model/configure_annotation_reply_request_body.py +39 -0
- dify_oapi/api/chat/v1/model/configure_annotation_reply_response.py +10 -0
- dify_oapi/api/chat/v1/model/conversation_info.py +57 -0
- dify_oapi/api/chat/v1/model/conversation_variable.py +55 -0
- dify_oapi/api/chat/v1/model/create_annotation_request.py +29 -0
- dify_oapi/api/chat/v1/model/create_annotation_request_body.py +32 -0
- dify_oapi/api/chat/v1/model/create_annotation_response.py +9 -0
- dify_oapi/api/chat/v1/model/delete_annotation_request.py +26 -0
- dify_oapi/api/chat/v1/model/delete_annotation_response.py +7 -0
- dify_oapi/api/chat/v1/model/feedback_info.py +75 -0
- dify_oapi/api/chat/v1/model/file_info.py +59 -0
- dify_oapi/api/chat/v1/model/get_annotation_reply_status_request.py +32 -0
- dify_oapi/api/chat/v1/model/get_annotation_reply_status_response.py +11 -0
- dify_oapi/api/chat/v1/model/get_app_info_request.py +24 -0
- dify_oapi/api/chat/v1/model/get_app_info_response.py +9 -0
- dify_oapi/api/chat/v1/model/get_app_meta_request.py +24 -0
- dify_oapi/api/chat/v1/model/get_app_meta_response.py +9 -0
- dify_oapi/api/chat/v1/model/get_app_parameters_request.py +28 -0
- dify_oapi/api/chat/v1/model/get_app_parameters_response.py +9 -0
- dify_oapi/api/chat/v1/model/get_conversation_list_request.py +25 -24
- dify_oapi/api/chat/v1/model/get_conversation_list_response.py +4 -15
- dify_oapi/api/chat/v1/model/get_conversation_variables_request.py +54 -0
- dify_oapi/api/chat/v1/model/get_conversation_variables_response.py +10 -0
- dify_oapi/api/chat/v1/model/get_feedbacks_request.py +32 -0
- dify_oapi/api/chat/v1/model/get_feedbacks_response.py +7 -0
- dify_oapi/api/chat/v1/model/get_site_settings_request.py +24 -0
- dify_oapi/api/chat/v1/model/get_site_settings_response.py +9 -0
- dify_oapi/api/chat/v1/model/get_suggested_questions_request.py +36 -0
- dify_oapi/api/chat/v1/model/{message_suggested_response.py → get_suggested_questions_response.py} +1 -1
- dify_oapi/api/chat/v1/model/list_annotations_request.py +32 -0
- dify_oapi/api/chat/v1/model/list_annotations_response.py +11 -0
- dify_oapi/api/chat/v1/model/message_file.py +46 -0
- dify_oapi/api/chat/v1/model/message_history_request.py +24 -24
- dify_oapi/api/chat/v1/model/message_history_response.py +4 -43
- dify_oapi/api/chat/v1/model/message_info.py +73 -0
- dify_oapi/api/chat/v1/model/pagination_info.py +44 -0
- dify_oapi/api/chat/v1/model/rename_conversation_request_body.py +1 -1
- dify_oapi/api/chat/v1/model/retriever_resource.py +64 -0
- dify_oapi/api/chat/v1/model/site_settings.py +92 -0
- dify_oapi/api/chat/v1/model/submit_feedback_request.py +34 -0
- dify_oapi/api/chat/v1/model/submit_feedback_request_body.py +33 -0
- dify_oapi/api/chat/v1/model/submit_feedback_response.py +5 -0
- dify_oapi/api/chat/v1/model/text_to_audio_request.py +32 -0
- dify_oapi/api/chat/v1/model/text_to_audio_request_body.py +33 -0
- dify_oapi/api/chat/v1/model/text_to_audio_response.py +7 -0
- dify_oapi/api/chat/v1/model/tool_icon.py +52 -0
- dify_oapi/api/chat/v1/model/update_annotation_request.py +33 -0
- dify_oapi/api/chat/v1/model/update_annotation_request_body.py +32 -0
- dify_oapi/api/chat/v1/model/update_annotation_response.py +9 -0
- dify_oapi/api/chat/v1/model/upload_file_request.py +54 -0
- dify_oapi/api/chat/v1/model/upload_file_request_body.py +29 -0
- dify_oapi/api/chat/v1/model/upload_file_response.py +10 -0
- dify_oapi/api/chat/v1/model/usage_info.py +84 -0
- dify_oapi/api/chat/v1/resource/__init__.py +7 -3
- dify_oapi/api/chat/v1/resource/annotation.py +77 -0
- dify_oapi/api/chat/v1/resource/app.py +47 -0
- dify_oapi/api/chat/v1/resource/audio.py +13 -0
- dify_oapi/api/chat/v1/resource/chat.py +14 -0
- dify_oapi/api/chat/v1/resource/conversation.py +55 -9
- dify_oapi/api/chat/v1/resource/feedback.py +31 -0
- dify_oapi/api/chat/v1/resource/file.py +25 -0
- dify_oapi/api/chat/v1/resource/message.py +19 -15
- dify_oapi/api/chat/v1/version.py +8 -2
- dify_oapi/api/chatflow/__init__.py +0 -0
- dify_oapi/api/chatflow/service.py +25 -0
- dify_oapi/api/chatflow/v1/__init__.py +0 -0
- dify_oapi/api/chatflow/v1/model/__init__.py +0 -0
- dify_oapi/api/chatflow/v1/model/annotation_info.py +43 -0
- dify_oapi/api/chatflow/v1/model/annotation_reply_settings_request.py +37 -0
- dify_oapi/api/chatflow/v1/model/annotation_reply_settings_request_body.py +33 -0
- dify_oapi/api/chatflow/v1/model/annotation_reply_settings_response.py +10 -0
- dify_oapi/api/chatflow/v1/model/annotation_reply_status_request.py +36 -0
- dify_oapi/api/chatflow/v1/model/annotation_reply_status_response.py +11 -0
- dify_oapi/api/chatflow/v1/model/app_info.py +33 -0
- dify_oapi/api/chatflow/v1/model/app_parameters.py +276 -0
- dify_oapi/api/chatflow/v1/model/audio_to_text_request.py +37 -0
- dify_oapi/api/chatflow/v1/model/audio_to_text_response.py +21 -0
- dify_oapi/api/chatflow/v1/model/chat_file.py +40 -0
- dify_oapi/api/chatflow/v1/model/chat_message.py +88 -0
- dify_oapi/api/chatflow/v1/model/chatflow_types.py +210 -0
- dify_oapi/api/chatflow/v1/model/conversation_info.py +53 -0
- dify_oapi/api/chatflow/v1/model/conversation_variable.py +55 -0
- dify_oapi/api/chatflow/v1/model/create_annotation_request.py +30 -0
- dify_oapi/api/chatflow/v1/model/create_annotation_request_body.py +28 -0
- dify_oapi/api/chatflow/v1/model/create_annotation_response.py +9 -0
- dify_oapi/api/chatflow/v1/model/delete_annotation_request.py +28 -0
- dify_oapi/api/chatflow/v1/model/delete_annotation_response.py +7 -0
- dify_oapi/api/chatflow/v1/model/delete_conversation_request.py +36 -0
- dify_oapi/api/chatflow/v1/model/delete_conversation_request_body.py +21 -0
- dify_oapi/api/chatflow/v1/model/delete_conversation_response.py +17 -0
- dify_oapi/api/chatflow/v1/model/feedback_info.py +75 -0
- dify_oapi/api/chatflow/v1/model/file_info.py +53 -0
- dify_oapi/api/chatflow/v1/model/get_annotations_request.py +30 -0
- dify_oapi/api/chatflow/v1/model/get_annotations_response.py +13 -0
- dify_oapi/api/chatflow/v1/model/get_app_feedbacks_request.py +30 -0
- dify_oapi/api/chatflow/v1/model/get_app_feedbacks_response.py +23 -0
- dify_oapi/api/chatflow/v1/model/get_conversation_messages_request.py +38 -0
- dify_oapi/api/chatflow/v1/model/get_conversation_messages_response.py +33 -0
- dify_oapi/api/chatflow/v1/model/get_conversation_variables_request.py +44 -0
- dify_oapi/api/chatflow/v1/model/get_conversation_variables_response.py +33 -0
- dify_oapi/api/chatflow/v1/model/get_conversations_request.py +40 -0
- dify_oapi/api/chatflow/v1/model/get_conversations_response.py +33 -0
- dify_oapi/api/chatflow/v1/model/get_info_request.py +22 -0
- dify_oapi/api/chatflow/v1/model/get_info_response.py +7 -0
- dify_oapi/api/chatflow/v1/model/get_meta_request.py +22 -0
- dify_oapi/api/chatflow/v1/model/get_meta_response.py +7 -0
- dify_oapi/api/chatflow/v1/model/get_parameters_request.py +22 -0
- dify_oapi/api/chatflow/v1/model/get_parameters_response.py +7 -0
- dify_oapi/api/chatflow/v1/model/get_site_request.py +22 -0
- dify_oapi/api/chatflow/v1/model/get_site_response.py +7 -0
- dify_oapi/api/chatflow/v1/model/get_suggested_questions_request.py +32 -0
- dify_oapi/api/chatflow/v1/model/get_suggested_questions_response.py +6 -0
- dify_oapi/api/chatflow/v1/model/message_feedback_request.py +36 -0
- dify_oapi/api/chatflow/v1/model/message_feedback_request_body.py +33 -0
- dify_oapi/api/chatflow/v1/model/message_feedback_response.py +21 -0
- dify_oapi/api/chatflow/v1/model/rename_conversation_request.py +36 -0
- dify_oapi/api/chatflow/v1/model/rename_conversation_request_body.py +31 -0
- dify_oapi/api/chatflow/v1/model/rename_conversation_response.py +53 -0
- dify_oapi/api/chatflow/v1/model/retriever_resource.py +58 -0
- dify_oapi/api/chatflow/v1/model/send_chat_message_request.py +30 -0
- dify_oapi/api/chatflow/v1/model/send_chat_message_request_body.py +54 -0
- dify_oapi/api/chatflow/v1/model/send_chat_message_response.py +7 -0
- dify_oapi/api/chatflow/v1/model/stop_chat_message_request.py +36 -0
- dify_oapi/api/chatflow/v1/model/stop_chat_message_request_body.py +21 -0
- dify_oapi/api/chatflow/v1/model/stop_chat_message_response.py +5 -0
- dify_oapi/api/chatflow/v1/model/text_to_audio_request.py +30 -0
- dify_oapi/api/chatflow/v1/model/text_to_audio_request_body.py +36 -0
- dify_oapi/api/chatflow/v1/model/text_to_audio_response.py +19 -0
- dify_oapi/api/chatflow/v1/model/tool_icon.py +48 -0
- dify_oapi/api/chatflow/v1/model/update_annotation_request.py +36 -0
- dify_oapi/api/chatflow/v1/model/update_annotation_request_body.py +28 -0
- dify_oapi/api/chatflow/v1/model/update_annotation_response.py +9 -0
- dify_oapi/api/chatflow/v1/model/upload_file_request.py +41 -0
- dify_oapi/api/chatflow/v1/model/upload_file_response.py +11 -0
- dify_oapi/api/chatflow/v1/model/usage_info.py +78 -0
- dify_oapi/api/chatflow/v1/model/user_input_form.py +141 -0
- dify_oapi/api/chatflow/v1/model/webapp_settings.py +88 -0
- dify_oapi/api/chatflow/v1/resource/__init__.py +0 -0
- dify_oapi/api/chatflow/v1/resource/annotation.py +122 -0
- dify_oapi/api/chatflow/v1/resource/application.py +76 -0
- dify_oapi/api/chatflow/v1/resource/chatflow.py +91 -0
- dify_oapi/api/chatflow/v1/resource/conversation.py +104 -0
- dify_oapi/api/chatflow/v1/resource/feedback.py +69 -0
- dify_oapi/api/chatflow/v1/resource/file.py +39 -0
- dify_oapi/api/chatflow/v1/resource/tts.py +29 -0
- dify_oapi/api/chatflow/v1/version.py +29 -0
- dify_oapi/api/knowledge/v1/model/data_source_detail.py +23 -0
- dify_oapi/api/knowledge/v1/model/dataset_info.py +10 -9
- dify_oapi/api/knowledge/v1/model/dataset_metadata.py +14 -0
- dify_oapi/api/knowledge/v1/model/document_info.py +18 -6
- dify_oapi/api/knowledge/v1/model/external_knowledge_info.py +11 -1
- dify_oapi/api/knowledge/v1/model/external_retrieval_model.py +13 -0
- dify_oapi/api/knowledge/v1/model/knowledge_types.py +2 -2
- dify_oapi/api/knowledge/v1/model/retrieval_model.py +10 -4
- dify_oapi/api/knowledge/v1/model/weights.py +27 -0
- dify_oapi/api/workflow/v1/model/chunk_workflow_event.py +74 -0
- dify_oapi/api/workflow/v1/model/input_file_object_workflow.py +76 -0
- dify_oapi/api/workflow/v1/model/node_finished_data.py +118 -0
- dify_oapi/api/workflow/v1/model/node_started_data.py +81 -0
- dify_oapi/api/workflow/v1/model/ping_data.py +28 -0
- dify_oapi/api/workflow/v1/model/run_workflow_request_body.py +1 -1
- dify_oapi/api/workflow/v1/model/text_chunk_data.py +39 -0
- dify_oapi/api/workflow/v1/model/tts_message_data.py +45 -0
- dify_oapi/api/workflow/v1/model/tts_message_end_data.py +45 -0
- dify_oapi/api/workflow/v1/model/workflow_completion_response.py +50 -0
- dify_oapi/api/workflow/v1/model/workflow_finished_data.py +93 -0
- dify_oapi/api/workflow/v1/model/workflow_started_data.py +51 -0
- dify_oapi/api/workflow/v1/model/workflow_types.py +27 -12
- dify_oapi/client.py +45 -0
- dify_oapi/core/http/transport/__init__.py +2 -1
- dify_oapi/core/http/transport/async_transport.py +73 -50
- dify_oapi/core/http/transport/connection_pool.py +131 -0
- dify_oapi/core/http/transport/sync_transport.py +73 -50
- dify_oapi/core/model/config.py +10 -0
- {dify_oapi2-0.4.0.dist-info → dify_oapi2-0.5.0.dist-info}/METADATA +44 -12
- {dify_oapi2-0.4.0.dist-info → dify_oapi2-0.5.0.dist-info}/RECORD +189 -34
- dify_oapi/api/chat/v1/model/chat_request_file.py +0 -46
- dify_oapi/api/chat/v1/model/message_suggested_request.py +0 -36
- {dify_oapi2-0.4.0.dist-info → dify_oapi2-0.5.0.dist-info}/LICENSE +0 -0
- {dify_oapi2-0.4.0.dist-info → dify_oapi2-0.5.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,58 @@
|
|
1
|
+
from pydantic import BaseModel
|
2
|
+
|
3
|
+
|
4
|
+
class RetrieverResource(BaseModel):
|
5
|
+
"""Knowledge retrieval resource model."""
|
6
|
+
|
7
|
+
position: int | None = None
|
8
|
+
dataset_id: str | None = None
|
9
|
+
dataset_name: str | None = None
|
10
|
+
document_id: str | None = None
|
11
|
+
document_name: str | None = None
|
12
|
+
segment_id: str | None = None
|
13
|
+
score: float | None = None
|
14
|
+
content: str | None = None
|
15
|
+
|
16
|
+
@staticmethod
|
17
|
+
def builder() -> "RetrieverResourceBuilder":
|
18
|
+
return RetrieverResourceBuilder()
|
19
|
+
|
20
|
+
|
21
|
+
class RetrieverResourceBuilder:
|
22
|
+
def __init__(self):
|
23
|
+
self._retriever_resource = RetrieverResource()
|
24
|
+
|
25
|
+
def build(self) -> RetrieverResource:
|
26
|
+
return self._retriever_resource
|
27
|
+
|
28
|
+
def position(self, position: int) -> "RetrieverResourceBuilder":
|
29
|
+
self._retriever_resource.position = position
|
30
|
+
return self
|
31
|
+
|
32
|
+
def dataset_id(self, dataset_id: str) -> "RetrieverResourceBuilder":
|
33
|
+
self._retriever_resource.dataset_id = dataset_id
|
34
|
+
return self
|
35
|
+
|
36
|
+
def dataset_name(self, dataset_name: str) -> "RetrieverResourceBuilder":
|
37
|
+
self._retriever_resource.dataset_name = dataset_name
|
38
|
+
return self
|
39
|
+
|
40
|
+
def document_id(self, document_id: str) -> "RetrieverResourceBuilder":
|
41
|
+
self._retriever_resource.document_id = document_id
|
42
|
+
return self
|
43
|
+
|
44
|
+
def document_name(self, document_name: str) -> "RetrieverResourceBuilder":
|
45
|
+
self._retriever_resource.document_name = document_name
|
46
|
+
return self
|
47
|
+
|
48
|
+
def segment_id(self, segment_id: str) -> "RetrieverResourceBuilder":
|
49
|
+
self._retriever_resource.segment_id = segment_id
|
50
|
+
return self
|
51
|
+
|
52
|
+
def score(self, score: float) -> "RetrieverResourceBuilder":
|
53
|
+
self._retriever_resource.score = score
|
54
|
+
return self
|
55
|
+
|
56
|
+
def content(self, content: str) -> "RetrieverResourceBuilder":
|
57
|
+
self._retriever_resource.content = content
|
58
|
+
return self
|
@@ -0,0 +1,30 @@
|
|
1
|
+
from dify_oapi.core.enum import HttpMethod
|
2
|
+
from dify_oapi.core.model.base_request import BaseRequest
|
3
|
+
|
4
|
+
from .send_chat_message_request_body import SendChatMessageRequestBody
|
5
|
+
|
6
|
+
|
7
|
+
class SendChatMessageRequest(BaseRequest):
|
8
|
+
def __init__(self):
|
9
|
+
super().__init__()
|
10
|
+
self.request_body: SendChatMessageRequestBody | None = None
|
11
|
+
|
12
|
+
@staticmethod
|
13
|
+
def builder() -> "SendChatMessageRequestBuilder":
|
14
|
+
return SendChatMessageRequestBuilder()
|
15
|
+
|
16
|
+
|
17
|
+
class SendChatMessageRequestBuilder:
|
18
|
+
def __init__(self):
|
19
|
+
send_chat_message_request = SendChatMessageRequest()
|
20
|
+
send_chat_message_request.http_method = HttpMethod.POST
|
21
|
+
send_chat_message_request.uri = "/v1/chat-messages"
|
22
|
+
self._send_chat_message_request = send_chat_message_request
|
23
|
+
|
24
|
+
def build(self) -> SendChatMessageRequest:
|
25
|
+
return self._send_chat_message_request
|
26
|
+
|
27
|
+
def request_body(self, request_body: SendChatMessageRequestBody) -> "SendChatMessageRequestBuilder":
|
28
|
+
self._send_chat_message_request.request_body = request_body
|
29
|
+
self._send_chat_message_request.body = request_body.model_dump(exclude_none=True, mode="json")
|
30
|
+
return self
|
@@ -0,0 +1,54 @@
|
|
1
|
+
from pydantic import BaseModel
|
2
|
+
|
3
|
+
from .chat_file import ChatFile
|
4
|
+
from .chatflow_types import ResponseMode
|
5
|
+
|
6
|
+
|
7
|
+
class SendChatMessageRequestBody(BaseModel):
|
8
|
+
query: str | None = None
|
9
|
+
inputs: dict[str, str] | None = None
|
10
|
+
response_mode: ResponseMode | None = None
|
11
|
+
user: str | None = None
|
12
|
+
conversation_id: str | None = None
|
13
|
+
files: list[ChatFile] | None = None
|
14
|
+
auto_generate_name: bool | None = None
|
15
|
+
|
16
|
+
@staticmethod
|
17
|
+
def builder() -> "SendChatMessageRequestBodyBuilder":
|
18
|
+
return SendChatMessageRequestBodyBuilder()
|
19
|
+
|
20
|
+
|
21
|
+
class SendChatMessageRequestBodyBuilder:
|
22
|
+
def __init__(self):
|
23
|
+
self._send_chat_message_request_body = SendChatMessageRequestBody()
|
24
|
+
|
25
|
+
def build(self) -> SendChatMessageRequestBody:
|
26
|
+
return self._send_chat_message_request_body
|
27
|
+
|
28
|
+
def query(self, query: str) -> "SendChatMessageRequestBodyBuilder":
|
29
|
+
self._send_chat_message_request_body.query = query
|
30
|
+
return self
|
31
|
+
|
32
|
+
def inputs(self, inputs: dict[str, str]) -> "SendChatMessageRequestBodyBuilder":
|
33
|
+
self._send_chat_message_request_body.inputs = inputs
|
34
|
+
return self
|
35
|
+
|
36
|
+
def response_mode(self, response_mode: ResponseMode) -> "SendChatMessageRequestBodyBuilder":
|
37
|
+
self._send_chat_message_request_body.response_mode = response_mode
|
38
|
+
return self
|
39
|
+
|
40
|
+
def user(self, user: str) -> "SendChatMessageRequestBodyBuilder":
|
41
|
+
self._send_chat_message_request_body.user = user
|
42
|
+
return self
|
43
|
+
|
44
|
+
def conversation_id(self, conversation_id: str) -> "SendChatMessageRequestBodyBuilder":
|
45
|
+
self._send_chat_message_request_body.conversation_id = conversation_id
|
46
|
+
return self
|
47
|
+
|
48
|
+
def files(self, files: list[ChatFile]) -> "SendChatMessageRequestBodyBuilder":
|
49
|
+
self._send_chat_message_request_body.files = files
|
50
|
+
return self
|
51
|
+
|
52
|
+
def auto_generate_name(self, auto_generate_name: bool) -> "SendChatMessageRequestBodyBuilder":
|
53
|
+
self._send_chat_message_request_body.auto_generate_name = auto_generate_name
|
54
|
+
return self
|
@@ -0,0 +1,36 @@
|
|
1
|
+
from dify_oapi.core.enum import HttpMethod
|
2
|
+
from dify_oapi.core.model.base_request import BaseRequest
|
3
|
+
|
4
|
+
from .stop_chat_message_request_body import StopChatMessageRequestBody
|
5
|
+
|
6
|
+
|
7
|
+
class StopChatMessageRequest(BaseRequest):
|
8
|
+
def __init__(self):
|
9
|
+
super().__init__()
|
10
|
+
self.request_body: StopChatMessageRequestBody | None = None
|
11
|
+
self.task_id: str | None = None
|
12
|
+
|
13
|
+
@staticmethod
|
14
|
+
def builder() -> "StopChatMessageRequestBuilder":
|
15
|
+
return StopChatMessageRequestBuilder()
|
16
|
+
|
17
|
+
|
18
|
+
class StopChatMessageRequestBuilder:
|
19
|
+
def __init__(self):
|
20
|
+
stop_chat_message_request = StopChatMessageRequest()
|
21
|
+
stop_chat_message_request.http_method = HttpMethod.POST
|
22
|
+
stop_chat_message_request.uri = "/v1/chat-messages/:task_id/stop"
|
23
|
+
self._stop_chat_message_request = stop_chat_message_request
|
24
|
+
|
25
|
+
def build(self) -> StopChatMessageRequest:
|
26
|
+
return self._stop_chat_message_request
|
27
|
+
|
28
|
+
def task_id(self, task_id: str) -> "StopChatMessageRequestBuilder":
|
29
|
+
self._stop_chat_message_request.task_id = task_id
|
30
|
+
self._stop_chat_message_request.paths["task_id"] = task_id
|
31
|
+
return self
|
32
|
+
|
33
|
+
def request_body(self, request_body: StopChatMessageRequestBody) -> "StopChatMessageRequestBuilder":
|
34
|
+
self._stop_chat_message_request.request_body = request_body
|
35
|
+
self._stop_chat_message_request.body = request_body.model_dump(exclude_none=True, mode="json")
|
36
|
+
return self
|
@@ -0,0 +1,21 @@
|
|
1
|
+
from pydantic import BaseModel
|
2
|
+
|
3
|
+
|
4
|
+
class StopChatMessageRequestBody(BaseModel):
|
5
|
+
user: str | None = None
|
6
|
+
|
7
|
+
@staticmethod
|
8
|
+
def builder() -> "StopChatMessageRequestBodyBuilder":
|
9
|
+
return StopChatMessageRequestBodyBuilder()
|
10
|
+
|
11
|
+
|
12
|
+
class StopChatMessageRequestBodyBuilder:
|
13
|
+
def __init__(self):
|
14
|
+
self._stop_chat_message_request_body = StopChatMessageRequestBody()
|
15
|
+
|
16
|
+
def build(self) -> StopChatMessageRequestBody:
|
17
|
+
return self._stop_chat_message_request_body
|
18
|
+
|
19
|
+
def user(self, user: str) -> "StopChatMessageRequestBodyBuilder":
|
20
|
+
self._stop_chat_message_request_body.user = user
|
21
|
+
return self
|
@@ -0,0 +1,30 @@
|
|
1
|
+
from dify_oapi.core.enum import HttpMethod
|
2
|
+
from dify_oapi.core.model.base_request import BaseRequest
|
3
|
+
|
4
|
+
from .text_to_audio_request_body import TextToAudioRequestBody
|
5
|
+
|
6
|
+
|
7
|
+
class TextToAudioRequest(BaseRequest):
|
8
|
+
def __init__(self):
|
9
|
+
super().__init__()
|
10
|
+
self.request_body: TextToAudioRequestBody | None = None
|
11
|
+
|
12
|
+
@staticmethod
|
13
|
+
def builder() -> "TextToAudioRequestBuilder":
|
14
|
+
return TextToAudioRequestBuilder()
|
15
|
+
|
16
|
+
|
17
|
+
class TextToAudioRequestBuilder:
|
18
|
+
def __init__(self):
|
19
|
+
text_to_audio_request = TextToAudioRequest()
|
20
|
+
text_to_audio_request.http_method = HttpMethod.POST
|
21
|
+
text_to_audio_request.uri = "/v1/text-to-audio"
|
22
|
+
self._text_to_audio_request = text_to_audio_request
|
23
|
+
|
24
|
+
def build(self) -> TextToAudioRequest:
|
25
|
+
return self._text_to_audio_request
|
26
|
+
|
27
|
+
def request_body(self, request_body: TextToAudioRequestBody) -> "TextToAudioRequestBuilder":
|
28
|
+
self._text_to_audio_request.request_body = request_body
|
29
|
+
self._text_to_audio_request.body = request_body.model_dump(exclude_none=True, mode="json")
|
30
|
+
return self
|
@@ -0,0 +1,36 @@
|
|
1
|
+
from pydantic import BaseModel
|
2
|
+
|
3
|
+
|
4
|
+
class TextToAudioRequestBody(BaseModel):
|
5
|
+
message_id: str | None = None
|
6
|
+
text: str | None = None
|
7
|
+
user: str | None = None
|
8
|
+
streaming: bool | None = None
|
9
|
+
|
10
|
+
@staticmethod
|
11
|
+
def builder() -> "TextToAudioRequestBodyBuilder":
|
12
|
+
return TextToAudioRequestBodyBuilder()
|
13
|
+
|
14
|
+
|
15
|
+
class TextToAudioRequestBodyBuilder:
|
16
|
+
def __init__(self):
|
17
|
+
self._text_to_audio_request_body = TextToAudioRequestBody()
|
18
|
+
|
19
|
+
def build(self) -> TextToAudioRequestBody:
|
20
|
+
return self._text_to_audio_request_body
|
21
|
+
|
22
|
+
def message_id(self, message_id: str) -> "TextToAudioRequestBodyBuilder":
|
23
|
+
self._text_to_audio_request_body.message_id = message_id
|
24
|
+
return self
|
25
|
+
|
26
|
+
def text(self, text: str) -> "TextToAudioRequestBodyBuilder":
|
27
|
+
self._text_to_audio_request_body.text = text
|
28
|
+
return self
|
29
|
+
|
30
|
+
def user(self, user: str) -> "TextToAudioRequestBodyBuilder":
|
31
|
+
self._text_to_audio_request_body.user = user
|
32
|
+
return self
|
33
|
+
|
34
|
+
def streaming(self, streaming: bool) -> "TextToAudioRequestBodyBuilder":
|
35
|
+
self._text_to_audio_request_body.streaming = streaming
|
36
|
+
return self
|
@@ -0,0 +1,19 @@
|
|
1
|
+
from dify_oapi.core.model.base_response import BaseResponse
|
2
|
+
|
3
|
+
|
4
|
+
class TextToAudioResponse(BaseResponse):
|
5
|
+
# Binary audio data response - handled by Transport layer
|
6
|
+
# Response content type: audio/wav or audio/mp3
|
7
|
+
pass
|
8
|
+
|
9
|
+
@staticmethod
|
10
|
+
def builder() -> "TextToAudioResponseBuilder":
|
11
|
+
return TextToAudioResponseBuilder()
|
12
|
+
|
13
|
+
|
14
|
+
class TextToAudioResponseBuilder:
|
15
|
+
def __init__(self):
|
16
|
+
self._text_to_audio_response = TextToAudioResponse()
|
17
|
+
|
18
|
+
def build(self) -> TextToAudioResponse:
|
19
|
+
return self._text_to_audio_response
|
@@ -0,0 +1,48 @@
|
|
1
|
+
from typing import Union
|
2
|
+
|
3
|
+
from pydantic import BaseModel
|
4
|
+
|
5
|
+
|
6
|
+
class ToolIconDetail(BaseModel):
|
7
|
+
background: str | None = None
|
8
|
+
content: str | None = None
|
9
|
+
|
10
|
+
@staticmethod
|
11
|
+
def builder() -> "ToolIconDetailBuilder":
|
12
|
+
return ToolIconDetailBuilder()
|
13
|
+
|
14
|
+
|
15
|
+
class ToolIconDetailBuilder:
|
16
|
+
def __init__(self):
|
17
|
+
self._tool_icon_detail = ToolIconDetail()
|
18
|
+
|
19
|
+
def build(self) -> ToolIconDetail:
|
20
|
+
return self._tool_icon_detail
|
21
|
+
|
22
|
+
def background(self, background: str) -> "ToolIconDetailBuilder":
|
23
|
+
self._tool_icon_detail.background = background
|
24
|
+
return self
|
25
|
+
|
26
|
+
def content(self, content: str) -> "ToolIconDetailBuilder":
|
27
|
+
self._tool_icon_detail.content = content
|
28
|
+
return self
|
29
|
+
|
30
|
+
|
31
|
+
class AppMeta(BaseModel):
|
32
|
+
tool_icons: dict[str, Union[str, ToolIconDetail]] | None = None
|
33
|
+
|
34
|
+
@staticmethod
|
35
|
+
def builder() -> "AppMetaBuilder":
|
36
|
+
return AppMetaBuilder()
|
37
|
+
|
38
|
+
|
39
|
+
class AppMetaBuilder:
|
40
|
+
def __init__(self):
|
41
|
+
self._app_meta = AppMeta()
|
42
|
+
|
43
|
+
def build(self) -> AppMeta:
|
44
|
+
return self._app_meta
|
45
|
+
|
46
|
+
def tool_icons(self, tool_icons: dict[str, Union[str, ToolIconDetail]]) -> "AppMetaBuilder":
|
47
|
+
self._app_meta.tool_icons = tool_icons
|
48
|
+
return self
|
@@ -0,0 +1,36 @@
|
|
1
|
+
from dify_oapi.core.enum import HttpMethod
|
2
|
+
from dify_oapi.core.model.base_request import BaseRequest
|
3
|
+
|
4
|
+
from .update_annotation_request_body import UpdateAnnotationRequestBody
|
5
|
+
|
6
|
+
|
7
|
+
class UpdateAnnotationRequest(BaseRequest):
|
8
|
+
def __init__(self):
|
9
|
+
super().__init__()
|
10
|
+
self.request_body: UpdateAnnotationRequestBody | None = None
|
11
|
+
self.annotation_id: str | None = None
|
12
|
+
|
13
|
+
@staticmethod
|
14
|
+
def builder() -> "UpdateAnnotationRequestBuilder":
|
15
|
+
return UpdateAnnotationRequestBuilder()
|
16
|
+
|
17
|
+
|
18
|
+
class UpdateAnnotationRequestBuilder:
|
19
|
+
def __init__(self):
|
20
|
+
update_annotation_request = UpdateAnnotationRequest()
|
21
|
+
update_annotation_request.http_method = HttpMethod.PUT
|
22
|
+
update_annotation_request.uri = "/v1/apps/annotations/:annotation_id"
|
23
|
+
self._update_annotation_request = update_annotation_request
|
24
|
+
|
25
|
+
def build(self) -> UpdateAnnotationRequest:
|
26
|
+
return self._update_annotation_request
|
27
|
+
|
28
|
+
def annotation_id(self, annotation_id: str) -> "UpdateAnnotationRequestBuilder":
|
29
|
+
self._update_annotation_request.annotation_id = annotation_id
|
30
|
+
self._update_annotation_request.paths["annotation_id"] = annotation_id
|
31
|
+
return self
|
32
|
+
|
33
|
+
def request_body(self, request_body: UpdateAnnotationRequestBody) -> "UpdateAnnotationRequestBuilder":
|
34
|
+
self._update_annotation_request.request_body = request_body
|
35
|
+
self._update_annotation_request.body = request_body.model_dump(exclude_none=True, mode="json")
|
36
|
+
return self
|
@@ -0,0 +1,28 @@
|
|
1
|
+
from pydantic import BaseModel
|
2
|
+
|
3
|
+
|
4
|
+
class UpdateAnnotationRequestBody(BaseModel):
|
5
|
+
"""Request body for updating annotation."""
|
6
|
+
|
7
|
+
question: str | None = None
|
8
|
+
answer: str | None = None
|
9
|
+
|
10
|
+
@staticmethod
|
11
|
+
def builder() -> "UpdateAnnotationRequestBodyBuilder":
|
12
|
+
return UpdateAnnotationRequestBodyBuilder()
|
13
|
+
|
14
|
+
|
15
|
+
class UpdateAnnotationRequestBodyBuilder:
|
16
|
+
def __init__(self):
|
17
|
+
self._update_annotation_request_body = UpdateAnnotationRequestBody()
|
18
|
+
|
19
|
+
def build(self) -> UpdateAnnotationRequestBody:
|
20
|
+
return self._update_annotation_request_body
|
21
|
+
|
22
|
+
def question(self, question: str) -> "UpdateAnnotationRequestBodyBuilder":
|
23
|
+
self._update_annotation_request_body.question = question
|
24
|
+
return self
|
25
|
+
|
26
|
+
def answer(self, answer: str) -> "UpdateAnnotationRequestBodyBuilder":
|
27
|
+
self._update_annotation_request_body.answer = answer
|
28
|
+
return self
|
@@ -0,0 +1,41 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from io import BytesIO
|
4
|
+
|
5
|
+
from dify_oapi.core.enum import HttpMethod
|
6
|
+
from dify_oapi.core.model.base_request import BaseRequest
|
7
|
+
|
8
|
+
|
9
|
+
class UploadFileRequest(BaseRequest):
|
10
|
+
"""Upload file request model."""
|
11
|
+
|
12
|
+
def __init__(self):
|
13
|
+
super().__init__()
|
14
|
+
self.file: BytesIO | None = None
|
15
|
+
self.user: str | None = None
|
16
|
+
|
17
|
+
@staticmethod
|
18
|
+
def builder() -> UploadFileRequestBuilder:
|
19
|
+
return UploadFileRequestBuilder()
|
20
|
+
|
21
|
+
|
22
|
+
class UploadFileRequestBuilder:
|
23
|
+
def __init__(self):
|
24
|
+
upload_file_request = UploadFileRequest()
|
25
|
+
upload_file_request.http_method = HttpMethod.POST
|
26
|
+
upload_file_request.uri = "/v1/files/upload"
|
27
|
+
self._upload_file_request = upload_file_request
|
28
|
+
|
29
|
+
def build(self) -> UploadFileRequest:
|
30
|
+
return self._upload_file_request
|
31
|
+
|
32
|
+
def file(self, file: BytesIO, file_name: str | None = None) -> UploadFileRequestBuilder:
|
33
|
+
self._upload_file_request.file = file
|
34
|
+
file_name = file_name or "upload"
|
35
|
+
self._upload_file_request.files = {"file": (file_name, file)}
|
36
|
+
return self
|
37
|
+
|
38
|
+
def user(self, user: str) -> UploadFileRequestBuilder:
|
39
|
+
self._upload_file_request.user = user
|
40
|
+
self._upload_file_request.body = {"user": user}
|
41
|
+
return self
|
@@ -0,0 +1,78 @@
|
|
1
|
+
from pydantic import BaseModel
|
2
|
+
|
3
|
+
|
4
|
+
class UsageInfo(BaseModel):
|
5
|
+
"""Token usage information model."""
|
6
|
+
|
7
|
+
prompt_tokens: int | None = None
|
8
|
+
prompt_unit_price: str | None = None
|
9
|
+
prompt_price_unit: str | None = None
|
10
|
+
prompt_price: str | None = None
|
11
|
+
completion_tokens: int | None = None
|
12
|
+
completion_unit_price: str | None = None
|
13
|
+
completion_price_unit: str | None = None
|
14
|
+
completion_price: str | None = None
|
15
|
+
total_tokens: int | None = None
|
16
|
+
total_price: str | None = None
|
17
|
+
currency: str | None = None
|
18
|
+
latency: float | None = None
|
19
|
+
|
20
|
+
@staticmethod
|
21
|
+
def builder() -> "UsageInfoBuilder":
|
22
|
+
return UsageInfoBuilder()
|
23
|
+
|
24
|
+
|
25
|
+
class UsageInfoBuilder:
|
26
|
+
def __init__(self):
|
27
|
+
self._usage_info = UsageInfo()
|
28
|
+
|
29
|
+
def build(self) -> UsageInfo:
|
30
|
+
return self._usage_info
|
31
|
+
|
32
|
+
def prompt_tokens(self, prompt_tokens: int) -> "UsageInfoBuilder":
|
33
|
+
self._usage_info.prompt_tokens = prompt_tokens
|
34
|
+
return self
|
35
|
+
|
36
|
+
def prompt_unit_price(self, prompt_unit_price: str) -> "UsageInfoBuilder":
|
37
|
+
self._usage_info.prompt_unit_price = prompt_unit_price
|
38
|
+
return self
|
39
|
+
|
40
|
+
def prompt_price_unit(self, prompt_price_unit: str) -> "UsageInfoBuilder":
|
41
|
+
self._usage_info.prompt_price_unit = prompt_price_unit
|
42
|
+
return self
|
43
|
+
|
44
|
+
def prompt_price(self, prompt_price: str) -> "UsageInfoBuilder":
|
45
|
+
self._usage_info.prompt_price = prompt_price
|
46
|
+
return self
|
47
|
+
|
48
|
+
def completion_tokens(self, completion_tokens: int) -> "UsageInfoBuilder":
|
49
|
+
self._usage_info.completion_tokens = completion_tokens
|
50
|
+
return self
|
51
|
+
|
52
|
+
def completion_unit_price(self, completion_unit_price: str) -> "UsageInfoBuilder":
|
53
|
+
self._usage_info.completion_unit_price = completion_unit_price
|
54
|
+
return self
|
55
|
+
|
56
|
+
def completion_price_unit(self, completion_price_unit: str) -> "UsageInfoBuilder":
|
57
|
+
self._usage_info.completion_price_unit = completion_price_unit
|
58
|
+
return self
|
59
|
+
|
60
|
+
def completion_price(self, completion_price: str) -> "UsageInfoBuilder":
|
61
|
+
self._usage_info.completion_price = completion_price
|
62
|
+
return self
|
63
|
+
|
64
|
+
def total_tokens(self, total_tokens: int) -> "UsageInfoBuilder":
|
65
|
+
self._usage_info.total_tokens = total_tokens
|
66
|
+
return self
|
67
|
+
|
68
|
+
def total_price(self, total_price: str) -> "UsageInfoBuilder":
|
69
|
+
self._usage_info.total_price = total_price
|
70
|
+
return self
|
71
|
+
|
72
|
+
def currency(self, currency: str) -> "UsageInfoBuilder":
|
73
|
+
self._usage_info.currency = currency
|
74
|
+
return self
|
75
|
+
|
76
|
+
def latency(self, latency: float) -> "UsageInfoBuilder":
|
77
|
+
self._usage_info.latency = latency
|
78
|
+
return self
|