diff --git a/aixplain/factories/agent_factory/__init__.py b/aixplain/factories/agent_factory/__init__.py index ae0158e1..5e2cce50 100644 --- a/aixplain/factories/agent_factory/__init__.py +++ b/aixplain/factories/agent_factory/__init__.py @@ -112,7 +112,16 @@ def create( tools = [] if tools is None else list(tools) workflow_tasks = [] if workflow_tasks is None else list(workflow_tasks) from aixplain.utils.llm_utils import get_llm_instance - + # Define supported kwargs + supported_kwargs = {"llm_id"} + + # Validate kwargs - raise error if unsupported kwargs are provided + unsupported_kwargs = set(kwargs.keys()) - supported_kwargs + if unsupported_kwargs: + raise ValueError( + f"Unsupported keyword argument(s): {', '.join(sorted(unsupported_kwargs))}. " + f"Supported kwargs are: {', '.join(sorted(supported_kwargs))}." + ) # Extract llm_id from kwargs if present (deprecated parameter) llm_id = kwargs.get("llm_id", None) if llm_id is not None: diff --git a/aixplain/factories/team_agent_factory/__init__.py b/aixplain/factories/team_agent_factory/__init__.py index e9d2ba7a..b1244962 100644 --- a/aixplain/factories/team_agent_factory/__init__.py +++ b/aixplain/factories/team_agent_factory/__init__.py @@ -92,6 +92,16 @@ def create( mentalist_llm: DEPRECATED. LLM for planning. use_mentalist: DEPRECATED. Whether to use the mentalist agent. """ + # Define supported kwargs + supported_kwargs = {"llm_id", "mentalist_llm", "use_mentalist"} + + # Validate kwargs - raise error if unsupported kwargs are provided + unsupported_kwargs = set(kwargs.keys()) - supported_kwargs + if unsupported_kwargs: + raise ValueError( + f"Unsupported keyword argument(s): {', '.join(sorted(unsupported_kwargs))}. " + f"Supported kwargs are: {', '.join(sorted(supported_kwargs))}." + ) # Handle deprecated parameters from kwargs if "llm_id" in kwargs: llm_id = kwargs.pop("llm_id") diff --git a/aixplain/modules/agent/__init__.py b/aixplain/modules/agent/__init__.py index d76cf381..cfc97424 100644 --- a/aixplain/modules/agent/__init__.py +++ b/aixplain/modules/agent/__init__.py @@ -601,7 +601,18 @@ def run( Dict: parsed output from model """ start = time.time() - + + # Define supported kwargs + supported_kwargs = {"output_format", "expected_output"} + + # Validate kwargs - raise error if unsupported kwargs are provided + unsupported_kwargs = set(kwargs.keys()) - supported_kwargs + if unsupported_kwargs: + raise ValueError( + f"Unsupported keyword argument(s): {', '.join(sorted(unsupported_kwargs))}. " + f"Supported kwargs are: {', '.join(sorted(supported_kwargs))}." + ) + # Extract deprecated parameters from kwargs output_format = kwargs.get("output_format", None) expected_output = kwargs.get("expected_output", None) diff --git a/aixplain/modules/team_agent/__init__.py b/aixplain/modules/team_agent/__init__.py index 4b512ce2..82099092 100644 --- a/aixplain/modules/team_agent/__init__.py +++ b/aixplain/modules/team_agent/__init__.py @@ -158,6 +158,16 @@ def __init__( mentalist_llm (Optional[LLM], optional): DEPRECATED. Mentalist/Planner LLM instance. Defaults to None. use_mentalist (bool, optional): DEPRECATED. Whether to use mentalist/planner. Defaults to True. """ + # Define supported kwargs + supported_kwargs = {"llm_id", "mentalist_llm", "use_mentalist"} + + # Validate kwargs - raise error if unsupported kwargs are provided + unsupported_kwargs = set(additional_info.keys()) - supported_kwargs + if unsupported_kwargs: + raise ValueError( + f"Unsupported keyword argument(s): {', '.join(sorted(unsupported_kwargs))}. " + f"Supported kwargs are: {', '.join(sorted(supported_kwargs))}." + ) # Handle deprecated parameters from kwargs if "llm_id" in additional_info: llm_id = additional_info.pop("llm_id")