__init__.py 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. from flask import Blueprint
  2. from libs.external_api import ExternalApi
  3. from .app.app_import import AppImportApi, AppImportCheckDependenciesApi, AppImportConfirmApi
  4. from .explore.audio import ChatAudioApi, ChatTextApi
  5. from .explore.completion import ChatApi, ChatStopApi, CompletionApi, CompletionStopApi
  6. from .explore.conversation import (
  7. ConversationApi,
  8. ConversationListApi,
  9. ConversationPinApi,
  10. ConversationRenameApi,
  11. ConversationUnPinApi,
  12. )
  13. from .explore.message import (
  14. MessageFeedbackApi,
  15. MessageListApi,
  16. MessageMoreLikeThisApi,
  17. MessageSuggestedQuestionApi,
  18. )
  19. from .explore.workflow import (
  20. InstalledAppWorkflowRunApi,
  21. InstalledAppWorkflowTaskStopApi,
  22. )
  23. from .files import FileApi, FilePreviewApi, FileSupportTypeApi
  24. from .remote_files import RemoteFileInfoApi, RemoteFileUploadApi
  25. bp = Blueprint("console", __name__, url_prefix="/console/api")
  26. api = ExternalApi(bp)
  27. # File
  28. api.add_resource(FileApi, "/files/upload")
  29. api.add_resource(FilePreviewApi, "/files/<uuid:file_id>/preview")
  30. api.add_resource(FileSupportTypeApi, "/files/support-type")
  31. # Remote files
  32. api.add_resource(RemoteFileInfoApi, "/remote-files/<path:url>")
  33. api.add_resource(RemoteFileUploadApi, "/remote-files/upload")
  34. # Import App
  35. api.add_resource(AppImportApi, "/apps/imports")
  36. api.add_resource(AppImportConfirmApi, "/apps/imports/<string:import_id>/confirm")
  37. api.add_resource(AppImportCheckDependenciesApi, "/apps/imports/<string:app_id>/check-dependencies")
  38. # Import other controllers
  39. from . import admin, apikey, extension, external_application, feature, ping, setup, version
  40. # Import app controllers
  41. from .app import (
  42. advanced_prompt_template,
  43. agent,
  44. annotation,
  45. app,
  46. audio,
  47. completion,
  48. conversation,
  49. conversation_variables,
  50. generator,
  51. message,
  52. model_config,
  53. ops_trace,
  54. site,
  55. statistic,
  56. workflow,
  57. workflow_app_log,
  58. workflow_run,
  59. workflow_statistic,
  60. )
  61. # Import auth controllers
  62. from .auth import activate, data_source_bearer_auth, data_source_oauth, forgot_password, login, oauth
  63. # Import billing controllers
  64. from .billing import billing, compliance
  65. # Import datasets controllers
  66. from .datasets import (
  67. data_source,
  68. datasets,
  69. datasets_document,
  70. datasets_segments,
  71. external,
  72. hit_testing,
  73. metadata,
  74. website,
  75. )
  76. # Import explore controllers
  77. from .explore import (
  78. installed_app,
  79. parameter,
  80. recommended_app,
  81. saved_message,
  82. )
  83. # Explore Audio
  84. api.add_resource(ChatAudioApi, "/installed-apps/<uuid:installed_app_id>/audio-to-text", endpoint="installed_app_audio")
  85. api.add_resource(ChatTextApi, "/installed-apps/<uuid:installed_app_id>/text-to-audio", endpoint="installed_app_text")
  86. # Explore Completion
  87. api.add_resource(
  88. CompletionApi, "/installed-apps/<uuid:installed_app_id>/completion-messages", endpoint="installed_app_completion"
  89. )
  90. api.add_resource(
  91. CompletionStopApi,
  92. "/installed-apps/<uuid:installed_app_id>/completion-messages/<string:task_id>/stop",
  93. endpoint="installed_app_stop_completion",
  94. )
  95. api.add_resource(
  96. ChatApi, "/installed-apps/<uuid:installed_app_id>/chat-messages", endpoint="installed_app_chat_completion"
  97. )
  98. api.add_resource(
  99. ChatStopApi,
  100. "/installed-apps/<uuid:installed_app_id>/chat-messages/<string:task_id>/stop",
  101. endpoint="installed_app_stop_chat_completion",
  102. )
  103. # Explore Conversation
  104. api.add_resource(
  105. ConversationRenameApi,
  106. "/installed-apps/<uuid:installed_app_id>/conversations/<uuid:c_id>/name",
  107. endpoint="installed_app_conversation_rename",
  108. )
  109. api.add_resource(
  110. ConversationListApi, "/installed-apps/<uuid:installed_app_id>/conversations", endpoint="installed_app_conversations"
  111. )
  112. api.add_resource(
  113. ConversationApi,
  114. "/installed-apps/<uuid:installed_app_id>/conversations/<uuid:c_id>",
  115. endpoint="installed_app_conversation",
  116. )
  117. api.add_resource(
  118. ConversationPinApi,
  119. "/installed-apps/<uuid:installed_app_id>/conversations/<uuid:c_id>/pin",
  120. endpoint="installed_app_conversation_pin",
  121. )
  122. api.add_resource(
  123. ConversationUnPinApi,
  124. "/installed-apps/<uuid:installed_app_id>/conversations/<uuid:c_id>/unpin",
  125. endpoint="installed_app_conversation_unpin",
  126. )
  127. # Explore Message
  128. api.add_resource(MessageListApi, "/installed-apps/<uuid:installed_app_id>/messages", endpoint="installed_app_messages")
  129. api.add_resource(
  130. MessageFeedbackApi,
  131. "/installed-apps/<uuid:installed_app_id>/messages/<uuid:message_id>/feedbacks",
  132. endpoint="installed_app_message_feedback",
  133. )
  134. api.add_resource(
  135. MessageMoreLikeThisApi,
  136. "/installed-apps/<uuid:installed_app_id>/messages/<uuid:message_id>/more-like-this",
  137. endpoint="installed_app_more_like_this",
  138. )
  139. api.add_resource(
  140. MessageSuggestedQuestionApi,
  141. "/installed-apps/<uuid:installed_app_id>/messages/<uuid:message_id>/suggested-questions",
  142. endpoint="installed_app_suggested_question",
  143. )
  144. # Explore Workflow
  145. api.add_resource(InstalledAppWorkflowRunApi, "/installed-apps/<uuid:installed_app_id>/workflows/run")
  146. api.add_resource(
  147. InstalledAppWorkflowTaskStopApi, "/installed-apps/<uuid:installed_app_id>/workflows/tasks/<string:task_id>/stop"
  148. )
  149. # Import tag controllers
  150. from .tag import tags
  151. # Import workspace controllers
  152. from .workspace import (
  153. account,
  154. agent_providers,
  155. endpoint,
  156. load_balancing_config,
  157. members,
  158. model_providers,
  159. models,
  160. plugin,
  161. tool_providers,
  162. workspace,
  163. )