dify-oapi2 0.2.0__py3-none-any.whl → 0.4.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 (295) hide show
  1. dify_oapi/api/completion/v1/model/completion/completion_inputs.py +28 -4
  2. dify_oapi/api/completion/v1/model/completion/completion_types.py +19 -1
  3. dify_oapi/api/completion/v1/model/completion/input_file_object.py +58 -0
  4. dify_oapi/api/completion/v1/model/completion/send_message_request_body.py +40 -44
  5. dify_oapi/api/completion/v1/model/completion/usage.py +4 -2
  6. dify_oapi/api/completion/v1/model/info/feature_config.py +91 -0
  7. dify_oapi/api/completion/v1/model/info/parameters_info.py +16 -8
  8. dify_oapi/api/completion/v1/model/info/site_info.py +3 -3
  9. dify_oapi/api/completion/v1/model/info/user_input_form.py +131 -16
  10. dify_oapi/api/knowledge/service.py +8 -0
  11. dify_oapi/api/knowledge/v1/model/batch_info.py +86 -0
  12. dify_oapi/api/knowledge/v1/model/bind_tags_to_dataset_request.py +30 -0
  13. dify_oapi/api/knowledge/v1/model/bind_tags_to_dataset_request_body.py +26 -0
  14. dify_oapi/api/{knowledge_base/v1/model/tag/bind_response.py → knowledge/v1/model/bind_tags_to_dataset_response.py} +1 -3
  15. dify_oapi/api/knowledge/v1/model/child_chunk_content.py +34 -0
  16. dify_oapi/api/knowledge/v1/model/child_chunk_info.py +101 -0
  17. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/create_child_chunk_request.py +8 -2
  18. dify_oapi/api/knowledge/v1/model/create_child_chunk_request_body.py +44 -0
  19. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/create_child_chunk_response.py +5 -1
  20. dify_oapi/api/knowledge/v1/model/create_dataset_request.py +30 -0
  21. dify_oapi/api/knowledge/v1/model/create_dataset_request_body.py +67 -0
  22. dify_oapi/api/knowledge/v1/model/create_dataset_response.py +7 -0
  23. dify_oapi/api/knowledge/v1/model/create_document_by_file_request.py +55 -0
  24. dify_oapi/api/knowledge/v1/model/create_document_by_file_request_body.py +73 -0
  25. dify_oapi/api/{knowledge_base/v1/model/document/create_by_file_response.py → knowledge/v1/model/create_document_by_file_response.py} +1 -1
  26. dify_oapi/api/knowledge/v1/model/create_document_by_text_request.py +44 -0
  27. dify_oapi/api/knowledge/v1/model/create_document_by_text_request_body.py +73 -0
  28. dify_oapi/api/{knowledge_base/v1/model/document/create_by_text_response.py → knowledge/v1/model/create_document_by_text_response.py} +3 -3
  29. dify_oapi/api/knowledge/v1/model/create_segment_request.py +50 -0
  30. dify_oapi/api/knowledge/v1/model/create_segment_request_body.py +31 -0
  31. dify_oapi/api/{knowledge_base/v1/model/segment/create_response.py → knowledge/v1/model/create_segment_response.py} +5 -2
  32. dify_oapi/api/knowledge/v1/model/create_tag_request.py +30 -0
  33. dify_oapi/api/knowledge/v1/model/create_tag_request_body.py +28 -0
  34. dify_oapi/api/knowledge/v1/model/create_tag_response.py +7 -0
  35. dify_oapi/api/knowledge/v1/model/data_source_info.py +34 -0
  36. dify_oapi/api/knowledge/v1/model/dataset_info.py +122 -0
  37. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/delete_child_chunk_request.py +8 -2
  38. dify_oapi/api/knowledge/v1/model/delete_child_chunk_response.py +9 -0
  39. dify_oapi/api/knowledge/v1/model/delete_dataset_request.py +28 -0
  40. dify_oapi/api/{knowledge_base/v1/model/tag/delete_response.py → knowledge/v1/model/delete_dataset_response.py} +1 -3
  41. dify_oapi/api/knowledge/v1/model/delete_document_request.py +42 -0
  42. dify_oapi/api/knowledge/v1/model/delete_document_response.py +9 -0
  43. dify_oapi/api/knowledge/v1/model/delete_segment_request.py +48 -0
  44. dify_oapi/api/knowledge/v1/model/delete_segment_response.py +9 -0
  45. dify_oapi/api/knowledge/v1/model/delete_tag_request.py +30 -0
  46. dify_oapi/api/knowledge/v1/model/delete_tag_request_body.py +21 -0
  47. dify_oapi/api/{knowledge_base/v1/model/tag/unbind_response.py → knowledge/v1/model/delete_tag_response.py} +1 -3
  48. dify_oapi/api/knowledge/v1/model/document_info.py +132 -0
  49. dify_oapi/api/knowledge/v1/model/document_metadata.py +39 -0
  50. dify_oapi/api/knowledge/v1/model/embedding_model_parameters.py +47 -0
  51. dify_oapi/api/knowledge/v1/model/external_knowledge_info.py +34 -0
  52. dify_oapi/api/knowledge/v1/model/file_info.py +71 -0
  53. dify_oapi/api/knowledge/v1/model/get_batch_indexing_status_request.py +42 -0
  54. dify_oapi/api/knowledge/v1/model/get_batch_indexing_status_response.py +22 -0
  55. dify_oapi/api/knowledge/v1/model/get_dataset_request.py +28 -0
  56. dify_oapi/api/knowledge/v1/model/get_dataset_response.py +7 -0
  57. dify_oapi/api/knowledge/v1/model/get_dataset_tags_request.py +28 -0
  58. dify_oapi/api/knowledge/v1/model/get_dataset_tags_response.py +8 -0
  59. dify_oapi/api/knowledge/v1/model/get_document_request.py +42 -0
  60. dify_oapi/api/knowledge/v1/model/get_document_response.py +11 -0
  61. dify_oapi/api/knowledge/v1/model/get_segment_request.py +48 -0
  62. dify_oapi/api/{knowledge_base/v1/model/segment/get_response.py → knowledge/v1/model/get_segment_response.py} +5 -1
  63. dify_oapi/api/knowledge/v1/model/get_text_embedding_models_request.py +22 -0
  64. dify_oapi/api/knowledge/v1/model/get_text_embedding_models_response.py +7 -0
  65. dify_oapi/api/knowledge/v1/model/get_upload_file_info_request.py +42 -0
  66. dify_oapi/api/knowledge/v1/model/get_upload_file_info_response.py +11 -0
  67. dify_oapi/api/knowledge/v1/model/knowledge_types.py +100 -0
  68. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/list_child_chunks_request.py +10 -4
  69. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/list_child_chunks_response.py +4 -0
  70. dify_oapi/api/knowledge/v1/model/list_datasets_request.py +30 -0
  71. dify_oapi/api/{knowledge_base/v1/model/dataset/list_response.py → knowledge/v1/model/list_datasets_response.py} +1 -3
  72. dify_oapi/api/knowledge/v1/model/list_documents_request.py +48 -0
  73. dify_oapi/api/{knowledge_base/v1/model/document/list_response.py → knowledge/v1/model/list_documents_response.py} +3 -3
  74. dify_oapi/api/knowledge/v1/model/list_segments_request.py +60 -0
  75. dify_oapi/api/{knowledge_base/v1/model/segment/list_response.py → knowledge/v1/model/list_segments_response.py} +5 -2
  76. dify_oapi/api/knowledge/v1/model/list_tags_request.py +28 -0
  77. dify_oapi/api/knowledge/v1/model/list_tags_response.py +7 -0
  78. dify_oapi/api/knowledge/v1/model/model_credentials.py +34 -0
  79. dify_oapi/api/knowledge/v1/model/model_info.py +85 -0
  80. dify_oapi/api/knowledge/v1/model/model_parameters.py +34 -0
  81. dify_oapi/api/knowledge/v1/model/pagination_info.py +44 -0
  82. dify_oapi/api/knowledge/v1/model/preprocessing_rule.py +36 -0
  83. dify_oapi/api/knowledge/v1/model/process_rule.py +43 -0
  84. dify_oapi/api/knowledge/v1/model/process_rules.py +49 -0
  85. dify_oapi/api/knowledge/v1/model/query_info.py +29 -0
  86. dify_oapi/api/knowledge/v1/model/reranking_mode.py +36 -0
  87. dify_oapi/api/knowledge/v1/model/reranking_model.py +47 -0
  88. dify_oapi/api/knowledge/v1/model/retrieval_model.py +62 -0
  89. dify_oapi/api/knowledge/v1/model/retrieval_record.py +28 -0
  90. dify_oapi/api/knowledge/v1/model/retrieval_segment_info.py +41 -0
  91. dify_oapi/api/knowledge/v1/model/retrieve_from_dataset_request.py +36 -0
  92. dify_oapi/api/knowledge/v1/model/retrieve_from_dataset_request_body.py +38 -0
  93. dify_oapi/api/knowledge/v1/model/retrieve_from_dataset_response.py +9 -0
  94. dify_oapi/api/knowledge/v1/model/segment_content.py +39 -0
  95. dify_oapi/api/knowledge/v1/model/segment_document_info.py +41 -0
  96. dify_oapi/api/knowledge/v1/model/segment_info.py +131 -0
  97. dify_oapi/api/knowledge/v1/model/segmentation_rule.py +44 -0
  98. dify_oapi/api/knowledge/v1/model/subchunk_segmentation_rule.py +39 -0
  99. dify_oapi/api/knowledge/v1/model/tag_info.py +56 -0
  100. dify_oapi/api/knowledge/v1/model/unbind_tags_from_dataset_request.py +30 -0
  101. dify_oapi/api/knowledge/v1/model/unbind_tags_from_dataset_request_body.py +26 -0
  102. dify_oapi/api/{knowledge_base/v1/model/metadata/toggle_builtin_response.py → knowledge/v1/model/unbind_tags_from_dataset_response.py} +1 -3
  103. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/update_child_chunk_request.py +8 -2
  104. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/update_child_chunk_request_body.py +12 -1
  105. dify_oapi/api/{knowledge_base/v1/model/segment → knowledge/v1/model}/update_child_chunk_response.py +4 -0
  106. dify_oapi/api/knowledge/v1/model/update_dataset_request.py +36 -0
  107. dify_oapi/api/knowledge/v1/model/update_dataset_request_body.py +62 -0
  108. dify_oapi/api/knowledge/v1/model/update_dataset_response.py +7 -0
  109. dify_oapi/api/knowledge/v1/model/update_document_by_file_request.py +61 -0
  110. dify_oapi/api/knowledge/v1/model/update_document_by_file_request_body.py +68 -0
  111. dify_oapi/api/{knowledge_base/v1/model/document/update_by_file_response.py → knowledge/v1/model/update_document_by_file_response.py} +3 -3
  112. dify_oapi/api/knowledge/v1/model/update_document_by_text_request.py +50 -0
  113. dify_oapi/api/knowledge/v1/model/update_document_by_text_request_body.py +73 -0
  114. dify_oapi/api/{knowledge_base/v1/model/document/update_by_text_response.py → knowledge/v1/model/update_document_by_text_response.py} +2 -4
  115. dify_oapi/api/knowledge/v1/model/update_document_status_request.py +51 -0
  116. dify_oapi/api/knowledge/v1/model/update_document_status_request_body.py +29 -0
  117. dify_oapi/api/knowledge/v1/model/update_document_status_response.py +9 -0
  118. dify_oapi/api/knowledge/v1/model/update_segment_request.py +56 -0
  119. dify_oapi/api/knowledge/v1/model/update_segment_request_body.py +31 -0
  120. dify_oapi/api/{knowledge_base/v1/model/segment/update_response.py → knowledge/v1/model/update_segment_response.py} +5 -1
  121. dify_oapi/api/knowledge/v1/model/update_tag_request.py +30 -0
  122. dify_oapi/api/knowledge/v1/model/update_tag_request_body.py +26 -0
  123. dify_oapi/api/knowledge/v1/model/update_tag_response.py +7 -0
  124. dify_oapi/api/knowledge/v1/resource/__init__.py +8 -0
  125. dify_oapi/api/knowledge/v1/resource/chunk.py +55 -0
  126. dify_oapi/api/knowledge/v1/resource/dataset.py +69 -0
  127. dify_oapi/api/knowledge/v1/resource/document.py +135 -0
  128. dify_oapi/api/knowledge/v1/resource/model.py +25 -0
  129. dify_oapi/api/knowledge/v1/resource/segment.py +55 -0
  130. dify_oapi/api/knowledge/v1/resource/tag.py +81 -0
  131. dify_oapi/api/knowledge/v1/version.py +18 -0
  132. dify_oapi/api/workflow/v1/model/app_info.py +45 -0
  133. dify_oapi/api/workflow/v1/model/end_user_info.py +38 -0
  134. dify_oapi/api/workflow/v1/model/execution_metadata.py +33 -0
  135. dify_oapi/api/workflow/v1/model/file_upload_config.py +45 -0
  136. dify_oapi/api/workflow/v1/model/file_upload_info.py +53 -0
  137. dify_oapi/api/workflow/v1/model/get_info_request.py +24 -0
  138. dify_oapi/api/{knowledge_base/v1/model/metadata/update_document_response.py → workflow/v1/model/get_info_response.py} +4 -2
  139. dify_oapi/api/workflow/v1/model/get_parameters_request.py +24 -0
  140. dify_oapi/api/{knowledge_base/v1/model/document/delete_response.py → workflow/v1/model/get_parameters_response.py} +2 -2
  141. dify_oapi/api/workflow/v1/model/get_site_request.py +24 -0
  142. dify_oapi/api/{knowledge_base/v1/model/metadata/delete_response.py → workflow/v1/model/get_site_response.py} +4 -2
  143. dify_oapi/api/workflow/v1/model/get_workflow_logs_request.py +48 -0
  144. dify_oapi/api/workflow/v1/model/get_workflow_logs_response.py +13 -0
  145. dify_oapi/api/workflow/v1/model/get_workflow_run_detail_request.py +30 -0
  146. dify_oapi/api/workflow/v1/model/get_workflow_run_detail_response.py +39 -0
  147. dify_oapi/api/workflow/v1/model/node_info.py +88 -0
  148. dify_oapi/api/workflow/v1/model/parameters_info.py +37 -0
  149. dify_oapi/api/workflow/v1/model/run_workflow_request.py +4 -4
  150. dify_oapi/api/workflow/v1/model/run_workflow_request_body.py +22 -17
  151. dify_oapi/api/workflow/v1/model/run_workflow_response.py +3 -18
  152. dify_oapi/api/workflow/v1/model/site_info.py +75 -0
  153. dify_oapi/api/workflow/v1/model/stop_workflow_request.py +9 -9
  154. dify_oapi/api/workflow/v1/model/stop_workflow_request_body.py +3 -3
  155. dify_oapi/api/workflow/v1/model/stop_workflow_response.py +2 -0
  156. dify_oapi/api/workflow/v1/model/system_parameters.py +38 -0
  157. dify_oapi/api/workflow/v1/model/upload_file_request.py +42 -0
  158. dify_oapi/api/workflow/v1/model/upload_file_request_body.py +23 -0
  159. dify_oapi/api/{knowledge_base/v1/model/dataset/delete_response.py → workflow/v1/model/upload_file_response.py} +2 -2
  160. dify_oapi/api/workflow/v1/model/user_input_form.py +43 -0
  161. dify_oapi/api/workflow/v1/model/workflow_file_info.py +40 -0
  162. dify_oapi/api/workflow/v1/model/workflow_inputs.py +56 -0
  163. dify_oapi/api/workflow/v1/model/workflow_log_info.py +57 -0
  164. dify_oapi/api/workflow/v1/model/workflow_run_data.py +72 -0
  165. dify_oapi/api/workflow/v1/model/workflow_run_info.py +35 -0
  166. dify_oapi/api/workflow/v1/model/workflow_run_log_info.py +65 -0
  167. dify_oapi/api/workflow/v1/model/workflow_types.py +54 -0
  168. dify_oapi/api/workflow/v1/resource/__init__.py +0 -1
  169. dify_oapi/api/workflow/v1/resource/workflow.py +73 -43
  170. dify_oapi/api/workflow/v1/version.py +2 -2
  171. dify_oapi/client.py +6 -6
  172. {dify_oapi2-0.2.0.dist-info → dify_oapi2-0.4.0.dist-info}/METADATA +16 -12
  173. dify_oapi2-0.4.0.dist-info/RECORD +324 -0
  174. dify_oapi/api/knowledge_base/service.py +0 -8
  175. dify_oapi/api/knowledge_base/v1/model/dataset/__init__.py +0 -49
  176. dify_oapi/api/knowledge_base/v1/model/dataset/create_request.py +0 -32
  177. dify_oapi/api/knowledge_base/v1/model/dataset/create_request_body.py +0 -72
  178. dify_oapi/api/knowledge_base/v1/model/dataset/create_response.py +0 -11
  179. dify_oapi/api/knowledge_base/v1/model/dataset/dataset_info.py +0 -150
  180. dify_oapi/api/knowledge_base/v1/model/dataset/dataset_types.py +0 -36
  181. dify_oapi/api/knowledge_base/v1/model/dataset/delete_request.py +0 -30
  182. dify_oapi/api/knowledge_base/v1/model/dataset/external_knowledge_info.py +0 -38
  183. dify_oapi/api/knowledge_base/v1/model/dataset/filter_condition.py +0 -72
  184. dify_oapi/api/knowledge_base/v1/model/dataset/get_request.py +0 -30
  185. dify_oapi/api/knowledge_base/v1/model/dataset/get_response.py +0 -11
  186. dify_oapi/api/knowledge_base/v1/model/dataset/list_request.py +0 -45
  187. dify_oapi/api/knowledge_base/v1/model/dataset/metadata_filtering_conditions.py +0 -30
  188. dify_oapi/api/knowledge_base/v1/model/dataset/reranking_model.py +0 -28
  189. dify_oapi/api/knowledge_base/v1/model/dataset/retrieval_model.py +0 -144
  190. dify_oapi/api/knowledge_base/v1/model/dataset/retrieve_request.py +0 -38
  191. dify_oapi/api/knowledge_base/v1/model/dataset/retrieve_request_body.py +0 -38
  192. dify_oapi/api/knowledge_base/v1/model/dataset/retrieve_response.py +0 -53
  193. dify_oapi/api/knowledge_base/v1/model/dataset/update_request.py +0 -38
  194. dify_oapi/api/knowledge_base/v1/model/dataset/update_request_body.py +0 -58
  195. dify_oapi/api/knowledge_base/v1/model/dataset/update_response.py +0 -11
  196. dify_oapi/api/knowledge_base/v1/model/document/__init__.py +0 -0
  197. dify_oapi/api/knowledge_base/v1/model/document/create_by_file_request.py +0 -53
  198. dify_oapi/api/knowledge_base/v1/model/document/create_by_file_request_body.py +0 -31
  199. dify_oapi/api/knowledge_base/v1/model/document/create_by_file_request_body_data.py +0 -78
  200. dify_oapi/api/knowledge_base/v1/model/document/create_by_text_request.py +0 -38
  201. dify_oapi/api/knowledge_base/v1/model/document/create_by_text_request_body.py +0 -75
  202. dify_oapi/api/knowledge_base/v1/model/document/data_source_info.py +0 -30
  203. dify_oapi/api/knowledge_base/v1/model/document/delete_request.py +0 -38
  204. dify_oapi/api/knowledge_base/v1/model/document/document_info.py +0 -164
  205. dify_oapi/api/knowledge_base/v1/model/document/document_types.py +0 -36
  206. dify_oapi/api/knowledge_base/v1/model/document/get_request.py +0 -40
  207. dify_oapi/api/knowledge_base/v1/model/document/get_response.py +0 -9
  208. dify_oapi/api/knowledge_base/v1/model/document/get_upload_file_request.py +0 -38
  209. dify_oapi/api/knowledge_base/v1/model/document/get_upload_file_response.py +0 -11
  210. dify_oapi/api/knowledge_base/v1/model/document/indexing_status_info.py +0 -80
  211. dify_oapi/api/knowledge_base/v1/model/document/indexing_status_request.py +0 -36
  212. dify_oapi/api/knowledge_base/v1/model/document/indexing_status_response.py +0 -11
  213. dify_oapi/api/knowledge_base/v1/model/document/list_request.py +0 -42
  214. dify_oapi/api/knowledge_base/v1/model/document/pre_processing_rule.py +0 -32
  215. dify_oapi/api/knowledge_base/v1/model/document/process_rule.py +0 -34
  216. dify_oapi/api/knowledge_base/v1/model/document/retrieval_model.py +0 -54
  217. dify_oapi/api/knowledge_base/v1/model/document/rules.py +0 -31
  218. dify_oapi/api/knowledge_base/v1/model/document/segmentation.py +0 -35
  219. dify_oapi/api/knowledge_base/v1/model/document/subchunk_segmentation.py +0 -35
  220. dify_oapi/api/knowledge_base/v1/model/document/update_by_file_request.py +0 -53
  221. dify_oapi/api/knowledge_base/v1/model/document/update_by_file_request_body.py +0 -26
  222. dify_oapi/api/knowledge_base/v1/model/document/update_by_file_request_body_data.py +0 -40
  223. dify_oapi/api/knowledge_base/v1/model/document/update_by_text_request.py +0 -55
  224. dify_oapi/api/knowledge_base/v1/model/document/update_by_text_request_body.py +0 -46
  225. dify_oapi/api/knowledge_base/v1/model/document/update_status_request.py +0 -55
  226. dify_oapi/api/knowledge_base/v1/model/document/update_status_request_body.py +0 -32
  227. dify_oapi/api/knowledge_base/v1/model/document/update_status_response.py +0 -9
  228. dify_oapi/api/knowledge_base/v1/model/document/upload_file_info.py +0 -65
  229. dify_oapi/api/knowledge_base/v1/model/metadata/__init__.py +0 -35
  230. dify_oapi/api/knowledge_base/v1/model/metadata/create_request.py +0 -38
  231. dify_oapi/api/knowledge_base/v1/model/metadata/create_request_body.py +0 -31
  232. dify_oapi/api/knowledge_base/v1/model/metadata/create_response.py +0 -13
  233. dify_oapi/api/knowledge_base/v1/model/metadata/delete_request.py +0 -36
  234. dify_oapi/api/knowledge_base/v1/model/metadata/list_request.py +0 -30
  235. dify_oapi/api/knowledge_base/v1/model/metadata/list_response.py +0 -9
  236. dify_oapi/api/knowledge_base/v1/model/metadata/metadata_info.py +0 -38
  237. dify_oapi/api/knowledge_base/v1/model/metadata/metadata_types.py +0 -15
  238. dify_oapi/api/knowledge_base/v1/model/metadata/toggle_builtin_request.py +0 -36
  239. dify_oapi/api/knowledge_base/v1/model/metadata/update_document_request.py +0 -38
  240. dify_oapi/api/knowledge_base/v1/model/metadata/update_document_request_body.py +0 -79
  241. dify_oapi/api/knowledge_base/v1/model/metadata/update_request.py +0 -44
  242. dify_oapi/api/knowledge_base/v1/model/metadata/update_request_body.py +0 -24
  243. dify_oapi/api/knowledge_base/v1/model/metadata/update_response.py +0 -13
  244. dify_oapi/api/knowledge_base/v1/model/segment/__init__.py +0 -77
  245. dify_oapi/api/knowledge_base/v1/model/segment/child_chunk_info.py +0 -88
  246. dify_oapi/api/knowledge_base/v1/model/segment/create_child_chunk_request_body.py +0 -23
  247. dify_oapi/api/knowledge_base/v1/model/segment/create_request.py +0 -42
  248. dify_oapi/api/knowledge_base/v1/model/segment/create_request_body.py +0 -25
  249. dify_oapi/api/knowledge_base/v1/model/segment/delete_child_chunk_response.py +0 -5
  250. dify_oapi/api/knowledge_base/v1/model/segment/delete_request.py +0 -40
  251. dify_oapi/api/knowledge_base/v1/model/segment/delete_response.py +0 -5
  252. dify_oapi/api/knowledge_base/v1/model/segment/get_request.py +0 -40
  253. dify_oapi/api/knowledge_base/v1/model/segment/list_request.py +0 -50
  254. dify_oapi/api/knowledge_base/v1/model/segment/segment_data.py +0 -43
  255. dify_oapi/api/knowledge_base/v1/model/segment/segment_info.py +0 -123
  256. dify_oapi/api/knowledge_base/v1/model/segment/segment_types.py +0 -24
  257. dify_oapi/api/knowledge_base/v1/model/segment/update_request.py +0 -48
  258. dify_oapi/api/knowledge_base/v1/model/segment/update_request_body.py +0 -25
  259. dify_oapi/api/knowledge_base/v1/model/tag/__init__.py +0 -41
  260. dify_oapi/api/knowledge_base/v1/model/tag/bind_request.py +0 -32
  261. dify_oapi/api/knowledge_base/v1/model/tag/bind_request_body.py +0 -29
  262. dify_oapi/api/knowledge_base/v1/model/tag/create_request.py +0 -32
  263. dify_oapi/api/knowledge_base/v1/model/tag/create_request_body.py +0 -24
  264. dify_oapi/api/knowledge_base/v1/model/tag/create_response.py +0 -16
  265. dify_oapi/api/knowledge_base/v1/model/tag/delete_request.py +0 -32
  266. dify_oapi/api/knowledge_base/v1/model/tag/delete_request_body.py +0 -24
  267. dify_oapi/api/knowledge_base/v1/model/tag/list_request.py +0 -24
  268. dify_oapi/api/knowledge_base/v1/model/tag/list_response.py +0 -19
  269. dify_oapi/api/knowledge_base/v1/model/tag/query_bound_request.py +0 -30
  270. dify_oapi/api/knowledge_base/v1/model/tag/query_bound_response.py +0 -9
  271. dify_oapi/api/knowledge_base/v1/model/tag/tag_info.py +0 -38
  272. dify_oapi/api/knowledge_base/v1/model/tag/tag_types.py +0 -12
  273. dify_oapi/api/knowledge_base/v1/model/tag/unbind_request.py +0 -32
  274. dify_oapi/api/knowledge_base/v1/model/tag/unbind_request_body.py +0 -29
  275. dify_oapi/api/knowledge_base/v1/model/tag/update_request.py +0 -32
  276. dify_oapi/api/knowledge_base/v1/model/tag/update_request_body.py +0 -29
  277. dify_oapi/api/knowledge_base/v1/model/tag/update_response.py +0 -23
  278. dify_oapi/api/knowledge_base/v1/resource/__init__.py +0 -7
  279. dify_oapi/api/knowledge_base/v1/resource/dataset.py +0 -58
  280. dify_oapi/api/knowledge_base/v1/resource/document.py +0 -107
  281. dify_oapi/api/knowledge_base/v1/resource/metadata.py +0 -65
  282. dify_oapi/api/knowledge_base/v1/resource/segment.py +0 -110
  283. dify_oapi/api/knowledge_base/v1/resource/tag.py +0 -65
  284. dify_oapi/api/knowledge_base/v1/version.py +0 -12
  285. dify_oapi/api/workflow/v1/model/get_workflow_log_request.py +0 -50
  286. dify_oapi/api/workflow/v1/model/get_workflow_log_response.py +0 -42
  287. dify_oapi/api/workflow/v1/model/get_workflow_result_request.py +0 -30
  288. dify_oapi/api/workflow/v1/model/get_workflow_result_response.py +0 -17
  289. dify_oapi/api/workflow/v1/model/run_workflow_request_file.py +0 -50
  290. dify_oapi2-0.2.0.dist-info/RECORD +0 -312
  291. /dify_oapi/api/{knowledge_base → knowledge}/__init__.py +0 -0
  292. /dify_oapi/api/{knowledge_base → knowledge}/v1/__init__.py +0 -0
  293. /dify_oapi/api/{knowledge_base → knowledge}/v1/model/__init__.py +0 -0
  294. {dify_oapi2-0.2.0.dist-info → dify_oapi2-0.4.0.dist-info}/LICENSE +0 -0
  295. {dify_oapi2-0.2.0.dist-info → dify_oapi2-0.4.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,49 @@
1
+ """Process rules model for Knowledge Base API."""
2
+
3
+ from typing import Optional
4
+
5
+ from pydantic import BaseModel
6
+
7
+ from .knowledge_types import ParentMode
8
+ from .preprocessing_rule import PreprocessingRule
9
+ from .segmentation_rule import SegmentationRule
10
+ from .subchunk_segmentation_rule import SubChunkSegmentationRule
11
+
12
+
13
+ class ProcessRules(BaseModel):
14
+ """Process rules model with builder pattern."""
15
+
16
+ pre_processing_rules: Optional[list[PreprocessingRule]] = None
17
+ segmentation: Optional[SegmentationRule] = None
18
+ parent_mode: Optional[ParentMode] = None
19
+ subchunk_segmentation: Optional[SubChunkSegmentationRule] = None
20
+
21
+ @staticmethod
22
+ def builder() -> "ProcessRulesBuilder":
23
+ return ProcessRulesBuilder()
24
+
25
+
26
+ class ProcessRulesBuilder:
27
+ """Builder for ProcessRules."""
28
+
29
+ def __init__(self):
30
+ self._process_rules = ProcessRules()
31
+
32
+ def build(self) -> ProcessRules:
33
+ return self._process_rules
34
+
35
+ def pre_processing_rules(self, pre_processing_rules: list[PreprocessingRule]) -> "ProcessRulesBuilder":
36
+ self._process_rules.pre_processing_rules = pre_processing_rules
37
+ return self
38
+
39
+ def segmentation(self, segmentation: SegmentationRule) -> "ProcessRulesBuilder":
40
+ self._process_rules.segmentation = segmentation
41
+ return self
42
+
43
+ def parent_mode(self, parent_mode: ParentMode) -> "ProcessRulesBuilder":
44
+ self._process_rules.parent_mode = parent_mode
45
+ return self
46
+
47
+ def subchunk_segmentation(self, subchunk_segmentation: SubChunkSegmentationRule) -> "ProcessRulesBuilder":
48
+ self._process_rules.subchunk_segmentation = subchunk_segmentation
49
+ return self
@@ -0,0 +1,29 @@
1
+ """Query information model for Knowledge Base API."""
2
+
3
+ from typing import Optional
4
+
5
+ from pydantic import BaseModel
6
+
7
+
8
+ class QueryInfo(BaseModel):
9
+ """Query information model with builder pattern."""
10
+
11
+ content: Optional[str] = None
12
+
13
+ @staticmethod
14
+ def builder() -> "QueryInfoBuilder":
15
+ return QueryInfoBuilder()
16
+
17
+
18
+ class QueryInfoBuilder:
19
+ """Builder for QueryInfo."""
20
+
21
+ def __init__(self):
22
+ self._query_info = QueryInfo()
23
+
24
+ def build(self) -> QueryInfo:
25
+ return self._query_info
26
+
27
+ def content(self, content: str) -> "QueryInfoBuilder":
28
+ self._query_info.content = content
29
+ return self
@@ -0,0 +1,36 @@
1
+ """Reranking mode model for Knowledge Base API."""
2
+
3
+ from typing import Optional
4
+
5
+ from pydantic import BaseModel
6
+
7
+ from .knowledge_types import RerankingModelName, RerankingProviderName
8
+
9
+
10
+ class RerankingMode(BaseModel):
11
+ """Reranking mode model with builder pattern."""
12
+
13
+ reranking_provider_name: Optional[RerankingProviderName] = None
14
+ reranking_model_name: Optional[RerankingModelName] = None
15
+
16
+ @staticmethod
17
+ def builder() -> "RerankingModeBuilder":
18
+ return RerankingModeBuilder()
19
+
20
+
21
+ class RerankingModeBuilder:
22
+ """Builder for RerankingMode."""
23
+
24
+ def __init__(self):
25
+ self._reranking_mode = RerankingMode()
26
+
27
+ def build(self) -> RerankingMode:
28
+ return self._reranking_mode
29
+
30
+ def reranking_provider_name(self, reranking_provider_name: RerankingProviderName) -> "RerankingModeBuilder":
31
+ self._reranking_mode.reranking_provider_name = reranking_provider_name
32
+ return self
33
+
34
+ def reranking_model_name(self, reranking_model_name: RerankingModelName) -> "RerankingModeBuilder":
35
+ self._reranking_mode.reranking_model_name = reranking_model_name
36
+ return self
@@ -0,0 +1,47 @@
1
+ """Reranking model for Knowledge Base API."""
2
+
3
+ from typing import Optional
4
+
5
+ from pydantic import BaseModel
6
+
7
+ from .model_credentials import ModelCredentials
8
+ from .model_parameters import ModelParameters
9
+
10
+
11
+ class RerankingModel(BaseModel):
12
+ """Reranking model with builder pattern."""
13
+
14
+ model: Optional[str] = None
15
+ provider: Optional[str] = None
16
+ credentials: Optional[ModelCredentials] = None
17
+ model_parameters: Optional[ModelParameters] = None
18
+
19
+ @staticmethod
20
+ def builder() -> "RerankingModelBuilder":
21
+ return RerankingModelBuilder()
22
+
23
+
24
+ class RerankingModelBuilder:
25
+ """Builder for RerankingModel."""
26
+
27
+ def __init__(self):
28
+ self._reranking_model = RerankingModel()
29
+
30
+ def build(self) -> RerankingModel:
31
+ return self._reranking_model
32
+
33
+ def model(self, model: str) -> "RerankingModelBuilder":
34
+ self._reranking_model.model = model
35
+ return self
36
+
37
+ def provider(self, provider: str) -> "RerankingModelBuilder":
38
+ self._reranking_model.provider = provider
39
+ return self
40
+
41
+ def credentials(self, credentials: ModelCredentials) -> "RerankingModelBuilder":
42
+ self._reranking_model.credentials = credentials
43
+ return self
44
+
45
+ def model_parameters(self, model_parameters: ModelParameters) -> "RerankingModelBuilder":
46
+ self._reranking_model.model_parameters = model_parameters
47
+ return self
@@ -0,0 +1,62 @@
1
+ """Retrieval model for Knowledge Base API."""
2
+
3
+ from typing import Optional
4
+
5
+ from pydantic import BaseModel
6
+
7
+ from .knowledge_types import SearchMethod
8
+ from .reranking_mode import RerankingMode
9
+
10
+
11
+ class RetrievalModel(BaseModel):
12
+ """Retrieval model with builder pattern."""
13
+
14
+ search_method: Optional[SearchMethod] = None
15
+ reranking_enable: Optional[bool] = None
16
+ reranking_mode: Optional[RerankingMode] = None
17
+ top_k: Optional[int] = None
18
+ score_threshold_enabled: Optional[bool] = None
19
+ score_threshold: Optional[float] = None
20
+ weights: Optional[float] = None
21
+
22
+ @staticmethod
23
+ def builder() -> "RetrievalModelBuilder":
24
+ return RetrievalModelBuilder()
25
+
26
+
27
+ class RetrievalModelBuilder:
28
+ """Builder for RetrievalModel."""
29
+
30
+ def __init__(self):
31
+ self._retrieval_model = RetrievalModel()
32
+
33
+ def build(self) -> RetrievalModel:
34
+ return self._retrieval_model
35
+
36
+ def search_method(self, search_method: SearchMethod) -> "RetrievalModelBuilder":
37
+ self._retrieval_model.search_method = search_method
38
+ return self
39
+
40
+ def reranking_enable(self, reranking_enable: bool) -> "RetrievalModelBuilder":
41
+ self._retrieval_model.reranking_enable = reranking_enable
42
+ return self
43
+
44
+ def reranking_mode(self, reranking_mode: RerankingMode) -> "RetrievalModelBuilder":
45
+ self._retrieval_model.reranking_mode = reranking_mode
46
+ return self
47
+
48
+ def top_k(self, top_k: int) -> "RetrievalModelBuilder":
49
+ self._retrieval_model.top_k = top_k
50
+ return self
51
+
52
+ def score_threshold_enabled(self, score_threshold_enabled: bool) -> "RetrievalModelBuilder":
53
+ self._retrieval_model.score_threshold_enabled = score_threshold_enabled
54
+ return self
55
+
56
+ def score_threshold(self, score_threshold: float) -> "RetrievalModelBuilder":
57
+ self._retrieval_model.score_threshold = score_threshold
58
+ return self
59
+
60
+ def weights(self, weights: float) -> "RetrievalModelBuilder":
61
+ self._retrieval_model.weights = weights
62
+ return self
@@ -0,0 +1,28 @@
1
+ from pydantic import BaseModel
2
+
3
+ from .retrieval_segment_info import RetrievalSegmentInfo
4
+
5
+
6
+ class RetrievalRecord(BaseModel):
7
+ segment: RetrievalSegmentInfo | None = None
8
+ score: float | None = None
9
+
10
+ @staticmethod
11
+ def builder() -> "RetrievalRecordBuilder":
12
+ return RetrievalRecordBuilder()
13
+
14
+
15
+ class RetrievalRecordBuilder:
16
+ def __init__(self) -> None:
17
+ self._retrieval_record = RetrievalRecord()
18
+
19
+ def build(self) -> RetrievalRecord:
20
+ return self._retrieval_record
21
+
22
+ def segment(self, segment: RetrievalSegmentInfo) -> "RetrievalRecordBuilder":
23
+ self._retrieval_record.segment = segment
24
+ return self
25
+
26
+ def score(self, score: float) -> "RetrievalRecordBuilder":
27
+ self._retrieval_record.score = score
28
+ return self
@@ -0,0 +1,41 @@
1
+ """Retrieval segment information model for Knowledge Base API."""
2
+
3
+ from typing import Optional
4
+
5
+ from pydantic import BaseModel
6
+
7
+ from .segment_document_info import SegmentDocumentInfo
8
+
9
+
10
+ class RetrievalSegmentInfo(BaseModel):
11
+ """Retrieval segment information model with builder pattern."""
12
+
13
+ id: Optional[str] = None
14
+ content: Optional[str] = None
15
+ document: Optional[SegmentDocumentInfo] = None
16
+
17
+ @staticmethod
18
+ def builder() -> "RetrievalSegmentInfoBuilder":
19
+ return RetrievalSegmentInfoBuilder()
20
+
21
+
22
+ class RetrievalSegmentInfoBuilder:
23
+ """Builder for RetrievalSegmentInfo."""
24
+
25
+ def __init__(self):
26
+ self._retrieval_segment_info = RetrievalSegmentInfo()
27
+
28
+ def build(self) -> RetrievalSegmentInfo:
29
+ return self._retrieval_segment_info
30
+
31
+ def id(self, id: str) -> "RetrievalSegmentInfoBuilder":
32
+ self._retrieval_segment_info.id = id
33
+ return self
34
+
35
+ def content(self, content: str) -> "RetrievalSegmentInfoBuilder":
36
+ self._retrieval_segment_info.content = content
37
+ return self
38
+
39
+ def document(self, document: SegmentDocumentInfo) -> "RetrievalSegmentInfoBuilder":
40
+ self._retrieval_segment_info.document = document
41
+ 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 .retrieve_from_dataset_request_body import RetrieveFromDatasetRequestBody
5
+
6
+
7
+ class RetrieveFromDatasetRequest(BaseRequest):
8
+ def __init__(self) -> None:
9
+ super().__init__()
10
+ self.dataset_id: str | None = None
11
+ self.request_body: RetrieveFromDatasetRequestBody | None = None
12
+
13
+ @staticmethod
14
+ def builder() -> "RetrieveFromDatasetRequestBuilder":
15
+ return RetrieveFromDatasetRequestBuilder()
16
+
17
+
18
+ class RetrieveFromDatasetRequestBuilder:
19
+ def __init__(self) -> None:
20
+ retrieve_from_dataset_request = RetrieveFromDatasetRequest()
21
+ retrieve_from_dataset_request.http_method = HttpMethod.POST
22
+ retrieve_from_dataset_request.uri = "/v1/datasets/:dataset_id/retrieve"
23
+ self._retrieve_from_dataset_request = retrieve_from_dataset_request
24
+
25
+ def build(self) -> RetrieveFromDatasetRequest:
26
+ return self._retrieve_from_dataset_request
27
+
28
+ def dataset_id(self, dataset_id: str) -> "RetrieveFromDatasetRequestBuilder":
29
+ self._retrieve_from_dataset_request.dataset_id = dataset_id
30
+ self._retrieve_from_dataset_request.paths["dataset_id"] = dataset_id
31
+ return self
32
+
33
+ def request_body(self, request_body: RetrieveFromDatasetRequestBody) -> "RetrieveFromDatasetRequestBuilder":
34
+ self._retrieve_from_dataset_request.request_body = request_body
35
+ self._retrieve_from_dataset_request.body = request_body.model_dump(exclude_none=True, mode="json")
36
+ return self
@@ -0,0 +1,38 @@
1
+ from pydantic import BaseModel
2
+
3
+ from .retrieval_model import RetrievalModel
4
+
5
+
6
+ class RetrieveFromDatasetRequestBody(BaseModel):
7
+ query: str | None = None
8
+ retrieval_model: RetrievalModel | None = None
9
+ top_k: int | None = None
10
+ score_threshold: float | None = None
11
+
12
+ @staticmethod
13
+ def builder() -> "RetrieveFromDatasetRequestBodyBuilder":
14
+ return RetrieveFromDatasetRequestBodyBuilder()
15
+
16
+
17
+ class RetrieveFromDatasetRequestBodyBuilder:
18
+ def __init__(self) -> None:
19
+ self._retrieve_from_dataset_request_body = RetrieveFromDatasetRequestBody()
20
+
21
+ def build(self) -> RetrieveFromDatasetRequestBody:
22
+ return self._retrieve_from_dataset_request_body
23
+
24
+ def query(self, query: str) -> "RetrieveFromDatasetRequestBodyBuilder":
25
+ self._retrieve_from_dataset_request_body.query = query
26
+ return self
27
+
28
+ def retrieval_model(self, retrieval_model: RetrievalModel) -> "RetrieveFromDatasetRequestBodyBuilder":
29
+ self._retrieve_from_dataset_request_body.retrieval_model = retrieval_model
30
+ return self
31
+
32
+ def top_k(self, top_k: int) -> "RetrieveFromDatasetRequestBodyBuilder":
33
+ self._retrieve_from_dataset_request_body.top_k = top_k
34
+ return self
35
+
36
+ def score_threshold(self, score_threshold: float) -> "RetrieveFromDatasetRequestBodyBuilder":
37
+ self._retrieve_from_dataset_request_body.score_threshold = score_threshold
38
+ return self
@@ -0,0 +1,9 @@
1
+ from dify_oapi.core.model.base_response import BaseResponse
2
+
3
+ from .query_info import QueryInfo
4
+ from .retrieval_record import RetrievalRecord
5
+
6
+
7
+ class RetrieveFromDatasetResponse(BaseResponse):
8
+ query: QueryInfo | None = None
9
+ records: list[RetrievalRecord] | None = None
@@ -0,0 +1,39 @@
1
+ """Segment content model for Knowledge Base API."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from pydantic import BaseModel
6
+
7
+
8
+ class SegmentContent(BaseModel):
9
+ """Segment content model with builder pattern."""
10
+
11
+ content: str | None = None
12
+ answer: str | None = None
13
+ keywords: list[str] | None = None
14
+
15
+ @staticmethod
16
+ def builder() -> SegmentContentBuilder:
17
+ return SegmentContentBuilder()
18
+
19
+
20
+ class SegmentContentBuilder:
21
+ """Builder for SegmentContent."""
22
+
23
+ def __init__(self) -> None:
24
+ self._segment_content = SegmentContent()
25
+
26
+ def build(self) -> SegmentContent:
27
+ return self._segment_content
28
+
29
+ def content(self, content: str) -> SegmentContentBuilder:
30
+ self._segment_content.content = content
31
+ return self
32
+
33
+ def answer(self, answer: str) -> SegmentContentBuilder:
34
+ self._segment_content.answer = answer
35
+ return self
36
+
37
+ def keywords(self, keywords: list[str]) -> SegmentContentBuilder:
38
+ self._segment_content.keywords = keywords
39
+ return self
@@ -0,0 +1,41 @@
1
+ """Segment document information model for Knowledge Base API."""
2
+
3
+ from typing import Optional
4
+
5
+ from pydantic import BaseModel
6
+
7
+ from .knowledge_types import DataSourceType
8
+
9
+
10
+ class SegmentDocumentInfo(BaseModel):
11
+ """Segment document information model with builder pattern."""
12
+
13
+ id: Optional[str] = None
14
+ data_source_type: Optional[DataSourceType] = None
15
+ name: Optional[str] = None
16
+
17
+ @staticmethod
18
+ def builder() -> "SegmentDocumentInfoBuilder":
19
+ return SegmentDocumentInfoBuilder()
20
+
21
+
22
+ class SegmentDocumentInfoBuilder:
23
+ """Builder for SegmentDocumentInfo."""
24
+
25
+ def __init__(self):
26
+ self._segment_document_info = SegmentDocumentInfo()
27
+
28
+ def build(self) -> SegmentDocumentInfo:
29
+ return self._segment_document_info
30
+
31
+ def id(self, id: str) -> "SegmentDocumentInfoBuilder":
32
+ self._segment_document_info.id = id
33
+ return self
34
+
35
+ def data_source_type(self, data_source_type: DataSourceType) -> "SegmentDocumentInfoBuilder":
36
+ self._segment_document_info.data_source_type = data_source_type
37
+ return self
38
+
39
+ def name(self, name: str) -> "SegmentDocumentInfoBuilder":
40
+ self._segment_document_info.name = name
41
+ return self
@@ -0,0 +1,131 @@
1
+ """Segment information model for Knowledge Base API."""
2
+
3
+ from typing import Optional
4
+
5
+ from pydantic import BaseModel
6
+
7
+ from .knowledge_types import SegmentStatus
8
+
9
+
10
+ class SegmentInfo(BaseModel):
11
+ """Segment information model with builder pattern."""
12
+
13
+ id: Optional[str] = None
14
+ position: Optional[int] = None
15
+ document_id: Optional[str] = None
16
+ content: Optional[str] = None
17
+ answer: Optional[str] = None
18
+ word_count: Optional[int] = None
19
+ tokens: Optional[int] = None
20
+ keywords: Optional[list[str]] = None
21
+ index_node_id: Optional[str] = None
22
+ index_node_hash: Optional[str] = None
23
+ hit_count: Optional[int] = None
24
+ enabled: Optional[bool] = None
25
+ disabled_at: Optional[float] = None
26
+ disabled_by: Optional[str] = None
27
+ status: Optional[SegmentStatus] = None
28
+ created_by: Optional[str] = None
29
+ created_at: Optional[float] = None
30
+ indexing_at: Optional[float] = None
31
+ completed_at: Optional[float] = None
32
+ error: Optional[str] = None
33
+ stopped_at: Optional[float] = None
34
+
35
+ @staticmethod
36
+ def builder() -> "SegmentInfoBuilder":
37
+ return SegmentInfoBuilder()
38
+
39
+
40
+ class SegmentInfoBuilder:
41
+ """Builder for SegmentInfo."""
42
+
43
+ def __init__(self):
44
+ self._segment_info = SegmentInfo()
45
+
46
+ def build(self) -> SegmentInfo:
47
+ return self._segment_info
48
+
49
+ def id(self, id: str) -> "SegmentInfoBuilder":
50
+ self._segment_info.id = id
51
+ return self
52
+
53
+ def position(self, position: int) -> "SegmentInfoBuilder":
54
+ self._segment_info.position = position
55
+ return self
56
+
57
+ def document_id(self, document_id: str) -> "SegmentInfoBuilder":
58
+ self._segment_info.document_id = document_id
59
+ return self
60
+
61
+ def content(self, content: str) -> "SegmentInfoBuilder":
62
+ self._segment_info.content = content
63
+ return self
64
+
65
+ def answer(self, answer: str) -> "SegmentInfoBuilder":
66
+ self._segment_info.answer = answer
67
+ return self
68
+
69
+ def word_count(self, word_count: int) -> "SegmentInfoBuilder":
70
+ self._segment_info.word_count = word_count
71
+ return self
72
+
73
+ def tokens(self, tokens: int) -> "SegmentInfoBuilder":
74
+ self._segment_info.tokens = tokens
75
+ return self
76
+
77
+ def keywords(self, keywords: list[str]) -> "SegmentInfoBuilder":
78
+ self._segment_info.keywords = keywords
79
+ return self
80
+
81
+ def index_node_id(self, index_node_id: str) -> "SegmentInfoBuilder":
82
+ self._segment_info.index_node_id = index_node_id
83
+ return self
84
+
85
+ def index_node_hash(self, index_node_hash: str) -> "SegmentInfoBuilder":
86
+ self._segment_info.index_node_hash = index_node_hash
87
+ return self
88
+
89
+ def hit_count(self, hit_count: int) -> "SegmentInfoBuilder":
90
+ self._segment_info.hit_count = hit_count
91
+ return self
92
+
93
+ def enabled(self, enabled: bool) -> "SegmentInfoBuilder":
94
+ self._segment_info.enabled = enabled
95
+ return self
96
+
97
+ def disabled_at(self, disabled_at: float) -> "SegmentInfoBuilder":
98
+ self._segment_info.disabled_at = disabled_at
99
+ return self
100
+
101
+ def disabled_by(self, disabled_by: str) -> "SegmentInfoBuilder":
102
+ self._segment_info.disabled_by = disabled_by
103
+ return self
104
+
105
+ def status(self, status: SegmentStatus) -> "SegmentInfoBuilder":
106
+ self._segment_info.status = status
107
+ return self
108
+
109
+ def created_by(self, created_by: str) -> "SegmentInfoBuilder":
110
+ self._segment_info.created_by = created_by
111
+ return self
112
+
113
+ def created_at(self, created_at: float) -> "SegmentInfoBuilder":
114
+ self._segment_info.created_at = created_at
115
+ return self
116
+
117
+ def indexing_at(self, indexing_at: float) -> "SegmentInfoBuilder":
118
+ self._segment_info.indexing_at = indexing_at
119
+ return self
120
+
121
+ def completed_at(self, completed_at: float) -> "SegmentInfoBuilder":
122
+ self._segment_info.completed_at = completed_at
123
+ return self
124
+
125
+ def error(self, error: str) -> "SegmentInfoBuilder":
126
+ self._segment_info.error = error
127
+ return self
128
+
129
+ def stopped_at(self, stopped_at: float) -> "SegmentInfoBuilder":
130
+ self._segment_info.stopped_at = stopped_at
131
+ return self
@@ -0,0 +1,44 @@
1
+ """Segmentation rule model for Knowledge Base API."""
2
+
3
+ from typing import Optional
4
+
5
+ from pydantic import BaseModel
6
+
7
+
8
+ class SegmentationRule(BaseModel):
9
+ """Segmentation rule model with builder pattern."""
10
+
11
+ separator: Optional[str] = None
12
+ max_tokens: Optional[int] = None
13
+ chunk_overlap: Optional[int] = None
14
+ rules: Optional[dict] = None
15
+
16
+ @staticmethod
17
+ def builder() -> "SegmentationRuleBuilder":
18
+ return SegmentationRuleBuilder()
19
+
20
+
21
+ class SegmentationRuleBuilder:
22
+ """Builder for SegmentationRule."""
23
+
24
+ def __init__(self):
25
+ self._segmentation_rule = SegmentationRule()
26
+
27
+ def build(self) -> SegmentationRule:
28
+ return self._segmentation_rule
29
+
30
+ def separator(self, separator: str) -> "SegmentationRuleBuilder":
31
+ self._segmentation_rule.separator = separator
32
+ return self
33
+
34
+ def max_tokens(self, max_tokens: int) -> "SegmentationRuleBuilder":
35
+ self._segmentation_rule.max_tokens = max_tokens
36
+ return self
37
+
38
+ def chunk_overlap(self, chunk_overlap: int) -> "SegmentationRuleBuilder":
39
+ self._segmentation_rule.chunk_overlap = chunk_overlap
40
+ return self
41
+
42
+ def rules(self, rules: dict) -> "SegmentationRuleBuilder":
43
+ self._segmentation_rule.rules = rules
44
+ return self
@@ -0,0 +1,39 @@
1
+ """Sub-chunk segmentation rule model for Knowledge Base API."""
2
+
3
+ from typing import Optional
4
+
5
+ from pydantic import BaseModel
6
+
7
+
8
+ class SubChunkSegmentationRule(BaseModel):
9
+ """Sub-chunk segmentation rule model with builder pattern."""
10
+
11
+ separator: Optional[str] = None
12
+ max_tokens: Optional[int] = None
13
+ chunk_overlap: Optional[int] = None
14
+
15
+ @staticmethod
16
+ def builder() -> "SubChunkSegmentationRuleBuilder":
17
+ return SubChunkSegmentationRuleBuilder()
18
+
19
+
20
+ class SubChunkSegmentationRuleBuilder:
21
+ """Builder for SubChunkSegmentationRule."""
22
+
23
+ def __init__(self):
24
+ self._subchunk_segmentation_rule = SubChunkSegmentationRule()
25
+
26
+ def build(self) -> SubChunkSegmentationRule:
27
+ return self._subchunk_segmentation_rule
28
+
29
+ def separator(self, separator: str) -> "SubChunkSegmentationRuleBuilder":
30
+ self._subchunk_segmentation_rule.separator = separator
31
+ return self
32
+
33
+ def max_tokens(self, max_tokens: int) -> "SubChunkSegmentationRuleBuilder":
34
+ self._subchunk_segmentation_rule.max_tokens = max_tokens
35
+ return self
36
+
37
+ def chunk_overlap(self, chunk_overlap: int) -> "SubChunkSegmentationRuleBuilder":
38
+ self._subchunk_segmentation_rule.chunk_overlap = chunk_overlap
39
+ return self