Skip to main content

Interactive NLP course labs for Jupyter, Colab, and Deepnote

Project description

Labs

The course website is located here. Lecture materials, assignments, quizzes, etc. can be accessed at that link.

This site contains jupyter notebooks, data and other code artifacts associated with this course. I recommend you run these notebooks in Google Colab since they are tested in that environment. However, you are free to download and run elsewhere.

Choosing a Notebook Environment

Google Colab - single notebook experience

If you prefer:

  • working within a single notebook
  • are already comfortable with Google Colab
  • don’t mind re-installing dependencies on re-start
  • want instant access to GPUs

you may prefer Google Colab. Some libraries will need to be re-installed after each re-start.

Deepnote

If you are comfortable with working from within a forked copy of the repository itself and:

  • want easy install, more persistence of dependencies
  • low friction to move between notebooks
  • realtime collaboration

you may prefer Deepnote. You will need to create a free account and then request an education plan.

Local JupyterLab / Notebook

If you are already comfortable in Jupyter in your local environment and:

  • you want full control of your machine and environment
  • persistence of dependencies
  • and don’t mind dealing with managing your environment

you may prefer local Jupyter.

Installation

For Students (Google Colab)

For Google Colab (Python 3.10 compatible), use the special Colab requirements file:

# Download and install Colab-specific requirements
!wget -q https://raw.githubusercontent.com/su-dataAI/data401-nlp/main/colab-requirements.txt
!pip install -q -r colab-requirements.txt

# The spaCy model will be automatically downloaded when needed
from data401_nlp.helpers.spacy import ensure_spacy_model
nlp = ensure_spacy_model("en_core_web_sm")

Note: The colab-requirements.txt file pins numpy to version 1.x for Python 3.10 compatibility with Colab’s pre-installed IPython 7.34.0.

For Deepnote

For Deepnote:

!pip install -r deepnote-requirements.txt

For Local Development

If you want to run the notebooks locally:

# Clone the repository
git clone https://github.com/su-dataAI/data401-nlp.git
cd data401-nlp

# Install with all dependencies
pip install -e ".[dev,all]"
pip install requirements.txt

# Download spaCy model
python -m spacy download en_core_web_sm

# Start Jupyter Lab
jupyter lab

Installation Options

The package supports flexible installation based on your needs:

# Minimal installation (core utilities only)
pip install data401-nlp

# With NLP tools (spaCy, NLTK)
pip install data401-nlp[nlp]

# With transformers and PyTorch
pip install data401-nlp[transformers]

# With API support (FastAPI, Pydantic)
pip install data401-nlp[api]

# Everything (recommended for students)
pip install data401-nlp[all]

Platform Support

✅ Google Colab
✅ Deepnote
✅ Jupyter Lab
✅ Local Python 3.11+

Helper Modules

The package includes several helper modules to make your NLP work easier:

  • data401_nlp.helpers.env - Environment detection and API key loading
  • data401_nlp.helpers.spacy - Automatic spaCy model management
  • data401_nlp.helpers.submit - Assignment submission utilities
  • data401_nlp.helpers.llm - LLM integration helpers

The helper libraries may be updated as the course proceeds.

Contents

Lab Colab Deepnote GitHub
Intro (Jan 15) Open In Colab Open in Deepnote Open In GitHub

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

data401_nlp-0.0.5.tar.gz (16.7 kB view details)

Uploaded Source

Built Distribution

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

data401_nlp-0.0.5-py3-none-any.whl (14.3 kB view details)

Uploaded Python 3

File details

Details for the file data401_nlp-0.0.5.tar.gz.

File metadata

  • Download URL: data401_nlp-0.0.5.tar.gz
  • Upload date:
  • Size: 16.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for data401_nlp-0.0.5.tar.gz
Algorithm Hash digest
SHA256 9c8a7e0e4630bbd9b744bbc6f156b06b78097a09450cf0f37b1fb7832a2c4e19
MD5 1edee047846070df9ffb4bf81027292a
BLAKE2b-256 41cb0b6789dd47301c50ecea7420ac098ce66ad880bb373a315030b136bbffe6

See more details on using hashes here.

Provenance

The following attestation bundles were made for data401_nlp-0.0.5.tar.gz:

Publisher: release.yaml on su-dataAI/data401-nlp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file data401_nlp-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: data401_nlp-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 14.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for data401_nlp-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 5b294b90a1f51055ee7c6fa54eb2489c79b2bd2fce68afb25aef849537071e79
MD5 8946f11965c0487cfc0d066755ab0fec
BLAKE2b-256 64f70ab282914080ed96ff0245e60d48b308bdd6df0893c1b9da2d9f2b8b1a4d

See more details on using hashes here.

Provenance

The following attestation bundles were made for data401_nlp-0.0.5-py3-none-any.whl:

Publisher: release.yaml on su-dataAI/data401-nlp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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