Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

__init__.py 6.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  1. from flask import Blueprint
  2. from flask_restx import Namespace
  3. from libs.external_api import ExternalApi
  4. from .app.app_import import AppImportApi, AppImportCheckDependenciesApi, AppImportConfirmApi
  5. from .explore.audio import ChatAudioApi, ChatTextApi
  6. from .explore.completion import ChatApi, ChatStopApi, CompletionApi, CompletionStopApi
  7. from .explore.conversation import (
  8. ConversationApi,
  9. ConversationListApi,
  10. ConversationPinApi,
  11. ConversationRenameApi,
  12. ConversationUnPinApi,
  13. )
  14. from .explore.message import (
  15. MessageFeedbackApi,
  16. MessageListApi,
  17. MessageMoreLikeThisApi,
  18. MessageSuggestedQuestionApi,
  19. )
  20. from .explore.workflow import (
  21. InstalledAppWorkflowRunApi,
  22. InstalledAppWorkflowTaskStopApi,
  23. )
  24. from .files import FileApi, FilePreviewApi, FileSupportTypeApi
  25. from .remote_files import RemoteFileInfoApi, RemoteFileUploadApi
  26. bp = Blueprint("console", __name__, url_prefix="/console/api")
  27. api = ExternalApi(
  28. bp,
  29. version="1.0",
  30. title="Console API",
  31. description="Console management APIs for app configuration, monitoring, and administration",
  32. )
  33. # Create namespace
  34. console_ns = Namespace("console", description="Console management API operations", path="/")
  35. # File
  36. api.add_resource(FileApi, "/files/upload")
  37. api.add_resource(FilePreviewApi, "/files/<uuid:file_id>/preview")
  38. api.add_resource(FileSupportTypeApi, "/files/support-type")
  39. # Remote files
  40. api.add_resource(RemoteFileInfoApi, "/remote-files/<path:url>")
  41. api.add_resource(RemoteFileUploadApi, "/remote-files/upload")
  42. # Import App
  43. api.add_resource(AppImportApi, "/apps/imports")
  44. api.add_resource(AppImportConfirmApi, "/apps/imports/<string:import_id>/confirm")
  45. api.add_resource(AppImportCheckDependenciesApi, "/apps/imports/<string:app_id>/check-dependencies")
  46. # Import other controllers
  47. from . import (
  48. admin,
  49. apikey,
  50. extension,
  51. feature,
  52. init_validate,
  53. ping,
  54. setup,
  55. version,
  56. )
  57. # Import app controllers
  58. from .app import (
  59. advanced_prompt_template,
  60. agent,
  61. annotation,
  62. app,
  63. audio,
  64. completion,
  65. conversation,
  66. conversation_variables,
  67. generator,
  68. mcp_server,
  69. message,
  70. model_config,
  71. ops_trace,
  72. site,
  73. statistic,
  74. workflow,
  75. workflow_app_log,
  76. workflow_draft_variable,
  77. workflow_run,
  78. workflow_statistic,
  79. )
  80. # Import auth controllers
  81. from .auth import (
  82. activate,
  83. data_source_bearer_auth,
  84. data_source_oauth,
  85. email_register,
  86. forgot_password,
  87. login,
  88. oauth,
  89. oauth_server,
  90. )
  91. # Import billing controllers
  92. from .billing import billing, compliance
  93. # Import datasets controllers
  94. from .datasets import (
  95. data_source,
  96. datasets,
  97. datasets_document,
  98. datasets_segments,
  99. external,
  100. hit_testing,
  101. metadata,
  102. website,
  103. )
  104. # Import explore controllers
  105. from .explore import (
  106. installed_app,
  107. parameter,
  108. recommended_app,
  109. saved_message,
  110. )
  111. # Import tag controllers
  112. from .tag import tags
  113. # Import workspace controllers
  114. from .workspace import (
  115. account,
  116. agent_providers,
  117. endpoint,
  118. load_balancing_config,
  119. members,
  120. model_providers,
  121. models,
  122. plugin,
  123. tool_providers,
  124. workspace,
  125. )
  126. # Explore Audio
  127. api.add_resource(ChatAudioApi, "/installed-apps/<uuid:installed_app_id>/audio-to-text", endpoint="installed_app_audio")
  128. api.add_resource(ChatTextApi, "/installed-apps/<uuid:installed_app_id>/text-to-audio", endpoint="installed_app_text")
  129. # Explore Completion
  130. api.add_resource(
  131. CompletionApi, "/installed-apps/<uuid:installed_app_id>/completion-messages", endpoint="installed_app_completion"
  132. )
  133. api.add_resource(
  134. CompletionStopApi,
  135. "/installed-apps/<uuid:installed_app_id>/completion-messages/<string:task_id>/stop",
  136. endpoint="installed_app_stop_completion",
  137. )
  138. api.add_resource(
  139. ChatApi, "/installed-apps/<uuid:installed_app_id>/chat-messages", endpoint="installed_app_chat_completion"
  140. )
  141. api.add_resource(
  142. ChatStopApi,
  143. "/installed-apps/<uuid:installed_app_id>/chat-messages/<string:task_id>/stop",
  144. endpoint="installed_app_stop_chat_completion",
  145. )
  146. # Explore Conversation
  147. api.add_resource(
  148. ConversationRenameApi,
  149. "/installed-apps/<uuid:installed_app_id>/conversations/<uuid:c_id>/name",
  150. endpoint="installed_app_conversation_rename",
  151. )
  152. api.add_resource(
  153. ConversationListApi, "/installed-apps/<uuid:installed_app_id>/conversations", endpoint="installed_app_conversations"
  154. )
  155. api.add_resource(
  156. ConversationApi,
  157. "/installed-apps/<uuid:installed_app_id>/conversations/<uuid:c_id>",
  158. endpoint="installed_app_conversation",
  159. )
  160. api.add_resource(
  161. ConversationPinApi,
  162. "/installed-apps/<uuid:installed_app_id>/conversations/<uuid:c_id>/pin",
  163. endpoint="installed_app_conversation_pin",
  164. )
  165. api.add_resource(
  166. ConversationUnPinApi,
  167. "/installed-apps/<uuid:installed_app_id>/conversations/<uuid:c_id>/unpin",
  168. endpoint="installed_app_conversation_unpin",
  169. )
  170. # Explore Message
  171. api.add_resource(MessageListApi, "/installed-apps/<uuid:installed_app_id>/messages", endpoint="installed_app_messages")
  172. api.add_resource(
  173. MessageFeedbackApi,
  174. "/installed-apps/<uuid:installed_app_id>/messages/<uuid:message_id>/feedbacks",
  175. endpoint="installed_app_message_feedback",
  176. )
  177. api.add_resource(
  178. MessageMoreLikeThisApi,
  179. "/installed-apps/<uuid:installed_app_id>/messages/<uuid:message_id>/more-like-this",
  180. endpoint="installed_app_more_like_this",
  181. )
  182. api.add_resource(
  183. MessageSuggestedQuestionApi,
  184. "/installed-apps/<uuid:installed_app_id>/messages/<uuid:message_id>/suggested-questions",
  185. endpoint="installed_app_suggested_question",
  186. )
  187. # Explore Workflow
  188. api.add_resource(InstalledAppWorkflowRunApi, "/installed-apps/<uuid:installed_app_id>/workflows/run")
  189. api.add_resource(
  190. InstalledAppWorkflowTaskStopApi, "/installed-apps/<uuid:installed_app_id>/workflows/tasks/<string:task_id>/stop"
  191. )
  192. api.add_namespace(console_ns)
  193. __all__ = [
  194. "account",
  195. "activate",
  196. "admin",
  197. "advanced_prompt_template",
  198. "agent",
  199. "agent_providers",
  200. "annotation",
  201. "api",
  202. "apikey",
  203. "app",
  204. "audio",
  205. "billing",
  206. "bp",
  207. "completion",
  208. "compliance",
  209. "console_ns",
  210. "conversation",
  211. "conversation_variables",
  212. "data_source",
  213. "data_source_bearer_auth",
  214. "data_source_oauth",
  215. "datasets",
  216. "datasets_document",
  217. "datasets_segments",
  218. "email_register",
  219. "endpoint",
  220. "extension",
  221. "external",
  222. "feature",
  223. "forgot_password",
  224. "generator",
  225. "hit_testing",
  226. "init_validate",
  227. "installed_app",
  228. "load_balancing_config",
  229. "login",
  230. "mcp_server",
  231. "members",
  232. "message",
  233. "metadata",
  234. "model_config",
  235. "model_providers",
  236. "models",
  237. "oauth",
  238. "oauth_server",
  239. "ops_trace",
  240. "parameter",
  241. "ping",
  242. "plugin",
  243. "recommended_app",
  244. "saved_message",
  245. "setup",
  246. "site",
  247. "statistic",
  248. "tags",
  249. "tool_providers",
  250. "version",
  251. "website",
  252. "workflow",
  253. "workflow_app_log",
  254. "workflow_draft_variable",
  255. "workflow_run",
  256. "workflow_statistic",
  257. "workspace",
  258. ]