Skip to main content

No project description provided

Project description

DEADBEATS

An easy to use Slack messaging library for research.

Usage

from deadbeats import DEADBEATS
# set environment variables as below
# SLACK_ACCESS_TOKEN=xxxx-xxxxxxxxxxxxx-xxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxx (Get your own Slack API access token)
# SLACK_CHANNEL_ID=deadbeats (set slack channel id whatever you like!)


# or you can set configurations manually.
DEADBEATS.set_access_token("SLACK_ACCESS_TOKEN")
DEADBEATS.set_channel_id("SLACK_CHANNEL_ID")


# `DEADBEATS.wrap` sends a message at the beginning and end of the function.
# `DEADBEATS.wrap` catch every errors and raise it after sending a error message.
@DEADBEATS.wrap
def main():
    # A simple "heartbeating" message.
    DEADBEATS.ping()


    # Start threading!
    # All subsequent messages will be sent to the thread.
    DEADBEATS.start_thread()


    # You can add extra information like below.
    params = {"loss": 0.5, "val_loss": 1.6, "acc": 100.0}
    DEADBEATS.ping(text="message whatever you like", params=params, additional="info", huga="huga")


    # If you want to stop threading, you can use this method.
    # This method reset "thread_ts" of a instance variable, which is a id of thread.
    DEADBEATS.reset_thread()

With PyTorch Lightning

from deadbeats import DEADBEATS

class MyModel(pl.LightningModule):

    ...

    def on_train_start(self):
        DEADBEATS.start_thread()

    ...

    def validation_epoch_end(self, outputs):
        avg_loss = torch.stack([x['val_loss'] for x in outputs]).mean()

        DEADBEATS.ping(val_loss = avg_loss, current_epoch = self.current_epoch)

        return {'val_loss': avg_loss}

    ...

    # custom training function
    @DEADBEATS.wrap
    def fit(self, trainer):
        trainer.fit(self)

messages like below

example

This library is named after the wonderful work of Mori Calliope, DEAD BEATS, and inspired by hugginface/knockknock.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

deadbeats-0.3.3.tar.gz (3.9 kB view details)

Uploaded Source

Built Distribution

deadbeats-0.3.3-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file deadbeats-0.3.3.tar.gz.

File metadata

  • Download URL: deadbeats-0.3.3.tar.gz
  • Upload date:
  • Size: 3.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.5 CPython/3.8.2 Darwin/19.6.0

File hashes

Hashes for deadbeats-0.3.3.tar.gz
Algorithm Hash digest
SHA256 6397cd1d2a1c4b887868bcd944124ca727763e12a76c0830838c13671dd0397a
MD5 340c27c607a4fef1a599e56606b4ca1e
BLAKE2b-256 9e439508a153c472b072917fd96687a1cc5ee30d606af47aca494444db4dfac2

See more details on using hashes here.

File details

Details for the file deadbeats-0.3.3-py3-none-any.whl.

File metadata

  • Download URL: deadbeats-0.3.3-py3-none-any.whl
  • Upload date:
  • Size: 4.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.5 CPython/3.8.2 Darwin/19.6.0

File hashes

Hashes for deadbeats-0.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 0d47d982839e43be561b03a3c6586a0b528c807dd4dd38a8ae48f86d9cf6d932
MD5 342acec4a1a850846c0a1f946ecd4605
BLAKE2b-256 f0a390fb4b94dbdb3f673c200310e7076e5b39a14cc76358f6fd6fbc7f055194

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page