Onboarding activities
This is a list of activities that are recommended to be completed as part of joining the research project. You can begin working on these at the start of the Spring 2026 semester. Optionally, you can complete some or all of these activities during the winter break. The activities are listed in one possible ordering but they can be done in a different order. Tackle them according to your own interests and preference.
Introduction and activity log
- Introduce yourself on the Introductions channel.
- Create a new private channel in our Team to act as your activity log. See the separate Activity Logs page for details.
Preparatory reading
- Easy intro to LLMs: Read the chapter on Generative AI from jmac’s forthcoming book: maccormick-thinkingAI-ch10.pdf – this link is restricted to members the COMP560 MS Team – more details on the book at Princeton University Press or Amazon.
- Read Feng, G., Zhang, B., Gu, Y., Ye, H., He, D., & Wang, L. (2023). Towards revealing the mystery behind chain of thought: a theoretical perspective. Advances in Neural Information Processing Systems, 36, 70757-70798.
- Don’t worry about the math.
- Just try to understand some of their practical experiments.
- If you have questions, please post discussion on the Feng2023 Teams channel.
- Read Baeumel, Tanja, Josef van Genabith, and Simon Ostermann. “The lookahead limitation: Why multi-operand addition is hard for LLMs.”
- Focus on the experimental results. Don’t worry about theoretical ideas.
GitHub and pull requests
- Practice submitting a pull request to our public website:
- fork the repo at https://github.com/dson-comp560-sp26/comp560-web
- Add your name and any optional links to the
participants.mdfile. - Submit a pull request (PR) for the change. Ask for help on Teams and/or from an AI assistant if you don’t know how to do this.
NanoGPT familiarization
- Download and familiarize yourself with Andrej Karpathy’s nanoGPT. If you have questions or need help, post to the nanoGPT channel.
- Figure out how to train and sample from the character-level Shakespeare model.
- Create a new character-level model that is identical to the character-level Shakespeare model but using a different corpus of text.
- Train and sample from the character-level Shakespeare model in our fork of nanoGPT: comp560-nanoGPT
- This should be very similar to the previous exercise, but you have the capability of training and sampling from a different directory. See the
README-fork.mdfile in that repo.
- This should be very similar to the previous exercise, but you have the capability of training and sampling from a different directory. See the
- Train and sample from the models in comp560-jmac. See the README there.
- Also, add your name to the list in
alphabet/data/students/prepare.py. Train and sample from the model again to verify it can output your name (among the other random choices) when sampling. - Submit a PR for your change.
- Also, add your name to the list in
Do your first research experiment
- Instructions for this are on the separate First Research Experiment page
Wandb familiarization
- Sign up at wandb.ai/. Make sure you are a member of our team
dickinson-comp560-sp26. (You should have received an invitation for this. If not, you can request one from the instructors.) - Do a tutorial available from Wandb. Make sure you view can results from a run of their tutorial code.
- Re-run your First Research Experiment, this time using Wandb for logging.
- In the config file, set
wandb_log = Trueand provide meaningful values forwandb_projectandwandb_run_name.
- In the config file, set
- View the results at wandb.ai/. Ensure you can see a graph of the training loss decreasing as the number of iterations increases. Add this graph to the report you made on your first research experiment.