Skip to main content

Set of pytorch modules and utils to train code2seq model

Project description

code2seq

JetBrains Research Github action: build Code style: black

PyTorch's implementation of code2seq model.

Installation

You can easily install model through the PIP:

pip install code2seq

Usage

Minimal code example to run the model:

from argparse import ArgumentParser

from omegaconf import DictConfig, OmegaConf
from pytorch_lightning import Trainer

from code2seq.data.path_context_data_module import PathContextDataModule
from code2seq.model import Code2Seq


def train(config: DictConfig):
    # Load data module
    data_module = PathContextDataModule(config.data_folder, config.data)
    data_module.prepare_data()
    data_module.setup()

    # Load model
    model = Code2Seq(
        config.model,
        config.optimizer,
        data_module.vocabulary,
        config.train.teacher_forcing
    )

    trainer = Trainer(max_epochs=config.hyper_parameters.n_epochs)
    trainer.fit(model, datamodule=data_module)


if __name__ == "__main__":
    __arg_parser = ArgumentParser()
    __arg_parser.add_argument("config", help="Path to YAML configuration file", type=str)
    __args = __arg_parser.parse_args()

    __config = OmegaConf.load(__args.config)
    train(__config)

Navigate to config directory to see examples of configs. If you have any questions, then feel free to open the issue.

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

code2seq-1.2.0.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

code2seq-1.2.0-py3-none-any.whl (21.6 kB view details)

Uploaded Python 3

File details

Details for the file code2seq-1.2.0.tar.gz.

File metadata

  • Download URL: code2seq-1.2.0.tar.gz
  • Upload date:
  • Size: 14.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.8

File hashes

Hashes for code2seq-1.2.0.tar.gz
Algorithm Hash digest
SHA256 8731bd3f2dbcd6100327b713a607e8fbd4f308c18b5d6a4b4c5eeacf086444d6
MD5 5ea8424937b4fa07c8233e5c36e7c99f
BLAKE2b-256 ca8e7561ef92a269acc4c63629214df4aae212fa930c895052a5b078e84c22a6

See more details on using hashes here.

File details

Details for the file code2seq-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: code2seq-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 21.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.8

File hashes

Hashes for code2seq-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 04f057306107625d6dcad36401d9a8c781b61e06975f7e843f6ae1602494f157
MD5 d23c94a9b904600aa4e4c96e925b6c47
BLAKE2b-256 1083387279008bd35d2b3728e6b211a1d212d4323096f11d0cf7619d29afae3e

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