PyCoder is a tool to generate python code out of a few given topics and a description. It uses GPT-2 language model as its engine. Pycoder poses writing Python code as a conditional-Causal Language Modelling(c-CLM). It has been trained on millions of lines of Python code written by all of us. At the current stage and state of training, it produces sensible code with few lines of description, but the scope of improvement for the model is limitless.
Pycoder has been developed as a Command-Line tool (CLI), an API endpoint, as well as a python package (yet to be deployed to PyPI). This repository acts as a framework for anyone who either wants to try to build Pycoder from scratch or turn Pycoder into maybe a CPPCoder or JSCoder 😃. A blog post about the development of the project will be released soon.
To use Pycoder as a CLI utility, clone the repository as normal, and install the package with:
foo@bar:❯ pip install pycoder
After this the package could be verified and accessed as either a native CLI tool or a python package with:
foo@bar:❯ python -m pycoder --version
Or directly as:
foo@bar:❯ pycoder --version
On installation the CLI can be used directly, such as:
foo@bar:❯ pycoder -t pytorch -t torch -d "a trainer class to train vision model" -ml 120
The API endpoint is deployed using FastAPI. Once all the requirements have been installed for the project, the API can be accessed with:
foo@bar:❯ pycoder --endpoint PORT_NUMBER
Or
foo@bar:❯ pycoder -e PORT_NUMBER
Tech Stack
Tested Platforms
BibTeX
If you want to cite the framework feel free to use this:
@article{dutta2021pycoder,
title={Pycoder},
author={Dutta, H},
journal={GitHub. Note: https://github.com/himanshu-dutta/pycoder},
year={2021}
}
Metadata
Release files for pycoder 1.2.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pycoder-1.2.4.tar.gz | 17.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pycoder-1.2.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 38.5 kB
Release files / pycoder-1.2.4.tar.gz
| Download URL | pycoder-1.2.4.tar.gz |
|---|---|
| Size | 17.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0a2bd1bfcc7c7f5044353bf8d3689d6ccc7f43f9953c71563ca3cabb25983666
|
|
BLAKE2b-256 checksum How to use checksums |
eaa599cb6ec9c3ec1f02af8812cf0d813abb211610e74078e7478555427dbba1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.8.10
|
Release files / pycoder-1.2.4-py3-none-any.whl
| Download URL | pycoder-1.2.4-py3-none-any.whl |
|---|---|
| Size | 21.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
10575d63e51475b3a90109a4f27805d7c16e24a26d6b037d8aa982dd62ece1b8
|
|
BLAKE2b-256 checksum How to use checksums |
bc8ba6fb7d03785541a462ac6c039113c054416b1dbede62dd029672a4721934
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.8.10
|