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 the end of the wrapped 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.4.0.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

deadbeats-0.4.0-py3-none-any.whl (4.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: deadbeats-0.4.0.tar.gz
  • Upload date:
  • Size: 4.0 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.4.0.tar.gz
Algorithm Hash digest
SHA256 735f738bf4795513ee32715b26c4d4712867918219ffe339b79cbd9639911538
MD5 b901d86c6ba155d010a408fc21dde58c
BLAKE2b-256 9a70232b677cd5f422afda178e4583dcc0c720a5216a3e38ff28b3a5265ccdbb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: deadbeats-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 4.2 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.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 23df9b87211ac46ff900121138bf378defa0118cfa4febba1e7276e79003db1b
MD5 e3fa857be6e33249078f780271c0e141
BLAKE2b-256 bd3d0dbf3589f37c3ff50e183f3465f302e9c53c921b5ea47f5b14f5423b6d39

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