Skip to content

YogzZ/prompt-eng-interactive-tutorial

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Prompt Engineering Interactive Tutorial

This repository contains interactive tutorials for prompt engineering across different AI platforms.

Quick Start

Prerequisites

  • Python 3.10 or higher
  • Poetry for dependency management

Setup

  1. Clone the repository:

    git clone <repository-url>
    cd prompt-eng-interactive-tutorial
  2. Run the setup script:

    ./setup.sh

    This will:

    • Install all dependencies using Poetry
    • Create environment configuration files
    • Set up the project structure
  3. Configure your API keys:

    • Edit openai/.env and add your OpenAI API key
    • Get your API key from OpenAI Platform
  4. Start learning:

    • Open openai/00_Tutorial_How-To.ipynb in Cursor or Jupyter
    • Select the Poetry environment as your kernel
    • Follow the tutorial sequence

Project Structure

prompt-eng-interactive-tutorial/
├── openai/                     # OpenAI tutorials
│   ├── env.example            # Environment template
│   ├── .env                   # Your API keys (git-ignored)
│   ├── config.py              # Configuration loader
│   ├── 00_Tutorial_How-To.ipynb
│   └── ...                    # Tutorial notebooks
├── AmazonBedrock/             # AWS Bedrock tutorials
├── Anthropic 1P/              # Anthropic tutorials
├── setup.sh                   # Quick setup script
├── pyproject.toml             # Poetry configuration
└── README.md                  # This file

Environment Variables

This project uses .env files to manage API keys securely:

  • Template: openai/env.example - Committed to git
  • Actual: openai/.env - Git-ignored, contains your private keys
  • Loading: Done automatically via config.py

Supported Variables

# Required
OPENAI_API_KEY=your_api_key_here

# Optional
MODEL_NAME=gpt-4o-mini
BASE_URL=https://api.openai.com/v1
TEMPERATURE=0.0
MAX_TOKENS=2000

Multi-Platform Support

This project supports multiple AI platforms through the BASE_URL configuration:

  • OpenAI (default): https://api.openai.com/v1
  • DashScope (Alibaba Cloud): https://dashscope.aliyuncs.com/compatible-mode/v1
  • Other OpenAI-compatible APIs: Set your custom base URL

Manual Setup (Alternative)

If you prefer manual setup:

  1. Install Poetry (if not already installed):

    curl -sSL https://install.python-poetry.org | python3 -
  2. Install dependencies:

    poetry install
  3. Create environment file:

    cp openai/env.example openai/.env
  4. Edit the .env file and add your API keys

Security Notes

  • .env files are in .gitignore - your API keys won't be committed
  • env.example shows the required format without exposing keys
  • config.py validates that keys are properly set
  • ⚠️ Never commit actual API keys to version control

Troubleshooting

Poetry not found

curl -sSL https://install.python-poetry.org | python3 -

API key errors

  • Check that openai/.env exists and contains your actual API key
  • Verify the key is valid on the OpenAI Platform
  • Ensure the environment variables are loaded correctly

Jupyter kernel issues

  • Make sure to select the Poetry environment as your Jupyter kernel
  • You may need to install ipykernel in the Poetry environment:
    poetry run python -m ipykernel install --user --name=prompt-eng-tutorial

Contributing

When contributing:

  1. Never commit .env files
  2. Update env.example if new variables are needed
  3. Test with fresh environment setup
  4. Follow the existing code structure

Getting Help

  • Check tutorial-specific README files in each directory
  • Review the setup script output for detailed instructions
  • Ensure all dependencies are properly installed via Poetry

Happy prompting! 🚀

Welcome to Anthropic's Prompt Engineering Interactive Tutorial

Course introduction and goals

This course is intended to provide you with a comprehensive step-by-step understanding of how to engineer optimal prompts within Claude.

After completing this course, you will be able to:

  • Master the basic structure of a good prompt
  • Recognize common failure modes and learn the '80/20' techniques to address them
  • Understand Claude's strengths and weaknesses
  • Build strong prompts from scratch for common use cases

Course structure and content

This course is structured to allow you many chances to practice writing and troubleshooting prompts yourself. The course is broken up into 9 chapters with accompanying exercises, as well as an appendix of even more advanced methods. It is intended for you to work through the course in chapter order.

Each lesson has an "Example Playground" area at the bottom where you are free to experiment with the examples in the lesson and see for yourself how changing prompts can change Claude's responses. There is also an answer key.

Note: This tutorial uses our smallest, fastest, and cheapest model, Claude 3 Haiku. Anthropic has two other models, Claude 3 Sonnet and Claude 3 Opus, which are more intelligent than Haiku, with Opus being the most intelligent.

This tutorial also exists on Google Sheets using Anthropic's Claude for Sheets extension. We recommend using that version as it is more user friendly.

When you are ready to begin, go to 01_Basic Prompt Structure to proceed.

Table of Contents

Each chapter consists of a lesson and a set of exercises.

Beginner

  • Chapter 1: Basic Prompt Structure

  • Chapter 2: Being Clear and Direct

  • Chapter 3: Assigning Roles

Intermediate

  • Chapter 4: Separating Data from Instructions

  • Chapter 5: Formatting Output & Speaking for Claude

  • Chapter 6: Precognition (Thinking Step by Step)

  • Chapter 7: Using Examples

Advanced

  • Chapter 8: Avoiding Hallucinations

  • Chapter 9: Building Complex Prompts (Industry Use Cases)

    • Complex Prompts from Scratch - Chatbot
    • Complex Prompts for Legal Services
    • Exercise: Complex Prompts for Financial Services
    • Exercise: Complex Prompts for Coding
    • Congratulations & Next Steps
  • Appendix: Beyond Standard Prompting

    • Chaining Prompts
    • Tool Use
    • Search & Retrieval

About

Anthropic's Interactive Prompt Engineering Tutorial

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 97.7%
  • Python 2.2%
  • Shell 0.1%