Skip to main content

The Banana CLI helps you build Potassium apps

Project description

banana-cli

The goal of the Banana CLI is to bring an npm-like experience to ML development loops.

This version includes:

  • banana init to create a project with boilerplate
  • banana install to install packages from the requirements.txt
  • banana --version to show the current version
  • banana deploy to easily deploy the local folder to Banana.dev without using GitHub

Here's a demo video

Installing the CLI locally

python3 -m venv .venv
source .venv/bin/activate
pip3 install -e ./
banana --version

This is a v0 release using SemVer; it is not stable and the interface can break at any time.

To use it

  1. Create a new project directory with
banana init my-app
cd my-app
  1. Start the dev server
python3 app.py
  1. Call your API (from a separate terminal)
curl -X POST -H "Content-Type: application/json" -d '{"prompt": "Hello I am a [MASK] model."}' http://localhost:8000/

The interactive dev server works like a react, next, or nodemon server: it selectively hot reloads components when you save changes to different parts of your app.py file.

The init() function is ran on startup and for every change to init().

The handler() function is ran on every change to handler(), without needing to wait for a long init()

Play with it:

  1. Try changing the handler, see what happens!
  2. Try changing the init, see what happens!

Future Development:

  • Lock in a stable interface
  • Add the following commands
    • banana stage -> run a temporary deployment to Banana's cluster for on-GPU testing
    • banana test -> unit test against local test cases

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

banana_cli-0.1.2.tar.gz (17.5 kB view details)

Uploaded Source

Built Distribution

banana_cli-0.1.2-py3-none-any.whl (18.4 kB view details)

Uploaded Python 3

File details

Details for the file banana_cli-0.1.2.tar.gz.

File metadata

  • Download URL: banana_cli-0.1.2.tar.gz
  • Upload date:
  • Size: 17.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for banana_cli-0.1.2.tar.gz
Algorithm Hash digest
SHA256 2e3c5a1290e5a8ba99af59096d69dfe7122dfec6c52501d1fae440e963c702a5
MD5 ab83785e43ef01521a75d3492244feec
BLAKE2b-256 57f313060bf4d380046b3938211f92011881f12121a146add4c63f00a7f5cda8

See more details on using hashes here.

File details

Details for the file banana_cli-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: banana_cli-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 18.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for banana_cli-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bd496663fe4af0105a52a5d1535a159636c267b0fb63ede5a9340ddf7a7f088d
MD5 e06863acf338f12573a89abf5f1e7461
BLAKE2b-256 4489825532c8a03c7f619bd3fbfe1432eb75ec8118bfd36f1a6d9abd79452469

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