Home> AI Carpentry Lessons

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.

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.
LessonSiteRepositoryStatus
Developer Workshop Overviewinitial design phase
Connecting Key Concepts in Machine Learninginitial design phase
Preparing Data for Machine Learninginitial design phase
Developing and Evaluating a Deep Learning Modelinitial design phase

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.
LessonSiteRepositoryStatus
Learning Programming with GenAI Workshop Overviewinitial design phase
Exploring Large Language Modelsinitial design phase
Considering Implications of GenAI Useinitial design phase
Learning Programming with GenAIinitial design phase

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.
LessonSiteRepositoryStatus
Building and Validating Research Code with GenAI Workshop Overviewinitial design phase
Exploring Large Language Modelsinitial design phase
Considering Implications of GenAI Useinitial design phase
Developing Software with Generative AIinitial design phase

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: