Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299
  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. spec,
  56. version,
  57. )
  58. # Import app controllers
  59. from .app import (
  60. advanced_prompt_template,
  61. agent,
  62. annotation,
  63. app,
  64. audio,
  65. completion,
  66. conversation,
  67. conversation_variables,
  68. generator,
  69. mcp_server,
  70. message,
  71. model_config,
  72. ops_trace,
  73. site,
  74. statistic,
  75. workflow,
  76. workflow_app_log,
  77. workflow_draft_variable,
  78. workflow_run,
  79. workflow_statistic,
  80. )
  81. # Import auth controllers
  82. from .auth import (
  83. activate,
  84. data_source_bearer_auth,
  85. data_source_oauth,
  86. email_register,
  87. forgot_password,
  88. login,
  89. oauth,
  90. oauth_server,
  91. )
  92. # Import billing controllers
  93. from .billing import billing, compliance
  94. # Import datasets controllers
  95. from .datasets import (
  96. data_source,
  97. datasets,
  98. datasets_document,
  99. datasets_segments,
  100. external,
  101. hit_testing,
  102. metadata,
  103. website,
  104. )
  105. from .datasets.rag_pipeline import (
  106. datasource_auth,
  107. datasource_content_preview,
  108. rag_pipeline,
  109. rag_pipeline_datasets,
  110. rag_pipeline_draft_variable,
  111. rag_pipeline_import,
  112. rag_pipeline_workflow,
  113. )
  114. # Import explore controllers
  115. from .explore import (
  116. installed_app,
  117. parameter,
  118. recommended_app,
  119. saved_message,
  120. )
  121. # Import tag controllers
  122. from .tag import tags
  123. # Import workspace controllers
  124. from .workspace import (
  125. account,
  126. agent_providers,
  127. endpoint,
  128. load_balancing_config,
  129. members,
  130. model_providers,
  131. models,
  132. plugin,
  133. tool_providers,
  134. workspace,
  135. )
  136. # Explore Audio
  137. api.add_resource(ChatAudioApi, "/installed-apps/<uuid:installed_app_id>/audio-to-text", endpoint="installed_app_audio")
  138. api.add_resource(ChatTextApi, "/installed-apps/<uuid:installed_app_id>/text-to-audio", endpoint="installed_app_text")
  139. # Explore Completion
  140. api.add_resource(
  141. CompletionApi, "/installed-apps/<uuid:installed_app_id>/completion-messages", endpoint="installed_app_completion"
  142. )
  143. api.add_resource(
  144. CompletionStopApi,
  145. "/installed-apps/<uuid:installed_app_id>/completion-messages/<string:task_id>/stop",
  146. endpoint="installed_app_stop_completion",
  147. )
  148. api.add_resource(
  149. ChatApi, "/installed-apps/<uuid:installed_app_id>/chat-messages", endpoint="installed_app_chat_completion"
  150. )
  151. api.add_resource(
  152. ChatStopApi,
  153. "/installed-apps/<uuid:installed_app_id>/chat-messages/<string:task_id>/stop",
  154. endpoint="installed_app_stop_chat_completion",
  155. )
  156. # Explore Conversation
  157. api.add_resource(
  158. ConversationRenameApi,
  159. "/installed-apps/<uuid:installed_app_id>/conversations/<uuid:c_id>/name",
  160. endpoint="installed_app_conversation_rename",
  161. )
  162. api.add_resource(
  163. ConversationListApi, "/installed-apps/<uuid:installed_app_id>/conversations", endpoint="installed_app_conversations"
  164. )
  165. api.add_resource(
  166. ConversationApi,
  167. "/installed-apps/<uuid:installed_app_id>/conversations/<uuid:c_id>",
  168. endpoint="installed_app_conversation",
  169. )
  170. api.add_resource(
  171. ConversationPinApi,
  172. "/installed-apps/<uuid:installed_app_id>/conversations/<uuid:c_id>/pin",
  173. endpoint="installed_app_conversation_pin",
  174. )
  175. api.add_resource(
  176. ConversationUnPinApi,
  177. "/installed-apps/<uuid:installed_app_id>/conversations/<uuid:c_id>/unpin",
  178. endpoint="installed_app_conversation_unpin",
  179. )
  180. # Explore Message
  181. api.add_resource(MessageListApi, "/installed-apps/<uuid:installed_app_id>/messages", endpoint="installed_app_messages")
  182. api.add_resource(
  183. MessageFeedbackApi,
  184. "/installed-apps/<uuid:installed_app_id>/messages/<uuid:message_id>/feedbacks",
  185. endpoint="installed_app_message_feedback",
  186. )
  187. api.add_resource(
  188. MessageMoreLikeThisApi,
  189. "/installed-apps/<uuid:installed_app_id>/messages/<uuid:message_id>/more-like-this",
  190. endpoint="installed_app_more_like_this",
  191. )
  192. api.add_resource(
  193. MessageSuggestedQuestionApi,
  194. "/installed-apps/<uuid:installed_app_id>/messages/<uuid:message_id>/suggested-questions",
  195. endpoint="installed_app_suggested_question",
  196. )
  197. # Explore Workflow
  198. api.add_resource(InstalledAppWorkflowRunApi, "/installed-apps/<uuid:installed_app_id>/workflows/run")
  199. api.add_resource(
  200. InstalledAppWorkflowTaskStopApi, "/installed-apps/<uuid:installed_app_id>/workflows/tasks/<string:task_id>/stop"
  201. )
  202. api.add_namespace(console_ns)
  203. __all__ = [
  204. "account",
  205. "activate",
  206. "admin",
  207. "advanced_prompt_template",
  208. "agent",
  209. "agent_providers",
  210. "annotation",
  211. "api",
  212. "apikey",
  213. "app",
  214. "audio",
  215. "billing",
  216. "bp",
  217. "completion",
  218. "compliance",
  219. "console_ns",
  220. "conversation",
  221. "conversation_variables",
  222. "data_source",
  223. "data_source_bearer_auth",
  224. "data_source_oauth",
  225. "datasets",
  226. "datasets_document",
  227. "datasets_segments",
  228. "datasource_auth",
  229. "datasource_content_preview",
  230. "email_register",
  231. "endpoint",
  232. "extension",
  233. "external",
  234. "feature",
  235. "forgot_password",
  236. "generator",
  237. "hit_testing",
  238. "init_validate",
  239. "installed_app",
  240. "load_balancing_config",
  241. "login",
  242. "mcp_server",
  243. "members",
  244. "message",
  245. "metadata",
  246. "model_config",
  247. "model_providers",
  248. "models",
  249. "oauth",
  250. "oauth_server",
  251. "ops_trace",
  252. "parameter",
  253. "ping",
  254. "plugin",
  255. "rag_pipeline",
  256. "rag_pipeline_datasets",
  257. "rag_pipeline_draft_variable",
  258. "rag_pipeline_import",
  259. "rag_pipeline_workflow",
  260. "recommended_app",
  261. "saved_message",
  262. "setup",
  263. "site",
  264. "spec",
  265. "statistic",
  266. "tags",
  267. "tool_providers",
  268. "version",
  269. "website",
  270. "workflow",
  271. "workflow_app_log",
  272. "workflow_draft_variable",
  273. "workflow_run",
  274. "workflow_statistic",
  275. "workspace",
  276. ]