BlocklyML:面向 Python 与机器学习的可视化无代码编程工具
BlocklyML 是一个面向 Python 与机器学习的无代码(No Code)可视化编程工具,基于 Blockly 分叉并改造,用于简化标准机器学习流程的实现,适合想入门机器学习或 Python 的用户;项目采用 Apache License 2.0,可通过 Docker 或 Flask 本地部署,支持 DataFrame 查看、XML 布局导入导出、代码复制以及 .py / .ipynb 下载。
社区作者 · zZz
它解决什么问题
项目定位
BlocklyML 是一个用于 Python 与机器学习的 No Code(无代码)训练场,目标是简化标准机器学习流程的实现。它由 Blockly 分叉而来,并针对机器学习与数据分析场景进行了改造(配图 1 为项目 Banner)。
官方说明:该工具可以帮助任何想开始接触机器学习或
Python 的人。
示例场景
README 给出的示例是:使用 BlocklyML 为 Iris 数据集训练一个随机森林(Random Forest)。仓库内提供了演示视频 blocklyML_demo.mp4,用于展示该流程。
如需示例运行,可前往 sampleLayouts 文件夹,上传其中的布局文件并试用。
界面功能(UI Features)
快捷键 / 功能按钮(Shortcuts)
这些按钮位于应用右上角(配图 3),功能如下:
- 下载 XML 布局(Download XML Layout)
- 上传 XML 布局(Upload XML layout)
- 复制代码(Copy Code)
- 启动 Google Colab(Launch Google Colab)
- 删除(Delete)
- 运行(Run)—— 来源明确标注为 “Not Supported Yet!!”(尚未支持)
数据帧查看器(Dataframe Viewer)
Blockly 支持完整 HTML 形式的 DataFrame 视图,可通过导航栏中的 view 选项访问(配图 4 为 DatasetView 示意)。
下载代码(Download Code)
支持 .py 与 .ipynb 两种格式,可在导航栏的 download 选项中下载生成的代码(配图 5 为 DownloadView 示意)。
文档与参与方式
- 项目进一步的使用说明位于
UserGuide.md(配图 2 为 UserGuide.md 链接)。 - 如果发现错误或需要支持,可提交 issue;如果希望新增功能或修复 bug,可提交 PR。
- 项目欢迎任何形式的贡献,详见
CONTRIBUTING.md。
适用对象
- 想入门 Python 与机器学习的初学者
- 希望通过可视化积木块快速搭建机器学习 / 数据分析流程的用户
- 需要把可视化流程导出为 Python 脚本或 Jupyter Notebook 的教学与原型场景用户
— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。
安装 / 开始使用
一、准备环境
需要本地具备 Git、Python 环境(使用 Flask 方式运行)或
Docker(使用容器方式运行)。
- 首次运行前需克隆仓库并安装依赖。
二、克隆仓库
第一步先克隆本仓库:
git clone https://github.com/chekoduadarsh/BlocklyML克隆完成后,可选择下面两种方式之一运行
Docker 方式或 Flask 方式。三、方式 A:使用 Docker 运行
如果已克隆项目并希望自行构建镜像,按以下步骤操作:
- 打开终端并进入项目目录。
- 运行以下命令构建 Docker 镜像:
docker build . -t blocklyml/demo- 镜像构建完成后,执行以下命令启动应用:
docker run -ti -p5000:5000 blockly_ml/demo- 应用启动后,在浏览器中打开以下地址访问:
http://localhost:5000四、方式 B:Flask 方式运行
- 安装 requirements.txt 中的依赖:
pip install -r requirements.txt- 运行应用:
python app.pyREADME 原文对该方式的描述为 “Simple as that”。
五、首次运行与示例加载
- 首次启动后可先试用仓库提供的示例:前往
sampleLayouts文件夹,上传其中的布局文件并尝试运行。 - README 给出的示例流程是:为 Iris 数据集训练一个随机森林。
- 界面右上角提供上传 / 下载 XML 布局、复制代码、启动 Google Colab、删除等按钮;其中 “Run” 按钮来源明确标注为尚未支持(Not Supported Yet),因此不应依赖该按钮执行流程。
六、常见问题与说明
- 如果发现错误或需要支持,请提交 issue;如需新增功能或修复 bug,请提交 PR。
- 项目为 Blockly 的分叉项目,贡献前可阅读
CONTRIBUTING.md。 - 更详细的界面与使用说明可参考仓库中的
UserGuide.md。
