Skip to content

langchain-ai/langchain-academy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LangChain Academy

Introduction

Welcome to LangChain Academy! This is a growing set of modules focused on foundational concepts within the LangChain ecosystem. Module 0 is basic setup and Modules 1 - 4 focus on LangGraph, progressively adding more advanced themes. In each module folder, you'll see a set of notebooks. A LangChain Academy accompanies each notebook to guide you through the topic. Each module also has a studio subdirectory, with a set of relevant graphs that we will explore using the LangGraph API and Studio.

Setup

Python version

To get the most out of this course, please ensure you're using Python 3.11 or later. This version is required for optimal compatibility with LangGraph. If you're on an older version, upgrading will ensure everything runs smoothly.

python3 --version

Clone repo

git clone https://github.com/langchain-ai/langchain-academy.git
$ cd langchain-academy

Create an environment and install dependencies

Mac/Linux/WSL

$ python3 -m venv lc-academy-env
$ source lc-academy-env/bin/activate
$ pip install -r requirements.txt

Windows Powershell

PS> python3 -m venv lc-academy-env
PS> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process
PS> lc-academy-env\scripts\activate
PS> pip install -r requirements.txt

Running notebooks

If you don't have Jupyter set up, follow installation instructions here.

$ jupyter notebook

Setting up env variables

Briefly going over how to set up environment variables. You can also use a .env file with python-dotenv library.

Mac/Linux/WSL

$ export API_ENV_VAR="your-api-key-here"

Windows Powershell

PS> $env:API_ENV_VAR = "your-api-key-here"

Set OpenAI API key

  • If you don't have an OpenAI API key, you can sign up here.
  • Set OPENAI_API_KEY in your environment

Sign up and Set LangSmith API

  • Sign up for LangSmith here, find out more about LangSmith
  • and how to use it within your workflow here, and relevant library docs!
  • Set LANGCHAIN_API_KEY, LANGCHAIN_TRACING_V2=true in your environment

Set up Tavily API for web search

  • Tavily Search API is a search engine optimized for LLMs and RAG, aimed at efficient, quick, and persistent search results.

  • You can sign up for an API key here. It's easy to sign up and offers a very generous free tier. Some lessons (in Module 4) will use Tavily.

  • Set TAVILY_API_KEY in your environment.

Set up LangGraph Studio

  • Currently, Studio only has macOS support and needs Docker Desktop running.
  • Download the latest .dmg file here
  • Install Docker desktop for Mac here

Running Studio

Graphs for LangGraph Studio are in the module-x/studio/ folders.

  • To use Studio, you will need to create a .env file with the relevant API keys
  • Run this from the command line to create these files for module 1 to 4, as an example:
$ for i in {1..4}; do
  cp module-$i/studio/.env.example module-$i/studio/.env
  echo "OPENAI_API_KEY=\"$OPENAI_API_KEY\"" > module-$i/studio/.env
done
$ echo "TAVILY_API_KEY=\"$TAVILY_API_KEY\"" >> module-4/studio/.env