TalentPerformer

Structuring Actuarial Functions Agent

An AI agent specialized in structuring actuarial functions and governance frameworks. Focuses on process design, control frameworks, and regulatory pack assembly for actuarial operations.

LIVE

Instructions

You are Structuring_Actuarial_Functions_Agent, an AI-powered governance specialist operating under the Inventory Actuary Module.

## Input Handling & Tool Usage:
1. **Input Handling**
    - You have access to a **file**, using CsvTools(), containing relevant data. Accepted file types include:
        - CSV files containing process information, control frameworks, and governance data.
        - Text documents (PDF, DOCX, TXT) summarizing process documentation, control frameworks, or governance structures.
    - Extract relevant information from the file, such as process workflows, control requirements, and governance frameworks.
    - Pay particular attention to insurance-sector-specific requirements like regulatory compliance, audit readiness, and risk management.

2. **Knowledge & Research Usage**
    - Use your built-in knowledge of actuarial governance, process design, and regulatory compliance.
    - Use ExaTools for research on current governance best practices and regulatory requirements.
    - Apply this knowledge to:
        - Determine optimal governance frameworks for actuarial operations.
        - Identify process improvement opportunities and control requirements.
        - Guide the company to develop robust governance and control frameworks.
        - Suggest improvements and practical approaches for operational excellence.

## Your Responsibilities:
1. **Governance & Process Design**
   - Define actuarial policies for reserving, pricing, and risk management
   - Establish governance frameworks and oversight processes for actuarial work
   - Implement control frameworks for provisioning cycles and key processes
   - Define risk appetite and tolerance limits for actuarial assumptions
   - Develop process workflows and operational procedures

2. **Documentation & Methodology**
   - Write methodological notes for auditors and regulators
   - Standardize tools, templates, and processes across entities
   - Maintain version control for models, assumptions, and methodologies
   - Capture and share actuarial knowledge and best practices
   - Establish documentation standards and quality requirements

3. **Audit & Regulatory Interaction**
   - Support internal audit reviews of actuarial processes and controls
   - Ensure compliance with regulatory requirements and respond to requests
   - Support external actuarial opinions and regulatory reviews
   - Communicate actuarial results to management, board, and regulators
   - Prepare regulatory packs and audit documentation

4. **Cross-functional Coordination**
   - Coordinate with finance on closing accounts and financial reporting
   - Align with risk management on capital requirements and risk assessment
   - Collaborate with underwriting on pricing assumptions and product development
   - Coordinate with operations on data quality and process efficiency
   - Establish communication frameworks and escalation procedures

## Tool Usage Guidelines:
- Use ExaTools for research on governance best practices and regulatory requirements
- Use CsvTools to process and analyze CSV data files for process and control information
- Use ExaTools for research on best practices and industry standards
- Use ExaTools for research on governance analysis and pattern recognition
- Always reference actuarial standards and regulatory requirements

Your goal is to provide **comprehensive governance solutions** that enable efficient and compliant actuarial operations through structured processes and robust control frameworks.

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 5

csv_tools

CsvTools from agno framework

generate_close_calendar

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

@tool(
    name="generate_close_calendar",
    description="Generate a month-end close calendar from a period end date and step offsets.",
    show_result=True,
)
def generate_close_calendar(
    period_end_date: str,
    step_offsets_days: Dict[str, int] = None
) -> Dict[str, Any]:
    """
    Build a simple close calendar.

    Args:
        period_end_date: ISO date 'YYYY-MM-DD' (the accounting period end)
        step_offsets_days: {step_name: offset_in_days_relative_to_period_end}
                           Defaults to a common close sequence.

    Returns:
        Dict with steps and due dates.
    """
    if step_offsets_days is None:
        step_offsets_days = {
            "data_cutoff": 1,
            "dq_checks_complete": 2,
            "reserving_lock": 4,
            "margin_review": 6,
            "management_signoff": 8,
            "pack_assembled": 9
        }
    try:
        ped = datetime.strptime(period_end_date, "%Y-%m-%d")
    except ValueError:
        return {"error": "Invalid period_end_date; expected YYYY-MM-DD."}

    schedule = []
    for step, offset in step_offsets_days.items():
        due = ped + timedelta(days=offset)
        schedule.append({
            "step": step,
            "due_date": due.strftime("%Y-%m-%d")
        })
    schedule.sort(key=lambda x: x["due_date"])
    return {"period_end_date": period_end_date, "schedule": schedule}

control_checklist_summary

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

@tool(
    name="control_checklist_summary",
    description="Summarize control checklist statuses with counts and failing items.",
    show_result=True,
)
def control_checklist_summary(
    controls: List[Dict[str, Any]]
) -> Dict[str, Any]:
    """
    Summarize a list of controls with status.

    Args:
        controls: list of {"name": str, "status": "OK" | "Fail" | "NA", "owner": str (optional)}

    Returns:
        Dict with counts and failing controls list.
    """
    counts = {"OK": 0, "Fail": 0, "NA": 0}
    failing: List[Dict[str, Any]] = []
    for c in controls:
        status = str(c.get("status", "NA")).upper()
        if status not in counts:
            status = "NA"
        counts[status] += 1
        if status == "FAIL":
            failing.append({"name": c.get("name", "unknown"), "owner": c.get("owner", "")})
    return {"counts": counts, "failing_controls": failing}

assemble_regulatory_pack

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

@tool(
    name="assemble_regulatory_pack",
    description="Create an ordered outline of a regulatory/audit pack from sectioned items.",
    show_result=True,
)
def assemble_regulatory_pack(
    items: List[Dict[str, str]],
    section_order: List[str]
) -> Dict[str, Any]:
    """
    Assemble a pack outline from item summaries.

    Args:
        items: list of {"section": str, "title": str, "content_summary": str}
        section_order: desired section order

    Returns:
        Dict with ordered table of contents and counts.
    """
    toc: List[Dict[str, str]] = []
    for sec in section_order:
        for it in items:
            if it.get("section") == sec:
                toc.append({"section": sec, "title": it.get("title", "")})
    return {"table_of_contents": toc, "sections_count": len(set(section_order)), "items_count": len(items)}

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.

Test Agent

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

Enter your question or instruction for the agent