llm-workshop/README.md
2026-03-28 20:59:25 -04:00

2 KiB
Raw Blame History

LLMs for Engineers

CHEG 667-013 — Chemical Engineering with Computers
Department of Chemical and Biomolecular Engineering, University of Delaware

A hands-on workshop on Large Language Models and machine learning for engineers. Learn how to train a GPT from scratch, run local models, build retrieval-augmented generation systems, then tie it back to underlying machine learning methods by implementing a simple neural network.

Sections

# Topic Description
01 nanoGPT Train a small transformer on Shakespeare. Explore model parameters, temperature, and text generation.
02 Local models with Ollama Run pre-trained LLMs locally. Summarize documents, query arXiv, generate code, build custom models.
03 Retrieval-Augmented Generation Build a RAG system: chunk documents, embed them, and query with an LLM grounded in your own data.
04 Advanced retrieval Hybrid BM25 + vector search with cross-encoder re-ranking. Compares summarization versus raw retrieval.
05 Building a neural network Implement a one-hidden-layer network from scratch in numpy, then in PyTorch. Fits C_p(T) data for N₂.

Prerequisites

  • A terminal (macOS/Linux, or WSL on Windows)
  • Python 3.10+
  • Basic comfort with the command line
  • Ollama (sections 0204)

Getting started

Clone this repository and work through each section in order:

git clone https://lem.che.udel.edu/git/furst/llm-workshop.git
cd llm-workshop

Each section has its own README.md with a full walkthrough, exercises, and any code or data needed.

Python environment

Create a virtual environment once and reuse it across sections:

python3 -m venv llm-workshop
source llm-workshop/bin/activate
pip install numpy torch matplotlib

Sections 03 and 04 have additional dependencies listed in their requirements.txt files.

License

MIT

Author

Eric M. Furst, University of Delaware