Skip to content
AI-Security-BootcampPublic

About

No description, website, or topics provided.

Resources

Stars

59 stars

Watchers

3 watching

Forks

Latest commit

 

History

288 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to the AI Security Bootcamp! AISB is a 7-day intensive program for senior security professionals, focused on frontier AI Security. This repo contains the exercises and links to the reading material you will go through during the bootcamp.

Curriculum overview

Complete Day 0 - Setup before the bootcamp. Each content day starts with a one-hour lecture followed by six hours of paired labs; review the required background in each section's README beforehand.

Day 1 - LLM Internals

Day 2 - Coding Agents & AI Control

Day 3 - LLM Inference Security

Day 4 - Training & Data Security

Day 5 - Adversarial ML

Day 6 - Infrastructure Security

Day 7 - Infrastructure Security & Threat Modeling

Prerequisites

Please review the Day 0 setup guide to ensure you have the required skills and tools to complete the bootcamp.

In-person instructions

If you're attending the bootcamp in person, you will spend most of the days pair programming with your assigned partner on the exercises for the given day.

Before the first day, make sure you have completed the instructions in the Day 0 setup guide.

Completing exercises

Each content day is split into numbered section folders named X.Y-topic, where X is the day and Y is the section. Follow the section links in the curriculum overview above; 1.0-readings contains Day 1 pre-reading. Day 4 content is under development. Start with each section folder's README.md: it explains what the section assumes, what you should learn, and which pre-reading and reference resources will help. Then open the *_instructions.md file for the exercises. We recommend you open it in your IDE and view the markdown (right-click and select "Open Preview" in VS Code).

The README background is part of the section: review it before beginning the exercises. Only resources explicitly marked optional longer reading may be skipped. In each prerequisite table, you should be able to demonstrate every incoming competency with a short question or task; - means that the section has no additional prerequisite in that category.

For each section containing code, create a day#_answers.py file in that section's folder. Prose-only sections specify a Markdown answer file instead.

The instructions will contain code snippets you need to complete. Add a new # %% line to your answers and paste the code snippet under that line. If you went through the setup instructions correctly (with VS Code), you should see "Run Cell" option above the # %% which will execute the code in a Python Interactive Window. The code snippets contain tests that should initially fail. Complete the TODOs in the code and run the cell until all the tests pass.

Using Python cells If you add more code at the bottom of the file and follow it with another `# %%`, this will create another cell which can be run independently in the same session. Cells can be run many times and in any order you choose; the session will maintain variables and state until it is restarted.

Using git

We recommend you save your progress for each day (the answer files you will create with your assigned partner) to a branch in this repo. This will make it possible for you to switch between computers you will use while pair programming, and make your solution available for you to reference later.

First, configure your git repo with:

git config pull.rebase true
git config --type bool push.autoSetupRemote true

Every day in the morning, make sure you have the latest version of the repo:

git checkout main
git pull

Make a branch for the day: git checkout -b <branch name>, where your branch name should follow the convention day#/<name>-and-<name>. For example, if Tamera and Edmund were pairing on the day 3 content, the command would be git checkout -b day3/tamera-and-edmund. If you share a first name with someone else in the program, use a unique nickname of your choice for disambiguation.

Create a new file for your answers (see completing exercises above) and work through the material with your partner.

As you work, commit changes to your branch and push them to the repo. To make and push a commit:

git add :/
git commit -m '<your commit message>'
git push

If you want to switch what computer you work on with your partner, they can check out the latest version of the branch with:

git fetch
git checkout <branch name>
git pull

Testing your setup

If you'd like to try a sample exercise and test your setup, go ahead and complete day0!

License

CC BY-NC-SA 4.0

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

About

No description, website, or topics provided.

Resources

Stars

59 stars

Watchers

3 watching

Forks

Releases

Packages

Contributors

Languages