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.2.tar.gz (3.9 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: deadbeats-0.3.2.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.2.tar.gz
Algorithm Hash digest
SHA256 42fd05d20ceb7fa6b3a24d78055dd1d7658ce2091493371665624a749c799e3e
MD5 483a96ab27368a29c741b2d9a0fb1f25
BLAKE2b-256 a2c5fa18281d87b4206860999672877a464f802043190cec30e1541e45180c6a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: deadbeats-0.3.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 578240251cd8eee2061d61fdfaece9c74a71e73b3bcf6eb464960cdce461671f
MD5 6b91b4a9d516a53381bec9f5bce99e77
BLAKE2b-256 3d175bb68208c4cab0fad97abef53162064a0bdb2017cac76f244b7427793eb7

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