模块地图

想快速定位"某业务功能对应哪个 model / view / 前端页面文件",或想总览后端四大目录与前端结构时读这篇

07-参考速查 / 速查
模块地图module map代码结构modelsviewstasksutils目录结构领域映射domain mapmodel-view-page前端页面pagesrouterConfigADUGTemplatecelery

模块地图

本文是从源码派生的总览级导航地图,用于快速定位"某业务功能 → 哪些 model / view / 前端文件"。 仓库根:cube-studio-enterprise/,后端在 myapp/,前端在 myapp/frontend/

设计原理、组件关系请看『01-架构原理』段;后端框架与二次开发细节请看『06-二次开发』段。 本表为代码派生总览,具体以源码为准,仅供导航

1. 后端 myapp/ 分组概览

应用工厂在 myapp/__init__.py(创建 Flask app、注册各 view 蓝图、初始化 SQLAlchemy / Celery / 鉴权)。各 REST 控制器通过 myapp/views/__init__.py 统一 import 后,在模块加载时调用 appbuilder.add_api(...) 完成注册。

子目录 规模 作用
myapp/models/ 32 个 .py(含 __init__.py/base.py/helpers.py SQLAlchemy ORM 模型,业务模型多以 model_*.py 命名
myapp/views/ 54 个 .py,其中 47 个 view_*.py REST 控制器,多继承 baseApi.pyMyappModelRestApi
myapp/tasks/ celery_app.py + async_task.py + schedules.py Celery 异步任务与定时任务
myapp/utils/ 多模块 + 子目录 共享工具

tasks/ 任务清单(已核对 @celery_app.task 名)

  • 异步任务(async_task.py):task.check_docker_committask.check_notebook_committask.check_rental_instance_committask.upgrade_servicetask.update_datasettask.get_k8s_resourcetask.upload_knowledgetask.llm_safety_check
  • 定时任务(schedules.py):task.delete_workflowtask.delete_notebooktask.delete_debug_dockertask.make_timerun_config(定时任务流补录/调度核心)、task.upload_workflowtask.delete_old_datatask.check_pipeline_runtask.push_workspace_sizetask.watch_gputask.watch_pod_utilizationtask.adjust_node_resourcetask.adjust_service_resourcetask.adjust_pipeline_resourcetask.cronhpatask.check_pod_terminatingtask.day_bill

utils/ 主要模块

  • 模块文件:cache.py(缓存)、celery.pycore.py(核心工具)、dates.pydecorators.pyk8s_data_analysis.pyapproval_engine.py(审批引擎)、labelstudio.py(标注集成)、push.py(消息推送)、routes.py(菜单→路由映射)、etl_type_check.pyfile_download.pyimage_utils.pylog.py
  • 子目录:sqllab/(SQL 查询)、echart/(图表)、plugin/(插件)、tool/alipay/wework/py/torch_network_layers/

2. 领域映射表(model → view → 前端,核心)

说明:大量"列表/详情/表单"页面由前端 ADUGTemplate.tsx 根据后端 /_info 接口配置动态渲染,并非每个资源都有独立前端页面文件。下表"前端"列写明独立页面或动态模板。

业务域 model 文件(主要类) view 文件 前端
任务流编排 model_job.py(Pipeline/Task/RunHistory/Workflow) view_pipeline.pyview_pipeline_immutable.pyview_task.pyview_runhistory.pyview_workflow.py vision(DAG 编排,独立 npm 模块)
任务模板/镜像 model_job.py(Job_Template/Images/Repository)、model_docker.py(Docker) view_job_template.pyview_images.pyview_docker.py ADUGTemplate 动态页
Notebook 在线开发 model_notebook.py view_notebook.py pages/Jupyter
在线服务 model_serving.py(Service/service_common) view_serving.py ADUGTemplate 动态页
推理服务 model_serving.py(InferenceService) view_inferenceserving.py ADUGTemplate 动态页
数据集/标注 model_dataset.py view_dataset.pyview_labelstudio.py ADUGTemplate 动态页 + labelstudio 代理
AIHub 模型市场 model_aihub.py(Aihub) view_aihub.py(按 visual/voice/language/multimodal/aigc/all 多路由) ADUGTemplate 动态页
对话/LLM model_chat.py(Chat/ChatLog)、model_llm_ingress.py(Ingress) view_chat.pyview_chat_dingtalk.pyview_chat_wechat.pyview_chat_wework.pyview_llm_ingress.py pages/Chatpages/ChatReact
ETL 任务流 model_etl_pipeline.py(ETL_Pipeline/ETL_Pipeline_Run/ETL_Task) view_etl_pipeline.pyview_etl_pipeline_run.pyview_etl_pipeline_etl.pyview_etl_pipeline_data_analysis.py visionPlus 模块、pages/CommonPipeline
元数据/指标/维表/血缘 model_metadata.pymodel_metadata_metric.pymodel_dimension.py view_metadata.pyview_metadata_metric.pyview_dimension.pyview_blood.py pages/Bloodpages/DataDiscoverypages/DataSearch
服务编排 model_service_pipeline.py(Service_Pipeline) view_service_pipeline.py ⚠️ 见下注 ADUGTemplate 动态页
超参搜索 model_nni.py(NNI) view_nni.py ADUGTemplate 动态页
训练模型登记/定义 model_train_model.py(Training_Model)、model_model_define.py(Model_define) view_train_model.pyview_model_define.py ⚠️ 见下注 ADUGTemplate 动态页
算力租赁/账单/发票 model_rental_instance.py(RentalInstance)、model_bill.py(Bill)、model_invoice.py(Invoice) view_rental.pyview_bill.pyview_invoice.py pages/ComputeLeasingpages/RentalInstance
项目组/权限 model_team.py(Project/Project_User)、user_attributes.py(UserAttribute) view_team.pyview_user_role.py 前端 /security 路由(iframe 嵌入 FAB 安全页)
资源/节点/存储/Pod/K8s model_node.py(Node)、model_storage.py(Storage)、model_pod.py(Pod) view_resource_node.pyview_resource_storage.pyview_pod.pyview_k8s.pyview_total_resource.py ADUGTemplate 动态页 + pages/Jupyter(pod 终端)
审批/消息/日志/SQL查询/收藏 model_approval.pymodel_message.pylog.py(Log)、model_sqllab_query.pyfavorite.py view_approval.pyview_message.pyview_log.pyview_sqllab.py ADUGTemplate 动态页
仪表盘 —(聚合多模型数据) view_dashboard.py pages/Dashboard

注意:view_service_pipeline.pyview_model_define.pymyapp/views/__init__.py:27,48 中被注释掉(# from . import view_service_pipeline# from . import view_model_define)。两者的 appbuilder.add_api(...)view_service_pipeline.py:711view_model_define.py:650)仅在模块被 import 时执行,因此默认构建下这两个视图未被注册,对应 service_pipeline_modelview/apimodel_define_modelview/api 不可用。

3. 前端 frontend/src 概览

路由在 src/routerConfig.tsx。除少量独立页面外,菜单项由后端 /myapp/menu 返回,前端按 menu_type 选择渲染器:apiADUGTemplate(通用 CRUD 列表/详情/表单)、iframeIframeTemplateout_linkOutLinkTemplateinnerRouter→独立页面组件。

独立页面目录(src/pages/):

  • Home(首页)、Login(登录)、UserCenter(用户中心)、Dashboard(仪表盘)
  • Jupyter(在线 IDE / pod 终端)、Chat / ChatReact(对话)
  • Blood(数据血缘)、DataDiscoveryDataSearch(数据查询/资产发现)
  • CommonPipeline(通用关系图/编排)、ComputeLeasing(算力租赁)、RentalInstance(实例管理)
  • GenericDetail(通用详情)、Page404
  • 顶层动态模板:ADUGTemplate.tsx(后端配置驱动的通用 CRUD 页)、IframeTemplate.tsxOutLinkTemplate.tsxShowData.tsxChartOptionTempalte.tsx

API 客户端(src/api/):home.tskubeflowApi.ts(菜单/导航)、bloodApi.tschatgpt.tscommonPipeline.tscomputeLeasingApi.tsdataSearchApi.tsiframeTemplateApi.tsjupyterApi.tsrentalInstanceApi.tsuserinfoApi.tsindex.tsxinterface/(TS 类型)。

状态管理用 MobX(store),国际化用 i18next(locales,en/zh)。

其他独立 npm 模块(不在 frontend/ 内):vision/(ML 任务流 DAG 可视化)、visionPlus/(ETL 流程可视化)。

4. 注册与路由约定

  • 每个 view_*.py 中的 REST 类设置 route_base(如 /pipeline_modelview/api),自定义业务端点用 flask_appbuilder.baseviews.expose_api(description=..., url=...) 装饰,description 多为中文,便于检索。
  • 标准 CRUD 端点由 baseApi.pyMyappModelRestApi 统一提供,详见本段 核心API速查.md
  • 各资源 route_base、自定义端点清单见 核心API速查.md;各 model 类与字段/关系见 核心数据模型速查.md

本表为代码派生总览,模块归属与文件名以 myapp/ 源码为准,仅供导航。

最后更新 2026-06-30完整文档以官方仓库为准:GitHub Wiki