TalentPerformer

Market & Demographic Analysis

An expert agent specialized in understanding global aging population dynamics, retirement readiness, and customer behavior. It focuses on demographic projections, pension gaps, and behavioral economics insights relevant to aging societies.

LIVE

Instructions

You are responsible for analyzing and interpreting demographic and market trends 
    related to aging populations. Your outputs should provide insights useful for 
    designing financial and insurance products for retirees, pre-retirees, and 
    dependent elderly groups.

    Guidelines:
    - Use the knowledge base (OECD, UN, World Bank, insurance reports) for context.
    - Apply tools when relevant:
        * ExaTools → retrieve fresh market/demographic research.
        * ScrapeGraphTools → extract structured insights from reports.
        * demographic_projection_tool → query structured CSV projections.
    - Always provide both a *data-driven explanation* and a *strategic implication* 
      for product design or financial planning.
    - Highlight key risks (longevity risk, pension adequacy, healthcare costs).
    - Highlight opportunities (new insurance needs, investment-linked retirement solutions).
    - When unsure, reason step by step and explain assumptions clearly.

Knowledge Base (.md)

Business reference guide

Drag & Drop or Click

.md, .txt, .pdf

Data Files

Upload data for analysis (CSV, JSON, Excel, PDF)

Drag & Drop or Click

Multiple files: .json, .csv, .xlsx, .xls, .pdf, .docx, .pptx, .txt

Tools 3

demographic_projection_tool

Model for storing functions that can be called by an agent.

@tool(name="demographic_projection_tool", description="Analyze demographic projections from CSV(country, metric, year range).", show_result=True)
def demographic_projection_tool(
    country: str = None,
    metric: str = "OldAgeDependencyRatio",
    start_year: int = 2020,
    end_year: int = 2050,
    csv_path: str = None,
) -> str:
    """
    Analyze demographic projections from a CSV dataset.

    Args:
        country(str, optional): Filter results for a specific country. Defaults to None (all countries).
        metric(str): The demographic metric to analyze.
                      Options: Population_65plus, LifeExpectancy, OldAgeDependencyRatio, PensionCoverageRate
        start_year(int): Starting year of analysis. Defaults to 2020.
        end_year(int): Ending year of analysis. Defaults to 2050.
        csv_path(str): Path to CSV file containing demographic data.

    Returns:
        str: JSON string with filtered and projected demographic data.
    """    
    csv_path = csv_path or _path("agent1.csv")
    try:
        df = pd.read_csv(csv_path)
        df = df[(df["Year"] >= start_year) & (df["Year"] <= end_year)]
        if country:
            df = df[df["Country"].str.lower() == country.lower()]
        if metric not in df.columns:
            return json.dumps({"error": f"Invalid metric '{metric}'"})
        result = df[["Country", "Year", metric]].to_dict(orient="records")
        return json.dumps(result, indent=2)
    except Exception as e:
        return json.dumps({"error": str(e)})

exa

ExaTools is a toolkit for interfacing with the Exa web search engine, providing functionalities to perform categorized searches and retrieve structured results. Args: enable_search (bool): Enable search functionality. Default is True. enable_get_contents (bool): Enable get contents functionality. Default is True. enable_find_similar (bool): Enable find similar functionality. Default is True. enable_answer (bool): Enable answer generation. Default is True. enable_research (bool): Enable research tool functionality. Default is False. all (bool): Enable all tools. Overrides individual flags when True. Default is False. text (bool): Retrieve text content from results. Default is True. text_length_limit (int): Max length of text content per result. Default is 1000. api_key (Optional[str]): Exa API key. Retrieved from `EXA_API_KEY` env variable if not provided. num_results (Optional[int]): Default number of search results. Overrides individual searches if set. start_crawl_date (Optional[str]): Include results crawled on/after this date (`YYYY-MM-DD`). end_crawl_date (Optional[str]): Include results crawled on/before this date (`YYYY-MM-DD`). start_published_date (Optional[str]): Include results published on/after this date (`YYYY-MM-DD`). end_published_date (Optional[str]): Include results published on/before this date (`YYYY-MM-DD`). type (Optional[str]): Specify content type (e.g., article, blog, video). category (Optional[str]): Filter results by category. Options are "company", "research paper", "news", "pdf", "github", "tweet", "personal site", "linkedin profile", "financial report". include_domains (Optional[List[str]]): Restrict results to these domains. exclude_domains (Optional[List[str]]): Exclude results from these domains. show_results (bool): Log search results for debugging. Default is False. model (Optional[str]): The search model to use. Options are 'exa' or 'exa-pro'. timeout (int): Maximum time in seconds to wait for API responses. Default is 30 seconds.

scrapegraph_tools

ScrapeGraphTools from agno framework

Test Agent

Configure model settings at the top, then test the agent below

Enter your question or instruction for the agent