AI Carpentry Lessons
Our Core Objectives
AI Carpentry equips researchers and people working in research-related roles with the skills and conceptual knowledge they need to apply artificial intelligence methods and tools in their work. Each of our workshops is aimed at a different target audience with their own goals and background knowledge. In each case, the goal is to empower learners to make informed decisions about the application of AI in their projects. We achieve this by combining conceptual learning with plenty of hands-on exploration and practice.
- Developer Workshop: for researchers planning to train their own machine learning/deep learning model.
- Learning Programming with GenAI: for coding beginners who want to explore working with generative AI tools for programming.
- Building and Validating Research Code with GenAI: for researchers with some programming experience who want to begin accellerating their software development without sacrificing quality or accuracy.
Lesson materials are all available online, under a CC-BY license, for self-directed study or for adaptation and re-use.
Lessons are under active development and in the early stages of testing. For links to some existing lessons that provide inspiration to our project, refer to Related Lessons below.
Please contact us if you are interested in contributing to workshop development, and/or you want to host a pilot workshop.
AI Carpentry Developer Workshop
A workshop for competent programmers who want to implement machine/deep learning methods in their own software/data analysis workflows. The primary audience for this workshop is graduate students and early career researchers who have or are going to have data and want to begin applying deep learning methods to extract insights. We also hope to help research group leaders, educators, others who want to expand their understanding of the technologies so they can better advise other people.
By the end of the workshop, learners will be able to…
- Define common terms encountered in artificial intelligence, including deep learning, machine learning, and large language models.
- Summarise the difference between supervised and unsupervised methods, and the kinds of tasks these different methods are suited to.
- Discuss how experimental design and choices made when data is collected can influence the quality and evaluation of a machine learning model.
- Prepare data for use in a machine learning application, through normalisation, labeling, and other pre-processing steps.
- Train machine learning/deep learning models to perform regression and classification tasks.
- Compare some popular metrics to evaluate the quality of a model and apply these.
- Identify common issues with a model including bias and overfitting.
AI Carpentry GenAI User Workshops
Workshops for people working in research who want or need to begin working with generative AI tools for coding.
Learning Programming with GenAI
A workshop for learners with no previous experience of writing code, who want/need to begin analysing data. The lessons are particularly relevant to learners working in research.
By the end of the workshop, learners will be able to:
- Adopt some practices to build their ability to read and write Python programs, supported by genAI.
- Highlight some of the ethical concerns around the development and use of genAI.
- Assess the risk of using the output from generative AI in a coding task.
- Summarise the process through which a large language model is developed and presented to the user.
- Identify how choices made during development influence the suitability of the resulting model for different tasks.
- Recognise the importance of evaluating the output of an LLM to the success and integrity of research.
Building and Validating Research Code with GenAI
A workshop for learners with some existing programming ability but who still need more practice to be able to work quickly or adapt easily to new kinds of tasks and contexts.
By the end of the workshop, learners will be able to:
- Implement several approaches to evaluate and validate code generated by genAI.
- Highlight some of the ethical concerns around the development and use of genAI.
- Assess the risk of using the output from genAI in coding tasks.
- Decompose large development tasks into smaller parts to delegate to an genAI tool.
- Compose instructions to improve the likelihood of obtaining a helpful response from a genAI tool.
- Identify tasks and circumstances where use of genAI may be inappropriate and/or harmful.
- Acknowledge the use of genAI in the generation of code and related artifacts.
Related Lessons
Looking for something you can use in workshops right now? Here are some existing lessons covering similar topics, but further along in development than most of AI Carpentry’s current curriculum:
- Introduction to Deep Learning from The Carpentries Lab
- A series of half-day workshops from the Southampton Research Software Group: