dify-oapi2 0.3.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.
Files changed (481) hide show
  1. dify_oapi/api/chat/v1/model/__init__.py +37 -0
  2. dify_oapi/api/chat/v1/model/agent_thought.py +69 -0
  3. dify_oapi/api/chat/v1/model/annotation_info.py +43 -0
  4. dify_oapi/api/chat/v1/model/app_info.py +35 -0
  5. dify_oapi/api/chat/v1/model/app_parameters.py +494 -0
  6. dify_oapi/api/chat/v1/model/audio_to_text_request_body.py +2 -2
  7. dify_oapi/api/chat/v1/model/chat_file.py +53 -0
  8. dify_oapi/api/chat/v1/model/chat_request_body.py +26 -13
  9. dify_oapi/api/chat/v1/model/chat_response.py +12 -2
  10. dify_oapi/api/chat/v1/model/chat_types.py +65 -0
  11. dify_oapi/api/chat/v1/model/configure_annotation_reply_request.py +36 -0
  12. dify_oapi/api/chat/v1/model/configure_annotation_reply_request_body.py +39 -0
  13. dify_oapi/api/chat/v1/model/configure_annotation_reply_response.py +10 -0
  14. dify_oapi/api/chat/v1/model/conversation_info.py +57 -0
  15. dify_oapi/api/chat/v1/model/conversation_variable.py +55 -0
  16. dify_oapi/api/chat/v1/model/create_annotation_request.py +29 -0
  17. dify_oapi/api/chat/v1/model/create_annotation_request_body.py +32 -0
  18. dify_oapi/api/chat/v1/model/create_annotation_response.py +9 -0
  19. dify_oapi/api/chat/v1/model/delete_annotation_request.py +26 -0
  20. dify_oapi/api/chat/v1/model/delete_annotation_response.py +7 -0
  21. dify_oapi/api/chat/v1/model/feedback_info.py +75 -0
  22. dify_oapi/api/{workflow/v1/model/file → chat/v1/model}/file_info.py +6 -0
  23. dify_oapi/api/chat/v1/model/get_annotation_reply_status_request.py +32 -0
  24. dify_oapi/api/chat/v1/model/get_annotation_reply_status_response.py +11 -0
  25. dify_oapi/api/chat/v1/model/get_app_info_request.py +24 -0
  26. dify_oapi/api/chat/v1/model/get_app_info_response.py +9 -0
  27. dify_oapi/api/chat/v1/model/get_app_meta_request.py +24 -0
  28. dify_oapi/api/chat/v1/model/get_app_meta_response.py +9 -0
  29. dify_oapi/api/chat/v1/model/get_app_parameters_request.py +28 -0
  30. dify_oapi/api/chat/v1/model/get_app_parameters_response.py +9 -0
  31. dify_oapi/api/chat/v1/model/get_conversation_list_request.py +25 -24
  32. dify_oapi/api/chat/v1/model/get_conversation_list_response.py +4 -15
  33. dify_oapi/api/chat/v1/model/get_conversation_variables_request.py +54 -0
  34. dify_oapi/api/chat/v1/model/get_conversation_variables_response.py +10 -0
  35. dify_oapi/api/chat/v1/model/get_feedbacks_request.py +32 -0
  36. dify_oapi/api/chat/v1/model/get_feedbacks_response.py +7 -0
  37. dify_oapi/api/chat/v1/model/get_site_settings_request.py +24 -0
  38. dify_oapi/api/chat/v1/model/get_site_settings_response.py +9 -0
  39. dify_oapi/api/chat/v1/model/get_suggested_questions_request.py +36 -0
  40. dify_oapi/api/chat/v1/model/{message_suggested_response.py → get_suggested_questions_response.py} +1 -1
  41. dify_oapi/api/chat/v1/model/list_annotations_request.py +32 -0
  42. dify_oapi/api/chat/v1/model/list_annotations_response.py +11 -0
  43. dify_oapi/api/chat/v1/model/message_file.py +46 -0
  44. dify_oapi/api/chat/v1/model/message_history_request.py +24 -24
  45. dify_oapi/api/chat/v1/model/message_history_response.py +4 -43
  46. dify_oapi/api/chat/v1/model/message_info.py +73 -0
  47. dify_oapi/api/chat/v1/model/pagination_info.py +44 -0
  48. dify_oapi/api/chat/v1/model/rename_conversation_request_body.py +1 -1
  49. dify_oapi/api/chat/v1/model/retriever_resource.py +64 -0
  50. dify_oapi/api/chat/v1/model/site_settings.py +92 -0
  51. dify_oapi/api/chat/v1/model/submit_feedback_request.py +34 -0
  52. dify_oapi/api/chat/v1/model/submit_feedback_request_body.py +33 -0
  53. dify_oapi/api/chat/v1/model/submit_feedback_response.py +5 -0
  54. dify_oapi/api/chat/v1/model/text_to_audio_request.py +32 -0
  55. dify_oapi/api/chat/v1/model/text_to_audio_request_body.py +33 -0
  56. dify_oapi/api/chat/v1/model/text_to_audio_response.py +7 -0
  57. dify_oapi/api/chat/v1/model/tool_icon.py +52 -0
  58. dify_oapi/api/chat/v1/model/update_annotation_request.py +33 -0
  59. dify_oapi/api/chat/v1/model/update_annotation_request_body.py +32 -0
  60. dify_oapi/api/chat/v1/model/update_annotation_response.py +9 -0
  61. dify_oapi/api/chat/v1/model/upload_file_request.py +54 -0
  62. dify_oapi/api/chat/v1/model/upload_file_request_body.py +29 -0
  63. dify_oapi/api/chat/v1/model/upload_file_response.py +10 -0
  64. dify_oapi/api/chat/v1/model/usage_info.py +84 -0
  65. dify_oapi/api/chat/v1/resource/__init__.py +7 -3
  66. dify_oapi/api/chat/v1/resource/annotation.py +77 -0
  67. dify_oapi/api/chat/v1/resource/app.py +47 -0
  68. dify_oapi/api/chat/v1/resource/audio.py +13 -0
  69. dify_oapi/api/chat/v1/resource/chat.py +14 -0
  70. dify_oapi/api/chat/v1/resource/conversation.py +55 -9
  71. dify_oapi/api/chat/v1/resource/feedback.py +31 -0
  72. dify_oapi/api/chat/v1/resource/file.py +25 -0
  73. dify_oapi/api/chat/v1/resource/message.py +19 -15
  74. dify_oapi/api/chat/v1/version.py +8 -2
  75. dify_oapi/api/chatflow/service.py +25 -0
  76. dify_oapi/api/chatflow/v1/model/annotation_info.py +43 -0
  77. dify_oapi/api/chatflow/v1/model/annotation_reply_settings_request.py +37 -0
  78. dify_oapi/api/chatflow/v1/model/annotation_reply_settings_request_body.py +33 -0
  79. dify_oapi/api/chatflow/v1/model/annotation_reply_settings_response.py +10 -0
  80. dify_oapi/api/chatflow/v1/model/annotation_reply_status_request.py +36 -0
  81. dify_oapi/api/chatflow/v1/model/annotation_reply_status_response.py +11 -0
  82. dify_oapi/api/chatflow/v1/model/app_info.py +33 -0
  83. dify_oapi/api/chatflow/v1/model/app_parameters.py +276 -0
  84. dify_oapi/api/chatflow/v1/model/audio_to_text_request.py +37 -0
  85. dify_oapi/api/chatflow/v1/model/audio_to_text_response.py +21 -0
  86. dify_oapi/api/chatflow/v1/model/chat_file.py +40 -0
  87. dify_oapi/api/chatflow/v1/model/chat_message.py +88 -0
  88. dify_oapi/api/chatflow/v1/model/chatflow_types.py +210 -0
  89. dify_oapi/api/chatflow/v1/model/conversation_info.py +53 -0
  90. dify_oapi/api/chatflow/v1/model/conversation_variable.py +55 -0
  91. dify_oapi/api/chatflow/v1/model/create_annotation_request.py +30 -0
  92. dify_oapi/api/chatflow/v1/model/create_annotation_request_body.py +28 -0
  93. dify_oapi/api/chatflow/v1/model/create_annotation_response.py +9 -0
  94. dify_oapi/api/chatflow/v1/model/delete_annotation_request.py +28 -0
  95. dify_oapi/api/chatflow/v1/model/delete_annotation_response.py +7 -0
  96. dify_oapi/api/chatflow/v1/model/delete_conversation_request.py +36 -0
  97. dify_oapi/api/chatflow/v1/model/delete_conversation_request_body.py +21 -0
  98. dify_oapi/api/chatflow/v1/model/delete_conversation_response.py +17 -0
  99. dify_oapi/api/chatflow/v1/model/feedback_info.py +75 -0
  100. dify_oapi/api/chatflow/v1/model/file_info.py +53 -0
  101. dify_oapi/api/chatflow/v1/model/get_annotations_request.py +30 -0
  102. dify_oapi/api/chatflow/v1/model/get_annotations_response.py +13 -0
  103. dify_oapi/api/chatflow/v1/model/get_app_feedbacks_request.py +30 -0
  104. dify_oapi/api/chatflow/v1/model/get_app_feedbacks_response.py +23 -0
  105. dify_oapi/api/chatflow/v1/model/get_conversation_messages_request.py +38 -0
  106. dify_oapi/api/chatflow/v1/model/get_conversation_messages_response.py +33 -0
  107. dify_oapi/api/chatflow/v1/model/get_conversation_variables_request.py +44 -0
  108. dify_oapi/api/chatflow/v1/model/get_conversation_variables_response.py +33 -0
  109. dify_oapi/api/chatflow/v1/model/get_conversations_request.py +40 -0
  110. dify_oapi/api/chatflow/v1/model/get_conversations_response.py +33 -0
  111. dify_oapi/api/chatflow/v1/model/get_info_request.py +22 -0
  112. dify_oapi/api/chatflow/v1/model/get_info_response.py +7 -0
  113. dify_oapi/api/chatflow/v1/model/get_meta_request.py +22 -0
  114. dify_oapi/api/chatflow/v1/model/get_meta_response.py +7 -0
  115. dify_oapi/api/chatflow/v1/model/get_parameters_request.py +22 -0
  116. dify_oapi/api/chatflow/v1/model/get_parameters_response.py +7 -0
  117. dify_oapi/api/chatflow/v1/model/get_site_request.py +22 -0
  118. dify_oapi/api/chatflow/v1/model/get_site_response.py +7 -0
  119. dify_oapi/api/chatflow/v1/model/get_suggested_questions_request.py +32 -0
  120. dify_oapi/api/{knowledge_base/v1/model/metadata/toggle_builtin_response.py → chatflow/v1/model/get_suggested_questions_response.py} +2 -3
  121. dify_oapi/api/chatflow/v1/model/message_feedback_request.py +36 -0
  122. dify_oapi/api/chatflow/v1/model/message_feedback_request_body.py +33 -0
  123. dify_oapi/api/chatflow/v1/model/message_feedback_response.py +21 -0
  124. dify_oapi/api/chatflow/v1/model/rename_conversation_request.py +36 -0
  125. dify_oapi/api/chatflow/v1/model/rename_conversation_request_body.py +31 -0
  126. dify_oapi/api/chatflow/v1/model/rename_conversation_response.py +53 -0
  127. dify_oapi/api/chatflow/v1/model/retriever_resource.py +58 -0
  128. dify_oapi/api/chatflow/v1/model/send_chat_message_request.py +30 -0
  129. dify_oapi/api/chatflow/v1/model/send_chat_message_request_body.py +54 -0
  130. dify_oapi/api/chatflow/v1/model/send_chat_message_response.py +7 -0
  131. dify_oapi/api/chatflow/v1/model/stop_chat_message_request.py +36 -0
  132. dify_oapi/api/chatflow/v1/model/stop_chat_message_request_body.py +21 -0
  133. dify_oapi/api/{knowledge_base/v1/model/tag/bind_response.py → chatflow/v1/model/stop_chat_message_response.py} +1 -3
  134. dify_oapi/api/chatflow/v1/model/text_to_audio_request.py +30 -0
  135. dify_oapi/api/chatflow/v1/model/text_to_audio_request_body.py +36 -0
  136. dify_oapi/api/chatflow/v1/model/text_to_audio_response.py +19 -0
  137. dify_oapi/api/chatflow/v1/model/tool_icon.py +48 -0
  138. dify_oapi/api/chatflow/v1/model/update_annotation_request.py +36 -0
  139. dify_oapi/api/chatflow/v1/model/update_annotation_request_body.py +28 -0
  140. dify_oapi/api/chatflow/v1/model/update_annotation_response.py +9 -0
  141. dify_oapi/api/chatflow/v1/model/upload_file_request.py +41 -0
  142. dify_oapi/api/{workflow/v1/model/file → chatflow/v1/model}/upload_file_response.py +2 -0
  143. dify_oapi/api/chatflow/v1/model/usage_info.py +78 -0
  144. dify_oapi/api/chatflow/v1/model/user_input_form.py +141 -0
  145. dify_oapi/api/chatflow/v1/model/webapp_settings.py +88 -0
  146. dify_oapi/api/chatflow/v1/resource/annotation.py +122 -0
  147. dify_oapi/api/chatflow/v1/resource/application.py +76 -0
  148. dify_oapi/api/chatflow/v1/resource/chatflow.py +91 -0
  149. dify_oapi/api/chatflow/v1/resource/conversation.py +104 -0
  150. dify_oapi/api/chatflow/v1/resource/feedback.py +69 -0
  151. dify_oapi/api/chatflow/v1/resource/file.py +39 -0
  152. dify_oapi/api/chatflow/v1/resource/tts.py +29 -0
  153. dify_oapi/api/chatflow/v1/version.py +29 -0
  154. dify_oapi/api/completion/v1/model/completion/completion_inputs.py +28 -4
  155. dify_oapi/api/completion/v1/model/completion/completion_types.py +19 -1
  156. dify_oapi/api/completion/v1/model/completion/input_file_object.py +58 -0
  157. dify_oapi/api/completion/v1/model/completion/send_message_request_body.py +40 -44
  158. dify_oapi/api/completion/v1/model/completion/usage.py +4 -2
  159. dify_oapi/api/completion/v1/model/info/feature_config.py +91 -0
  160. dify_oapi/api/completion/v1/model/info/parameters_info.py +16 -8
  161. dify_oapi/api/completion/v1/model/info/site_info.py +3 -3
  162. dify_oapi/api/completion/v1/model/info/user_input_form.py +131 -16
  163. dify_oapi/api/knowledge/service.py +8 -0
  164. dify_oapi/api/knowledge/v1/__init__.py +0 -0
  165. dify_oapi/api/knowledge/v1/model/__init__.py +0 -0
  166. dify_oapi/api/knowledge/v1/model/batch_info.py +86 -0
  167. dify_oapi/api/knowledge/v1/model/bind_tags_to_dataset_request.py +30 -0
  168. dify_oapi/api/knowledge/v1/model/bind_tags_to_dataset_request_body.py +26 -0
  169. dify_oapi/api/{knowledge_base/v1/model/tag/delete_response.py → knowledge/v1/model/bind_tags_to_dataset_response.py} +1 -3
  170. dify_oapi/api/knowledge/v1/model/child_chunk_content.py +34 -0
  171. dify_oapi/api/knowledge/v1/model/child_chunk_info.py +101 -0
  172. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/create_child_chunk_request.py +8 -2
  173. dify_oapi/api/knowledge/v1/model/create_child_chunk_request_body.py +44 -0
  174. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/create_child_chunk_response.py +5 -1
  175. dify_oapi/api/knowledge/v1/model/create_dataset_request.py +30 -0
  176. dify_oapi/api/knowledge/v1/model/create_dataset_request_body.py +67 -0
  177. dify_oapi/api/knowledge/v1/model/create_dataset_response.py +7 -0
  178. dify_oapi/api/knowledge/v1/model/create_document_by_file_request.py +55 -0
  179. dify_oapi/api/knowledge/v1/model/create_document_by_file_request_body.py +73 -0
  180. dify_oapi/api/{knowledge_base/v1/model/document/create_by_file_response.py → knowledge/v1/model/create_document_by_file_response.py} +1 -1
  181. dify_oapi/api/knowledge/v1/model/create_document_by_text_request.py +44 -0
  182. dify_oapi/api/knowledge/v1/model/create_document_by_text_request_body.py +73 -0
  183. dify_oapi/api/{knowledge_base/v1/model/document/create_by_text_response.py → knowledge/v1/model/create_document_by_text_response.py} +3 -3
  184. dify_oapi/api/knowledge/v1/model/create_segment_request.py +50 -0
  185. dify_oapi/api/knowledge/v1/model/create_segment_request_body.py +31 -0
  186. dify_oapi/api/{knowledge_base/v1/model/segment/create_response.py → knowledge/v1/model/create_segment_response.py} +5 -2
  187. dify_oapi/api/knowledge/v1/model/create_tag_request.py +30 -0
  188. dify_oapi/api/knowledge/v1/model/create_tag_request_body.py +28 -0
  189. dify_oapi/api/knowledge/v1/model/create_tag_response.py +7 -0
  190. dify_oapi/api/knowledge/v1/model/data_source_detail.py +23 -0
  191. dify_oapi/api/knowledge/v1/model/data_source_info.py +34 -0
  192. dify_oapi/api/knowledge/v1/model/dataset_info.py +123 -0
  193. dify_oapi/api/knowledge/v1/model/dataset_metadata.py +14 -0
  194. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/delete_child_chunk_request.py +8 -2
  195. dify_oapi/api/knowledge/v1/model/delete_child_chunk_response.py +9 -0
  196. dify_oapi/api/knowledge/v1/model/delete_dataset_request.py +28 -0
  197. dify_oapi/api/{knowledge_base/v1/model/tag/unbind_response.py → knowledge/v1/model/delete_dataset_response.py} +1 -3
  198. dify_oapi/api/knowledge/v1/model/delete_document_request.py +42 -0
  199. dify_oapi/api/knowledge/v1/model/delete_document_response.py +9 -0
  200. dify_oapi/api/knowledge/v1/model/delete_segment_request.py +48 -0
  201. dify_oapi/api/knowledge/v1/model/delete_segment_response.py +9 -0
  202. dify_oapi/api/knowledge/v1/model/delete_tag_request.py +30 -0
  203. dify_oapi/api/knowledge/v1/model/delete_tag_request_body.py +21 -0
  204. dify_oapi/api/knowledge/v1/model/delete_tag_response.py +5 -0
  205. dify_oapi/api/knowledge/v1/model/document_info.py +144 -0
  206. dify_oapi/api/knowledge/v1/model/document_metadata.py +39 -0
  207. dify_oapi/api/knowledge/v1/model/embedding_model_parameters.py +47 -0
  208. dify_oapi/api/{knowledge_base/v1/model/dataset → knowledge/v1/model}/external_knowledge_info.py +18 -12
  209. dify_oapi/api/knowledge/v1/model/external_retrieval_model.py +13 -0
  210. dify_oapi/api/knowledge/v1/model/file_info.py +71 -0
  211. dify_oapi/api/knowledge/v1/model/get_batch_indexing_status_request.py +42 -0
  212. dify_oapi/api/knowledge/v1/model/get_batch_indexing_status_response.py +22 -0
  213. dify_oapi/api/knowledge/v1/model/get_dataset_request.py +28 -0
  214. dify_oapi/api/knowledge/v1/model/get_dataset_response.py +7 -0
  215. dify_oapi/api/knowledge/v1/model/get_dataset_tags_request.py +28 -0
  216. dify_oapi/api/knowledge/v1/model/get_dataset_tags_response.py +8 -0
  217. dify_oapi/api/knowledge/v1/model/get_document_request.py +42 -0
  218. dify_oapi/api/knowledge/v1/model/get_document_response.py +11 -0
  219. dify_oapi/api/knowledge/v1/model/get_segment_request.py +48 -0
  220. dify_oapi/api/{knowledge_base/v1/model/segment/get_response.py → knowledge/v1/model/get_segment_response.py} +5 -1
  221. dify_oapi/api/knowledge/v1/model/get_text_embedding_models_request.py +22 -0
  222. dify_oapi/api/knowledge/v1/model/get_text_embedding_models_response.py +7 -0
  223. dify_oapi/api/knowledge/v1/model/get_upload_file_info_request.py +42 -0
  224. dify_oapi/api/knowledge/v1/model/get_upload_file_info_response.py +11 -0
  225. dify_oapi/api/knowledge/v1/model/knowledge_types.py +100 -0
  226. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/list_child_chunks_request.py +10 -4
  227. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/list_child_chunks_response.py +4 -0
  228. dify_oapi/api/knowledge/v1/model/list_datasets_request.py +30 -0
  229. dify_oapi/api/{knowledge_base/v1/model/dataset/list_response.py → knowledge/v1/model/list_datasets_response.py} +1 -3
  230. dify_oapi/api/knowledge/v1/model/list_documents_request.py +48 -0
  231. dify_oapi/api/{knowledge_base/v1/model/document/list_response.py → knowledge/v1/model/list_documents_response.py} +3 -3
  232. dify_oapi/api/knowledge/v1/model/list_segments_request.py +60 -0
  233. dify_oapi/api/{knowledge_base/v1/model/segment/list_response.py → knowledge/v1/model/list_segments_response.py} +5 -2
  234. dify_oapi/api/knowledge/v1/model/list_tags_request.py +28 -0
  235. dify_oapi/api/knowledge/v1/model/list_tags_response.py +7 -0
  236. dify_oapi/api/knowledge/v1/model/model_credentials.py +34 -0
  237. dify_oapi/api/knowledge/v1/model/model_info.py +85 -0
  238. dify_oapi/api/knowledge/v1/model/model_parameters.py +34 -0
  239. dify_oapi/api/knowledge/v1/model/pagination_info.py +44 -0
  240. dify_oapi/api/knowledge/v1/model/preprocessing_rule.py +36 -0
  241. dify_oapi/api/knowledge/v1/model/process_rule.py +43 -0
  242. dify_oapi/api/knowledge/v1/model/process_rules.py +49 -0
  243. dify_oapi/api/knowledge/v1/model/query_info.py +29 -0
  244. dify_oapi/api/knowledge/v1/model/reranking_mode.py +36 -0
  245. dify_oapi/api/knowledge/v1/model/reranking_model.py +47 -0
  246. dify_oapi/api/knowledge/v1/model/retrieval_model.py +68 -0
  247. dify_oapi/api/knowledge/v1/model/retrieval_record.py +28 -0
  248. dify_oapi/api/knowledge/v1/model/retrieval_segment_info.py +41 -0
  249. dify_oapi/api/knowledge/v1/model/retrieve_from_dataset_request.py +36 -0
  250. dify_oapi/api/knowledge/v1/model/retrieve_from_dataset_request_body.py +38 -0
  251. dify_oapi/api/knowledge/v1/model/retrieve_from_dataset_response.py +9 -0
  252. dify_oapi/api/knowledge/v1/model/segment_content.py +39 -0
  253. dify_oapi/api/knowledge/v1/model/segment_document_info.py +41 -0
  254. dify_oapi/api/knowledge/v1/model/segment_info.py +131 -0
  255. dify_oapi/api/knowledge/v1/model/segmentation_rule.py +44 -0
  256. dify_oapi/api/knowledge/v1/model/subchunk_segmentation_rule.py +39 -0
  257. dify_oapi/api/knowledge/v1/model/tag_info.py +56 -0
  258. dify_oapi/api/knowledge/v1/model/unbind_tags_from_dataset_request.py +30 -0
  259. dify_oapi/api/knowledge/v1/model/unbind_tags_from_dataset_request_body.py +26 -0
  260. dify_oapi/api/knowledge/v1/model/unbind_tags_from_dataset_response.py +5 -0
  261. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/update_child_chunk_request.py +8 -2
  262. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/update_child_chunk_request_body.py +12 -1
  263. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/update_child_chunk_response.py +4 -0
  264. dify_oapi/api/knowledge/v1/model/update_dataset_request.py +36 -0
  265. dify_oapi/api/knowledge/v1/model/update_dataset_request_body.py +62 -0
  266. dify_oapi/api/knowledge/v1/model/update_dataset_response.py +7 -0
  267. dify_oapi/api/knowledge/v1/model/update_document_by_file_request.py +61 -0
  268. dify_oapi/api/knowledge/v1/model/update_document_by_file_request_body.py +68 -0
  269. dify_oapi/api/{knowledge_base/v1/model/document/update_by_file_response.py → knowledge/v1/model/update_document_by_file_response.py} +3 -3
  270. dify_oapi/api/knowledge/v1/model/update_document_by_text_request.py +50 -0
  271. dify_oapi/api/knowledge/v1/model/update_document_by_text_request_body.py +73 -0
  272. dify_oapi/api/{knowledge_base/v1/model/document/update_by_text_response.py → knowledge/v1/model/update_document_by_text_response.py} +2 -4
  273. dify_oapi/api/knowledge/v1/model/update_document_status_request.py +51 -0
  274. dify_oapi/api/knowledge/v1/model/update_document_status_request_body.py +29 -0
  275. dify_oapi/api/knowledge/v1/model/update_document_status_response.py +9 -0
  276. dify_oapi/api/knowledge/v1/model/update_segment_request.py +56 -0
  277. dify_oapi/api/knowledge/v1/model/update_segment_request_body.py +31 -0
  278. dify_oapi/api/{knowledge_base/v1/model/segment/update_response.py → knowledge/v1/model/update_segment_response.py} +5 -1
  279. dify_oapi/api/knowledge/v1/model/update_tag_request.py +30 -0
  280. dify_oapi/api/knowledge/v1/model/update_tag_request_body.py +26 -0
  281. dify_oapi/api/knowledge/v1/model/update_tag_response.py +7 -0
  282. dify_oapi/api/knowledge/v1/model/weights.py +27 -0
  283. dify_oapi/api/knowledge/v1/resource/__init__.py +8 -0
  284. dify_oapi/api/knowledge/v1/resource/chunk.py +55 -0
  285. dify_oapi/api/knowledge/v1/resource/dataset.py +69 -0
  286. dify_oapi/api/knowledge/v1/resource/document.py +135 -0
  287. dify_oapi/api/knowledge/v1/resource/model.py +25 -0
  288. dify_oapi/api/knowledge/v1/resource/segment.py +55 -0
  289. dify_oapi/api/knowledge/v1/resource/tag.py +81 -0
  290. dify_oapi/api/knowledge/v1/version.py +18 -0
  291. dify_oapi/api/workflow/v1/model/{info/app_info.py → app_info.py} +1 -1
  292. dify_oapi/api/workflow/v1/model/chunk_workflow_event.py +74 -0
  293. dify_oapi/api/workflow/v1/model/file_upload_info.py +53 -0
  294. dify_oapi/api/workflow/v1/model/{log/get_workflow_logs_response.py → get_workflow_logs_response.py} +2 -2
  295. dify_oapi/api/workflow/v1/model/{workflow/get_workflow_run_detail_response.py → get_workflow_run_detail_response.py} +18 -0
  296. dify_oapi/api/workflow/v1/model/input_file_object_workflow.py +76 -0
  297. dify_oapi/api/workflow/v1/model/node_finished_data.py +118 -0
  298. dify_oapi/api/workflow/v1/model/node_started_data.py +81 -0
  299. dify_oapi/api/workflow/v1/model/ping_data.py +28 -0
  300. dify_oapi/api/workflow/v1/model/{workflow/run_workflow_request_body.py → run_workflow_request_body.py} +1 -1
  301. dify_oapi/api/workflow/v1/model/{info/site_info.py → site_info.py} +1 -1
  302. dify_oapi/api/workflow/v1/model/text_chunk_data.py +39 -0
  303. dify_oapi/api/workflow/v1/model/tts_message_data.py +45 -0
  304. dify_oapi/api/workflow/v1/model/tts_message_end_data.py +45 -0
  305. dify_oapi/api/{knowledge_base/v1/model/dataset/delete_response.py → workflow/v1/model/upload_file_response.py} +2 -2
  306. dify_oapi/api/workflow/v1/model/workflow_completion_response.py +50 -0
  307. dify_oapi/api/workflow/v1/model/workflow_finished_data.py +93 -0
  308. dify_oapi/api/workflow/v1/model/workflow_log_info.py +57 -0
  309. dify_oapi/api/workflow/v1/model/{log/workflow_run_log_info.py → workflow_run_log_info.py} +1 -1
  310. dify_oapi/api/workflow/v1/model/workflow_started_data.py +51 -0
  311. dify_oapi/api/workflow/v1/model/workflow_types.py +69 -0
  312. dify_oapi/api/workflow/v1/resource/workflow.py +56 -144
  313. dify_oapi/api/workflow/v1/version.py +1 -7
  314. dify_oapi/client.py +51 -6
  315. dify_oapi/core/http/transport/__init__.py +2 -1
  316. dify_oapi/core/http/transport/async_transport.py +73 -50
  317. dify_oapi/core/http/transport/connection_pool.py +131 -0
  318. dify_oapi/core/http/transport/sync_transport.py +73 -50
  319. dify_oapi/core/model/config.py +10 -0
  320. {dify_oapi2-0.3.0.dist-info → dify_oapi2-0.5.0.dist-info}/METADATA +57 -21
  321. dify_oapi2-0.5.0.dist-info/RECORD +479 -0
  322. dify_oapi/api/chat/v1/model/chat_request_file.py +0 -46
  323. dify_oapi/api/chat/v1/model/message_suggested_request.py +0 -36
  324. dify_oapi/api/knowledge_base/service.py +0 -8
  325. dify_oapi/api/knowledge_base/v1/model/dataset/__init__.py +0 -49
  326. dify_oapi/api/knowledge_base/v1/model/dataset/create_request.py +0 -32
  327. dify_oapi/api/knowledge_base/v1/model/dataset/create_request_body.py +0 -72
  328. dify_oapi/api/knowledge_base/v1/model/dataset/create_response.py +0 -11
  329. dify_oapi/api/knowledge_base/v1/model/dataset/dataset_info.py +0 -150
  330. dify_oapi/api/knowledge_base/v1/model/dataset/dataset_types.py +0 -36
  331. dify_oapi/api/knowledge_base/v1/model/dataset/delete_request.py +0 -30
  332. dify_oapi/api/knowledge_base/v1/model/dataset/filter_condition.py +0 -72
  333. dify_oapi/api/knowledge_base/v1/model/dataset/get_request.py +0 -30
  334. dify_oapi/api/knowledge_base/v1/model/dataset/get_response.py +0 -11
  335. dify_oapi/api/knowledge_base/v1/model/dataset/list_request.py +0 -45
  336. dify_oapi/api/knowledge_base/v1/model/dataset/metadata_filtering_conditions.py +0 -30
  337. dify_oapi/api/knowledge_base/v1/model/dataset/reranking_model.py +0 -28
  338. dify_oapi/api/knowledge_base/v1/model/dataset/retrieval_model.py +0 -144
  339. dify_oapi/api/knowledge_base/v1/model/dataset/retrieve_request.py +0 -38
  340. dify_oapi/api/knowledge_base/v1/model/dataset/retrieve_request_body.py +0 -38
  341. dify_oapi/api/knowledge_base/v1/model/dataset/retrieve_response.py +0 -53
  342. dify_oapi/api/knowledge_base/v1/model/dataset/update_request.py +0 -38
  343. dify_oapi/api/knowledge_base/v1/model/dataset/update_request_body.py +0 -58
  344. dify_oapi/api/knowledge_base/v1/model/dataset/update_response.py +0 -11
  345. dify_oapi/api/knowledge_base/v1/model/document/create_by_file_request.py +0 -53
  346. dify_oapi/api/knowledge_base/v1/model/document/create_by_file_request_body.py +0 -31
  347. dify_oapi/api/knowledge_base/v1/model/document/create_by_file_request_body_data.py +0 -78
  348. dify_oapi/api/knowledge_base/v1/model/document/create_by_text_request.py +0 -38
  349. dify_oapi/api/knowledge_base/v1/model/document/create_by_text_request_body.py +0 -75
  350. dify_oapi/api/knowledge_base/v1/model/document/data_source_info.py +0 -30
  351. dify_oapi/api/knowledge_base/v1/model/document/delete_request.py +0 -38
  352. dify_oapi/api/knowledge_base/v1/model/document/delete_response.py +0 -9
  353. dify_oapi/api/knowledge_base/v1/model/document/document_info.py +0 -164
  354. dify_oapi/api/knowledge_base/v1/model/document/document_types.py +0 -36
  355. dify_oapi/api/knowledge_base/v1/model/document/get_request.py +0 -40
  356. dify_oapi/api/knowledge_base/v1/model/document/get_response.py +0 -9
  357. dify_oapi/api/knowledge_base/v1/model/document/get_upload_file_request.py +0 -38
  358. dify_oapi/api/knowledge_base/v1/model/document/get_upload_file_response.py +0 -11
  359. dify_oapi/api/knowledge_base/v1/model/document/indexing_status_info.py +0 -80
  360. dify_oapi/api/knowledge_base/v1/model/document/indexing_status_request.py +0 -36
  361. dify_oapi/api/knowledge_base/v1/model/document/indexing_status_response.py +0 -11
  362. dify_oapi/api/knowledge_base/v1/model/document/list_request.py +0 -42
  363. dify_oapi/api/knowledge_base/v1/model/document/pre_processing_rule.py +0 -32
  364. dify_oapi/api/knowledge_base/v1/model/document/process_rule.py +0 -34
  365. dify_oapi/api/knowledge_base/v1/model/document/retrieval_model.py +0 -54
  366. dify_oapi/api/knowledge_base/v1/model/document/rules.py +0 -31
  367. dify_oapi/api/knowledge_base/v1/model/document/segmentation.py +0 -35
  368. dify_oapi/api/knowledge_base/v1/model/document/subchunk_segmentation.py +0 -35
  369. dify_oapi/api/knowledge_base/v1/model/document/update_by_file_request.py +0 -53
  370. dify_oapi/api/knowledge_base/v1/model/document/update_by_file_request_body.py +0 -26
  371. dify_oapi/api/knowledge_base/v1/model/document/update_by_file_request_body_data.py +0 -40
  372. dify_oapi/api/knowledge_base/v1/model/document/update_by_text_request.py +0 -55
  373. dify_oapi/api/knowledge_base/v1/model/document/update_by_text_request_body.py +0 -46
  374. dify_oapi/api/knowledge_base/v1/model/document/update_status_request.py +0 -55
  375. dify_oapi/api/knowledge_base/v1/model/document/update_status_request_body.py +0 -32
  376. dify_oapi/api/knowledge_base/v1/model/document/update_status_response.py +0 -9
  377. dify_oapi/api/knowledge_base/v1/model/document/upload_file_info.py +0 -65
  378. dify_oapi/api/knowledge_base/v1/model/metadata/__init__.py +0 -35
  379. dify_oapi/api/knowledge_base/v1/model/metadata/create_request.py +0 -38
  380. dify_oapi/api/knowledge_base/v1/model/metadata/create_request_body.py +0 -31
  381. dify_oapi/api/knowledge_base/v1/model/metadata/create_response.py +0 -13
  382. dify_oapi/api/knowledge_base/v1/model/metadata/delete_request.py +0 -36
  383. dify_oapi/api/knowledge_base/v1/model/metadata/delete_response.py +0 -7
  384. dify_oapi/api/knowledge_base/v1/model/metadata/list_request.py +0 -30
  385. dify_oapi/api/knowledge_base/v1/model/metadata/list_response.py +0 -9
  386. dify_oapi/api/knowledge_base/v1/model/metadata/metadata_info.py +0 -38
  387. dify_oapi/api/knowledge_base/v1/model/metadata/metadata_types.py +0 -15
  388. dify_oapi/api/knowledge_base/v1/model/metadata/toggle_builtin_request.py +0 -36
  389. dify_oapi/api/knowledge_base/v1/model/metadata/update_document_request.py +0 -38
  390. dify_oapi/api/knowledge_base/v1/model/metadata/update_document_request_body.py +0 -79
  391. dify_oapi/api/knowledge_base/v1/model/metadata/update_document_response.py +0 -7
  392. dify_oapi/api/knowledge_base/v1/model/metadata/update_request.py +0 -44
  393. dify_oapi/api/knowledge_base/v1/model/metadata/update_request_body.py +0 -24
  394. dify_oapi/api/knowledge_base/v1/model/metadata/update_response.py +0 -13
  395. dify_oapi/api/knowledge_base/v1/model/segment/__init__.py +0 -77
  396. dify_oapi/api/knowledge_base/v1/model/segment/child_chunk_info.py +0 -88
  397. dify_oapi/api/knowledge_base/v1/model/segment/create_child_chunk_request_body.py +0 -23
  398. dify_oapi/api/knowledge_base/v1/model/segment/create_request.py +0 -42
  399. dify_oapi/api/knowledge_base/v1/model/segment/create_request_body.py +0 -25
  400. dify_oapi/api/knowledge_base/v1/model/segment/delete_child_chunk_response.py +0 -5
  401. dify_oapi/api/knowledge_base/v1/model/segment/delete_request.py +0 -40
  402. dify_oapi/api/knowledge_base/v1/model/segment/delete_response.py +0 -5
  403. dify_oapi/api/knowledge_base/v1/model/segment/get_request.py +0 -40
  404. dify_oapi/api/knowledge_base/v1/model/segment/list_request.py +0 -50
  405. dify_oapi/api/knowledge_base/v1/model/segment/segment_data.py +0 -43
  406. dify_oapi/api/knowledge_base/v1/model/segment/segment_info.py +0 -123
  407. dify_oapi/api/knowledge_base/v1/model/segment/segment_types.py +0 -24
  408. dify_oapi/api/knowledge_base/v1/model/segment/update_request.py +0 -48
  409. dify_oapi/api/knowledge_base/v1/model/segment/update_request_body.py +0 -25
  410. dify_oapi/api/knowledge_base/v1/model/tag/__init__.py +0 -41
  411. dify_oapi/api/knowledge_base/v1/model/tag/bind_request.py +0 -32
  412. dify_oapi/api/knowledge_base/v1/model/tag/bind_request_body.py +0 -29
  413. dify_oapi/api/knowledge_base/v1/model/tag/create_request.py +0 -32
  414. dify_oapi/api/knowledge_base/v1/model/tag/create_request_body.py +0 -24
  415. dify_oapi/api/knowledge_base/v1/model/tag/create_response.py +0 -16
  416. dify_oapi/api/knowledge_base/v1/model/tag/delete_request.py +0 -32
  417. dify_oapi/api/knowledge_base/v1/model/tag/delete_request_body.py +0 -24
  418. dify_oapi/api/knowledge_base/v1/model/tag/list_request.py +0 -24
  419. dify_oapi/api/knowledge_base/v1/model/tag/list_response.py +0 -19
  420. dify_oapi/api/knowledge_base/v1/model/tag/query_bound_request.py +0 -30
  421. dify_oapi/api/knowledge_base/v1/model/tag/query_bound_response.py +0 -9
  422. dify_oapi/api/knowledge_base/v1/model/tag/tag_info.py +0 -38
  423. dify_oapi/api/knowledge_base/v1/model/tag/tag_types.py +0 -12
  424. dify_oapi/api/knowledge_base/v1/model/tag/unbind_request.py +0 -32
  425. dify_oapi/api/knowledge_base/v1/model/tag/unbind_request_body.py +0 -29
  426. dify_oapi/api/knowledge_base/v1/model/tag/update_request.py +0 -32
  427. dify_oapi/api/knowledge_base/v1/model/tag/update_request_body.py +0 -29
  428. dify_oapi/api/knowledge_base/v1/model/tag/update_response.py +0 -23
  429. dify_oapi/api/knowledge_base/v1/resource/__init__.py +0 -7
  430. dify_oapi/api/knowledge_base/v1/resource/dataset.py +0 -58
  431. dify_oapi/api/knowledge_base/v1/resource/document.py +0 -107
  432. dify_oapi/api/knowledge_base/v1/resource/metadata.py +0 -65
  433. dify_oapi/api/knowledge_base/v1/resource/segment.py +0 -110
  434. dify_oapi/api/knowledge_base/v1/resource/tag.py +0 -65
  435. dify_oapi/api/knowledge_base/v1/version.py +0 -12
  436. dify_oapi/api/workflow/v1/model/file/__init__.py +0 -1
  437. dify_oapi/api/workflow/v1/model/file/preview_file_request.py +0 -34
  438. dify_oapi/api/workflow/v1/model/file/preview_file_response.py +0 -9
  439. dify_oapi/api/workflow/v1/model/log/log_info.py +0 -57
  440. dify_oapi/api/workflow/v1/model/workflow/run_specific_workflow_request.py +0 -38
  441. dify_oapi/api/workflow/v1/model/workflow/run_specific_workflow_request_body.py +0 -47
  442. dify_oapi/api/workflow/v1/model/workflow/run_specific_workflow_response.py +0 -9
  443. dify_oapi/api/workflow/v1/model/workflow/streaming_event.py +0 -42
  444. dify_oapi/api/workflow/v1/model/workflow/workflow_types.py +0 -54
  445. dify_oapi/api/workflow/v1/resource/file.py +0 -63
  446. dify_oapi/api/workflow/v1/resource/info.py +0 -93
  447. dify_oapi/api/workflow/v1/resource/log.py +0 -43
  448. dify_oapi2-0.3.0.dist-info/RECORD +0 -348
  449. /dify_oapi/api/{knowledge_base → chatflow}/__init__.py +0 -0
  450. /dify_oapi/api/{knowledge_base → chatflow}/v1/__init__.py +0 -0
  451. /dify_oapi/api/{knowledge_base → chatflow}/v1/model/__init__.py +0 -0
  452. /dify_oapi/api/{knowledge_base/v1/model/document → chatflow/v1/resource}/__init__.py +0 -0
  453. /dify_oapi/api/{workflow/v1/model/log → knowledge}/__init__.py +0 -0
  454. /dify_oapi/api/workflow/v1/model/{log/end_user_info.py → end_user_info.py} +0 -0
  455. /dify_oapi/api/workflow/v1/model/{workflow/execution_metadata.py → execution_metadata.py} +0 -0
  456. /dify_oapi/api/workflow/v1/model/{info/file_upload_config.py → file_upload_config.py} +0 -0
  457. /dify_oapi/api/workflow/v1/model/{info/get_info_request.py → get_info_request.py} +0 -0
  458. /dify_oapi/api/workflow/v1/model/{info/get_info_response.py → get_info_response.py} +0 -0
  459. /dify_oapi/api/workflow/v1/model/{info/get_parameters_request.py → get_parameters_request.py} +0 -0
  460. /dify_oapi/api/workflow/v1/model/{info/get_parameters_response.py → get_parameters_response.py} +0 -0
  461. /dify_oapi/api/workflow/v1/model/{info/get_site_request.py → get_site_request.py} +0 -0
  462. /dify_oapi/api/workflow/v1/model/{info/get_site_response.py → get_site_response.py} +0 -0
  463. /dify_oapi/api/workflow/v1/model/{log/get_workflow_logs_request.py → get_workflow_logs_request.py} +0 -0
  464. /dify_oapi/api/workflow/v1/model/{workflow/get_workflow_run_detail_request.py → get_workflow_run_detail_request.py} +0 -0
  465. /dify_oapi/api/workflow/v1/model/{workflow/node_info.py → node_info.py} +0 -0
  466. /dify_oapi/api/workflow/v1/model/{info/parameters_info.py → parameters_info.py} +0 -0
  467. /dify_oapi/api/workflow/v1/model/{workflow/run_workflow_request.py → run_workflow_request.py} +0 -0
  468. /dify_oapi/api/workflow/v1/model/{workflow/run_workflow_response.py → run_workflow_response.py} +0 -0
  469. /dify_oapi/api/workflow/v1/model/{workflow/stop_workflow_request.py → stop_workflow_request.py} +0 -0
  470. /dify_oapi/api/workflow/v1/model/{workflow/stop_workflow_request_body.py → stop_workflow_request_body.py} +0 -0
  471. /dify_oapi/api/workflow/v1/model/{workflow/stop_workflow_response.py → stop_workflow_response.py} +0 -0
  472. /dify_oapi/api/workflow/v1/model/{info/system_parameters.py → system_parameters.py} +0 -0
  473. /dify_oapi/api/workflow/v1/model/{file/upload_file_request.py → upload_file_request.py} +0 -0
  474. /dify_oapi/api/workflow/v1/model/{file/upload_file_request_body.py → upload_file_request_body.py} +0 -0
  475. /dify_oapi/api/workflow/v1/model/{info/user_input_form.py → user_input_form.py} +0 -0
  476. /dify_oapi/api/workflow/v1/model/{workflow/workflow_file_info.py → workflow_file_info.py} +0 -0
  477. /dify_oapi/api/workflow/v1/model/{workflow/workflow_inputs.py → workflow_inputs.py} +0 -0
  478. /dify_oapi/api/workflow/v1/model/{workflow/workflow_run_data.py → workflow_run_data.py} +0 -0
  479. /dify_oapi/api/workflow/v1/model/{workflow/workflow_run_info.py → workflow_run_info.py} +0 -0
  480. {dify_oapi2-0.3.0.dist-info → dify_oapi2-0.5.0.dist-info}/LICENSE +0 -0
  481. {dify_oapi2-0.3.0.dist-info → dify_oapi2-0.5.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,53 @@
1
+ from __future__ import annotations
2
+
3
+ from pydantic import BaseModel, HttpUrl
4
+
5
+ from .chat_types import FileType, TransferMethod
6
+
7
+
8
+ class ChatFile(BaseModel):
9
+ """Chat file model for file upload support."""
10
+
11
+ type: FileType | None = None
12
+ transfer_method: TransferMethod | None = None
13
+ url: HttpUrl | None = None
14
+ upload_file_id: str | None = None
15
+
16
+ @classmethod
17
+ def builder(cls) -> ChatFileBuilder:
18
+ return ChatFileBuilder()
19
+
20
+
21
+ class ChatFileBuilder:
22
+ """Builder for ChatFile."""
23
+
24
+ def __init__(self) -> None:
25
+ self._chat_file = ChatFile()
26
+
27
+ def type(self, type_: FileType) -> ChatFileBuilder:
28
+ """Set file type."""
29
+ self._chat_file.type = type_
30
+ return self
31
+
32
+ def transfer_method(self, transfer_method: TransferMethod) -> ChatFileBuilder:
33
+ """Set transfer method."""
34
+ self._chat_file.transfer_method = transfer_method
35
+ return self
36
+
37
+ def url(self, url: str) -> ChatFileBuilder:
38
+ """Set remote URL."""
39
+ self._chat_file.url = HttpUrl(url=url)
40
+ return self
41
+
42
+ def upload_file_id(self, upload_file_id: str) -> ChatFileBuilder:
43
+ """Set upload file ID."""
44
+ self._chat_file.upload_file_id = upload_file_id
45
+ return self
46
+
47
+ def build(self) -> ChatFile:
48
+ """Build the ChatFile instance."""
49
+ if self._chat_file.transfer_method == "remote_url" and self._chat_file.url is None:
50
+ raise ValueError("URL is required when transfer_method is 'remote_url'")
51
+ if self._chat_file.transfer_method == "local_file" and self._chat_file.upload_file_id is None:
52
+ raise ValueError("upload_file_id is required when transfer_method is 'local_file'")
53
+ return self._chat_file
@@ -1,57 +1,70 @@
1
1
  from __future__ import annotations
2
2
 
3
+ from typing import Any
4
+
3
5
  from pydantic import BaseModel
4
6
 
5
- from .chat_request_file import ChatRequestFile
7
+ from .chat_file import ChatFile
8
+ from .chat_types import ResponseMode
6
9
 
7
10
 
8
11
  class ChatRequestBody(BaseModel):
12
+ """Chat request body model."""
13
+
9
14
  query: str | None = None
10
- inputs: dict | None = None
11
- response_mode: str | None = None
15
+ inputs: dict[str, Any] | None = None
16
+ response_mode: ResponseMode | None = "streaming"
12
17
  user: str | None = None
13
18
  conversation_id: str | None = None
14
- files: list[ChatRequestFile] | None = None
19
+ files: list[ChatFile] | None = None
15
20
  auto_generate_name: bool | None = None
16
21
 
17
- @staticmethod
18
- def builder() -> ChatRequestBodyBuilder:
22
+ @classmethod
23
+ def builder(cls) -> ChatRequestBodyBuilder:
19
24
  return ChatRequestBodyBuilder()
20
25
 
21
26
 
22
27
  class ChatRequestBodyBuilder:
23
- def __init__(self):
28
+ """Builder for ChatRequestBody."""
29
+
30
+ def __init__(self) -> None:
24
31
  self._chat_request_body = ChatRequestBody()
25
32
 
26
33
  def query(self, query: str) -> ChatRequestBodyBuilder:
34
+ """Set user query."""
27
35
  self._chat_request_body.query = query
28
36
  return self
29
37
 
30
- def inputs(self, inputs: dict) -> ChatRequestBodyBuilder:
38
+ def inputs(self, inputs: dict[str, Any]) -> ChatRequestBodyBuilder:
39
+ """Set input parameters."""
31
40
  self._chat_request_body.inputs = inputs
32
41
  return self
33
42
 
34
- def response_mode(self, response_mode: str) -> ChatRequestBodyBuilder:
35
- if response_mode not in ["streaming", "blocking"]:
36
- raise ValueError('response_mode must be either "streaming" or "blocking"')
43
+ def response_mode(self, response_mode: ResponseMode) -> ChatRequestBodyBuilder:
44
+ """Set response mode."""
37
45
  self._chat_request_body.response_mode = response_mode
38
46
  return self
39
47
 
40
48
  def user(self, user: str) -> ChatRequestBodyBuilder:
49
+ """Set user identifier."""
41
50
  self._chat_request_body.user = user
42
51
  return self
43
52
 
44
53
  def conversation_id(self, conversation_id: str) -> ChatRequestBodyBuilder:
54
+ """Set conversation ID."""
45
55
  self._chat_request_body.conversation_id = conversation_id
46
56
  return self
47
57
 
48
- def files(self, files: list[ChatRequestFile]) -> ChatRequestBodyBuilder:
58
+ def files(self, files: list[ChatFile]) -> ChatRequestBodyBuilder:
59
+ """Set files."""
49
60
  self._chat_request_body.files = files
50
61
  return self
51
62
 
52
63
  def auto_generate_name(self, auto_generate_name: bool) -> ChatRequestBodyBuilder:
64
+ """Set auto generate name flag."""
53
65
  self._chat_request_body.auto_generate_name = auto_generate_name
54
66
  return self
55
67
 
56
- def build(self):
68
+ def build(self) -> ChatRequestBody:
69
+ """Build the ChatRequestBody instance."""
57
70
  return self._chat_request_body
@@ -4,8 +4,16 @@ from pydantic import BaseModel
4
4
 
5
5
  from dify_oapi.core.model.base_response import BaseResponse
6
6
 
7
+ from .retriever_resource import RetrieverResource
8
+ from .usage_info import UsageInfo
9
+
7
10
 
8
11
  class ChatResponse(BaseResponse):
12
+ """Chat response model."""
13
+
14
+ event: str | None = None
15
+ task_id: str | None = None
16
+ id: str | None = None
9
17
  message_id: str | None = None
10
18
  conversation_id: str | None = None
11
19
  mode: str | None = None
@@ -15,5 +23,7 @@ class ChatResponse(BaseResponse):
15
23
 
16
24
 
17
25
  class ChatResponseMetadata(BaseModel):
18
- usage: dict | None = None
19
- retriever_resources: list[dict] | None = None
26
+ """Chat response metadata model."""
27
+
28
+ usage: UsageInfo | None = None
29
+ retriever_resources: list[RetrieverResource] | None = None
@@ -0,0 +1,65 @@
1
+ """Chat API type definitions for strict type safety."""
2
+
3
+ from typing import Literal
4
+
5
+ # Response mode types
6
+ ResponseMode = Literal["streaming", "blocking"]
7
+
8
+ # File types
9
+ FileType = Literal["image"]
10
+
11
+ # Transfer method types
12
+ TransferMethod = Literal["remote_url", "local_file"]
13
+
14
+ # Rating types
15
+ Rating = Literal["like", "dislike"]
16
+
17
+ # Sort types
18
+ SortBy = Literal["created_at", "-created_at", "updated_at", "-updated_at"]
19
+
20
+ # Icon types
21
+ IconType = Literal["emoji", "image"]
22
+
23
+ # Auto play types
24
+ AutoPlay = Literal["enabled", "disabled"]
25
+
26
+ # Annotation action types
27
+ AnnotationAction = Literal["enable", "disable"]
28
+
29
+ # Job status types
30
+ JobStatus = Literal["waiting", "running", "completed", "failed"]
31
+
32
+ # Message belongs to types
33
+ MessageBelongsTo = Literal["user", "assistant"]
34
+
35
+ # Conversation status types
36
+ ConversationStatus = Literal["normal", "archived"]
37
+
38
+ # Variable value types
39
+ VariableValueType = Literal["string", "number", "select"]
40
+
41
+ # Form input types
42
+ FormInputType = Literal["text-input", "paragraph", "select"]
43
+
44
+ # Streaming event types
45
+ StreamingEventType = Literal[
46
+ "message",
47
+ "agent_message",
48
+ "tts_message",
49
+ "tts_message_end",
50
+ "agent_thought",
51
+ "message_file",
52
+ "message_end",
53
+ "message_replace",
54
+ "error",
55
+ "ping",
56
+ ]
57
+
58
+ # Audio file formats
59
+ AudioFormat = Literal["mp3", "mp4", "mpeg", "mpga", "m4a", "wav", "webm"]
60
+
61
+ # Image file formats
62
+ ImageFormat = Literal["png", "jpg", "jpeg", "webp", "gif"]
63
+
64
+ # HTTP status codes
65
+ HttpStatusCode = Literal[200, 204, 400, 401, 403, 404, 413, 415, 429, 500, 503]
@@ -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 .chat_types import AnnotationAction
5
+ from .configure_annotation_reply_request_body import ConfigureAnnotationReplyRequestBody
6
+
7
+
8
+ class ConfigureAnnotationReplyRequest(BaseRequest):
9
+ def __init__(self) -> None:
10
+ super().__init__()
11
+ self.request_body: ConfigureAnnotationReplyRequestBody | None = None
12
+
13
+ @staticmethod
14
+ def builder() -> "ConfigureAnnotationReplyRequestBuilder":
15
+ return ConfigureAnnotationReplyRequestBuilder()
16
+
17
+
18
+ class ConfigureAnnotationReplyRequestBuilder:
19
+ def __init__(self) -> None:
20
+ configure_annotation_reply_request = ConfigureAnnotationReplyRequest()
21
+ configure_annotation_reply_request.http_method = HttpMethod.POST
22
+ configure_annotation_reply_request.uri = "/v1/apps/annotation-reply/:action"
23
+ self._configure_annotation_reply_request = configure_annotation_reply_request
24
+
25
+ def action(self, action: AnnotationAction) -> "ConfigureAnnotationReplyRequestBuilder":
26
+ self._configure_annotation_reply_request.paths["action"] = action
27
+ return self
28
+
29
+ def request_body(
30
+ self, request_body: ConfigureAnnotationReplyRequestBody
31
+ ) -> "ConfigureAnnotationReplyRequestBuilder":
32
+ self._configure_annotation_reply_request.request_body = request_body
33
+ return self
34
+
35
+ def build(self) -> ConfigureAnnotationReplyRequest:
36
+ return self._configure_annotation_reply_request
@@ -0,0 +1,39 @@
1
+ from __future__ import annotations
2
+
3
+ from pydantic import BaseModel
4
+
5
+
6
+ class ConfigureAnnotationReplyRequestBody(BaseModel):
7
+ """Request body for configuring annotation reply settings."""
8
+
9
+ embedding_provider_name: str | None = None
10
+ embedding_model_name: str | None = None
11
+ score_threshold: float = 0.0
12
+
13
+ @staticmethod
14
+ def builder() -> ConfigureAnnotationReplyRequestBodyBuilder:
15
+ return ConfigureAnnotationReplyRequestBodyBuilder()
16
+
17
+
18
+ class ConfigureAnnotationReplyRequestBodyBuilder:
19
+ """Builder for ConfigureAnnotationReplyRequestBody."""
20
+
21
+ def __init__(self):
22
+ self._configure_annotation_reply_request_body = ConfigureAnnotationReplyRequestBody()
23
+
24
+ def build(self) -> ConfigureAnnotationReplyRequestBody:
25
+ return self._configure_annotation_reply_request_body
26
+
27
+ def embedding_provider_name(
28
+ self, embedding_provider_name: str | None
29
+ ) -> ConfigureAnnotationReplyRequestBodyBuilder:
30
+ self._configure_annotation_reply_request_body.embedding_provider_name = embedding_provider_name
31
+ return self
32
+
33
+ def embedding_model_name(self, embedding_model_name: str | None) -> ConfigureAnnotationReplyRequestBodyBuilder:
34
+ self._configure_annotation_reply_request_body.embedding_model_name = embedding_model_name
35
+ return self
36
+
37
+ def score_threshold(self, score_threshold: float) -> ConfigureAnnotationReplyRequestBodyBuilder:
38
+ self._configure_annotation_reply_request_body.score_threshold = score_threshold
39
+ return self
@@ -0,0 +1,10 @@
1
+ from dify_oapi.core.model.base_response import BaseResponse
2
+
3
+ from .chat_types import JobStatus
4
+
5
+
6
+ class ConfigureAnnotationReplyResponse(BaseResponse):
7
+ """Response for configuring annotation reply settings."""
8
+
9
+ job_id: str | None = None
10
+ job_status: JobStatus | None = None
@@ -0,0 +1,57 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import Any
4
+
5
+ from pydantic import BaseModel
6
+
7
+ from .chat_types import ConversationStatus
8
+
9
+
10
+ class ConversationInfo(BaseModel):
11
+ id: str | None = None
12
+ name: str | None = None
13
+ inputs: dict[str, Any] | None = None
14
+ status: ConversationStatus | None = None
15
+ introduction: str | None = None
16
+ created_at: int | None = None
17
+ updated_at: int | None = None
18
+
19
+ @staticmethod
20
+ def builder() -> ConversationInfoBuilder:
21
+ return ConversationInfoBuilder()
22
+
23
+
24
+ class ConversationInfoBuilder:
25
+ def __init__(self):
26
+ self._conversation_info = ConversationInfo()
27
+
28
+ def id(self, id: str) -> ConversationInfoBuilder:
29
+ self._conversation_info.id = id
30
+ return self
31
+
32
+ def name(self, name: str) -> ConversationInfoBuilder:
33
+ self._conversation_info.name = name
34
+ return self
35
+
36
+ def inputs(self, inputs: dict[str, Any]) -> ConversationInfoBuilder:
37
+ self._conversation_info.inputs = inputs
38
+ return self
39
+
40
+ def status(self, status: ConversationStatus) -> ConversationInfoBuilder:
41
+ self._conversation_info.status = status
42
+ return self
43
+
44
+ def introduction(self, introduction: str) -> ConversationInfoBuilder:
45
+ self._conversation_info.introduction = introduction
46
+ return self
47
+
48
+ def created_at(self, created_at: int) -> ConversationInfoBuilder:
49
+ self._conversation_info.created_at = created_at
50
+ return self
51
+
52
+ def updated_at(self, updated_at: int) -> ConversationInfoBuilder:
53
+ self._conversation_info.updated_at = updated_at
54
+ return self
55
+
56
+ def build(self) -> ConversationInfo:
57
+ return self._conversation_info
@@ -0,0 +1,55 @@
1
+ from __future__ import annotations
2
+
3
+ from pydantic import BaseModel
4
+
5
+ from .chat_types import VariableValueType
6
+
7
+
8
+ class ConversationVariable(BaseModel):
9
+ id: str | None = None
10
+ name: str | None = None
11
+ value_type: VariableValueType | None = None
12
+ value: str | None = None
13
+ description: str | None = None
14
+ created_at: int | None = None
15
+ updated_at: int | None = None
16
+
17
+ @staticmethod
18
+ def builder() -> ConversationVariableBuilder:
19
+ return ConversationVariableBuilder()
20
+
21
+
22
+ class ConversationVariableBuilder:
23
+ def __init__(self):
24
+ self._conversation_variable = ConversationVariable()
25
+
26
+ def id(self, id: str) -> ConversationVariableBuilder:
27
+ self._conversation_variable.id = id
28
+ return self
29
+
30
+ def name(self, name: str) -> ConversationVariableBuilder:
31
+ self._conversation_variable.name = name
32
+ return self
33
+
34
+ def value_type(self, value_type: VariableValueType) -> ConversationVariableBuilder:
35
+ self._conversation_variable.value_type = value_type
36
+ return self
37
+
38
+ def value(self, value: str) -> ConversationVariableBuilder:
39
+ self._conversation_variable.value = value
40
+ return self
41
+
42
+ def description(self, description: str) -> ConversationVariableBuilder:
43
+ self._conversation_variable.description = description
44
+ return self
45
+
46
+ def created_at(self, created_at: int) -> ConversationVariableBuilder:
47
+ self._conversation_variable.created_at = created_at
48
+ return self
49
+
50
+ def updated_at(self, updated_at: int) -> ConversationVariableBuilder:
51
+ self._conversation_variable.updated_at = updated_at
52
+ return self
53
+
54
+ def build(self) -> ConversationVariable:
55
+ return self._conversation_variable
@@ -0,0 +1,29 @@
1
+ from dify_oapi.core.enum import HttpMethod
2
+ from dify_oapi.core.model.base_request import BaseRequest
3
+
4
+ from .create_annotation_request_body import CreateAnnotationRequestBody
5
+
6
+
7
+ class CreateAnnotationRequest(BaseRequest):
8
+ def __init__(self) -> None:
9
+ super().__init__()
10
+ self.request_body: CreateAnnotationRequestBody | None = None
11
+
12
+ @staticmethod
13
+ def builder() -> "CreateAnnotationRequestBuilder":
14
+ return CreateAnnotationRequestBuilder()
15
+
16
+
17
+ class CreateAnnotationRequestBuilder:
18
+ def __init__(self) -> None:
19
+ create_annotation_request = CreateAnnotationRequest()
20
+ create_annotation_request.http_method = HttpMethod.POST
21
+ create_annotation_request.uri = "/v1/apps/annotations"
22
+ self._create_annotation_request = create_annotation_request
23
+
24
+ def request_body(self, request_body: CreateAnnotationRequestBody) -> "CreateAnnotationRequestBuilder":
25
+ self._create_annotation_request.request_body = request_body
26
+ return self
27
+
28
+ def build(self) -> CreateAnnotationRequest:
29
+ return self._create_annotation_request
@@ -0,0 +1,32 @@
1
+ from __future__ import annotations
2
+
3
+ from pydantic import BaseModel
4
+
5
+
6
+ class CreateAnnotationRequestBody(BaseModel):
7
+ """Request body for creating annotation."""
8
+
9
+ question: str = ""
10
+ answer: str = ""
11
+
12
+ @staticmethod
13
+ def builder() -> CreateAnnotationRequestBodyBuilder:
14
+ return CreateAnnotationRequestBodyBuilder()
15
+
16
+
17
+ class CreateAnnotationRequestBodyBuilder:
18
+ """Builder for CreateAnnotationRequestBody."""
19
+
20
+ def __init__(self):
21
+ self._create_annotation_request_body = CreateAnnotationRequestBody()
22
+
23
+ def build(self) -> CreateAnnotationRequestBody:
24
+ return self._create_annotation_request_body
25
+
26
+ def question(self, question: str) -> CreateAnnotationRequestBodyBuilder:
27
+ self._create_annotation_request_body.question = question
28
+ return self
29
+
30
+ def answer(self, answer: str) -> CreateAnnotationRequestBodyBuilder:
31
+ self._create_annotation_request_body.answer = answer
32
+ return self
@@ -0,0 +1,9 @@
1
+ from dify_oapi.core.model.base_response import BaseResponse
2
+
3
+ from .annotation_info import AnnotationInfo
4
+
5
+
6
+ class CreateAnnotationResponse(AnnotationInfo, BaseResponse):
7
+ """Response for creating annotation."""
8
+
9
+ pass
@@ -0,0 +1,26 @@
1
+ from dify_oapi.core.enum import HttpMethod
2
+ from dify_oapi.core.model.base_request import BaseRequest
3
+
4
+
5
+ class DeleteAnnotationRequest(BaseRequest):
6
+ def __init__(self) -> None:
7
+ super().__init__()
8
+
9
+ @staticmethod
10
+ def builder() -> "DeleteAnnotationRequestBuilder":
11
+ return DeleteAnnotationRequestBuilder()
12
+
13
+
14
+ class DeleteAnnotationRequestBuilder:
15
+ def __init__(self) -> None:
16
+ delete_annotation_request = DeleteAnnotationRequest()
17
+ delete_annotation_request.http_method = HttpMethod.DELETE
18
+ delete_annotation_request.uri = "/v1/apps/annotations/:annotation_id"
19
+ self._delete_annotation_request = delete_annotation_request
20
+
21
+ def annotation_id(self, annotation_id: str) -> "DeleteAnnotationRequestBuilder":
22
+ self._delete_annotation_request.paths["annotation_id"] = annotation_id
23
+ return self
24
+
25
+ def build(self) -> DeleteAnnotationRequest:
26
+ return self._delete_annotation_request
@@ -0,0 +1,7 @@
1
+ from dify_oapi.core.model.base_response import BaseResponse
2
+
3
+
4
+ class DeleteAnnotationResponse(BaseResponse):
5
+ """Response for deleting annotation (204 No Content)."""
6
+
7
+ pass
@@ -0,0 +1,75 @@
1
+ from __future__ import annotations
2
+
3
+ from pydantic import BaseModel
4
+
5
+ from .chat_types import Rating
6
+
7
+
8
+ class FeedbackInfo(BaseModel):
9
+ id: str | None = None
10
+ app_id: str | None = None
11
+ conversation_id: str | None = None
12
+ message_id: str | None = None
13
+ rating: Rating | None = None
14
+ content: str | None = None
15
+ from_source: str | None = None
16
+ from_end_user_id: str | None = None
17
+ from_account_id: str | None = None
18
+ created_at: str | None = None
19
+ updated_at: str | None = None
20
+
21
+ @staticmethod
22
+ def builder() -> FeedbackInfoBuilder:
23
+ return FeedbackInfoBuilder()
24
+
25
+
26
+ class FeedbackInfoBuilder:
27
+ def __init__(self):
28
+ self._feedback_info = FeedbackInfo()
29
+
30
+ def id(self, id: str) -> FeedbackInfoBuilder:
31
+ self._feedback_info.id = id
32
+ return self
33
+
34
+ def app_id(self, app_id: str) -> FeedbackInfoBuilder:
35
+ self._feedback_info.app_id = app_id
36
+ return self
37
+
38
+ def conversation_id(self, conversation_id: str) -> FeedbackInfoBuilder:
39
+ self._feedback_info.conversation_id = conversation_id
40
+ return self
41
+
42
+ def message_id(self, message_id: str) -> FeedbackInfoBuilder:
43
+ self._feedback_info.message_id = message_id
44
+ return self
45
+
46
+ def rating(self, rating: Rating) -> FeedbackInfoBuilder:
47
+ self._feedback_info.rating = rating
48
+ return self
49
+
50
+ def content(self, content: str) -> FeedbackInfoBuilder:
51
+ self._feedback_info.content = content
52
+ return self
53
+
54
+ def from_source(self, from_source: str) -> FeedbackInfoBuilder:
55
+ self._feedback_info.from_source = from_source
56
+ return self
57
+
58
+ def from_end_user_id(self, from_end_user_id: str) -> FeedbackInfoBuilder:
59
+ self._feedback_info.from_end_user_id = from_end_user_id
60
+ return self
61
+
62
+ def from_account_id(self, from_account_id: str) -> FeedbackInfoBuilder:
63
+ self._feedback_info.from_account_id = from_account_id
64
+ return self
65
+
66
+ def created_at(self, created_at: str) -> FeedbackInfoBuilder:
67
+ self._feedback_info.created_at = created_at
68
+ return self
69
+
70
+ def updated_at(self, updated_at: str) -> FeedbackInfoBuilder:
71
+ self._feedback_info.updated_at = updated_at
72
+ return self
73
+
74
+ def build(self) -> FeedbackInfo:
75
+ return self._feedback_info
@@ -1,9 +1,13 @@
1
+ """File information model for Chat API."""
2
+
1
3
  from __future__ import annotations
2
4
 
3
5
  from pydantic import BaseModel
4
6
 
5
7
 
6
8
  class FileInfo(BaseModel):
9
+ """File information model."""
10
+
7
11
  id: str | None = None
8
12
  name: str | None = None
9
13
  size: int | None = None
@@ -18,6 +22,8 @@ class FileInfo(BaseModel):
18
22
 
19
23
 
20
24
  class FileInfoBuilder:
25
+ """Builder for FileInfo."""
26
+
21
27
  def __init__(self):
22
28
  self._file_info = FileInfo()
23
29
 
@@ -0,0 +1,32 @@
1
+ from dify_oapi.core.enum import HttpMethod
2
+ from dify_oapi.core.model.base_request import BaseRequest
3
+
4
+ from .chat_types import AnnotationAction
5
+
6
+
7
+ class GetAnnotationReplyStatusRequest(BaseRequest):
8
+ def __init__(self) -> None:
9
+ super().__init__()
10
+
11
+ @staticmethod
12
+ def builder() -> "GetAnnotationReplyStatusRequestBuilder":
13
+ return GetAnnotationReplyStatusRequestBuilder()
14
+
15
+
16
+ class GetAnnotationReplyStatusRequestBuilder:
17
+ def __init__(self) -> None:
18
+ get_annotation_reply_status_request = GetAnnotationReplyStatusRequest()
19
+ get_annotation_reply_status_request.http_method = HttpMethod.GET
20
+ get_annotation_reply_status_request.uri = "/v1/apps/annotation-reply/:action/status/:job_id"
21
+ self._get_annotation_reply_status_request = get_annotation_reply_status_request
22
+
23
+ def action(self, action: AnnotationAction) -> "GetAnnotationReplyStatusRequestBuilder":
24
+ self._get_annotation_reply_status_request.paths["action"] = action
25
+ return self
26
+
27
+ def job_id(self, job_id: str) -> "GetAnnotationReplyStatusRequestBuilder":
28
+ self._get_annotation_reply_status_request.paths["job_id"] = job_id
29
+ return self
30
+
31
+ def build(self) -> GetAnnotationReplyStatusRequest:
32
+ return self._get_annotation_reply_status_request