guides/python/ai-data-analyst/litellm/README.md
This example demonstrates how to build a data analysis tool using LiteLLM and Daytona sandboxes. The script executes Python code in an isolated environment to analyze cafe sales data, enabling automated data analysis workflows with natural language prompts.
In this example, the agent analyzes a cafe sales dataset to find the three highest revenue products for January and visualizes the results in a bar chart.
[!TIP] It's recommended to use a virtual environment (
venvorpoetry) to isolate project dependencies.
To run this example, you need to set the following environment variables:
DAYTONA_API_KEY: Required for access to Daytona sandboxes. Get it from Daytona DashboardANTHROPIC_API_KEY: Required if using Anthropic models (default)OPENAI_API_KEY: Required if using OpenAI modelsMISTRAL_API_KEY: Required if using Mistral AI modelsDEEPSEEK_API_KEY: Required if using DeepSeek modelsOPENROUTER_API_KEY: Required if using OpenRouter modelsCreate a .env file in the project directory with the appropriate variables for your chosen provider.
Create and activate a virtual environment:
python3.10 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
Install dependencies:
pip install -e .
Run the example:
python ai_data_analyst.py
The main prompt is configured in the user_prompt variable in ai_data_analyst.py:
const userPrompt = `Give the three highest revenue products for the month of January and show them as a bar chart.`;
You can modify this to analyze different aspects of the data or try different visualization types.
The example uses cafe_sales_data.csv. To use your own dataset, replace this file and update the filename in the script if needed.
By default, the example uses the following models, as specified in ai_data_analyst.py:
CODING_MODEL = "anthropic/claude-sonnet-4-0"
SUMMARY_MODEL = "anthropic/claude-haiku-4-5"
The coding model is used for high accuracy code generation, and the summary model is used for fast summarization.
Other suggested models include:
openai/gpt-5.1mistral/mistral-large-latestdeepseek/deepseek-chatopenrouter/moonshotai/kimi-k2See Providers for all supported models
When the script completes, you'll see output similar to:
Prompt: Give the three highest revenue products for the month of January and show them as a bar chart.
Generating code...
Running code...
✓ Chart saved to chart-0.png
Response: Great! It looks like you successfully executed the code and identified the top three revenue-generating products for January:
1. **Matcha Espresso Fusion** with a total revenue of \$2,603.81.
2. **Oat Milk Latte** with a total revenue of \$2,548.65.
3. **Nitro Cold Brew** with a total revenue of \$2,242.41.
The chart will be saved as chart-0.png in your project directory, showing a bar chart of the top three revenue-generating products for January.
See the main project LICENSE file for details.