Overview
This guide demonstrates how to integrate Galileo with CrewAI for comprehensive tracing and Evaluation Engineering. By the end of this guide, you will be able to trace your CrewAI agents, monitor their performance, and evaluate their behaviour with Galileoโs powerful observability platform.What is Galileo? Galileo is AI evaluation and observability platform that delivers end-to-end tracing, evaluation, and monitoring for AI applications. It enables teams to capture ground truth, create robust guardrails, and run systematic experiments with built-in experiment tracking and performance analyticsโensuring reliability, transparency, and continuous improvement across the AI lifecycle.
Getting started
This tutorial follows the CrewAI quickstart and shows how to add Galileoโs CrewAIEventListener, an event handler. For more information, see Galileoโs Add Galileo to a CrewAI Application how-to guide.Note This tutorial assumes you have completed the CrewAI quickstart. If you want a completed comprehensive example, see the Galileo CrewAI sdk-example repo.
Step 1: Install dependencies
Install the required dependencies for your app. Create a virtual environment using your preferred method, then install dependencies inside that environment using your preferred tool:Step 2: Add to the .env file from the CrewAI quickstart
Step 3: Add the Galileo event listener
To enable logging with Galileo, you need to create an instance of theCrewAIEventListener.
Import the Galileo CrewAI handler package by
adding the following code at the top of your main.py file:
Step 4: Run your crew
Run your crew with the CrewAI CLI:Step 5: View the traces in Galileo
Once your crew has finished, the traces will be flushed and appear in Galileo.
Understanding the Galileo Integration
Galileo integrates with CrewAI by registering an event listener that captures Crew execution events (e.g., agent actions, tool calls, model responses) and forwards them to Galileo for observability and evaluation.Understanding the event listener
Creating aCrewAIEventListener() instance is all thatโs
required to enable Galileo for a CrewAI run. When instantiated, the listener:
- Automatically registers itself with CrewAI
- Reads Galileo configuration from environment variables
- Logs all run data to the Galileo project and log stream specified by
GALILEO_PROJECTandGALILEO_LOG_STREAM
