Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature]: add swanlab logger #7

Merged
merged 8 commits into from
May 2, 2024
Merged

[Feature]: add swanlab logger #7

merged 8 commits into from
May 2, 2024

Conversation

Zeyi-Lin
Copy link
Contributor

@Zeyi-Lin Zeyi-Lin commented May 2, 2024

📚Description

The PR added a new logger SwanLab, enriching the project's visualization options.

🚀Usage

Based on the existing training command, add the --vis command line parameter:

python -m train_motion_control --cfg configs/motionlcm_control.yaml --vis swanlab
  • Using --vis option, you can set the logger to swanlab; it defaults to tensorboard.

🔥Showcase

  • Chart
image
  • Experiment Comparison
image
  • Config & Metrics
image
  • Environment: Git、Python、Command etc.
image

🏁 How to use SwanLab

👉 Quick Start

1.Installation

pip install swanlab

2.Log in and get the API Key

  1. Free Sign Up

  2. Log in to your account, go to User Settings > API Key and copy your API Key.

  3. Open your terminal and enter:

swanlab login

When prompted, enter your API Key and press Enter to complete the login.

3. Integrate SwanLab with Your Code

import swanlab

# Create a new SwanLab experiment
swanlab.init(
  project="my-first-ml",
  config={'learning-rate': 0.003}
)

# Log metrics
for i in range(10):
    swanlab.log({"loss": i})

👋🏻 Introduction to SwanLab

SwanLab is an open-source, lightweight AI experiment tracking tool that provides a platform for tracking, comparing, and collaborating on experiments, aiming to accelerate the research and development efficiency of AI teams by 100 times.

image

It offers a user-friendly API and a decent interface, combining features such as tracking hyperparameter, recording metric, online collaboration, sharing experiment link, real-time message notifications, allowing you to quickly track ML experiments, visualize processes, and share with peers.

By using, researchers can accumulate their training experiences and seamlessly communicate and collaborate with peers. Machine learning engineers can develop models for production more efficiently.

Here is the English version of the core feature list for an AI platform:

1. 📊 Experimental Metrics and Tracking Hyperparameter: Embed your machine learning pipeline with minimalistic code and track key training metrics.

  • Flexible recording of hyperparameters and experiment configurations.
  • Supported metadata types: scalar metrics, images, audio, text, etc.
  • Supported chart types: line graphs, media charts (images, audio, text), etc.
  • Automatic logging: console logging, GPU hardware, Git information, Python interpreter, list of Python libraries, code directory.

2. ⚡️ Comprehensive Framework Integration: PyTorch, TensorFlow, PyTorch Lightning, 🤗HuggingFace Transformers, MMEngine, OpenAI, ZhipuAI, Hydra, etc.

3. 📦 Organizing Experiments: Centralized dashboard for efficiently managing multiple projects and experiments, providing an overview of training at a glance.

4. 🆚 Comparing Results: Use online tables and paired charts to compare the hyperparameters and outcomes of different experiments, developing iterative inspiration.

5. 👥 Online Collaboration: Collaborate with your team on training projects, supporting real-time synchronization of experiments under the same project, allowing you to synchronize training records of the team online and share insights and suggestions based on results.

6. ✉️ Sharing Results: Copy and send persistent URLs to share each experiment, efficiently send them to colleagues, or embed them in online notes.

7. 💻 Self-hosting Support: Supports offline mode with a self-hosted community version that also allows for dashboard viewing and experiment management.

@Dai-Wenxun Dai-Wenxun changed the title feat: visualizer add swanlab [Feature]: add swanlab logger May 2, 2024
@Dai-Wenxun Dai-Wenxun merged commit f534a7f into Dai-Wenxun:main May 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants