swanlab


Nameswanlab JSON
Version 0.6.7 PyPI version JSON
download
home_pageNone
SummaryPython library for streamlined tracking and management of AI training processes.
upload_time2025-07-17 14:43:26
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseNone
keywords machine learning reproducibility visualization
VCS
bugtrack_url
requirements swankit urllib3 requests setuptools click pyyaml psutil pynvml boto3 botocore pydantic pyecharts wrapt platformdirs typing_extensions protobuf protobuf protobuf protobuf rich
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <div align="center">

<picture>
  <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/swanlab-logo-single-dark.svg">
  <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/swanlab-logo-single.svg">
  <img alt="SwanLab" src="https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/swanlab-logo-single.svg" width="300" height="130">
</picture>

一个开源、现代化设计的深度学习训练跟踪与可视化工具  
同时支持云端/离线使用,适配30+主流框架,与你的实验代码轻松集成

<a href="https://swanlab.cn">🔥SwanLab 在线版</a> · <a href="https://docs.swanlab.cn">📃 文档</a> · <a href="https://github.com/swanhubx/swanlab/issues">报告问题</a> · <a href="https://geektechstudio.feishu.cn/share/base/form/shrcnyBlK8OMD0eweoFcc2SvWKc">建议反馈</a> · <a href="https://docs.swanlab.cn/zh/guide_cloud/general/changelog.html">更新日志</a> · <img height="16" width="16" src="https://raw.githubusercontent.com/SwanHubX/assets/main/community.svg" alt="swanlab community Logo" /> <a href="https://swanlab.cn/benchmarks">基线社区</a>

[![][release-shield]][release-link]
[![][dockerhub-shield]][dockerhub-link]
[![][github-stars-shield]][github-stars-link]
[![][github-issues-shield]][github-issues-shield-link]
[![][github-contributors-shield]][github-contributors-link]
[![][license-shield]][license-shield-link]  
[![][tracking-swanlab-shield]][tracking-swanlab-shield-link]
[![][last-commit-shield]][last-commit-shield-link]
[![][pypi-version-shield]][pypi-version-shield-link]
[![][wechat-shield]][wechat-shield-link]
[![][pypi-downloads-shield]][pypi-downloads-shield-link]
[![][colab-shield]][colab-shield-link]


![](https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/swanlab-overview.png)

中文 / [English](README_EN.md) / [日本語](README_JP.md) / [Русский](README_RU.md)

👋 加入我们的[微信群](https://docs.swanlab.cn/zh/guide_cloud/community/online-support.html)

<a href="https://hellogithub.com/repository/b442a9fa270e4ccb8847c9ee3445e41b" target="_blank"><img src="https://abroad.hellogithub.com/v1/widgets/recommend.svg?rid=b442a9fa270e4ccb8847c9ee3445e41b&claim_uid=Oh5UaGjfrblg0yZ" alt="Featured|HelloGitHub" style="width: 250px; height: 54px;" width="250" height="54" /></a>


</div>

<br/>


## 目录

- [🌟 最近更新](#-最近更新)
- [👋🏻 什么是SwanLab](#-什么是swanlab)
- [📃 在线演示](#-在线演示)
- [🏁 快速开始](#-快速开始)
- [💻 自托管](#-自托管)
- [🔥 实战案例](#-实战案例)
- [🎮 硬件记录](#-硬件记录)
- [🚗 框架集成](#-框架集成)
- [🔌 插件与API](#-插件与api)
- [🆚 与熟悉的工具的比较](#-与熟悉的工具的比较)
- [👥 社区](#-社区)
- [📃 协议](#-协议)

<br/>


## 🌟 最近更新

- 2025.07.17:📊更强大的**折线图配置**,支持灵活配置线型、颜色、粗细、网格、图例位置等;📹支持**swanlab.Video**数据类型,支持记录与可视化GIF格式文件;全局图表仪表盘支持配置Y轴与最大显示实验数;

- 2025.07.10:📚更强大的**文本视图**,支持Markdown渲染与方向键切换,可由`swanlab.echarts.table`与`swanlab.Text`创建,[Demo](https://swanlab.cn/@ZeyiLin/ms-swift-rlhf/runs/d661ty9mslogsgk41fp0p/chart)

- 2025.07.06:🚄支持**resume断点续训**;新插件**文件记录器**;集成[ray](https://github.com/ray-project/ray)框架,[文档](https://docs.swanlab.cn/guide_cloud/integration/integration-ray.html);集成[ROLL](https://github.com/volcengine/ROLL)框架,感谢[@PanAndy](https://github.com/PanAndy),[文档](https://docs.swanlab.cn/guide_cloud/integration/integration-roll.html)

- 2025.06.27:📊支持**小折线图局部放大**;支持配置**单个折线图平滑**;大幅改进了图像图表放大后的交互效果;

- 2025.06.20:🤗集成[accelerate](https://github.com/huggingface/accelerate)框架,[PR](https://github.com/huggingface/accelerate/pull/3605),[文档](https://docs.swanlab.cn/guide_cloud/integration/integration-huggingface-accelerate.html),增强分布式训练中的实验记录体验;

- 2025.06.18:🐜集成[AREAL](https://github.com/inclusionAI/AReaL)框架,感谢[@xichengpro](https://github.com/xichengpro),[PR](https://github.com/inclusionAI/AReaL/pull/98),[文档](https://inclusionai.github.io/AReaL/tutorial/quickstart.html#monitoring-the-training-process);🖱支持鼠标Hover到侧边栏实验时,高亮相应曲线;支持跨组对比折线图;支持设置实验名裁剪规则;

- 2025.06.11:📊支持 **swanlab.echarts.table** 数据类型,支持纯文本图表展示;支持对分组进行**拉伸交互**,以增大同时显示的图表数量;表格视图增加 **指标最大/最小值** 选项;

- 2025.06.08:♻️支持在本地存储完整的实验日志文件,通过 **swanlab sync** 上传本地日志文件到云端/私有化部署端;硬件监控支持**海光DCU**;

- 2025.06.01:🏸支持**图表自由拖拽**;支持**ECharts自定义图表**,增加包括柱状图、饼状图、直方图在内的20+图表类型;硬件监控支持**沐曦GPU**;集成 **[PaddleNLP](https://github.com/PaddlePaddle/PaddleNLP)** 框架;


<details><summary>完整更新日志</summary>

- 2025.05.25:日志支持记录**标准错误流**,PyTorch Lightning等框架的打印信息可以被更好地记录;硬件监控支持**摩尔线程**;新增运行命令记录安全防护功能,API Key将被自动隐藏;

- 2025.05.14:支持**实验Tag**;支持折线图**Log Scale**;支持**分组拖拽**;大幅度优化了大量指标上传的体验;增加`swanlab.OpenApi`开放接口;

- 2025.05.09:支持**折线图创建**;配置图表功能增加**数据源选择**功能,支持单张图表显示不同的指标;支持生成**训练项目GitHub徽章**;

- 2025.04.23:支持折线图**编辑**,支持自由配置图表的X、Y轴数据范围和标题样式;图表搜索支持**正则表达式**;支持**昆仑芯XPU**的硬件检测与监控;

- 2025.04.11:支持折线图**局部区域选取**;支持全局选择仪表盘折线图的step范围;支持一键隐藏全部图表;

- 2025.04.08:支持**swanlab.Molecule**数据类型,支持记录与可视化生物化学分子数据;支持保存表格视图中的排序、筛选、列顺序变化状态;

- 2025.04.07:我们与 [EvalScope](https://github.com/ModelScope/EvalScope) 完成了联合集成,现在你可以在EvalScope中使用SwanLab来**评估大模型性能**;

- 2025.03.30:支持**swanlab.Settings**方法,支持更精细化的实验行为控制;支持**寒武纪MLU**硬件监控;支持 [Slack通知](https://docs.swanlab.cn/plugin/notification-slack.html)、[Discord通知](https://docs.swanlab.cn/plugin/notification-discord.html);

- 2025.03.21:🎉🤗HuggingFace Transformers已正式集成SwanLab(>=4.50.0版本),[#36433](https://github.com/huggingface/transformers/pull/36433);新增 **Object3D图表** ,支持记录与可视化三维点云,[文档](https://docs.swanlab.cn/api/py-object3d.html);硬件监控支持了 GPU显存(MB)、磁盘利用率、网络上下行 的记录;

- 2025.03.12:🎉🎉SwanLab**私有化部署版**现已发布!![🔗部署文档](https://docs.swanlab.cn/guide_cloud/self_host/docker-deploy.html);SwanLab 已支持插件扩展,如 [邮件通知](https://docs.swanlab.cn/plugin/notification-email.html)、[飞书通知](https://docs.swanlab.cn/plugin/notification-lark.html)

- 2025.03.09:支持**实验侧边栏拉宽**;新增外显 Git代码 按钮;新增 **sync_mlflow** 功能,支持与mlflow框架同步实验跟踪;

- 2025.03.06:我们与 [DiffSynth Studio](https://github.com/modelscope/diffsynth-studio) 完成了联合集成,现在你可以在DiffSynth Studio中使用SwanLab来**跟踪和可视化Diffusion模型文生图/视频实验**,[使用指引](https://docs.swanlab.cn/guide_cloud/integration/integration-diffsynth-studio.html);

- 2025.03.04:新增 **MLFlow转换** 功能,支持将MLFlow实验转换为SwanLab实验,[使用指引](https://docs.swanlab.cn/guide_cloud/integration/integration-mlflow.html);

- 2025.03.01:新增 **移动实验** 功能,现在可以将实验移动到不同组织的不同项目下了;

- 2025.02.24:我们与 [EasyR1](https://github.com/hiyouga/EasyR1) 完成了联合集成,现在你可以在EasyR1中使用SwanLab来**跟踪和可视化多模态大模型强化学习实验**,[使用指引](https://docs.swanlab.cn/guide_cloud/integration/integration-easyr1.html)

- 2025.02.18:我们与 [Swift](https://github.com/modelscope/ms-swift) 完成了联合集成,现在你可以在Swift的CLI/WebUI中使用SwanLab来**跟踪和可视化大模型微调实验**,[使用指引](https://docs.swanlab.cn/guide_cloud/integration/integration-swift.html)。

- 2025.02.16:新增 **图表移动分组、创建分组** 功能。

- 2025.02.09:我们与 [veRL](https://github.com/volcengine/verl) 完成了联合集成,现在你可以在veRL中使用SwanLab来**跟踪和可视化大模型强化学习实验**,[使用指引](https://docs.swanlab.cn/guide_cloud/integration/integration-verl.html)。

- 2025.02.05:`swanlab.log`支持嵌套字典 [#812](https://github.com/SwanHubX/SwanLab/pull/812),适配Jax框架特性;支持`name`与`notes`参数;

- 2025.01.22:新增`sync_tensorboardX`与`sync_tensorboard_torch`功能,支持与此两种TensorBoard框架同步实验跟踪;

- 2025.01.17:新增`sync_wandb`功能,[文档](https://docs.swanlab.cn/guide_cloud/integration/integration-wandb.html),支持与Weights & Biases实验跟踪同步;大幅改进了日志渲染性能

- 2025.01.11:云端版大幅优化了项目表格的性能,并支持拖拽、排序、筛选等交互

- 2025.01.01:新增折线图**持久化平滑**、折线图拖拽式改变大小,优化图表浏览体验

- 2024.12.22:我们与 [LLaMA Factory](https://github.com/hiyouga/LLaMA-Factory) 完成了联合集成,现在你可以在LLaMA Factory中使用SwanLab来**跟踪和可视化大模型微调实验**,[使用指引](https://github.com/hiyouga/LLaMA-Factory?tab=readme-ov-file#use-swanlab-logger)。

- 2024.12.15:**硬件监控(0.4.0)** 功能上线,支持CPU、NPU(Ascend)、GPU(Nvidia)的系统级信息记录与监控。

- 2024.12.06:新增对[LightGBM](https://docs.swanlab.cn/guide_cloud/integration/integration-lightgbm.html)、[XGBoost](https://docs.swanlab.cn/guide_cloud/integration/integration-xgboost.html)的集成;提高了对日志记录单行长度的限制。

- 2024.11.26:环境选项卡-硬件部分支持识别**华为昇腾NPU**与**鲲鹏CPU**;云厂商部分支持识别青云**基石智算**。

</details>

<br>

## 👋🏻 什么是SwanLab

SwanLab 是一款开源、轻量的 AI 模型训练跟踪与可视化工具,提供了一个跟踪、记录、比较、和协作实验的平台。

SwanLab 面向人工智能研究者,设计了友好的Python API 和漂亮的UI界面,并提供**训练可视化、自动日志记录、超参数记录、实验对比、多人协同**等功能。在SwanLab上,研究者能基于直观的可视化图表发现训练问题,对比多个实验找到研究灵感,并通过**在线网页**的分享与基于组织的**多人协同训练**,打破团队沟通的壁垒,提高组织训练效率。

https://github.com/user-attachments/assets/7965fec4-c8b0-4956-803d-dbf177b44f54

以下是其核心特性列表:

**1. 📊 实验指标与超参数跟踪**: 极简的代码嵌入您的机器学习 pipeline,跟踪记录训练关键指标

- ☁️ 支持**云端**使用(类似Weights & Biases),随时随地查看训练进展。[手机看实验的方法](https://docs.swanlab.cn/guide_cloud/general/app.html)

- 📝 支持**超参数记录**、**指标总结**、**表格分析**

- 🌸 **可视化训练过程**: 通过UI界面对实验跟踪数据进行可视化,可以让训练师直观地看到实验每一步的结果,分析指标走势,判断哪些变化导致了模型效果的提升,从而整体性地提升模型迭代效率。

- **支持的元数据类型**:标量指标、图像、音频、文本、视频、3D点云、生物化学分子、Echarts自定义图表...

![swanlab-table](https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/molecule.gif)

- **支持的图表类型**:折线图、媒体图(图像、音频、文本、视频)、3D点云、生物化学分子、柱状图、散点图、箱线图、热力图、饼状图、雷达图、[自定义图表](https://docs.swanlab.cn/guide_cloud/experiment_track/log-custom-chart.html)...

[![swanlab-echarts](https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/echarts.png)](https://swanlab.cn/@ZeyiLin/swanlab-echarts-demo/charts)

- **LLM生成内容可视化组件**:为大语言模型训练场景打造的文本内容可视化图表,支持Markdown渲染

![text-chart](https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/text-chart.gif)

- **后台自动记录**:日志logging、硬件环境、Git 仓库、Python 环境、Python 库列表、项目运行目录

- **断点续训记录**:支持在训练完成/中断后,补充新的指标数据到同个实验中

**2. ⚡️ 全面的框架集成**: PyTorch、🤗HuggingFace Transformers、PyTorch Lightning、🦙LLaMA Factory、MMDetection、Ultralytics、PaddleDetetion、LightGBM、XGBoost、Keras、Tensorboard、Weights&Biases、OpenAI、Swift、XTuner、Stable Baseline3、Hydra 在内的 **30+** 框架

![](https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/integrations.png)

**3. 💻 硬件监控**: 支持实时记录与监控CPU、NPU(**昇腾Ascend**)、GPU(**英伟达Nvidia**)、MLU(**寒武纪Cambricon**)、XLU(**昆仑芯Kunlunxin**)、DCU(**海光DCU**)、MetaX GPU(**沐曦XPU**)、Moore Threads GPU(**摩尔线程**)、内存的系统级硬件指标

**4. 📦 实验管理**: 通过专为训练场景设计的集中式仪表板,通过整体视图速览全局,快速管理多个项目与实验

**5. 🆚 比较结果**: 通过在线表格与对比图表比较不同实验的超参数和结果,挖掘迭代灵感

![](https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/swanlab-table.png)

**6. 👥 在线协作**: 您可以与团队进行协作式训练,支持将实验实时同步在一个项目下,您可以在线查看团队的训练记录,基于结果发表看法与建议

**7. ✉️ 分享结果**: 复制和发送持久的 URL 来共享每个实验,方便地发送给伙伴,或嵌入到在线笔记中

**8. 💻 支持自托管**: 支持离线环境使用,自托管的社区版同样可以查看仪表盘与管理实验,[使用攻略](#-自托管)

**9. 🔌 插件拓展**: 支持通过插件拓展SwanLab的使用场景,比如 [飞书通知](https://docs.swanlab.cn/plugin/notification-lark.html)、[Slack通知](https://docs.swanlab.cn/plugin/notification-slack.html)、[CSV记录器](https://docs.swanlab.cn/plugin/writer-csv.html)等


> \[!IMPORTANT]
>
> **收藏项目**,你将从 GitHub 上无延迟地接收所有发布通知~ ⭐️

![star-us](https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/star-us.png)

<br>

## 📃 在线演示

来看看 SwanLab 的在线演示:

| [ResNet50 猫狗分类][demo-cats-dogs] | [Yolov8-COCO128 目标检测][demo-yolo] |
| :--------: | :--------: |
| [![][demo-cats-dogs-image]][demo-cats-dogs] | [![][demo-yolo-image]][demo-yolo] |
| 跟踪一个简单的 ResNet50 模型在猫狗数据集上训练的图像分类任务。 | 使用 Yolov8 在 COCO128 数据集上进行目标检测任务,跟踪训练超参数和指标。 |

| [Qwen2 指令微调][demo-qwen2-sft] | [LSTM Google 股票预测][demo-google-stock] |
| :--------: | :--------: |
| [![][demo-qwen2-sft-image]][demo-qwen2-sft] | [![][demo-google-stock-image]][demo-google-stock] |
| 跟踪 Qwen2 大语言模型的指令微调训练,完成简单的指令遵循。 | 使用简单的 LSTM 模型在 Google 股价数据集上训练,实现对未来股价的预测。 |

| [ResNeXt101 音频分类][demo-audio-classification] | [Qwen2-VL COCO数据集微调][demo-qwen2-vl] |
| :--------: | :--------: |
| [![][demo-audio-classification-image]][demo-audio-classification] | [![][demo-qwen2-vl-image]][demo-qwen2-vl] |
| 从ResNet到ResNeXt在音频分类任务上的渐进式实验过程 | 基于Qwen2-VL多模态大模型,在COCO2014数据集上进行Lora微调。 |

| [EasyR1 多模态LLM RL训练][demo-easyr1-rl] | [Qwen2.5-0.5B GRPO训练][demo-qwen2-grpo] |
| :--------: | :--------: |
| [![][demo-easyr1-rl-image]][demo-easyr1-rl] | [![][demo-qwen2-grpo-image]][demo-qwen2-grpo] |
| 使用EasyR1框架进行多模态LLM RL训练 | 基于Qwen2.5-0.5B模型在GSM8k数据集上进行GRPO训练 |

[更多案例](https://docs.swanlab.cn/zh/examples/mnist.html)

<br>

## 🏁 快速开始

### 1.安装

```bash
pip install swanlab
```

<details><summary>源码安装</summary>

如果你想体验最新的特性,可以使用源码安装。

```bash
# 方式一
git clone https://github.com/SwanHubX/SwanLab.git
pip install -e .

# 方式二
pip install git+https://github.com/SwanHubX/SwanLab.git
```

</details>

<details><summary>离线看板拓展安装</summary>

[离线看板文档](https://docs.swanlab.cn/guide_cloud/self_host/offline-board.html)

```bash
pip install 'swanlab[dashboard]'
```

</details>


### 2.登录并获取 API Key

1. 免费[注册账号](https://swanlab.cn)

2. 登录账号,在用户设置 > [API Key](https://swanlab.cn/settings) 里复制您的 API Key

3. 打开终端,输入:

```bash
swanlab login
```

出现提示时,输入您的 API Key,按下回车,完成登陆。

### 3.将 SwanLab 与你的代码集成

```python
import swanlab

# 初始化一个新的swanlab实验
swanlab.init(
    project="my-first-ml",
    config={'learning-rate': 0.003},
)

# 记录指标
for i in range(10):
    swanlab.log({"loss": i, "acc": i})
```

大功告成!前往[SwanLab](https://swanlab.cn)查看你的第一个 SwanLab 实验。

<br>

## 💻 自托管

自托管社区版支持离线查看 SwanLab 仪表盘。

![swanlab-docker](./https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/swanlab-docker.png)

### 1. 使用Docker部署自托管版本

详情请参考:[文档](https://docs.swanlab.cn/guide_cloud/self_host/docker-deploy.html)

```bash
git clone https://github.com/SwanHubX/self-hosted.git
cd self-hosted/docker
```

中国地区快速安装:

```bash
./install.sh
```

从DockerHub拉取镜像安装:

```bash
./install-dockerhub.sh
```

### 2. 将实验指定到自托管服务

登录到自托管服务:

```bash
swanlab login --host http://localhost:8000
```

完成登录后,即可将实验记录到自托管服务。


<br>

## 🔥 实战案例

**使用SwanLab的优秀教程开源项目:**
- [happy-llm](https://github.com/datawhalechina/happy-llm):从零开始的大语言模型原理与实践教程 ![GitHub Repo stars](https://img.shields.io/github/stars/datawhalechina/happy-llm)
- [self-llm](https://github.com/datawhalechina/self-llm):《开源大模型食用指南》针对中国宝宝量身打造的基于Linux环境快速微调(全参数/Lora)、部署国内外开源大模型(LLM)/多模态大模型(MLLM)教程 ![GitHub Repo stars](https://img.shields.io/github/stars/datawhalechina/self-llm)
- [unlock-deepseek](https://github.com/datawhalechina/unlock-deepseek):DeepSeek 系列工作解读、扩展和复现。![GitHub Repo stars](https://img.shields.io/github/stars/datawhalechina/unlock-deepseek)

**使用SwanLab的优秀论文:**
- [Animation Needs Attention](https://arxiv.org/abs/2507.03916)

**教程文章:**
- [MNIST手写体识别](https://docs.swanlab.cn/examples/mnist.html)
- [FashionMNIST服装分类](https://docs.swanlab.cn/examples/fashionmnist.html)
- [Cifar10图像分类](https://docs.swanlab.cn/examples/cifar10.html)
- [Resnet猫狗分类](https://docs.swanlab.cn/examples/cats_dogs_classification.html)
- [Yolo目标检测](https://docs.swanlab.cn/examples/yolo.html)
- [UNet医学影像分割](https://docs.swanlab.cn/examples/unet-medical-segmentation.html)
- [音频分类](https://docs.swanlab.cn/examples/audio_classification.html)
- [DQN强化学习-推车倒立摆](https://docs.swanlab.cn/examples/dqn_cartpole.html)
- [LSTM Google股票预测](https://docs.swanlab.cn/examples/audio_classification.html)
- [BERT文本分类](https://docs.swanlab.cn/examples/bert.html)
- [Stable Diffusion文生图微调](https://docs.swanlab.cn/examples/stable_diffusion.html)
- [LLM预训练](https://docs.swanlab.cn/examples/pretrain_llm.html)
- [GLM4指令微调](https://docs.swanlab.cn/examples/glm4-instruct.html)
- [Qwen下游任务训练](https://docs.swanlab.cn/examples/qwen_finetune.html)
- [NER命名实体识别](https://docs.swanlab.cn/examples/ner.html)
- [Qwen3医学模型微调](https://docs.swanlab.cn/examples/qwen3-medical.html)
- [Qwen2-VL多模态大模型微调实战](https://docs.swanlab.cn/examples/qwen_vl_coco.html)
- [GRPO大模型强化学习](https://docs.swanlab.cn/examples/qwen_grpo.html)
- [Qwen3-SmVL-0.6B多模态模型训练](https://docs.swanlab.cn/examples/qwen3_smolvlm_muxi.html)

<br>

## 🎮 硬件记录

SwanLab会对AI训练过程中所使用的**硬件信息**和**资源使用情况**进行记录,下面是支持情况表格:

| 硬件 | 信息记录 | 资源监控 | 脚本 |
| --- | --- | --- | --- |
| 英伟达GPU | ✅ | ✅ | [nvidia.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/gpu/nvidia.py) |
| 昇腾NPU | ✅ | ✅ | [ascend.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/npu/ascend.py) |
| 苹果SOC | ✅ | ✅ | [apple.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/soc/apple.py) |
| 寒武纪MLU | ✅ | ✅ | [cambricon.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/mlu/cambricon.py) |
| 昆仑芯XPU | ✅ | ✅ | [kunlunxin.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/xpu/kunlunxin.py) |
| 摩尔线程GPU | ✅ | ✅ | [moorethreads.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/gpu/moorethreads.py) |
| 沐曦GPU | ✅ | ✅ | [metax.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/gpu/metax.py) |
| 海光DCU | ✅ | ✅ | [hygon.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/dcu/hygon.py) |
| CPU     | ✅        | ✅        | [cpu.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/cpu.py) |
| 内存        | ✅        | ✅        | [memory.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/memory.py) |
| 硬盘        | ✅        | ✅        | [disk.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/disk.py) |
| 网络 | ✅ | ✅ | [network.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/network.py) |

如果你希望记录其他硬件,欢迎提交Issue与PR!

<br>

## 🚗 框架集成

将你最喜欢的框架与 SwanLab 结合使用!  
下面是我们已集成的框架列表,欢迎提交 [Issue](https://github.com/swanhubx/swanlab/issues) 来反馈你想要集成的框架。

**基础框架**
- [PyTorch](https://docs.swanlab.cn/guide_cloud/integration/integration-pytorch.html)
- [MindSpore](https://docs.swanlab.cn/guide_cloud/integration/integration-ascend.html)
- [Keras](https://docs.swanlab.cn/guide_cloud/integration/integration-keras.html)

**专有/微调框架**
- [PyTorch Lightning](https://docs.swanlab.cn/guide_cloud/integration/integration-pytorch-lightning.html)
- [HuggingFace Transformers](https://docs.swanlab.cn/guide_cloud/integration/integration-huggingface-transformers.html)
- [LLaMA Factory](https://docs.swanlab.cn/guide_cloud/integration/integration-llama-factory.html)
- [Modelscope Swift](https://docs.swanlab.cn/guide_cloud/integration/integration-swift.html)
- [DiffSynth Studio](https://docs.swanlab.cn/guide_cloud/integration/integration-diffsynth-studio.html)
- [Sentence Transformers](https://docs.swanlab.cn/guide_cloud/integration/integration-sentence-transformers.html)
- [PaddleNLP](https://docs.swanlab.cn/guide_cloud/integration/integration-paddlenlp.html)
- [OpenMind](https://modelers.cn/docs/zh/openmind-library/1.0.0/basic_tutorial/finetune/finetune_pt.html#%E8%AE%AD%E7%BB%83%E7%9B%91%E6%8E%A7)
- [Torchtune](https://docs.swanlab.cn/guide_cloud/integration/integration-pytorch-torchtune.html)
- [XTuner](https://docs.swanlab.cn/guide_cloud/integration/integration-xtuner.html)
- [MMEngine](https://docs.swanlab.cn/guide_cloud/integration/integration-mmengine.html)
- [FastAI](https://docs.swanlab.cn/guide_cloud/integration/integration-fastai.html)
- [LightGBM](https://docs.swanlab.cn/guide_cloud/integration/integration-lightgbm.html)
- [XGBoost](https://docs.swanlab.cn/guide_cloud/integration/integration-xgboost.html)

**评估框架**
- [EvalScope](https://docs.swanlab.cn/guide_cloud/integration/integration-evalscope.html)

**计算机视觉**
- [Ultralytics](https://docs.swanlab.cn/guide_cloud/integration/integration-ultralytics.html)
- [MMDetection](https://docs.swanlab.cn/guide_cloud/integration/integration-mmdetection.html)
- [MMSegmentation](https://docs.swanlab.cn/guide_cloud/integration/integration-mmsegmentation.html)
- [PaddleDetection](https://docs.swanlab.cn/guide_cloud/integration/integration-paddledetection.html)
- [PaddleYOLO](https://docs.swanlab.cn/guide_cloud/integration/integration-paddleyolo.html)

**强化学习**
- [Stable Baseline3](https://docs.swanlab.cn/guide_cloud/integration/integration-sb3.html)
- [veRL](https://docs.swanlab.cn/guide_cloud/integration/integration-verl.html)
- [HuggingFace trl](https://docs.swanlab.cn/guide_cloud/integration/integration-huggingface-trl.html)
- [EasyR1](https://docs.swanlab.cn/guide_cloud/integration/integration-easyr1.html)
- [AReaL](https://docs.swanlab.cn/guide_cloud/integration/integration-areal.html)
- [ROLL](https://docs.swanlab.cn/guide_cloud/integration/integration-roll.html)

**其他框架:**
- [Tensorboard](https://docs.swanlab.cn/guide_cloud/integration/integration-tensorboard.html)
- [Weights&Biases](https://docs.swanlab.cn/guide_cloud/integration/integration-wandb.html)
- [MLFlow](https://docs.swanlab.cn/guide_cloud/integration/integration-mlflow.html)
- [HuggingFace Accelerate](https://docs.swanlab.cn/guide_cloud/integration/integration-huggingface-accelerate.html)
- [Ray](https://docs.swanlab.cn/guide_cloud/integration/integration-ray.html)
- [Unsloth](https://docs.swanlab.cn/guide_cloud/integration/integration-unsloth.html)
- [Hydra](https://docs.swanlab.cn/guide_cloud/integration/integration-hydra.html)
- [Omegaconf](https://docs.swanlab.cn/guide_cloud/integration/integration-omegaconf.html)
- [OpenAI](https://docs.swanlab.cn/guide_cloud/integration/integration-openai.html)
- [ZhipuAI](https://docs.swanlab.cn/guide_cloud/integration/integration-zhipuai.html)

[更多集成](https://docs.swanlab.cn/guide_cloud/integration/)

<br>


## 🔌 插件与API

欢迎通过插件来拓展SwanLab的功能,增强你的实验管理体验!

- [自定义你的插件](https://docs.swanlab.cn/plugin/custom-plugin.html)
- [邮件通知](https://docs.swanlab.cn/plugin/notification-email.html)
- [飞书通知](https://docs.swanlab.cn/plugin/notification-lark.html)
- [钉钉通知](https://docs.swanlab.cn/plugin/notification-dingtalk.html)
- [企业微信通知](https://docs.swanlab.cn/plugin/notification-wxwork.html)
- [Discord通知](https://docs.swanlab.cn/plugin/notification-discord.html)
- [Slack通知](https://docs.swanlab.cn/plugin/notification-slack.html)
- [CSV记录器](https://docs.swanlab.cn/plugin/writer-csv.html)
- [文件记录器](https://docs.swanlab.cn/plugin/writer-filelogdir.html)

开放接口:
- [OpenAPI](https://docs.swanlab.cn/api/py-openapi.html)

<br>

## 🆚 与熟悉的工具的比较

### Tensorboard vs SwanLab

- **☁️ 支持在线使用**:
  通过 SwanLab 可以方便地将训练实验在云端在线同步与保存,便于远程查看训练进展、管理历史项目、分享实验链接、发送实时消息通知、多端看实验等。而 Tensorboard 是一个离线的实验跟踪工具。

- **👥 多人协作**:
  在进行多人、跨团队的机器学习协作时,通过 SwanLab 可以轻松管理多人的训练项目、分享实验链接、跨空间交流讨论。而 Tensorboard 主要为个人设计,难以进行多人协作和分享实验。

- **💻 持久、集中的仪表板**:
  无论你在何处训练模型,无论是在本地计算机上、在实验室集群还是在公有云的 GPU 实例中,你的结果都会记录到同一个集中式仪表板中。而使用 TensorBoard 需要花费时间从不同的机器复制和管理
  TFEvent 文件。

- **💪 更强大的表格**:
  通过 SwanLab 表格可以查看、搜索、过滤来自不同实验的结果,可以轻松查看数千个模型版本并找到适合不同任务的最佳性能模型。
  TensorBoard 不适用于大型项目。

### Weights and Biases vs SwanLab

- Weights and Biases 是一个必须联网使用的闭源 MLOps 平台

- SwanLab 不仅支持联网使用,也支持开源、免费、自托管的版本

<br>

## 👥 社区

### 周边仓库

- [SwanLab-Docs](https://github.com/swanhubx/swanlab-docs):官方文档仓库
- [SwanLab-Dashboard](https://github.com/swanhubx/swanlab-dashboard):离线看板仓库,存放了由`swanlab watch`打开的轻量离线看板的web代码
- [self-hosted](https://github.com/swanhubx/self-hosted):私有化部署脚本仓库

### 社区与支持

- [GitHub Issues](https://github.com/SwanHubX/SwanLab/issues):使用 SwanLab 时遇到的错误和问题
- [电子邮件支持](zeyi.lin@swanhub.co):反馈关于使用 SwanLab 的问题
- <a href="https://docs.swanlab.cn/guide_cloud/community/online-support.html">微信交流群</a>:交流使用 SwanLab 的问题、分享最新的 AI 技术

### SwanLab README 徽章

如果你喜欢在工作中使用 SwanLab,请将 SwanLab 徽章添加到你的 README 中:

[![][tracking-swanlab-shield]][tracking-swanlab-shield-link]、[![][visualize-swanlab-shield]][visualize-swanlab-shield-link]

```
[![](https://raw.githubusercontent.com/SwanHubX/assets/main/badge2.svg)](your experiment url)
[![](https://raw.githubusercontent.com/SwanHubX/assets/main/badge1.svg)](your experiment url)
```

更多设计素材:[assets](https://github.com/SwanHubX/assets)

### 在论文中引用 SwanLab

如果您发现 SwanLab 对您的研究之旅有帮助,请考虑以下列格式引用:

```bibtex
@software{Zeyilin_SwanLab_2023,
  author = {Zeyi Lin, Shaohong Chen, Kang Li, Qiushan Jiang, Zirui Cai,  Kaifang Ji and {The SwanLab team}},
  doi = {10.5281/zenodo.11100550},
  license = {Apache-2.0},
  title = {{SwanLab}},
  url = {https://github.com/swanhubx/swanlab},
  year = {2023}
}
```

### 为 SwanLab 做出贡献

考虑为 SwanLab 做出贡献吗?首先,请花点时间阅读 [贡献指南](CONTRIBUTING.md)。

同时,我们非常欢迎通过社交媒体、活动和会议的分享来支持 SwanLab,衷心感谢!

<br>

**Contributors**

<a href="https://github.com/swanhubx/swanlab/graphs/contributors">
  <img src="https://contrib.rocks/image?repo=swanhubx/swanlab" />
</a>

<br>

<img src="./https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/swanlab-and-user.png" width="50%" />


## 📃 协议

本仓库遵循 [Apache 2.0 License](https://github.com/SwanHubX/SwanLab/blob/main/LICENSE) 开源协议

## Star History

[![Star History Chart](https://api.star-history.com/svg?repos=swanhubx/swanlab&type=Date)](https://star-history.com/#swanhubx/swanlab&Date)

<!-- link -->

[release-shield]: https://img.shields.io/github/v/release/swanhubx/swanlab?color=369eff&labelColor=black&logo=github&style=flat-square
[release-link]: https://github.com/swanhubx/swanlab/releases

[license-shield]: https://img.shields.io/badge/license-apache%202.0-white?labelColor=black&style=flat-square
[license-shield-link]: https://github.com/SwanHubX/SwanLab/blob/main/LICENSE

[last-commit-shield]: https://img.shields.io/github/last-commit/swanhubx/swanlab?color=c4f042&labelColor=black&style=flat-square
[last-commit-shield-link]: https://github.com/swanhubx/swanlab/commits/main

[pypi-version-shield]: https://img.shields.io/pypi/v/swanlab?color=orange&labelColor=black&style=flat-square
[pypi-version-shield-link]: https://pypi.org/project/swanlab/

[pypi-downloads-shield]: https://static.pepy.tech/badge/swanlab?labelColor=black&style=flat-square
[pypi-downloads-shield-link]: https://pepy.tech/project/swanlab

[swanlab-cloud-shield]: https://img.shields.io/badge/Product-SwanLab云端版-636a3f?labelColor=black&style=flat-square
[swanlab-cloud-shield-link]: https://swanlab.cn/

[wechat-shield]: https://img.shields.io/badge/WeChat-微信-4cb55e?labelColor=black&style=flat-square
[wechat-shield-link]: https://docs.swanlab.cn/guide_cloud/community/online-support.html

[colab-shield]: https://colab.research.google.com/assets/colab-badge.svg
[colab-shield-link]: https://colab.research.google.com/drive/1RWsrY_1bS8ECzaHvYtLb_1eBkkdzekR3?usp=sharing

[github-stars-shield]: https://img.shields.io/github/stars/swanhubx/swanlab?labelColor&style=flat-square&color=ffcb47
[github-stars-link]: https://github.com/swanhubx/swanlab

[github-issues-shield]: https://img.shields.io/github/issues/swanhubx/swanlab?labelColor=black&style=flat-square&color=ff80eb
[github-issues-shield-link]: https://github.com/swanhubx/swanlab/issues

[github-contributors-shield]: https://img.shields.io/github/contributors/swanhubx/swanlab?color=c4f042&labelColor=black&style=flat-square
[github-contributors-link]: https://github.com/swanhubx/swanlab/graphs/contributors

[demo-cats-dogs]: https://swanlab.cn/@ZeyiLin/Cats_Dogs_Classification/runs/jzo93k112f15pmx14vtxf/chart
[demo-cats-dogs-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-catsdogs.png

[demo-yolo]: https://swanlab.cn/@ZeyiLin/ultratest/runs/yux7vclmsmmsar9ear7u5/chart
[demo-yolo-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-yolo.png

[demo-qwen2-sft]: https://swanlab.cn/@ZeyiLin/Qwen2-fintune/runs/cfg5f8dzkp6vouxzaxlx6/chart
[demo-qwen2-sft-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-qwen2.png

[demo-google-stock]:https://swanlab.cn/@ZeyiLin/Google-Stock-Prediction/charts
[demo-google-stock-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-lstm.png

[demo-audio-classification]:https://swanlab.cn/@ZeyiLin/PyTorch_Audio_Classification/charts
[demo-audio-classification-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-audio-classification.png

[demo-qwen2-vl]:https://swanlab.cn/@ZeyiLin/Qwen2-VL-finetune/runs/pkgest5xhdn3ukpdy6kv5/chart
[demo-qwen2-vl-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-qwen2-vl.jpg

[demo-easyr1-rl]:https://swanlab.cn/@Kedreamix/easy_r1/runs/wzezd8q36bb6dlza6wtpc/chart
[demo-easyr1-rl-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-easyr1-rl.png

[demo-qwen2-grpo]:https://swanlab.cn/@kmno4/Qwen-R1/runs/t0zr3ak5r7188mjbjgdsc/chart
[demo-qwen2-grpo-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-qwen2-grpo.png

[tracking-swanlab-shield-link]:https://swanlab.cn
[tracking-swanlab-shield]: https://raw.githubusercontent.com/SwanHubX/assets/main/badge2.svg

[visualize-swanlab-shield-link]:https://swanlab.cn
[visualize-swanlab-shield]: https://raw.githubusercontent.com/SwanHubX/assets/main/badge1.svg

[dockerhub-shield]: https://img.shields.io/docker/v/swanlab/swanlab-next?color=369eff&label=docker&labelColor=black&logoColor=white&style=flat-square
[dockerhub-link]: https://hub.docker.com/r/swanlab/swanlab-next/tags
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "swanlab",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "machine learning, reproducibility, visualization",
    "author": null,
    "author_email": "Cunyue <team@swanhub.co>, Feudalman <team@swanhub.co>, ZeYi Lin <team@swanhub.co>, KashiwaByte <team@swanhub.co>",
    "download_url": "https://files.pythonhosted.org/packages/40/9a/4f7f401ff20c36f634f0dfa93f20f2d3c31a1c276b22bc0f4e38163f8500/swanlab-0.6.7.tar.gz",
    "platform": null,
    "description": "<div align=\"center\">\n\n<picture>\n  <source media=\"(prefers-color-scheme: dark)\" srcset=\"https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/swanlab-logo-single-dark.svg\">\n  <source media=\"(prefers-color-scheme: light)\" srcset=\"https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/swanlab-logo-single.svg\">\n  <img alt=\"SwanLab\" src=\"https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/swanlab-logo-single.svg\" width=\"300\" height=\"130\">\n</picture>\n\n\u4e00\u4e2a\u5f00\u6e90\u3001\u73b0\u4ee3\u5316\u8bbe\u8ba1\u7684\u6df1\u5ea6\u5b66\u4e60\u8bad\u7ec3\u8ddf\u8e2a\u4e0e\u53ef\u89c6\u5316\u5de5\u5177  \n\u540c\u65f6\u652f\u6301\u4e91\u7aef/\u79bb\u7ebf\u4f7f\u7528\uff0c\u9002\u914d30+\u4e3b\u6d41\u6846\u67b6\uff0c\u4e0e\u4f60\u7684\u5b9e\u9a8c\u4ee3\u7801\u8f7b\u677e\u96c6\u6210\n\n<a href=\"https://swanlab.cn\">\ud83d\udd25SwanLab \u5728\u7ebf\u7248</a> \u00b7 <a href=\"https://docs.swanlab.cn\">\ud83d\udcc3 \u6587\u6863</a> \u00b7 <a href=\"https://github.com/swanhubx/swanlab/issues\">\u62a5\u544a\u95ee\u9898</a> \u00b7 <a href=\"https://geektechstudio.feishu.cn/share/base/form/shrcnyBlK8OMD0eweoFcc2SvWKc\">\u5efa\u8bae\u53cd\u9988</a> \u00b7 <a href=\"https://docs.swanlab.cn/zh/guide_cloud/general/changelog.html\">\u66f4\u65b0\u65e5\u5fd7</a> \u00b7 <img height=\"16\" width=\"16\" src=\"https://raw.githubusercontent.com/SwanHubX/assets/main/community.svg\" alt=\"swanlab community Logo\" /> <a href=\"https://swanlab.cn/benchmarks\">\u57fa\u7ebf\u793e\u533a</a>\n\n[![][release-shield]][release-link]\n[![][dockerhub-shield]][dockerhub-link]\n[![][github-stars-shield]][github-stars-link]\n[![][github-issues-shield]][github-issues-shield-link]\n[![][github-contributors-shield]][github-contributors-link]\n[![][license-shield]][license-shield-link]  \n[![][tracking-swanlab-shield]][tracking-swanlab-shield-link]\n[![][last-commit-shield]][last-commit-shield-link]\n[![][pypi-version-shield]][pypi-version-shield-link]\n[![][wechat-shield]][wechat-shield-link]\n[![][pypi-downloads-shield]][pypi-downloads-shield-link]\n[![][colab-shield]][colab-shield-link]\n\n\n![](https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/swanlab-overview.png)\n\n\u4e2d\u6587 / [English](README_EN.md) / [\u65e5\u672c\u8a9e](README_JP.md) / [\u0420\u0443\u0441\u0441\u043a\u0438\u0439](README_RU.md)\n\n\ud83d\udc4b \u52a0\u5165\u6211\u4eec\u7684[\u5fae\u4fe1\u7fa4](https://docs.swanlab.cn/zh/guide_cloud/community/online-support.html)\n\n<a href=\"https://hellogithub.com/repository/b442a9fa270e4ccb8847c9ee3445e41b\" target=\"_blank\"><img src=\"https://abroad.hellogithub.com/v1/widgets/recommend.svg?rid=b442a9fa270e4ccb8847c9ee3445e41b&claim_uid=Oh5UaGjfrblg0yZ\" alt=\"Featured\uff5cHelloGitHub\" style=\"width: 250px; height: 54px;\" width=\"250\" height=\"54\" /></a>\n\n\n</div>\n\n<br/>\n\n\n## \u76ee\u5f55\n\n- [\ud83c\udf1f \u6700\u8fd1\u66f4\u65b0](#-\u6700\u8fd1\u66f4\u65b0)\n- [\ud83d\udc4b\ud83c\udffb \u4ec0\u4e48\u662fSwanLab](#-\u4ec0\u4e48\u662fswanlab)\n- [\ud83d\udcc3 \u5728\u7ebf\u6f14\u793a](#-\u5728\u7ebf\u6f14\u793a)\n- [\ud83c\udfc1 \u5feb\u901f\u5f00\u59cb](#-\u5feb\u901f\u5f00\u59cb)\n- [\ud83d\udcbb \u81ea\u6258\u7ba1](#-\u81ea\u6258\u7ba1)\n- [\ud83d\udd25 \u5b9e\u6218\u6848\u4f8b](#-\u5b9e\u6218\u6848\u4f8b)\n- [\ud83c\udfae \u786c\u4ef6\u8bb0\u5f55](#-\u786c\u4ef6\u8bb0\u5f55)\n- [\ud83d\ude97 \u6846\u67b6\u96c6\u6210](#-\u6846\u67b6\u96c6\u6210)\n- [\ud83d\udd0c \u63d2\u4ef6\u4e0eAPI](#-\u63d2\u4ef6\u4e0eapi)\n- [\ud83c\udd9a \u4e0e\u719f\u6089\u7684\u5de5\u5177\u7684\u6bd4\u8f83](#-\u4e0e\u719f\u6089\u7684\u5de5\u5177\u7684\u6bd4\u8f83)\n- [\ud83d\udc65 \u793e\u533a](#-\u793e\u533a)\n- [\ud83d\udcc3 \u534f\u8bae](#-\u534f\u8bae)\n\n<br/>\n\n\n## \ud83c\udf1f \u6700\u8fd1\u66f4\u65b0\n\n- 2025.07.17\uff1a\ud83d\udcca\u66f4\u5f3a\u5927\u7684**\u6298\u7ebf\u56fe\u914d\u7f6e**\uff0c\u652f\u6301\u7075\u6d3b\u914d\u7f6e\u7ebf\u578b\u3001\u989c\u8272\u3001\u7c97\u7ec6\u3001\u7f51\u683c\u3001\u56fe\u4f8b\u4f4d\u7f6e\u7b49\uff1b\ud83d\udcf9\u652f\u6301**swanlab.Video**\u6570\u636e\u7c7b\u578b\uff0c\u652f\u6301\u8bb0\u5f55\u4e0e\u53ef\u89c6\u5316GIF\u683c\u5f0f\u6587\u4ef6\uff1b\u5168\u5c40\u56fe\u8868\u4eea\u8868\u76d8\u652f\u6301\u914d\u7f6eY\u8f74\u4e0e\u6700\u5927\u663e\u793a\u5b9e\u9a8c\u6570\uff1b\n\n- 2025.07.10\uff1a\ud83d\udcda\u66f4\u5f3a\u5927\u7684**\u6587\u672c\u89c6\u56fe**\uff0c\u652f\u6301Markdown\u6e32\u67d3\u4e0e\u65b9\u5411\u952e\u5207\u6362\uff0c\u53ef\u7531`swanlab.echarts.table`\u4e0e`swanlab.Text`\u521b\u5efa\uff0c[Demo](https://swanlab.cn/@ZeyiLin/ms-swift-rlhf/runs/d661ty9mslogsgk41fp0p/chart)\n\n- 2025.07.06\uff1a\ud83d\ude84\u652f\u6301**resume\u65ad\u70b9\u7eed\u8bad**\uff1b\u65b0\u63d2\u4ef6**\u6587\u4ef6\u8bb0\u5f55\u5668**\uff1b\u96c6\u6210[ray](https://github.com/ray-project/ray)\u6846\u67b6\uff0c[\u6587\u6863](https://docs.swanlab.cn/guide_cloud/integration/integration-ray.html)\uff1b\u96c6\u6210[ROLL](https://github.com/volcengine/ROLL)\u6846\u67b6\uff0c\u611f\u8c22[@PanAndy](https://github.com/PanAndy)\uff0c[\u6587\u6863](https://docs.swanlab.cn/guide_cloud/integration/integration-roll.html)\n\n- 2025.06.27\uff1a\ud83d\udcca\u652f\u6301**\u5c0f\u6298\u7ebf\u56fe\u5c40\u90e8\u653e\u5927**\uff1b\u652f\u6301\u914d\u7f6e**\u5355\u4e2a\u6298\u7ebf\u56fe\u5e73\u6ed1**\uff1b\u5927\u5e45\u6539\u8fdb\u4e86\u56fe\u50cf\u56fe\u8868\u653e\u5927\u540e\u7684\u4ea4\u4e92\u6548\u679c\uff1b\n\n- 2025.06.20\uff1a\ud83e\udd17\u96c6\u6210[accelerate](https://github.com/huggingface/accelerate)\u6846\u67b6\uff0c[PR](https://github.com/huggingface/accelerate/pull/3605)\uff0c[\u6587\u6863](https://docs.swanlab.cn/guide_cloud/integration/integration-huggingface-accelerate.html)\uff0c\u589e\u5f3a\u5206\u5e03\u5f0f\u8bad\u7ec3\u4e2d\u7684\u5b9e\u9a8c\u8bb0\u5f55\u4f53\u9a8c\uff1b\n\n- 2025.06.18\uff1a\ud83d\udc1c\u96c6\u6210[AREAL](https://github.com/inclusionAI/AReaL)\u6846\u67b6\uff0c\u611f\u8c22[@xichengpro](https://github.com/xichengpro)\uff0c[PR](https://github.com/inclusionAI/AReaL/pull/98)\uff0c[\u6587\u6863](https://inclusionai.github.io/AReaL/tutorial/quickstart.html#monitoring-the-training-process)\uff1b\ud83d\uddb1\u652f\u6301\u9f20\u6807Hover\u5230\u4fa7\u8fb9\u680f\u5b9e\u9a8c\u65f6\uff0c\u9ad8\u4eae\u76f8\u5e94\u66f2\u7ebf\uff1b\u652f\u6301\u8de8\u7ec4\u5bf9\u6bd4\u6298\u7ebf\u56fe\uff1b\u652f\u6301\u8bbe\u7f6e\u5b9e\u9a8c\u540d\u88c1\u526a\u89c4\u5219\uff1b\n\n- 2025.06.11\uff1a\ud83d\udcca\u652f\u6301 **swanlab.echarts.table** \u6570\u636e\u7c7b\u578b\uff0c\u652f\u6301\u7eaf\u6587\u672c\u56fe\u8868\u5c55\u793a\uff1b\u652f\u6301\u5bf9\u5206\u7ec4\u8fdb\u884c**\u62c9\u4f38\u4ea4\u4e92**\uff0c\u4ee5\u589e\u5927\u540c\u65f6\u663e\u793a\u7684\u56fe\u8868\u6570\u91cf\uff1b\u8868\u683c\u89c6\u56fe\u589e\u52a0 **\u6307\u6807\u6700\u5927/\u6700\u5c0f\u503c** \u9009\u9879\uff1b\n\n- 2025.06.08\uff1a\u267b\ufe0f\u652f\u6301\u5728\u672c\u5730\u5b58\u50a8\u5b8c\u6574\u7684\u5b9e\u9a8c\u65e5\u5fd7\u6587\u4ef6\uff0c\u901a\u8fc7 **swanlab sync** \u4e0a\u4f20\u672c\u5730\u65e5\u5fd7\u6587\u4ef6\u5230\u4e91\u7aef/\u79c1\u6709\u5316\u90e8\u7f72\u7aef\uff1b\u786c\u4ef6\u76d1\u63a7\u652f\u6301**\u6d77\u5149DCU**\uff1b\n\n- 2025.06.01\uff1a\ud83c\udff8\u652f\u6301**\u56fe\u8868\u81ea\u7531\u62d6\u62fd**\uff1b\u652f\u6301**ECharts\u81ea\u5b9a\u4e49\u56fe\u8868**\uff0c\u589e\u52a0\u5305\u62ec\u67f1\u72b6\u56fe\u3001\u997c\u72b6\u56fe\u3001\u76f4\u65b9\u56fe\u5728\u5185\u768420+\u56fe\u8868\u7c7b\u578b\uff1b\u786c\u4ef6\u76d1\u63a7\u652f\u6301**\u6c90\u66e6GPU**\uff1b\u96c6\u6210 **[PaddleNLP](https://github.com/PaddlePaddle/PaddleNLP)** \u6846\u67b6\uff1b\n\n\n<details><summary>\u5b8c\u6574\u66f4\u65b0\u65e5\u5fd7</summary>\n\n- 2025.05.25\uff1a\u65e5\u5fd7\u652f\u6301\u8bb0\u5f55**\u6807\u51c6\u9519\u8bef\u6d41**\uff0cPyTorch Lightning\u7b49\u6846\u67b6\u7684\u6253\u5370\u4fe1\u606f\u53ef\u4ee5\u88ab\u66f4\u597d\u5730\u8bb0\u5f55\uff1b\u786c\u4ef6\u76d1\u63a7\u652f\u6301**\u6469\u5c14\u7ebf\u7a0b**\uff1b\u65b0\u589e\u8fd0\u884c\u547d\u4ee4\u8bb0\u5f55\u5b89\u5168\u9632\u62a4\u529f\u80fd\uff0cAPI Key\u5c06\u88ab\u81ea\u52a8\u9690\u85cf\uff1b\n\n- 2025.05.14\uff1a\u652f\u6301**\u5b9e\u9a8cTag**\uff1b\u652f\u6301\u6298\u7ebf\u56fe**Log Scale**\uff1b\u652f\u6301**\u5206\u7ec4\u62d6\u62fd**\uff1b\u5927\u5e45\u5ea6\u4f18\u5316\u4e86\u5927\u91cf\u6307\u6807\u4e0a\u4f20\u7684\u4f53\u9a8c\uff1b\u589e\u52a0`swanlab.OpenApi`\u5f00\u653e\u63a5\u53e3\uff1b\n\n- 2025.05.09\uff1a\u652f\u6301**\u6298\u7ebf\u56fe\u521b\u5efa**\uff1b\u914d\u7f6e\u56fe\u8868\u529f\u80fd\u589e\u52a0**\u6570\u636e\u6e90\u9009\u62e9**\u529f\u80fd\uff0c\u652f\u6301\u5355\u5f20\u56fe\u8868\u663e\u793a\u4e0d\u540c\u7684\u6307\u6807\uff1b\u652f\u6301\u751f\u6210**\u8bad\u7ec3\u9879\u76eeGitHub\u5fbd\u7ae0**\uff1b\n\n- 2025.04.23\uff1a\u652f\u6301\u6298\u7ebf\u56fe**\u7f16\u8f91**\uff0c\u652f\u6301\u81ea\u7531\u914d\u7f6e\u56fe\u8868\u7684X\u3001Y\u8f74\u6570\u636e\u8303\u56f4\u548c\u6807\u9898\u6837\u5f0f\uff1b\u56fe\u8868\u641c\u7d22\u652f\u6301**\u6b63\u5219\u8868\u8fbe\u5f0f**\uff1b\u652f\u6301**\u6606\u4ed1\u82afXPU**\u7684\u786c\u4ef6\u68c0\u6d4b\u4e0e\u76d1\u63a7\uff1b\n\n- 2025.04.11\uff1a\u652f\u6301\u6298\u7ebf\u56fe**\u5c40\u90e8\u533a\u57df\u9009\u53d6**\uff1b\u652f\u6301\u5168\u5c40\u9009\u62e9\u4eea\u8868\u76d8\u6298\u7ebf\u56fe\u7684step\u8303\u56f4\uff1b\u652f\u6301\u4e00\u952e\u9690\u85cf\u5168\u90e8\u56fe\u8868\uff1b\n\n- 2025.04.08\uff1a\u652f\u6301**swanlab.Molecule**\u6570\u636e\u7c7b\u578b\uff0c\u652f\u6301\u8bb0\u5f55\u4e0e\u53ef\u89c6\u5316\u751f\u7269\u5316\u5b66\u5206\u5b50\u6570\u636e\uff1b\u652f\u6301\u4fdd\u5b58\u8868\u683c\u89c6\u56fe\u4e2d\u7684\u6392\u5e8f\u3001\u7b5b\u9009\u3001\u5217\u987a\u5e8f\u53d8\u5316\u72b6\u6001\uff1b\n\n- 2025.04.07\uff1a\u6211\u4eec\u4e0e [EvalScope](https://github.com/ModelScope/EvalScope) \u5b8c\u6210\u4e86\u8054\u5408\u96c6\u6210\uff0c\u73b0\u5728\u4f60\u53ef\u4ee5\u5728EvalScope\u4e2d\u4f7f\u7528SwanLab\u6765**\u8bc4\u4f30\u5927\u6a21\u578b\u6027\u80fd**\uff1b\n\n- 2025.03.30\uff1a\u652f\u6301**swanlab.Settings**\u65b9\u6cd5\uff0c\u652f\u6301\u66f4\u7cbe\u7ec6\u5316\u7684\u5b9e\u9a8c\u884c\u4e3a\u63a7\u5236\uff1b\u652f\u6301**\u5bd2\u6b66\u7eaaMLU**\u786c\u4ef6\u76d1\u63a7\uff1b\u652f\u6301 [Slack\u901a\u77e5](https://docs.swanlab.cn/plugin/notification-slack.html)\u3001[Discord\u901a\u77e5](https://docs.swanlab.cn/plugin/notification-discord.html)\uff1b\n\n- 2025.03.21\uff1a\ud83c\udf89\ud83e\udd17HuggingFace Transformers\u5df2\u6b63\u5f0f\u96c6\u6210SwanLab\uff08>=4.50.0\u7248\u672c\uff09\uff0c[#36433](https://github.com/huggingface/transformers/pull/36433)\uff1b\u65b0\u589e **Object3D\u56fe\u8868** \uff0c\u652f\u6301\u8bb0\u5f55\u4e0e\u53ef\u89c6\u5316\u4e09\u7ef4\u70b9\u4e91\uff0c[\u6587\u6863](https://docs.swanlab.cn/api/py-object3d.html)\uff1b\u786c\u4ef6\u76d1\u63a7\u652f\u6301\u4e86 GPU\u663e\u5b58\uff08MB\uff09\u3001\u78c1\u76d8\u5229\u7528\u7387\u3001\u7f51\u7edc\u4e0a\u4e0b\u884c \u7684\u8bb0\u5f55\uff1b\n\n- 2025.03.12\uff1a\ud83c\udf89\ud83c\udf89SwanLab**\u79c1\u6709\u5316\u90e8\u7f72\u7248**\u73b0\u5df2\u53d1\u5e03\uff01\uff01[\ud83d\udd17\u90e8\u7f72\u6587\u6863](https://docs.swanlab.cn/guide_cloud/self_host/docker-deploy.html)\uff1bSwanLab \u5df2\u652f\u6301\u63d2\u4ef6\u6269\u5c55\uff0c\u5982 [\u90ae\u4ef6\u901a\u77e5](https://docs.swanlab.cn/plugin/notification-email.html)\u3001[\u98de\u4e66\u901a\u77e5](https://docs.swanlab.cn/plugin/notification-lark.html)\n\n- 2025.03.09\uff1a\u652f\u6301**\u5b9e\u9a8c\u4fa7\u8fb9\u680f\u62c9\u5bbd**\uff1b\u65b0\u589e\u5916\u663e Git\u4ee3\u7801 \u6309\u94ae\uff1b\u65b0\u589e **sync_mlflow** \u529f\u80fd\uff0c\u652f\u6301\u4e0emlflow\u6846\u67b6\u540c\u6b65\u5b9e\u9a8c\u8ddf\u8e2a\uff1b\n\n- 2025.03.06\uff1a\u6211\u4eec\u4e0e [DiffSynth Studio](https://github.com/modelscope/diffsynth-studio) \u5b8c\u6210\u4e86\u8054\u5408\u96c6\u6210\uff0c\u73b0\u5728\u4f60\u53ef\u4ee5\u5728DiffSynth Studio\u4e2d\u4f7f\u7528SwanLab\u6765**\u8ddf\u8e2a\u548c\u53ef\u89c6\u5316Diffusion\u6a21\u578b\u6587\u751f\u56fe/\u89c6\u9891\u5b9e\u9a8c**\uff0c[\u4f7f\u7528\u6307\u5f15](https://docs.swanlab.cn/guide_cloud/integration/integration-diffsynth-studio.html)\uff1b\n\n- 2025.03.04\uff1a\u65b0\u589e **MLFlow\u8f6c\u6362** \u529f\u80fd\uff0c\u652f\u6301\u5c06MLFlow\u5b9e\u9a8c\u8f6c\u6362\u4e3aSwanLab\u5b9e\u9a8c\uff0c[\u4f7f\u7528\u6307\u5f15](https://docs.swanlab.cn/guide_cloud/integration/integration-mlflow.html)\uff1b\n\n- 2025.03.01\uff1a\u65b0\u589e **\u79fb\u52a8\u5b9e\u9a8c** \u529f\u80fd\uff0c\u73b0\u5728\u53ef\u4ee5\u5c06\u5b9e\u9a8c\u79fb\u52a8\u5230\u4e0d\u540c\u7ec4\u7ec7\u7684\u4e0d\u540c\u9879\u76ee\u4e0b\u4e86\uff1b\n\n- 2025.02.24\uff1a\u6211\u4eec\u4e0e [EasyR1](https://github.com/hiyouga/EasyR1) \u5b8c\u6210\u4e86\u8054\u5408\u96c6\u6210\uff0c\u73b0\u5728\u4f60\u53ef\u4ee5\u5728EasyR1\u4e2d\u4f7f\u7528SwanLab\u6765**\u8ddf\u8e2a\u548c\u53ef\u89c6\u5316\u591a\u6a21\u6001\u5927\u6a21\u578b\u5f3a\u5316\u5b66\u4e60\u5b9e\u9a8c**\uff0c[\u4f7f\u7528\u6307\u5f15](https://docs.swanlab.cn/guide_cloud/integration/integration-easyr1.html)\n\n- 2025.02.18\uff1a\u6211\u4eec\u4e0e [Swift](https://github.com/modelscope/ms-swift) \u5b8c\u6210\u4e86\u8054\u5408\u96c6\u6210\uff0c\u73b0\u5728\u4f60\u53ef\u4ee5\u5728Swift\u7684CLI/WebUI\u4e2d\u4f7f\u7528SwanLab\u6765**\u8ddf\u8e2a\u548c\u53ef\u89c6\u5316\u5927\u6a21\u578b\u5fae\u8c03\u5b9e\u9a8c**\uff0c[\u4f7f\u7528\u6307\u5f15](https://docs.swanlab.cn/guide_cloud/integration/integration-swift.html)\u3002\n\n- 2025.02.16\uff1a\u65b0\u589e **\u56fe\u8868\u79fb\u52a8\u5206\u7ec4\u3001\u521b\u5efa\u5206\u7ec4** \u529f\u80fd\u3002\n\n- 2025.02.09\uff1a\u6211\u4eec\u4e0e [veRL](https://github.com/volcengine/verl) \u5b8c\u6210\u4e86\u8054\u5408\u96c6\u6210\uff0c\u73b0\u5728\u4f60\u53ef\u4ee5\u5728veRL\u4e2d\u4f7f\u7528SwanLab\u6765**\u8ddf\u8e2a\u548c\u53ef\u89c6\u5316\u5927\u6a21\u578b\u5f3a\u5316\u5b66\u4e60\u5b9e\u9a8c**\uff0c[\u4f7f\u7528\u6307\u5f15](https://docs.swanlab.cn/guide_cloud/integration/integration-verl.html)\u3002\n\n- 2025.02.05\uff1a`swanlab.log`\u652f\u6301\u5d4c\u5957\u5b57\u5178 [#812](https://github.com/SwanHubX/SwanLab/pull/812)\uff0c\u9002\u914dJax\u6846\u67b6\u7279\u6027\uff1b\u652f\u6301`name`\u4e0e`notes`\u53c2\u6570\uff1b\n\n- 2025.01.22\uff1a\u65b0\u589e`sync_tensorboardX`\u4e0e`sync_tensorboard_torch`\u529f\u80fd\uff0c\u652f\u6301\u4e0e\u6b64\u4e24\u79cdTensorBoard\u6846\u67b6\u540c\u6b65\u5b9e\u9a8c\u8ddf\u8e2a\uff1b\n\n- 2025.01.17\uff1a\u65b0\u589e`sync_wandb`\u529f\u80fd\uff0c[\u6587\u6863](https://docs.swanlab.cn/guide_cloud/integration/integration-wandb.html)\uff0c\u652f\u6301\u4e0eWeights & Biases\u5b9e\u9a8c\u8ddf\u8e2a\u540c\u6b65\uff1b\u5927\u5e45\u6539\u8fdb\u4e86\u65e5\u5fd7\u6e32\u67d3\u6027\u80fd\n\n- 2025.01.11\uff1a\u4e91\u7aef\u7248\u5927\u5e45\u4f18\u5316\u4e86\u9879\u76ee\u8868\u683c\u7684\u6027\u80fd\uff0c\u5e76\u652f\u6301\u62d6\u62fd\u3001\u6392\u5e8f\u3001\u7b5b\u9009\u7b49\u4ea4\u4e92\n\n- 2025.01.01\uff1a\u65b0\u589e\u6298\u7ebf\u56fe**\u6301\u4e45\u5316\u5e73\u6ed1**\u3001\u6298\u7ebf\u56fe\u62d6\u62fd\u5f0f\u6539\u53d8\u5927\u5c0f\uff0c\u4f18\u5316\u56fe\u8868\u6d4f\u89c8\u4f53\u9a8c\n\n- 2024.12.22\uff1a\u6211\u4eec\u4e0e [LLaMA Factory](https://github.com/hiyouga/LLaMA-Factory) \u5b8c\u6210\u4e86\u8054\u5408\u96c6\u6210\uff0c\u73b0\u5728\u4f60\u53ef\u4ee5\u5728LLaMA Factory\u4e2d\u4f7f\u7528SwanLab\u6765**\u8ddf\u8e2a\u548c\u53ef\u89c6\u5316\u5927\u6a21\u578b\u5fae\u8c03\u5b9e\u9a8c**\uff0c[\u4f7f\u7528\u6307\u5f15](https://github.com/hiyouga/LLaMA-Factory?tab=readme-ov-file#use-swanlab-logger)\u3002\n\n- 2024.12.15\uff1a**\u786c\u4ef6\u76d1\u63a7\uff080.4.0\uff09** \u529f\u80fd\u4e0a\u7ebf\uff0c\u652f\u6301CPU\u3001NPU\uff08Ascend\uff09\u3001GPU\uff08Nvidia\uff09\u7684\u7cfb\u7edf\u7ea7\u4fe1\u606f\u8bb0\u5f55\u4e0e\u76d1\u63a7\u3002\n\n- 2024.12.06\uff1a\u65b0\u589e\u5bf9[LightGBM](https://docs.swanlab.cn/guide_cloud/integration/integration-lightgbm.html)\u3001[XGBoost](https://docs.swanlab.cn/guide_cloud/integration/integration-xgboost.html)\u7684\u96c6\u6210\uff1b\u63d0\u9ad8\u4e86\u5bf9\u65e5\u5fd7\u8bb0\u5f55\u5355\u884c\u957f\u5ea6\u7684\u9650\u5236\u3002\n\n- 2024.11.26\uff1a\u73af\u5883\u9009\u9879\u5361-\u786c\u4ef6\u90e8\u5206\u652f\u6301\u8bc6\u522b**\u534e\u4e3a\u6607\u817eNPU**\u4e0e**\u9cb2\u9e4fCPU**\uff1b\u4e91\u5382\u5546\u90e8\u5206\u652f\u6301\u8bc6\u522b\u9752\u4e91**\u57fa\u77f3\u667a\u7b97**\u3002\n\n</details>\n\n<br>\n\n## \ud83d\udc4b\ud83c\udffb \u4ec0\u4e48\u662fSwanLab\n\nSwanLab \u662f\u4e00\u6b3e\u5f00\u6e90\u3001\u8f7b\u91cf\u7684 AI \u6a21\u578b\u8bad\u7ec3\u8ddf\u8e2a\u4e0e\u53ef\u89c6\u5316\u5de5\u5177\uff0c\u63d0\u4f9b\u4e86\u4e00\u4e2a\u8ddf\u8e2a\u3001\u8bb0\u5f55\u3001\u6bd4\u8f83\u3001\u548c\u534f\u4f5c\u5b9e\u9a8c\u7684\u5e73\u53f0\u3002\n\nSwanLab \u9762\u5411\u4eba\u5de5\u667a\u80fd\u7814\u7a76\u8005\uff0c\u8bbe\u8ba1\u4e86\u53cb\u597d\u7684Python API \u548c\u6f02\u4eae\u7684UI\u754c\u9762\uff0c\u5e76\u63d0\u4f9b**\u8bad\u7ec3\u53ef\u89c6\u5316\u3001\u81ea\u52a8\u65e5\u5fd7\u8bb0\u5f55\u3001\u8d85\u53c2\u6570\u8bb0\u5f55\u3001\u5b9e\u9a8c\u5bf9\u6bd4\u3001\u591a\u4eba\u534f\u540c**\u7b49\u529f\u80fd\u3002\u5728SwanLab\u4e0a\uff0c\u7814\u7a76\u8005\u80fd\u57fa\u4e8e\u76f4\u89c2\u7684\u53ef\u89c6\u5316\u56fe\u8868\u53d1\u73b0\u8bad\u7ec3\u95ee\u9898\uff0c\u5bf9\u6bd4\u591a\u4e2a\u5b9e\u9a8c\u627e\u5230\u7814\u7a76\u7075\u611f\uff0c\u5e76\u901a\u8fc7**\u5728\u7ebf\u7f51\u9875**\u7684\u5206\u4eab\u4e0e\u57fa\u4e8e\u7ec4\u7ec7\u7684**\u591a\u4eba\u534f\u540c\u8bad\u7ec3**\uff0c\u6253\u7834\u56e2\u961f\u6c9f\u901a\u7684\u58c1\u5792\uff0c\u63d0\u9ad8\u7ec4\u7ec7\u8bad\u7ec3\u6548\u7387\u3002\n\nhttps://github.com/user-attachments/assets/7965fec4-c8b0-4956-803d-dbf177b44f54\n\n\u4ee5\u4e0b\u662f\u5176\u6838\u5fc3\u7279\u6027\u5217\u8868\uff1a\n\n**1. \ud83d\udcca \u5b9e\u9a8c\u6307\u6807\u4e0e\u8d85\u53c2\u6570\u8ddf\u8e2a**: \u6781\u7b80\u7684\u4ee3\u7801\u5d4c\u5165\u60a8\u7684\u673a\u5668\u5b66\u4e60 pipeline\uff0c\u8ddf\u8e2a\u8bb0\u5f55\u8bad\u7ec3\u5173\u952e\u6307\u6807\n\n- \u2601\ufe0f \u652f\u6301**\u4e91\u7aef**\u4f7f\u7528\uff08\u7c7b\u4f3cWeights & Biases\uff09\uff0c\u968f\u65f6\u968f\u5730\u67e5\u770b\u8bad\u7ec3\u8fdb\u5c55\u3002[\u624b\u673a\u770b\u5b9e\u9a8c\u7684\u65b9\u6cd5](https://docs.swanlab.cn/guide_cloud/general/app.html)\n\n- \ud83d\udcdd \u652f\u6301**\u8d85\u53c2\u6570\u8bb0\u5f55**\u3001**\u6307\u6807\u603b\u7ed3**\u3001**\u8868\u683c\u5206\u6790**\n\n- \ud83c\udf38 **\u53ef\u89c6\u5316\u8bad\u7ec3\u8fc7\u7a0b**: \u901a\u8fc7UI\u754c\u9762\u5bf9\u5b9e\u9a8c\u8ddf\u8e2a\u6570\u636e\u8fdb\u884c\u53ef\u89c6\u5316\uff0c\u53ef\u4ee5\u8ba9\u8bad\u7ec3\u5e08\u76f4\u89c2\u5730\u770b\u5230\u5b9e\u9a8c\u6bcf\u4e00\u6b65\u7684\u7ed3\u679c\uff0c\u5206\u6790\u6307\u6807\u8d70\u52bf\uff0c\u5224\u65ad\u54ea\u4e9b\u53d8\u5316\u5bfc\u81f4\u4e86\u6a21\u578b\u6548\u679c\u7684\u63d0\u5347\uff0c\u4ece\u800c\u6574\u4f53\u6027\u5730\u63d0\u5347\u6a21\u578b\u8fed\u4ee3\u6548\u7387\u3002\n\n- **\u652f\u6301\u7684\u5143\u6570\u636e\u7c7b\u578b**\uff1a\u6807\u91cf\u6307\u6807\u3001\u56fe\u50cf\u3001\u97f3\u9891\u3001\u6587\u672c\u3001\u89c6\u9891\u30013D\u70b9\u4e91\u3001\u751f\u7269\u5316\u5b66\u5206\u5b50\u3001Echarts\u81ea\u5b9a\u4e49\u56fe\u8868...\n\n![swanlab-table](https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/molecule.gif)\n\n- **\u652f\u6301\u7684\u56fe\u8868\u7c7b\u578b**\uff1a\u6298\u7ebf\u56fe\u3001\u5a92\u4f53\u56fe\uff08\u56fe\u50cf\u3001\u97f3\u9891\u3001\u6587\u672c\u3001\u89c6\u9891\uff09\u30013D\u70b9\u4e91\u3001\u751f\u7269\u5316\u5b66\u5206\u5b50\u3001\u67f1\u72b6\u56fe\u3001\u6563\u70b9\u56fe\u3001\u7bb1\u7ebf\u56fe\u3001\u70ed\u529b\u56fe\u3001\u997c\u72b6\u56fe\u3001\u96f7\u8fbe\u56fe\u3001[\u81ea\u5b9a\u4e49\u56fe\u8868](https://docs.swanlab.cn/guide_cloud/experiment_track/log-custom-chart.html)...\n\n[![swanlab-echarts](https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/echarts.png)](https://swanlab.cn/@ZeyiLin/swanlab-echarts-demo/charts)\n\n- **LLM\u751f\u6210\u5185\u5bb9\u53ef\u89c6\u5316\u7ec4\u4ef6**\uff1a\u4e3a\u5927\u8bed\u8a00\u6a21\u578b\u8bad\u7ec3\u573a\u666f\u6253\u9020\u7684\u6587\u672c\u5185\u5bb9\u53ef\u89c6\u5316\u56fe\u8868\uff0c\u652f\u6301Markdown\u6e32\u67d3\n\n![text-chart](https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/text-chart.gif)\n\n- **\u540e\u53f0\u81ea\u52a8\u8bb0\u5f55**\uff1a\u65e5\u5fd7logging\u3001\u786c\u4ef6\u73af\u5883\u3001Git \u4ed3\u5e93\u3001Python \u73af\u5883\u3001Python \u5e93\u5217\u8868\u3001\u9879\u76ee\u8fd0\u884c\u76ee\u5f55\n\n- **\u65ad\u70b9\u7eed\u8bad\u8bb0\u5f55**\uff1a\u652f\u6301\u5728\u8bad\u7ec3\u5b8c\u6210/\u4e2d\u65ad\u540e\uff0c\u8865\u5145\u65b0\u7684\u6307\u6807\u6570\u636e\u5230\u540c\u4e2a\u5b9e\u9a8c\u4e2d\n\n**2. \u26a1\ufe0f \u5168\u9762\u7684\u6846\u67b6\u96c6\u6210**: PyTorch\u3001\ud83e\udd17HuggingFace Transformers\u3001PyTorch Lightning\u3001\ud83e\udd99LLaMA Factory\u3001MMDetection\u3001Ultralytics\u3001PaddleDetetion\u3001LightGBM\u3001XGBoost\u3001Keras\u3001Tensorboard\u3001Weights&Biases\u3001OpenAI\u3001Swift\u3001XTuner\u3001Stable Baseline3\u3001Hydra \u5728\u5185\u7684 **30+** \u6846\u67b6\n\n![](https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/integrations.png)\n\n**3. \ud83d\udcbb \u786c\u4ef6\u76d1\u63a7**: \u652f\u6301\u5b9e\u65f6\u8bb0\u5f55\u4e0e\u76d1\u63a7CPU\u3001NPU\uff08**\u6607\u817eAscend**\uff09\u3001GPU\uff08**\u82f1\u4f1f\u8fbeNvidia**\uff09\u3001MLU\uff08**\u5bd2\u6b66\u7eaaCambricon**\uff09\u3001XLU\uff08**\u6606\u4ed1\u82afKunlunxin**\uff09\u3001DCU\uff08**\u6d77\u5149DCU**\uff09\u3001MetaX GPU\uff08**\u6c90\u66e6XPU**\uff09\u3001Moore Threads GPU\uff08**\u6469\u5c14\u7ebf\u7a0b**\uff09\u3001\u5185\u5b58\u7684\u7cfb\u7edf\u7ea7\u786c\u4ef6\u6307\u6807\n\n**4. \ud83d\udce6 \u5b9e\u9a8c\u7ba1\u7406**: \u901a\u8fc7\u4e13\u4e3a\u8bad\u7ec3\u573a\u666f\u8bbe\u8ba1\u7684\u96c6\u4e2d\u5f0f\u4eea\u8868\u677f\uff0c\u901a\u8fc7\u6574\u4f53\u89c6\u56fe\u901f\u89c8\u5168\u5c40\uff0c\u5feb\u901f\u7ba1\u7406\u591a\u4e2a\u9879\u76ee\u4e0e\u5b9e\u9a8c\n\n**5. \ud83c\udd9a \u6bd4\u8f83\u7ed3\u679c**: \u901a\u8fc7\u5728\u7ebf\u8868\u683c\u4e0e\u5bf9\u6bd4\u56fe\u8868\u6bd4\u8f83\u4e0d\u540c\u5b9e\u9a8c\u7684\u8d85\u53c2\u6570\u548c\u7ed3\u679c\uff0c\u6316\u6398\u8fed\u4ee3\u7075\u611f\n\n![](https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/swanlab-table.png)\n\n**6. \ud83d\udc65 \u5728\u7ebf\u534f\u4f5c**: \u60a8\u53ef\u4ee5\u4e0e\u56e2\u961f\u8fdb\u884c\u534f\u4f5c\u5f0f\u8bad\u7ec3\uff0c\u652f\u6301\u5c06\u5b9e\u9a8c\u5b9e\u65f6\u540c\u6b65\u5728\u4e00\u4e2a\u9879\u76ee\u4e0b\uff0c\u60a8\u53ef\u4ee5\u5728\u7ebf\u67e5\u770b\u56e2\u961f\u7684\u8bad\u7ec3\u8bb0\u5f55\uff0c\u57fa\u4e8e\u7ed3\u679c\u53d1\u8868\u770b\u6cd5\u4e0e\u5efa\u8bae\n\n**7. \u2709\ufe0f \u5206\u4eab\u7ed3\u679c**: \u590d\u5236\u548c\u53d1\u9001\u6301\u4e45\u7684 URL \u6765\u5171\u4eab\u6bcf\u4e2a\u5b9e\u9a8c\uff0c\u65b9\u4fbf\u5730\u53d1\u9001\u7ed9\u4f19\u4f34\uff0c\u6216\u5d4c\u5165\u5230\u5728\u7ebf\u7b14\u8bb0\u4e2d\n\n**8. \ud83d\udcbb \u652f\u6301\u81ea\u6258\u7ba1**: \u652f\u6301\u79bb\u7ebf\u73af\u5883\u4f7f\u7528\uff0c\u81ea\u6258\u7ba1\u7684\u793e\u533a\u7248\u540c\u6837\u53ef\u4ee5\u67e5\u770b\u4eea\u8868\u76d8\u4e0e\u7ba1\u7406\u5b9e\u9a8c\uff0c[\u4f7f\u7528\u653b\u7565](#-\u81ea\u6258\u7ba1)\n\n**9. \ud83d\udd0c \u63d2\u4ef6\u62d3\u5c55**: \u652f\u6301\u901a\u8fc7\u63d2\u4ef6\u62d3\u5c55SwanLab\u7684\u4f7f\u7528\u573a\u666f\uff0c\u6bd4\u5982 [\u98de\u4e66\u901a\u77e5](https://docs.swanlab.cn/plugin/notification-lark.html)\u3001[Slack\u901a\u77e5](https://docs.swanlab.cn/plugin/notification-slack.html)\u3001[CSV\u8bb0\u5f55\u5668](https://docs.swanlab.cn/plugin/writer-csv.html)\u7b49\n\n\n> \\[!IMPORTANT]\n>\n> **\u6536\u85cf\u9879\u76ee**\uff0c\u4f60\u5c06\u4ece GitHub \u4e0a\u65e0\u5ef6\u8fdf\u5730\u63a5\u6536\u6240\u6709\u53d1\u5e03\u901a\u77e5\uff5e \u2b50\ufe0f\n\n![star-us](https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/star-us.png)\n\n<br>\n\n## \ud83d\udcc3 \u5728\u7ebf\u6f14\u793a\n\n\u6765\u770b\u770b SwanLab \u7684\u5728\u7ebf\u6f14\u793a\uff1a\n\n| [ResNet50 \u732b\u72d7\u5206\u7c7b][demo-cats-dogs] | [Yolov8-COCO128 \u76ee\u6807\u68c0\u6d4b][demo-yolo] |\n| :--------: | :--------: |\n| [![][demo-cats-dogs-image]][demo-cats-dogs] | [![][demo-yolo-image]][demo-yolo] |\n| \u8ddf\u8e2a\u4e00\u4e2a\u7b80\u5355\u7684 ResNet50 \u6a21\u578b\u5728\u732b\u72d7\u6570\u636e\u96c6\u4e0a\u8bad\u7ec3\u7684\u56fe\u50cf\u5206\u7c7b\u4efb\u52a1\u3002 | \u4f7f\u7528 Yolov8 \u5728 COCO128 \u6570\u636e\u96c6\u4e0a\u8fdb\u884c\u76ee\u6807\u68c0\u6d4b\u4efb\u52a1\uff0c\u8ddf\u8e2a\u8bad\u7ec3\u8d85\u53c2\u6570\u548c\u6307\u6807\u3002 |\n\n| [Qwen2 \u6307\u4ee4\u5fae\u8c03][demo-qwen2-sft] | [LSTM Google \u80a1\u7968\u9884\u6d4b][demo-google-stock] |\n| :--------: | :--------: |\n| [![][demo-qwen2-sft-image]][demo-qwen2-sft] | [![][demo-google-stock-image]][demo-google-stock] |\n| \u8ddf\u8e2a Qwen2 \u5927\u8bed\u8a00\u6a21\u578b\u7684\u6307\u4ee4\u5fae\u8c03\u8bad\u7ec3\uff0c\u5b8c\u6210\u7b80\u5355\u7684\u6307\u4ee4\u9075\u5faa\u3002 | \u4f7f\u7528\u7b80\u5355\u7684 LSTM \u6a21\u578b\u5728 Google \u80a1\u4ef7\u6570\u636e\u96c6\u4e0a\u8bad\u7ec3\uff0c\u5b9e\u73b0\u5bf9\u672a\u6765\u80a1\u4ef7\u7684\u9884\u6d4b\u3002 |\n\n| [ResNeXt101 \u97f3\u9891\u5206\u7c7b][demo-audio-classification] | [Qwen2-VL COCO\u6570\u636e\u96c6\u5fae\u8c03][demo-qwen2-vl] |\n| :--------: | :--------: |\n| [![][demo-audio-classification-image]][demo-audio-classification] | [![][demo-qwen2-vl-image]][demo-qwen2-vl] |\n| \u4eceResNet\u5230ResNeXt\u5728\u97f3\u9891\u5206\u7c7b\u4efb\u52a1\u4e0a\u7684\u6e10\u8fdb\u5f0f\u5b9e\u9a8c\u8fc7\u7a0b | \u57fa\u4e8eQwen2-VL\u591a\u6a21\u6001\u5927\u6a21\u578b\uff0c\u5728COCO2014\u6570\u636e\u96c6\u4e0a\u8fdb\u884cLora\u5fae\u8c03\u3002 |\n\n| [EasyR1 \u591a\u6a21\u6001LLM RL\u8bad\u7ec3][demo-easyr1-rl] | [Qwen2.5-0.5B GRPO\u8bad\u7ec3][demo-qwen2-grpo] |\n| :--------: | :--------: |\n| [![][demo-easyr1-rl-image]][demo-easyr1-rl] | [![][demo-qwen2-grpo-image]][demo-qwen2-grpo] |\n| \u4f7f\u7528EasyR1\u6846\u67b6\u8fdb\u884c\u591a\u6a21\u6001LLM RL\u8bad\u7ec3 | \u57fa\u4e8eQwen2.5-0.5B\u6a21\u578b\u5728GSM8k\u6570\u636e\u96c6\u4e0a\u8fdb\u884cGRPO\u8bad\u7ec3 |\n\n[\u66f4\u591a\u6848\u4f8b](https://docs.swanlab.cn/zh/examples/mnist.html)\n\n<br>\n\n## \ud83c\udfc1 \u5feb\u901f\u5f00\u59cb\n\n### 1.\u5b89\u88c5\n\n```bash\npip install swanlab\n```\n\n<details><summary>\u6e90\u7801\u5b89\u88c5</summary>\n\n\u5982\u679c\u4f60\u60f3\u4f53\u9a8c\u6700\u65b0\u7684\u7279\u6027\uff0c\u53ef\u4ee5\u4f7f\u7528\u6e90\u7801\u5b89\u88c5\u3002\n\n```bash\n# \u65b9\u5f0f\u4e00\ngit clone https://github.com/SwanHubX/SwanLab.git\npip install -e .\n\n# \u65b9\u5f0f\u4e8c\npip install git+https://github.com/SwanHubX/SwanLab.git\n```\n\n</details>\n\n<details><summary>\u79bb\u7ebf\u770b\u677f\u62d3\u5c55\u5b89\u88c5</summary>\n\n[\u79bb\u7ebf\u770b\u677f\u6587\u6863](https://docs.swanlab.cn/guide_cloud/self_host/offline-board.html)\n\n```bash\npip install 'swanlab[dashboard]'\n```\n\n</details>\n\n\n### 2.\u767b\u5f55\u5e76\u83b7\u53d6 API Key\n\n1. \u514d\u8d39[\u6ce8\u518c\u8d26\u53f7](https://swanlab.cn)\n\n2. \u767b\u5f55\u8d26\u53f7\uff0c\u5728\u7528\u6237\u8bbe\u7f6e > [API Key](https://swanlab.cn/settings) \u91cc\u590d\u5236\u60a8\u7684 API Key\n\n3. \u6253\u5f00\u7ec8\u7aef\uff0c\u8f93\u5165\uff1a\n\n```bash\nswanlab login\n```\n\n\u51fa\u73b0\u63d0\u793a\u65f6\uff0c\u8f93\u5165\u60a8\u7684 API Key\uff0c\u6309\u4e0b\u56de\u8f66\uff0c\u5b8c\u6210\u767b\u9646\u3002\n\n### 3.\u5c06 SwanLab \u4e0e\u4f60\u7684\u4ee3\u7801\u96c6\u6210\n\n```python\nimport swanlab\n\n# \u521d\u59cb\u5316\u4e00\u4e2a\u65b0\u7684swanlab\u5b9e\u9a8c\nswanlab.init(\n    project=\"my-first-ml\",\n    config={'learning-rate': 0.003},\n)\n\n# \u8bb0\u5f55\u6307\u6807\nfor i in range(10):\n    swanlab.log({\"loss\": i, \"acc\": i})\n```\n\n\u5927\u529f\u544a\u6210\uff01\u524d\u5f80[SwanLab](https://swanlab.cn)\u67e5\u770b\u4f60\u7684\u7b2c\u4e00\u4e2a SwanLab \u5b9e\u9a8c\u3002\n\n<br>\n\n## \ud83d\udcbb \u81ea\u6258\u7ba1\n\n\u81ea\u6258\u7ba1\u793e\u533a\u7248\u652f\u6301\u79bb\u7ebf\u67e5\u770b SwanLab \u4eea\u8868\u76d8\u3002\n\n![swanlab-docker](./https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/swanlab-docker.png)\n\n### 1. \u4f7f\u7528Docker\u90e8\u7f72\u81ea\u6258\u7ba1\u7248\u672c\n\n\u8be6\u60c5\u8bf7\u53c2\u8003\uff1a[\u6587\u6863](https://docs.swanlab.cn/guide_cloud/self_host/docker-deploy.html)\n\n```bash\ngit clone https://github.com/SwanHubX/self-hosted.git\ncd self-hosted/docker\n```\n\n\u4e2d\u56fd\u5730\u533a\u5feb\u901f\u5b89\u88c5\uff1a\n\n```bash\n./install.sh\n```\n\n\u4eceDockerHub\u62c9\u53d6\u955c\u50cf\u5b89\u88c5\uff1a\n\n```bash\n./install-dockerhub.sh\n```\n\n### 2. \u5c06\u5b9e\u9a8c\u6307\u5b9a\u5230\u81ea\u6258\u7ba1\u670d\u52a1\n\n\u767b\u5f55\u5230\u81ea\u6258\u7ba1\u670d\u52a1\uff1a\n\n```bash\nswanlab login --host http://localhost:8000\n```\n\n\u5b8c\u6210\u767b\u5f55\u540e\uff0c\u5373\u53ef\u5c06\u5b9e\u9a8c\u8bb0\u5f55\u5230\u81ea\u6258\u7ba1\u670d\u52a1\u3002\n\n\n<br>\n\n## \ud83d\udd25 \u5b9e\u6218\u6848\u4f8b\n\n**\u4f7f\u7528SwanLab\u7684\u4f18\u79c0\u6559\u7a0b\u5f00\u6e90\u9879\u76ee\uff1a**\n- [happy-llm](https://github.com/datawhalechina/happy-llm)\uff1a\u4ece\u96f6\u5f00\u59cb\u7684\u5927\u8bed\u8a00\u6a21\u578b\u539f\u7406\u4e0e\u5b9e\u8df5\u6559\u7a0b ![GitHub Repo stars](https://img.shields.io/github/stars/datawhalechina/happy-llm)\n- [self-llm](https://github.com/datawhalechina/self-llm)\uff1a\u300a\u5f00\u6e90\u5927\u6a21\u578b\u98df\u7528\u6307\u5357\u300b\u9488\u5bf9\u4e2d\u56fd\u5b9d\u5b9d\u91cf\u8eab\u6253\u9020\u7684\u57fa\u4e8eLinux\u73af\u5883\u5feb\u901f\u5fae\u8c03\uff08\u5168\u53c2\u6570/Lora\uff09\u3001\u90e8\u7f72\u56fd\u5185\u5916\u5f00\u6e90\u5927\u6a21\u578b\uff08LLM\uff09/\u591a\u6a21\u6001\u5927\u6a21\u578b\uff08MLLM\uff09\u6559\u7a0b ![GitHub Repo stars](https://img.shields.io/github/stars/datawhalechina/self-llm)\n- [unlock-deepseek](https://github.com/datawhalechina/unlock-deepseek)\uff1aDeepSeek \u7cfb\u5217\u5de5\u4f5c\u89e3\u8bfb\u3001\u6269\u5c55\u548c\u590d\u73b0\u3002![GitHub Repo stars](https://img.shields.io/github/stars/datawhalechina/unlock-deepseek)\n\n**\u4f7f\u7528SwanLab\u7684\u4f18\u79c0\u8bba\u6587\uff1a**\n- [Animation Needs Attention](https://arxiv.org/abs/2507.03916)\n\n**\u6559\u7a0b\u6587\u7ae0\uff1a**\n- [MNIST\u624b\u5199\u4f53\u8bc6\u522b](https://docs.swanlab.cn/examples/mnist.html)\n- [FashionMNIST\u670d\u88c5\u5206\u7c7b](https://docs.swanlab.cn/examples/fashionmnist.html)\n- [Cifar10\u56fe\u50cf\u5206\u7c7b](https://docs.swanlab.cn/examples/cifar10.html)\n- [Resnet\u732b\u72d7\u5206\u7c7b](https://docs.swanlab.cn/examples/cats_dogs_classification.html)\n- [Yolo\u76ee\u6807\u68c0\u6d4b](https://docs.swanlab.cn/examples/yolo.html)\n- [UNet\u533b\u5b66\u5f71\u50cf\u5206\u5272](https://docs.swanlab.cn/examples/unet-medical-segmentation.html)\n- [\u97f3\u9891\u5206\u7c7b](https://docs.swanlab.cn/examples/audio_classification.html)\n- [DQN\u5f3a\u5316\u5b66\u4e60-\u63a8\u8f66\u5012\u7acb\u6446](https://docs.swanlab.cn/examples/dqn_cartpole.html)\n- [LSTM Google\u80a1\u7968\u9884\u6d4b](https://docs.swanlab.cn/examples/audio_classification.html)\n- [BERT\u6587\u672c\u5206\u7c7b](https://docs.swanlab.cn/examples/bert.html)\n- [Stable Diffusion\u6587\u751f\u56fe\u5fae\u8c03](https://docs.swanlab.cn/examples/stable_diffusion.html)\n- [LLM\u9884\u8bad\u7ec3](https://docs.swanlab.cn/examples/pretrain_llm.html)\n- [GLM4\u6307\u4ee4\u5fae\u8c03](https://docs.swanlab.cn/examples/glm4-instruct.html)\n- [Qwen\u4e0b\u6e38\u4efb\u52a1\u8bad\u7ec3](https://docs.swanlab.cn/examples/qwen_finetune.html)\n- [NER\u547d\u540d\u5b9e\u4f53\u8bc6\u522b](https://docs.swanlab.cn/examples/ner.html)\n- [Qwen3\u533b\u5b66\u6a21\u578b\u5fae\u8c03](https://docs.swanlab.cn/examples/qwen3-medical.html)\n- [Qwen2-VL\u591a\u6a21\u6001\u5927\u6a21\u578b\u5fae\u8c03\u5b9e\u6218](https://docs.swanlab.cn/examples/qwen_vl_coco.html)\n- [GRPO\u5927\u6a21\u578b\u5f3a\u5316\u5b66\u4e60](https://docs.swanlab.cn/examples/qwen_grpo.html)\n- [Qwen3-SmVL-0.6B\u591a\u6a21\u6001\u6a21\u578b\u8bad\u7ec3](https://docs.swanlab.cn/examples/qwen3_smolvlm_muxi.html)\n\n<br>\n\n## \ud83c\udfae \u786c\u4ef6\u8bb0\u5f55\n\nSwanLab\u4f1a\u5bf9AI\u8bad\u7ec3\u8fc7\u7a0b\u4e2d\u6240\u4f7f\u7528\u7684**\u786c\u4ef6\u4fe1\u606f**\u548c**\u8d44\u6e90\u4f7f\u7528\u60c5\u51b5**\u8fdb\u884c\u8bb0\u5f55\uff0c\u4e0b\u9762\u662f\u652f\u6301\u60c5\u51b5\u8868\u683c\uff1a\n\n| \u786c\u4ef6 | \u4fe1\u606f\u8bb0\u5f55 | \u8d44\u6e90\u76d1\u63a7 | \u811a\u672c |\n| --- | --- | --- | --- |\n| \u82f1\u4f1f\u8fbeGPU | \u2705 | \u2705 | [nvidia.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/gpu/nvidia.py) |\n| \u6607\u817eNPU | \u2705 | \u2705 | [ascend.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/npu/ascend.py) |\n| \u82f9\u679cSOC | \u2705 | \u2705 | [apple.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/soc/apple.py) |\n| \u5bd2\u6b66\u7eaaMLU | \u2705 | \u2705 | [cambricon.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/mlu/cambricon.py) |\n| \u6606\u4ed1\u82afXPU | \u2705 | \u2705 | [kunlunxin.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/xpu/kunlunxin.py) |\n| \u6469\u5c14\u7ebf\u7a0bGPU | \u2705 | \u2705 | [moorethreads.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/gpu/moorethreads.py) |\n| \u6c90\u66e6GPU | \u2705 | \u2705 | [metax.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/gpu/metax.py) |\n| \u6d77\u5149DCU | \u2705 | \u2705 | [hygon.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/dcu/hygon.py) |\n| CPU     | \u2705        | \u2705        | [cpu.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/cpu.py) |\n| \u5185\u5b58        | \u2705        | \u2705        | [memory.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/memory.py) |\n| \u786c\u76d8        | \u2705        | \u2705        | [disk.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/disk.py) |\n| \u7f51\u7edc | \u2705 | \u2705 | [network.py](https://github.com/SwanHubX/SwanLab/blob/main/swanlab/data/run/metadata/hardware/network.py) |\n\n\u5982\u679c\u4f60\u5e0c\u671b\u8bb0\u5f55\u5176\u4ed6\u786c\u4ef6\uff0c\u6b22\u8fce\u63d0\u4ea4Issue\u4e0ePR\uff01\n\n<br>\n\n## \ud83d\ude97 \u6846\u67b6\u96c6\u6210\n\n\u5c06\u4f60\u6700\u559c\u6b22\u7684\u6846\u67b6\u4e0e SwanLab \u7ed3\u5408\u4f7f\u7528\uff01  \n\u4e0b\u9762\u662f\u6211\u4eec\u5df2\u96c6\u6210\u7684\u6846\u67b6\u5217\u8868\uff0c\u6b22\u8fce\u63d0\u4ea4 [Issue](https://github.com/swanhubx/swanlab/issues) \u6765\u53cd\u9988\u4f60\u60f3\u8981\u96c6\u6210\u7684\u6846\u67b6\u3002\n\n**\u57fa\u7840\u6846\u67b6**\n- [PyTorch](https://docs.swanlab.cn/guide_cloud/integration/integration-pytorch.html)\n- [MindSpore](https://docs.swanlab.cn/guide_cloud/integration/integration-ascend.html)\n- [Keras](https://docs.swanlab.cn/guide_cloud/integration/integration-keras.html)\n\n**\u4e13\u6709/\u5fae\u8c03\u6846\u67b6**\n- [PyTorch Lightning](https://docs.swanlab.cn/guide_cloud/integration/integration-pytorch-lightning.html)\n- [HuggingFace Transformers](https://docs.swanlab.cn/guide_cloud/integration/integration-huggingface-transformers.html)\n- [LLaMA Factory](https://docs.swanlab.cn/guide_cloud/integration/integration-llama-factory.html)\n- [Modelscope Swift](https://docs.swanlab.cn/guide_cloud/integration/integration-swift.html)\n- [DiffSynth Studio](https://docs.swanlab.cn/guide_cloud/integration/integration-diffsynth-studio.html)\n- [Sentence Transformers](https://docs.swanlab.cn/guide_cloud/integration/integration-sentence-transformers.html)\n- [PaddleNLP](https://docs.swanlab.cn/guide_cloud/integration/integration-paddlenlp.html)\n- [OpenMind](https://modelers.cn/docs/zh/openmind-library/1.0.0/basic_tutorial/finetune/finetune_pt.html#%E8%AE%AD%E7%BB%83%E7%9B%91%E6%8E%A7)\n- [Torchtune](https://docs.swanlab.cn/guide_cloud/integration/integration-pytorch-torchtune.html)\n- [XTuner](https://docs.swanlab.cn/guide_cloud/integration/integration-xtuner.html)\n- [MMEngine](https://docs.swanlab.cn/guide_cloud/integration/integration-mmengine.html)\n- [FastAI](https://docs.swanlab.cn/guide_cloud/integration/integration-fastai.html)\n- [LightGBM](https://docs.swanlab.cn/guide_cloud/integration/integration-lightgbm.html)\n- [XGBoost](https://docs.swanlab.cn/guide_cloud/integration/integration-xgboost.html)\n\n**\u8bc4\u4f30\u6846\u67b6**\n- [EvalScope](https://docs.swanlab.cn/guide_cloud/integration/integration-evalscope.html)\n\n**\u8ba1\u7b97\u673a\u89c6\u89c9**\n- [Ultralytics](https://docs.swanlab.cn/guide_cloud/integration/integration-ultralytics.html)\n- [MMDetection](https://docs.swanlab.cn/guide_cloud/integration/integration-mmdetection.html)\n- [MMSegmentation](https://docs.swanlab.cn/guide_cloud/integration/integration-mmsegmentation.html)\n- [PaddleDetection](https://docs.swanlab.cn/guide_cloud/integration/integration-paddledetection.html)\n- [PaddleYOLO](https://docs.swanlab.cn/guide_cloud/integration/integration-paddleyolo.html)\n\n**\u5f3a\u5316\u5b66\u4e60**\n- [Stable Baseline3](https://docs.swanlab.cn/guide_cloud/integration/integration-sb3.html)\n- [veRL](https://docs.swanlab.cn/guide_cloud/integration/integration-verl.html)\n- [HuggingFace trl](https://docs.swanlab.cn/guide_cloud/integration/integration-huggingface-trl.html)\n- [EasyR1](https://docs.swanlab.cn/guide_cloud/integration/integration-easyr1.html)\n- [AReaL](https://docs.swanlab.cn/guide_cloud/integration/integration-areal.html)\n- [ROLL](https://docs.swanlab.cn/guide_cloud/integration/integration-roll.html)\n\n**\u5176\u4ed6\u6846\u67b6\uff1a**\n- [Tensorboard](https://docs.swanlab.cn/guide_cloud/integration/integration-tensorboard.html)\n- [Weights&Biases](https://docs.swanlab.cn/guide_cloud/integration/integration-wandb.html)\n- [MLFlow](https://docs.swanlab.cn/guide_cloud/integration/integration-mlflow.html)\n- [HuggingFace Accelerate](https://docs.swanlab.cn/guide_cloud/integration/integration-huggingface-accelerate.html)\n- [Ray](https://docs.swanlab.cn/guide_cloud/integration/integration-ray.html)\n- [Unsloth](https://docs.swanlab.cn/guide_cloud/integration/integration-unsloth.html)\n- [Hydra](https://docs.swanlab.cn/guide_cloud/integration/integration-hydra.html)\n- [Omegaconf](https://docs.swanlab.cn/guide_cloud/integration/integration-omegaconf.html)\n- [OpenAI](https://docs.swanlab.cn/guide_cloud/integration/integration-openai.html)\n- [ZhipuAI](https://docs.swanlab.cn/guide_cloud/integration/integration-zhipuai.html)\n\n[\u66f4\u591a\u96c6\u6210](https://docs.swanlab.cn/guide_cloud/integration/)\n\n<br>\n\n\n## \ud83d\udd0c \u63d2\u4ef6\u4e0eAPI\n\n\u6b22\u8fce\u901a\u8fc7\u63d2\u4ef6\u6765\u62d3\u5c55SwanLab\u7684\u529f\u80fd\uff0c\u589e\u5f3a\u4f60\u7684\u5b9e\u9a8c\u7ba1\u7406\u4f53\u9a8c\uff01\n\n- [\u81ea\u5b9a\u4e49\u4f60\u7684\u63d2\u4ef6](https://docs.swanlab.cn/plugin/custom-plugin.html)\n- [\u90ae\u4ef6\u901a\u77e5](https://docs.swanlab.cn/plugin/notification-email.html)\n- [\u98de\u4e66\u901a\u77e5](https://docs.swanlab.cn/plugin/notification-lark.html)\n- [\u9489\u9489\u901a\u77e5](https://docs.swanlab.cn/plugin/notification-dingtalk.html)\n- [\u4f01\u4e1a\u5fae\u4fe1\u901a\u77e5](https://docs.swanlab.cn/plugin/notification-wxwork.html)\n- [Discord\u901a\u77e5](https://docs.swanlab.cn/plugin/notification-discord.html)\n- [Slack\u901a\u77e5](https://docs.swanlab.cn/plugin/notification-slack.html)\n- [CSV\u8bb0\u5f55\u5668](https://docs.swanlab.cn/plugin/writer-csv.html)\n- [\u6587\u4ef6\u8bb0\u5f55\u5668](https://docs.swanlab.cn/plugin/writer-filelogdir.html)\n\n\u5f00\u653e\u63a5\u53e3\uff1a\n- [OpenAPI](https://docs.swanlab.cn/api/py-openapi.html)\n\n<br>\n\n## \ud83c\udd9a \u4e0e\u719f\u6089\u7684\u5de5\u5177\u7684\u6bd4\u8f83\n\n### Tensorboard vs SwanLab\n\n- **\u2601\ufe0f \u652f\u6301\u5728\u7ebf\u4f7f\u7528**\uff1a\n  \u901a\u8fc7 SwanLab \u53ef\u4ee5\u65b9\u4fbf\u5730\u5c06\u8bad\u7ec3\u5b9e\u9a8c\u5728\u4e91\u7aef\u5728\u7ebf\u540c\u6b65\u4e0e\u4fdd\u5b58\uff0c\u4fbf\u4e8e\u8fdc\u7a0b\u67e5\u770b\u8bad\u7ec3\u8fdb\u5c55\u3001\u7ba1\u7406\u5386\u53f2\u9879\u76ee\u3001\u5206\u4eab\u5b9e\u9a8c\u94fe\u63a5\u3001\u53d1\u9001\u5b9e\u65f6\u6d88\u606f\u901a\u77e5\u3001\u591a\u7aef\u770b\u5b9e\u9a8c\u7b49\u3002\u800c Tensorboard \u662f\u4e00\u4e2a\u79bb\u7ebf\u7684\u5b9e\u9a8c\u8ddf\u8e2a\u5de5\u5177\u3002\n\n- **\ud83d\udc65 \u591a\u4eba\u534f\u4f5c**\uff1a\n  \u5728\u8fdb\u884c\u591a\u4eba\u3001\u8de8\u56e2\u961f\u7684\u673a\u5668\u5b66\u4e60\u534f\u4f5c\u65f6\uff0c\u901a\u8fc7 SwanLab \u53ef\u4ee5\u8f7b\u677e\u7ba1\u7406\u591a\u4eba\u7684\u8bad\u7ec3\u9879\u76ee\u3001\u5206\u4eab\u5b9e\u9a8c\u94fe\u63a5\u3001\u8de8\u7a7a\u95f4\u4ea4\u6d41\u8ba8\u8bba\u3002\u800c Tensorboard \u4e3b\u8981\u4e3a\u4e2a\u4eba\u8bbe\u8ba1\uff0c\u96be\u4ee5\u8fdb\u884c\u591a\u4eba\u534f\u4f5c\u548c\u5206\u4eab\u5b9e\u9a8c\u3002\n\n- **\ud83d\udcbb \u6301\u4e45\u3001\u96c6\u4e2d\u7684\u4eea\u8868\u677f**\uff1a\n  \u65e0\u8bba\u4f60\u5728\u4f55\u5904\u8bad\u7ec3\u6a21\u578b\uff0c\u65e0\u8bba\u662f\u5728\u672c\u5730\u8ba1\u7b97\u673a\u4e0a\u3001\u5728\u5b9e\u9a8c\u5ba4\u96c6\u7fa4\u8fd8\u662f\u5728\u516c\u6709\u4e91\u7684 GPU \u5b9e\u4f8b\u4e2d\uff0c\u4f60\u7684\u7ed3\u679c\u90fd\u4f1a\u8bb0\u5f55\u5230\u540c\u4e00\u4e2a\u96c6\u4e2d\u5f0f\u4eea\u8868\u677f\u4e2d\u3002\u800c\u4f7f\u7528 TensorBoard \u9700\u8981\u82b1\u8d39\u65f6\u95f4\u4ece\u4e0d\u540c\u7684\u673a\u5668\u590d\u5236\u548c\u7ba1\u7406\n  TFEvent \u6587\u4ef6\u3002\n\n- **\ud83d\udcaa \u66f4\u5f3a\u5927\u7684\u8868\u683c**\uff1a\n  \u901a\u8fc7 SwanLab \u8868\u683c\u53ef\u4ee5\u67e5\u770b\u3001\u641c\u7d22\u3001\u8fc7\u6ee4\u6765\u81ea\u4e0d\u540c\u5b9e\u9a8c\u7684\u7ed3\u679c\uff0c\u53ef\u4ee5\u8f7b\u677e\u67e5\u770b\u6570\u5343\u4e2a\u6a21\u578b\u7248\u672c\u5e76\u627e\u5230\u9002\u5408\u4e0d\u540c\u4efb\u52a1\u7684\u6700\u4f73\u6027\u80fd\u6a21\u578b\u3002\n  TensorBoard \u4e0d\u9002\u7528\u4e8e\u5927\u578b\u9879\u76ee\u3002\n\n### Weights and Biases vs SwanLab\n\n- Weights and Biases \u662f\u4e00\u4e2a\u5fc5\u987b\u8054\u7f51\u4f7f\u7528\u7684\u95ed\u6e90 MLOps \u5e73\u53f0\n\n- SwanLab \u4e0d\u4ec5\u652f\u6301\u8054\u7f51\u4f7f\u7528\uff0c\u4e5f\u652f\u6301\u5f00\u6e90\u3001\u514d\u8d39\u3001\u81ea\u6258\u7ba1\u7684\u7248\u672c\n\n<br>\n\n## \ud83d\udc65 \u793e\u533a\n\n### \u5468\u8fb9\u4ed3\u5e93\n\n- [SwanLab-Docs](https://github.com/swanhubx/swanlab-docs)\uff1a\u5b98\u65b9\u6587\u6863\u4ed3\u5e93\n- [SwanLab-Dashboard](https://github.com/swanhubx/swanlab-dashboard)\uff1a\u79bb\u7ebf\u770b\u677f\u4ed3\u5e93\uff0c\u5b58\u653e\u4e86\u7531`swanlab watch`\u6253\u5f00\u7684\u8f7b\u91cf\u79bb\u7ebf\u770b\u677f\u7684web\u4ee3\u7801\n- [self-hosted](https://github.com/swanhubx/self-hosted)\uff1a\u79c1\u6709\u5316\u90e8\u7f72\u811a\u672c\u4ed3\u5e93\n\n### \u793e\u533a\u4e0e\u652f\u6301\n\n- [GitHub Issues](https://github.com/SwanHubX/SwanLab/issues)\uff1a\u4f7f\u7528 SwanLab \u65f6\u9047\u5230\u7684\u9519\u8bef\u548c\u95ee\u9898\n- [\u7535\u5b50\u90ae\u4ef6\u652f\u6301](zeyi.lin@swanhub.co)\uff1a\u53cd\u9988\u5173\u4e8e\u4f7f\u7528 SwanLab \u7684\u95ee\u9898\n- <a href=\"https://docs.swanlab.cn/guide_cloud/community/online-support.html\">\u5fae\u4fe1\u4ea4\u6d41\u7fa4</a>\uff1a\u4ea4\u6d41\u4f7f\u7528 SwanLab \u7684\u95ee\u9898\u3001\u5206\u4eab\u6700\u65b0\u7684 AI \u6280\u672f\n\n### SwanLab README \u5fbd\u7ae0\n\n\u5982\u679c\u4f60\u559c\u6b22\u5728\u5de5\u4f5c\u4e2d\u4f7f\u7528 SwanLab\uff0c\u8bf7\u5c06 SwanLab \u5fbd\u7ae0\u6dfb\u52a0\u5230\u4f60\u7684 README \u4e2d\uff1a\n\n[![][tracking-swanlab-shield]][tracking-swanlab-shield-link]\u3001[![][visualize-swanlab-shield]][visualize-swanlab-shield-link]\n\n```\n[![](https://raw.githubusercontent.com/SwanHubX/assets/main/badge2.svg)](your experiment url)\n[![](https://raw.githubusercontent.com/SwanHubX/assets/main/badge1.svg)](your experiment url)\n```\n\n\u66f4\u591a\u8bbe\u8ba1\u7d20\u6750\uff1a[assets](https://github.com/SwanHubX/assets)\n\n### \u5728\u8bba\u6587\u4e2d\u5f15\u7528 SwanLab\n\n\u5982\u679c\u60a8\u53d1\u73b0 SwanLab \u5bf9\u60a8\u7684\u7814\u7a76\u4e4b\u65c5\u6709\u5e2e\u52a9\uff0c\u8bf7\u8003\u8651\u4ee5\u4e0b\u5217\u683c\u5f0f\u5f15\u7528\uff1a\n\n```bibtex\n@software{Zeyilin_SwanLab_2023,\n  author = {Zeyi Lin, Shaohong Chen, Kang Li, Qiushan Jiang, Zirui Cai,  Kaifang Ji and {The SwanLab team}},\n  doi = {10.5281/zenodo.11100550},\n  license = {Apache-2.0},\n  title = {{SwanLab}},\n  url = {https://github.com/swanhubx/swanlab},\n  year = {2023}\n}\n```\n\n### \u4e3a SwanLab \u505a\u51fa\u8d21\u732e\n\n\u8003\u8651\u4e3a SwanLab \u505a\u51fa\u8d21\u732e\u5417\uff1f\u9996\u5148\uff0c\u8bf7\u82b1\u70b9\u65f6\u95f4\u9605\u8bfb [\u8d21\u732e\u6307\u5357](CONTRIBUTING.md)\u3002\n\n\u540c\u65f6\uff0c\u6211\u4eec\u975e\u5e38\u6b22\u8fce\u901a\u8fc7\u793e\u4ea4\u5a92\u4f53\u3001\u6d3b\u52a8\u548c\u4f1a\u8bae\u7684\u5206\u4eab\u6765\u652f\u6301 SwanLab\uff0c\u8877\u5fc3\u611f\u8c22\uff01\n\n<br>\n\n**Contributors**\n\n<a href=\"https://github.com/swanhubx/swanlab/graphs/contributors\">\n  <img src=\"https://contrib.rocks/image?repo=swanhubx/swanlab\" />\n</a>\n\n<br>\n\n<img src=\"./https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/swanlab-and-user.png\" width=\"50%\" />\n\n\n## \ud83d\udcc3 \u534f\u8bae\n\n\u672c\u4ed3\u5e93\u9075\u5faa [Apache 2.0 License](https://github.com/SwanHubX/SwanLab/blob/main/LICENSE) \u5f00\u6e90\u534f\u8bae\n\n## Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=swanhubx/swanlab&type=Date)](https://star-history.com/#swanhubx/swanlab&Date)\n\n<!-- link -->\n\n[release-shield]: https://img.shields.io/github/v/release/swanhubx/swanlab?color=369eff&labelColor=black&logo=github&style=flat-square\n[release-link]: https://github.com/swanhubx/swanlab/releases\n\n[license-shield]: https://img.shields.io/badge/license-apache%202.0-white?labelColor=black&style=flat-square\n[license-shield-link]: https://github.com/SwanHubX/SwanLab/blob/main/LICENSE\n\n[last-commit-shield]: https://img.shields.io/github/last-commit/swanhubx/swanlab?color=c4f042&labelColor=black&style=flat-square\n[last-commit-shield-link]: https://github.com/swanhubx/swanlab/commits/main\n\n[pypi-version-shield]: https://img.shields.io/pypi/v/swanlab?color=orange&labelColor=black&style=flat-square\n[pypi-version-shield-link]: https://pypi.org/project/swanlab/\n\n[pypi-downloads-shield]: https://static.pepy.tech/badge/swanlab?labelColor=black&style=flat-square\n[pypi-downloads-shield-link]: https://pepy.tech/project/swanlab\n\n[swanlab-cloud-shield]: https://img.shields.io/badge/Product-SwanLab\u4e91\u7aef\u7248-636a3f?labelColor=black&style=flat-square\n[swanlab-cloud-shield-link]: https://swanlab.cn/\n\n[wechat-shield]: https://img.shields.io/badge/WeChat-\u5fae\u4fe1-4cb55e?labelColor=black&style=flat-square\n[wechat-shield-link]: https://docs.swanlab.cn/guide_cloud/community/online-support.html\n\n[colab-shield]: https://colab.research.google.com/assets/colab-badge.svg\n[colab-shield-link]: https://colab.research.google.com/drive/1RWsrY_1bS8ECzaHvYtLb_1eBkkdzekR3?usp=sharing\n\n[github-stars-shield]: https://img.shields.io/github/stars/swanhubx/swanlab?labelColor&style=flat-square&color=ffcb47\n[github-stars-link]: https://github.com/swanhubx/swanlab\n\n[github-issues-shield]: https://img.shields.io/github/issues/swanhubx/swanlab?labelColor=black&style=flat-square&color=ff80eb\n[github-issues-shield-link]: https://github.com/swanhubx/swanlab/issues\n\n[github-contributors-shield]: https://img.shields.io/github/contributors/swanhubx/swanlab?color=c4f042&labelColor=black&style=flat-square\n[github-contributors-link]: https://github.com/swanhubx/swanlab/graphs/contributors\n\n[demo-cats-dogs]: https://swanlab.cn/@ZeyiLin/Cats_Dogs_Classification/runs/jzo93k112f15pmx14vtxf/chart\n[demo-cats-dogs-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-catsdogs.png\n\n[demo-yolo]: https://swanlab.cn/@ZeyiLin/ultratest/runs/yux7vclmsmmsar9ear7u5/chart\n[demo-yolo-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-yolo.png\n\n[demo-qwen2-sft]: https://swanlab.cn/@ZeyiLin/Qwen2-fintune/runs/cfg5f8dzkp6vouxzaxlx6/chart\n[demo-qwen2-sft-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-qwen2.png\n\n[demo-google-stock]:https://swanlab.cn/@ZeyiLin/Google-Stock-Prediction/charts\n[demo-google-stock-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-lstm.png\n\n[demo-audio-classification]:https://swanlab.cn/@ZeyiLin/PyTorch_Audio_Classification/charts\n[demo-audio-classification-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-audio-classification.png\n\n[demo-qwen2-vl]:https://swanlab.cn/@ZeyiLin/Qwen2-VL-finetune/runs/pkgest5xhdn3ukpdy6kv5/chart\n[demo-qwen2-vl-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-qwen2-vl.jpg\n\n[demo-easyr1-rl]:https://swanlab.cn/@Kedreamix/easy_r1/runs/wzezd8q36bb6dlza6wtpc/chart\n[demo-easyr1-rl-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-easyr1-rl.png\n\n[demo-qwen2-grpo]:https://swanlab.cn/@kmno4/Qwen-R1/runs/t0zr3ak5r7188mjbjgdsc/chart\n[demo-qwen2-grpo-image]: https://raw.githubusercontent.com/SwanHubX/swanlab/main/readme_files/example-qwen2-grpo.png\n\n[tracking-swanlab-shield-link]:https://swanlab.cn\n[tracking-swanlab-shield]: https://raw.githubusercontent.com/SwanHubX/assets/main/badge2.svg\n\n[visualize-swanlab-shield-link]:https://swanlab.cn\n[visualize-swanlab-shield]: https://raw.githubusercontent.com/SwanHubX/assets/main/badge1.svg\n\n[dockerhub-shield]: https://img.shields.io/docker/v/swanlab/swanlab-next?color=369eff&label=docker&labelColor=black&logoColor=white&style=flat-square\n[dockerhub-link]: https://hub.docker.com/r/swanlab/swanlab-next/tags",
    "bugtrack_url": null,
    "license": null,
    "summary": "Python library for streamlined tracking and management of AI training processes.",
    "version": "0.6.7",
    "project_urls": {
        "Bug Reports": "https://github.com/SwanHubX/SwanLab/issues",
        "Documentation": "https://docs.swanlab.cn/zh/guide_cloud/general/what-is-swanlab.html",
        "Homepage": "https://swanlab.cn",
        "Source": "https://github.com/SwanHubX/SwanLab"
    },
    "split_keywords": [
        "machine learning",
        " reproducibility",
        " visualization"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "cce2d409bfaed868dae55431ff89fc07e6d8ff9ec6d472790b8966b593ccce69",
                "md5": "20f8288a3b3ed9649b3a22c751ff25bc",
                "sha256": "f2ae7a00c8e5ebca923a75097f2679dbd7f6d3d5147ade6fdb959878dd45f14f"
            },
            "downloads": -1,
            "filename": "swanlab-0.6.7-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "20f8288a3b3ed9649b3a22c751ff25bc",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 281374,
            "upload_time": "2025-07-17T14:43:24",
            "upload_time_iso_8601": "2025-07-17T14:43:24.674327Z",
            "url": "https://files.pythonhosted.org/packages/cc/e2/d409bfaed868dae55431ff89fc07e6d8ff9ec6d472790b8966b593ccce69/swanlab-0.6.7-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "409a4f7f401ff20c36f634f0dfa93f20f2d3c31a1c276b22bc0f4e38163f8500",
                "md5": "87f3e9061a39d029b6e5fa2447895e48",
                "sha256": "910e658e910ccecb6f85e6dd48cc363512c0272dfdcf2c04971ce4090257a3df"
            },
            "downloads": -1,
            "filename": "swanlab-0.6.7.tar.gz",
            "has_sig": false,
            "md5_digest": "87f3e9061a39d029b6e5fa2447895e48",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 408074,
            "upload_time": "2025-07-17T14:43:26",
            "upload_time_iso_8601": "2025-07-17T14:43:26.658192Z",
            "url": "https://files.pythonhosted.org/packages/40/9a/4f7f401ff20c36f634f0dfa93f20f2d3c31a1c276b22bc0f4e38163f8500/swanlab-0.6.7.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-17 14:43:26",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "SwanHubX",
    "github_project": "SwanLab",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "swankit",
            "specs": [
                [
                    "==",
                    "0.2.4"
                ]
            ]
        },
        {
            "name": "urllib3",
            "specs": [
                [
                    ">=",
                    "1.26.0"
                ]
            ]
        },
        {
            "name": "requests",
            "specs": [
                [
                    ">=",
                    "2.28.0"
                ]
            ]
        },
        {
            "name": "setuptools",
            "specs": []
        },
        {
            "name": "click",
            "specs": []
        },
        {
            "name": "pyyaml",
            "specs": []
        },
        {
            "name": "psutil",
            "specs": [
                [
                    ">=",
                    "5.0.0"
                ]
            ]
        },
        {
            "name": "pynvml",
            "specs": []
        },
        {
            "name": "boto3",
            "specs": [
                [
                    ">=",
                    "1.35.49"
                ]
            ]
        },
        {
            "name": "botocore",
            "specs": []
        },
        {
            "name": "pydantic",
            "specs": [
                [
                    ">=",
                    "2.9.0"
                ]
            ]
        },
        {
            "name": "pyecharts",
            "specs": [
                [
                    ">=",
                    "2.0.0"
                ]
            ]
        },
        {
            "name": "wrapt",
            "specs": [
                [
                    ">=",
                    "1.17.0"
                ]
            ]
        },
        {
            "name": "platformdirs",
            "specs": [
                [
                    ">=",
                    "4.2.0"
                ]
            ]
        },
        {
            "name": "typing_extensions",
            "specs": []
        },
        {
            "name": "protobuf",
            "specs": [
                [
                    "<",
                    "7"
                ],
                [
                    "!=",
                    "5.28.0"
                ],
                [
                    ">=",
                    "3.12.0"
                ],
                [
                    "!=",
                    "4.21.0"
                ]
            ]
        },
        {
            "name": "protobuf",
            "specs": [
                [
                    "<",
                    "7"
                ],
                [
                    "!=",
                    "5.28.0"
                ],
                [
                    "!=",
                    "4.21.0"
                ],
                [
                    ">=",
                    "3.15.0"
                ]
            ]
        },
        {
            "name": "protobuf",
            "specs": [
                [
                    "<",
                    "7"
                ],
                [
                    "!=",
                    "5.28.0"
                ],
                [
                    "!=",
                    "4.21.0"
                ],
                [
                    ">=",
                    "3.19.0"
                ]
            ]
        },
        {
            "name": "protobuf",
            "specs": [
                [
                    "<",
                    "7"
                ],
                [
                    "!=",
                    "5.28.0"
                ],
                [
                    "!=",
                    "4.21.0"
                ],
                [
                    ">=",
                    "3.19.0"
                ]
            ]
        },
        {
            "name": "rich",
            "specs": [
                [
                    ">=",
                    "13.6.0"
                ],
                [
                    "<",
                    "14.0.0"
                ]
            ]
        }
    ],
    "lcname": "swanlab"
}
        
Elapsed time: 0.54886s