Math AI Agent

Learn how to create AI agents that can perform complex mathematical calculations, unit conversions, and financial computations.

Math agents evaluate expressions, solve equations, convert units, and run statistical or financial calculations through specialised tools on a single Agent.

python
from praisonaiagents import Agent

agent = Agent(name="Math Tutor", instructions="Solve math problems step by step.")
agent.start("What is 15 percent of 240?")

The user asks a quantitative question; the math agent selects the right calculation tools and returns a clear answer.

Diagram

👤 User

🧮 Math Agent

evaluate

solve_equation

convert_units

calculate_financial

How It Works

Diagram
Math AI AgentAgentUserMath AI AgentAgentUserRequestProcess requestResult Agent–>>User: Response

Quick Start

Code

  1. Install Package

    First, install the PraisonAI Agents package:

    bash
    pip install praisonaiagents sympy pint
  2. Set API Key

    Set your OpenAI API key as an environment variable in your terminal:

    bash
    export OPENAI_API_KEY="${OPENAI_API_KEY:?Set OPENAI_API_KEY in your shell}"
  3. Create a file

    Create a new file app.py with the basic setup:

    python
    from praisonaiagents import Agent, Task, AgentTeam
    from praisonaiagents import (
        evaluate, solve_equation, convert_units,
        calculate_statistics, calculate_financial
    )
    
    # Create math agent
    math_agent = Agent(
        role="Math Expert",
        goal="Perform complex mathematical calculations",
        backstory="Expert in mathematical computations and analysis",
        tools=[
            evaluate, solve_equation, convert_units,
            calculate_statistics, calculate_financial
        ],
    
    )
    
    # Create a task
    task = Task(
        description="Calculate compound interest and statistical analysis",
        expected_output="Detailed mathematical analysis",
        agent=math_agent
    )
    
    # Create and start the agents
    agents = AgentTeam(
        agents=[math_agent],
        tasks=[task],
        process="sequential",
        output="verbose"
    )
    
    # Start execution
    agents.start()
  4. Start Agents

    Type this in your terminal to run your agents:

    bash
    python app.py

No Code

  1. Install Package

    Install the PraisonAI package:

    bash
    pip install praisonai sympy pint
  2. Set API Key

    Set your OpenAI API key as an environment variable in your terminal:

    bash
    export OPENAI_API_KEY="${OPENAI_API_KEY:?Set OPENAI_API_KEY in your shell}"
  3. Create a file

    Create a new file agents.yaml with the basic setup:

    yaml
    framework: praisonai
    process: sequential
    topic: perform mathematical analysis
    agents:  # Canonical: use 'agents' instead of 'roles'
      mathematician:
        instructions:  # Canonical: use 'instructions' instead of 'backstory' Expert in mathematical computations and analysis.
        goal: Perform complex mathematical calculations
        role: Math Expert
        tools:
          - evaluate
          - solve_equation
          - convert_units
          - calculate_statistics
          - calculate_financial
        tasks:
          math_task:
            description: Calculate compound interest and perform statistical analysis.
            expected_output: Detailed mathematical analysis with results.
  4. Start Agents

    Type this in your terminal to run your agents:

    bash
    praisonai agents.yaml

Understanding Math Agents

What are Math Agents?

Math agents are specialized AI agents that can: – Evaluate mathematical expressions – Solve equations and systems of equations – Perform unit conversions – Calculate statistical metrics – Handle financial calculations

Features

Multi-Agent AI Math Analysis

Code

  1. Install Package

    First, install the PraisonAI Agents package:

    bash
    pip install praisonaiagents
  2. Set API Key

    Set your OpenAI API key as an environment variable in your terminal:

    bash
    export OPENAI_API_KEY="${OPENAI_API_KEY:?Set OPENAI_API_KEY in your shell}"
  3. Create a file

    Create a new file app.py with the basic setup:

    python
    from praisonaiagents import Agent, Task, AgentTeam
    from praisonaiagents import (
        evaluate, solve_equation, convert_units,
        calculate_statistics, calculate_financial
    )
    
    # Create first agent for calculations
    calculator = Agent(
        role="Mathematical Calculator",
        goal="Perform complex calculations and analysis",
        backstory="Expert in mathematical computations",
        tools=[evaluate, solve_equation, convert_units],
    
    )
    
    # Create second agent for statistics
    statistician = Agent(
        role="Statistical Analyst",
        goal="Perform statistical analysis and interpretation",
        backstory="Expert in statistical analysis",
        tools=[calculate_statistics, calculate_financial],
    
    )
    
    # Create first task
    calc_task = Task(
        description="Calculate compound interest for $10000 at 5% for 3 years",
        expected_output="Detailed interest calculation",
        agent=calculator
    )
    
    # Create second task
    stats_task = Task(
        description="Analyze the monthly interest distribution",
        expected_output="Statistical analysis of interest data",
        agent=statistician
    )
    
    # Create and start the agents
    agents = AgentTeam(
        agents=[calculator, statistician],
        tasks=[calc_task, stats_task],
        process="sequential"
    )
    
    # Start execution
    agents.start()
  4. Start Agents

    Type this in your terminal to run your agents:

    bash
    python app.py

No Code

  1. Install Package

    Install the PraisonAI package:

    bash
    pip install praisonai
  2. Set API Key

    Set your OpenAI API key as an environment variable in your terminal:

    bash
    export OPENAI_API_KEY="${OPENAI_API_KEY:?Set OPENAI_API_KEY in your shell}"
  3. Create a file

    Create a new file agents.yaml with the basic setup:

    yaml
    framework: praisonai
    process: sequential
    topic: perform financial and statistical analysis
    agents:  # Canonical: use 'agents' instead of 'roles'
      calculator:
        instructions:  # Canonical: use 'instructions' instead of 'backstory' Expert in mathematical computations and analysis.
        goal: Perform complex calculations
        role: Mathematical Calculator
        tools:
          - evaluate
          - solve_equation
          - convert_units
        tasks:
          calc_task:
            description: Calculate compound interest for investment scenario.
            expected_output: Detailed interest calculations.
    
      statistician:
        instructions:  # Canonical: use 'instructions' instead of 'backstory' Expert in statistical analysis and interpretation.
        goal: Analyze numerical data and patterns
        role: Statistical Analyst
        tools:
          - calculate_statistics
          - calculate_financial
        tasks:
          stats_task:
            description: Analyze the monthly interest distribution.
            expected_output: Statistical analysis report.
  4. Start Agents

    Type this in your terminal to run your agents:

    bash
    praisonai agents.yaml

Configuration Options

python
# Create an agent with advanced math configuration
agent = Agent(
    role="Math Expert",
    goal="Perform complex mathematical analysis",
    backstory="Expert in mathematical computations",
    tools=[
        evaluate,
        solve_equation,
        convert_units,
        calculate_statistics,
        calculate_financial
    ],
      # Enable detailed logging
    llm="gpt-4o"  # Language model to use
)

Best Practices

Attach only the tools you need

Give calculation agents evaluate and solve_equation; reserve calculate_statistics and calculate_financial for analysis agents.

Use clear task descriptions

State the formula, units, and expected output format in each Task so the agent picks the right tool.

Validate units before conversion

Ensure input values include compatible units — convert_units fails on mismatched dimensions.

Troubleshooting

Next Steps

Related