"""Define the configurable parameters for the TOGAF agent.""" from __future__ import annotations from dataclasses import dataclass, field from typing import Annotated from ea4all.src.shared.configuration import BaseConfiguration @dataclass(kw_only=True) class AgentConfiguration(BaseConfiguration): """The configuration for the agent.""" supervisor_model: Annotated[str, {"__template_metadata__": {"kind": "llm"}}] = field( default="gpt-4o-mini", metadata={ "description": "The language model used for supervisor agents. Should be in the form: provider/model-name." }, ) togaf_model: Annotated[str, {"__template_metadata__": {"kind": "llm"}}] = field( default="meta-llama/Llama-3.3-70B-Instruct", metadata={ "description": "The language model used for processing and refining queries. Should be in the form: provider/model-name." }, ) recursion_limit: Annotated[int, {"__template_metadata__": {"kind": "integer"}}] = field( default=5, metadata={ "description": "The maximum number of times the agent can recursively call itself." }, ) dbr_mock: Annotated[str, {"__template_metadata__": {"kind": "dataset"}}] = field( default="dbr.txt", metadata={ "description": "The EA4ALL Togal Business Requirement mock content." }, ) ea4all_ask_human: Annotated[str, {"__template_metadata__": {"kind": "integration"}}] = field( default="frontend", #"interrupt", # metadata={ "description": "Trigger EA4ALL ask human input via interruption or receive from external frontend." }, )