Skip to main content

Shared utilities for DADS 5250: Generative AI in Practice (Northeastern University)

Project description

dads5250

Shared utilities for DADS 5250: Generative AI in Practice (Northeastern University, MIE). Small, dependency light helpers that every course lab imports so the notebooks stay short and consistent: API setup, pretty output boxes, token and cost helpers, and inline quizzes.

Install

Once published to PyPI:

pip install dads5250

Pinned install straight from the course repo (works today, reproducible):

pip install "git+https://github.com/mdehghani86/DADS5250-GenAI.git@v0.2.0#subdirectory=utils"

Optional Gemini support:

pip install "dads5250[gemini]"

What is inside

Module Purpose
api setup_openai, setup_gemini, check_api, default model names, key resolution (Colab Secret then env then hidden prompt)
display pp, pretty_print, show_response, compare_responses, lab_pill and other styled output boxes
cost token counting and cost estimate helpers
quiz lightweight inline multiple choice quizzes for labs

Usage

from dads5250 import setup_openai, pp, DEFAULT_MINI_MODEL

client = setup_openai()
resp = client.chat.completions.create(
    model=DEFAULT_MINI_MODEL,
    messages=[{"role": "user", "content": "Say hello"}],
)
pp(resp.choices[0].message.content, title="Model reply")

Versioning

Labs pin a released tag (for example @v0.2.0) so a notebook downloaded from Canvas keeps working even if the repository changes later. Bump the version in pyproject.toml, tag the commit, and the labs move to the new version only when their install line is updated.

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

dads5250-0.2.0.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dads5250-0.2.0-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file dads5250-0.2.0.tar.gz.

File metadata

  • Download URL: dads5250-0.2.0.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for dads5250-0.2.0.tar.gz
Algorithm Hash digest
SHA256 41a12df6c74b7a13cf58d15760cf0e044cfc2f7fd89507a8180c683d21abf7eb
MD5 0f1f0fed41769b857ff29aebf2f8c8a5
BLAKE2b-256 f56fd5367f44c97d000f8f0470374729063e6e8955e15b0a0b8eaa1e1ea88c46

See more details on using hashes here.

File details

Details for the file dads5250-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: dads5250-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for dads5250-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 112ba6cf8c6ba4748bc147c35616df8f56ef9d6b12247538213a0ad3c7788b28
MD5 9bb115b921769a007c6f30026fb47c94
BLAKE2b-256 28ee5ea6168f0b0301b1bf398cbe892087e3b4e8d469b836d38b9db7f5b23a97

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page