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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
41a12df6c74b7a13cf58d15760cf0e044cfc2f7fd89507a8180c683d21abf7eb
|
|
| MD5 |
0f1f0fed41769b857ff29aebf2f8c8a5
|
|
| BLAKE2b-256 |
f56fd5367f44c97d000f8f0470374729063e6e8955e15b0a0b8eaa1e1ea88c46
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
112ba6cf8c6ba4748bc147c35616df8f56ef9d6b12247538213a0ad3c7788b28
|
|
| MD5 |
9bb115b921769a007c6f30026fb47c94
|
|
| BLAKE2b-256 |
28ee5ea6168f0b0301b1bf398cbe892087e3b4e8d469b836d38b9db7f5b23a97
|