Get ready to create incredible AI applications using three powerful Google AI technologies:
🔥 Genkit (TypeScript) - Build conversational AI chatbots, content generators, and intelligent workflows
🐍 Agent Development Kit (Python) - Create sophisticated AI agents and automation systems
☁️ Google Cloud Vertex AI - Deploy and scale your AI models in the cloud
This guide focuses on environment setup only. The actual coding tutorials, step-by-step projects, and hands-on codelabs will be provided during the workshop sessions.
Your goal: Complete this setup to be ready for an incredible learning experience!
For detailed schedule information and registration, visit: Build with AI Workshop
This workshop provides setup instructions for:
Don't have a powerful machine or facing installation issues? We've got you covered with cloud-based alternatives:
These alternatives ensure everyone can participate regardless of their hardware limitations!
What is Genkit? Google's AI application framework for TypeScript developers. Perfect for building conversational AI, content generators, and intelligent workflows.
What you'll build: AI-powered applications like chatbots, content creators, and smart automation tools.
Before starting, ensure you have:
Option A: Using Official Installer (Recommended)
# Download and install from https://nodejs.org/
# Choose the LTS version (Long Term Support)
# This will include npm automatically
Option B: Using Chocolatey
# First install Chocolatey if you haven't already
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
# Then install Node.js
choco install nodejs
Option C: Using Winget
winget install OpenJS.NodeJS
# Enable WSL and install Ubuntu
wsl --install
# Restart your computer when prompted
# Follow Linux setup instructions within WSL
node --version
npm --version
# Should show version numbers (Node.js v20+ and npm 10+ recommended)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Option A: Using Homebrew (Recommended)
brew install node
Option B: Using Official Installer
# Download from https://nodejs.org/
# Choose the macOS installer for your chip (Intel or Apple Silicon)
Option C: Using Node Version Manager (for multiple Node versions)
# Install nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
# Restart terminal or run:
source ~/.bashrc
# Install latest LTS Node.js
nvm install --lts
nvm use --lts
node --version
npm --version
Option A: Using Package Manager
# Update package index
sudo apt update
# Install Node.js and npm
sudo apt install nodejs npm
# For latest version, use NodeSource repository
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs
Option B: Using Snap
sudo snap install node --classic
# For CentOS/RHEL
sudo yum install nodejs npm
# For Fedora
sudo dnf install nodejs npm
# Or use NodeSource for latest version
curl -fsSL https://rpm.nodesource.com/setup_lts.x | sudo bash -
sudo yum install nodejs
sudo pacman -S nodejs npm
Before you begin, ensure your environment meets these requirements:
# Install Genkit CLI globally
npm install -g @genkit-ai/cli
# Verify installation
genkit --version
Create a new Node.js project and configure TypeScript:
# Create a new directory for your project
mkdir my-genkit-app
cd my-genkit-app
# Initialize npm project
npm init -y
# Set up source directory
mkdir src
touch src/index.ts
# Install and configure TypeScript
npm install -D typescript tsx
npx tsc --init
# Install core Genkit packages
npm install genkit @genkit-ai/google-genai
# Optional: Install additional model providers
# npm install @genkit-ai/openai
# npm install @genkit-ai/anthropic
Get your free Gemini API key:
Set as environment variable:
# For current session
export GEMINI_API_KEY=<your-api-key>
# To make permanent, add to your shell profile:
# ~/.bashrc, ~/.zshrc, or ~/.bash_profile
echo 'export GEMINI_API_KEY=<your-api-key>' >> ~/.bashrc
Test your Genkit installation:
# Verify Genkit CLI is working
genkit --version
# Create a simple test project
mkdir genkit-test && cd genkit-test
npm init -y
npm install genkit @genkit-ai/google-genai
# Start the Developer UI to confirm everything works
genkit start
You should see:
http://localhost:4000🎉 Setup Complete! Your Genkit environment is ready for the workshop.
With Genkit set up, you'll be able to build:
📚 Resources for Reference:
Skip the local setup complexity! For this workshop, we highly recommend using Firebase Studio instead of local development. It will save you time and let you focus on learning Genkit rather than troubleshooting environment issues.
🚀 Quick Start: Create New Genkit Project (one-click setup!)
👉 Or jump directly to the Firebase Studio section below for detailed instructions.
Firebase Studio is the fastest and easiest way to get started with Genkit! It's a cloud-based development environment that eliminates the need for complex local setup. We strongly encourage all workshop participants to use Firebase Studio for the best learning experience.
Option A: Create New Project from Template ⭐ Most Popular
Alternative: You can also visit Firebase Studio and manually select the Genkit template.
Option B: Import Existing Genkit Project
# Start Genkit development server
genkit start
# This will open:
# - Genkit Developer UI (usually http://localhost:4000)
# - Your application server
Create a simple AI flow to test your setup:
// src/flows/hello.ts
import { defineFlow } from '@genkit-ai/flow';
import { gemini15Flash } from '@genkit-ai/googleai';
export const helloFlow = defineFlow(
{
name: 'helloFlow',
inputSchema: z.object({
name: z.string(),
}),
outputSchema: z.string(),
},
async (input) => {
const response = await gemini15Flash.generate({
prompt: `Say hello to ${input.name} in a creative way!`,
});
return response.text();
},
);
# Start the Genkit UI with your application
genkit start -- npx tsx --watch src/index.ts
# Or automatically open in browser
genkit start -o -- npx tsx --watch src/index.ts
http://localhost:4000 (or it opens automatically with -o flag)What is ADK? Google's Agent Development Kit for Python - perfect for building sophisticated AI agents that can perform complex, multi-step tasks.
What you'll build: Intelligent agents that analyze data, conduct research, automate workflows, and make decisions based on complex reasoning.
Option A: Microsoft Store (Recommended for Windows 11)
# Search for "Python" in Microsoft Store and install Python 3.9+
Option B: Official Python Installer
# Download from https://python.org
# ⚠️ IMPORTANT: Check "Add Python to PATH" during installation
Option C: Using Chocolatey
choco install python
Option D: Using Winget
winget install Python.Python.3.12
python --version
pip --version
# If "python" doesn't work, try "python3" or "py"
# Some packages require compilation
# Install Microsoft C++ Build Tools
# Download from: https://visualstudio.microsoft.com/visual-cpp-build-tools/
Option A: Using Homebrew (Recommended)
# Install Homebrew if you haven't already
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Install Python
brew install python@3.11
Option B: Using pyenv (for multiple Python versions)
# Install pyenv
brew install pyenv
# Add to your shell configuration (~/.zshrc or ~/.bash_profile)
echo 'export PATH="$HOME/.pyenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init -)"' >> ~/.zshrc
source ~/.zshrc
# Install Python
pyenv install 3.11.5
pyenv global 3.11.5
Option C: Official Installer
# Download from https://python.org
# Choose the macOS installer
xcode-select --install
# Update package list
sudo apt update
# Install Python and pip
sudo apt install python3 python3-pip python3-venv
# Install build essentials
sudo apt install build-essential python3-dev
# Create symlink for python command (optional)
sudo ln -s /usr/bin/python3 /usr/bin/python
# For CentOS/RHEL 8+
sudo dnf install python3 python3-pip
# For older versions
sudo yum install python3 python3-pip
# For Fedora
sudo dnf install python3 python3-pip python3-devel
# Install development tools
sudo dnf groupinstall "Development Tools"
sudo pacman -S python python-pip
mkdir ai-agent-workspace
cd ai-agent-workspace
mkdir projects venvs
# Create virtual environment
python -m venv venvs/adk-env
# Activate virtual environment
# On Windows:
venvs\adk-env\Scripts\activate
# On macOS/Linux:
source venvs/adk-env/bin/activate
# Verify activation (should show virtual env path)
which python
# Install Miniconda first
# Download from: https://docs.conda.io/en/latest/miniconda.html
# Create environment
conda create -n adk-env python=3.11
conda activate adk-env
# Install virtualenv
pip install virtualenv
# Create environment
virtualenv venvs/adk-env
# Activate (same as venv method above)
# Make sure your virtual environment is activated
# Install Google's Agent Development Kit and related packages
pip install google-genai-agents google-cloud-aiplatform
pip install langchain openai anthropic
pip install jupyter streamlit # For development and demos
# Verify installation
python -c "from google.genai import agents; print('ADK installed successfully!')"
# Quick installation test
python -c "
from google.genai import agents
print('✅ ADK is ready!')
"
🎉 Setup Complete! Your Python ADK environment is ready for the workshop.
With ADK set up, you'll be able to build:
Your ADK project should look like this:
my-first-agent/
├── agents/
│ ├── __init__.py
│ └── base_agent.py
├── tools/
│ ├── __init__.py
│ └── basic_tools.py
├── config/
│ ├── settings.py
│ └── prompts.py
├── tests/
│ └── test_agents.py
├── requirements.txt
├── .env.example
└── main.py
# Copy environment template
cp .env.example .env
# Edit .env file with your API keys
# OPENAI_API_KEY=your_openai_key
# ANTHROPIC_API_KEY=your_anthropic_key
# GOOGLE_CLOUD_PROJECT=your_project_id
# agents/hello_agent.py
from google.genai import agents
from typing import Dict, Any
from datetime import datetime
class HelloAgent:
def __init__(self):
self.name = "hello_agent"
self.description = "A friendly agent that greets users"
def greet_user(self, name: str) -> str:
"""Greet a user by name."""
return f"Hello, {name}! How can I help you today?"
def get_time(self) -> str:
"""Get the current time."""
return datetime.now().strftime("%Y-%m-%d %H:%M:%S")
async def process(self, message: str) -> str:
# Simple processing logic
if "time" in message.lower():
return self.get_time()
elif "hello" in message.lower():
return self.greet_user("there")
else:
return "I can greet you or tell you the time. What would you like?"
# main.py
import asyncio
from agents.hello_agent import HelloAgent
async def main():
agent = HelloAgent()
print("Hello Agent is ready! Type 'quit' to exit.")
while True:
user_input = input("\nYou: ")
if user_input.lower() == 'quit':
break
response = await agent.process(user_input)
print(f"Agent: {response}")
if __name__ == "__main__":
asyncio.run(main())
# Run your agent
python main.py
# Try these inputs:
# "Hello"
# "What time is it?"
# "quit"
# Install Jupyter kernel for your virtual environment
pip install ipykernel
python -m ipykernel install --user --name=adk-env --display-name "ADK Environment"
# Start Jupyter
jupyter notebook
For VS Code:
# Install Python extension
# Select interpreter: Ctrl+Shift+P -> "Python: Select Interpreter"
# Choose your virtual environment interpreter
For PyCharm:
# Create setup.cfg for code quality tools
cat > setup.cfg << EOF
[flake8]
max-line-length = 88
extend-ignore = E203, W503
[isort]
profile = black
multi_line_output = 3
[tool:pytest]
testpaths = tests
python_files = test_*.py
python_classes = Test*
python_functions = test_*
EOF
What is Vertex AI? Google's enterprise-grade ML platform for deploying, managing, and scaling AI models in production.
What you'll build: Production-ready AI systems with model deployment, monitoring, and scaling capabilities.
gcloud init and gcloud auth application-default loginpip install google-cloud-aiplatformTest your setup:
gcloud config list
gcloud services list --enabled
python -c "from google.cloud import aiplatform; print('✅ Vertex AI SDK installed')"
With Vertex AI set up, you'll be able to create production ML systems:
Once all three platforms are set up, you can combine them to build complete AI applications. This is where everything comes together to create production-ready systems.
Multi-Platform Architecture:
Production Deployment:
Before you can build integrated applications, ensure you have:
Congratulations! You're now ready to start building production AI applications.
With your environment configured, you can:
With your development environment fully configured, you're prepared to:
Genkit Issues:
npm install -g @genkit-ai/clifirebase login and firebase use --addnpm installADK Issues:
source venv/bin/activatepip install google-genai-agentsVertex AI Issues:
gcloud auth application-default logingcloud services enable aiplatform.googleapis.comCongratulations! You're ready to start building the future of AI applications!
With all three platforms properly configured, you now have the foundation to build sophisticated AI applications that leverage the best of Google's AI technologies.
Happy coding! 🚀