HEX
Server: LiteSpeed
System: Linux houston.panomity.com 6.8.0-100-generic #100-Ubuntu SMP PREEMPT_DYNAMIC Tue Jan 13 16:40:06 UTC 2026 x86_64
User: nudepix (1011)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //opt/PraisonAI/docs/features/mathagent.mdx
---
title: "Math AI Agent"
sidebarTitle: "Math Agent"
description: "Learn how to create AI agents that can perform complex mathematical calculations, unit conversions, and financial computations."
icon: "calculator"
---

## Quick Start

<Tabs>
  <Tab title="Code">
    <Steps>
        <Step title="Install Package">
            First, install the PraisonAI Agents package:
            ```bash
            pip install praisonaiagents sympy pint
            ```
        </Step>

        <Step title="Set API Key">
            Set your OpenAI API key as an environment variable in your terminal:
            ```bash
            export OPENAI_API_KEY=your_api_key_here
            ```
        </Step>

        <Step title="Create a file">
            Create a new file `app.py` with the basic setup:
            ```python
            from praisonaiagents import Agent, Task, PraisonAIAgents
            from praisonaiagents.tools 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
                ],
                verbose=True
            )

            # 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 = PraisonAIAgents(
                agents=[math_agent],
                tasks=[task],
                process="sequential",
                verbose=2
            )

            # Start execution
            agents.start()
            ```
        </Step>

        <Step title="Start Agents">
            Type this in your terminal to run your agents:
            ```bash
            python app.py
            ```
        </Step>
    </Steps>
  </Tab>
  <Tab title="No Code">
    <Steps>
        <Step title="Install Package">
            Install the PraisonAI package:
            ```bash
            pip install praisonai sympy pint
            ```
        </Step>
        <Step title="Set API Key">
            Set your OpenAI API key as an environment variable in your terminal:
            ```bash
            export OPENAI_API_KEY=your_api_key_here
            ```
        </Step>
        <Step title="Create a file">
            Create a new file `agents.yaml` with the basic setup:
```yaml
framework: praisonai
process: sequential
topic: perform mathematical analysis
roles:
  mathematician:
    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.
```
        </Step>
        <Step title="Start Agents">
            Type this in your terminal to run your agents:
```bash
praisonai agents.yaml
```
        </Step>
    </Steps>
  </Tab>
</Tabs>

<Note>
  **Requirements**

  - Python 3.10 or higher
  - OpenAI API key. Generate OpenAI API key [here](https://platform.openai.com/api-keys). Use Other models using [this guide](/models).   
  - sympy and pint packages (automatically installed when needed)
</Note>

## Understanding Math Agents

<Card title="What are Math Agents?" icon="question">
  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
</Card>

## Features

<CardGroup cols={2}>
  <Card title="Expression Evaluator" icon="function">
    Evaluates mathematical expressions and formulas.
  </Card>
  <Card title="Equation Solver" icon="equals">
    Solves mathematical equations and systems.
  </Card>
  <Card title="Unit Converter" icon="arrows-rotate">
    Converts between different units of measurement.
  </Card>
  <Card title="Statistical Calculator" icon="chart-simple">
    Calculates statistical metrics and analysis.
  </Card>
</CardGroup>

## Multi-Agent AI Math Analysis

<Tabs>
  <Tab title="Code">
    <Steps>
        <Step title="Install Package">
            First, install the PraisonAI Agents package:
            ```bash
            pip install praisonaiagents
            ```
        </Step>

        <Step title="Set API Key">
            Set your OpenAI API key as an environment variable in your terminal:
            ```bash
            export OPENAI_API_KEY=your_api_key_here
            ```
        </Step>

        <Step title="Create a file">
            Create a new file `app.py` with the basic setup:
            ```python
            from praisonaiagents import Agent, Task, PraisonAIAgents
            from praisonaiagents.tools 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],
                verbose=True
            )

            # 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],
                verbose=True
            )

            # 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 = PraisonAIAgents(
                agents=[calculator, statistician],
                tasks=[calc_task, stats_task],
                process="sequential"
            )

            # Start execution
            agents.start()
            ```
        </Step>

        <Step title="Start Agents">
            Type this in your terminal to run your agents:
            ```bash
            python app.py
            ```
        </Step>
    </Steps>
  </Tab>
  <Tab title="No Code">
    <Steps>
        <Step title="Install Package">
            Install the PraisonAI package:
            ```bash
            pip install praisonai
            ```
        </Step>
        <Step title="Set API Key">
            Set your OpenAI API key as an environment variable in your terminal:
            ```bash
            export OPENAI_API_KEY=your_api_key_here
            ```
        </Step>
        <Step title="Create a file">
            Create a new file `agents.yaml` with the basic setup:
```yaml
framework: praisonai
process: sequential
topic: perform financial and statistical analysis
roles:
  calculator:
    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:
    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.
```
        </Step>
        <Step title="Start Agents">
            Type this in your terminal to run your agents:
```bash
praisonai agents.yaml
```
        </Step>
    </Steps>
  </Tab>
</Tabs>

### 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
    ],
    verbose=True,  # Enable detailed logging
    llm="gpt-4o"  # Language model to use
)
```

## Troubleshooting

<CardGroup cols={2}>
  <Card title="Expression Errors" icon="triangle-exclamation">
    If expressions are not evaluating:
    - Check syntax and formatting
    - Verify variable definitions
    - Enable verbose mode for debugging
  </Card>

  <Card title="Calculation Issues" icon="calculator">
    If calculations are incorrect:
    - Review input formats
    - Check unit compatibility
    - Verify formula structure
  </Card>
</CardGroup>

## Next Steps

<CardGroup cols={2}>
  <Card title="AutoAgents" icon="robot" href="./autoagents">
    Learn about automatically created and managed AI agents
  </Card>
  <Card title="Mini Agents" icon="microchip" href="./mini">
    Explore lightweight, focused AI agents
  </Card>
</CardGroup>

<Note>
  For optimal results, ensure mathematical expressions and units are properly formatted for your specific use case.
</Note>