ARES Configuration ================== This section describes how to configure ARES for different red-teaming scenarios. ARES uses modular YAML-based configuration files to define targets, goals, strategies, and evaluation logic. This section describes the YAML configuration expected by the ARES CLI when running evaluations. ARES expects a configuration file with two main nodes: - ``target``: Defines the endpoint or model to be attacked. - ``red-teaming``: Specifies the red-teaming intent and attack prompts. Basic Configuration ------------------- The following example uses the default ARES intent, which probes the target with direct request attack and evaluates responses using keyword matching: .. code-block:: yaml target: huggingface: red-teaming: prompts: assets/pii-seeds.csv To use a predefined OWASP intent (e.g., ``owasp-llm-02``), which aggregates related attack probes: .. code-block:: yaml target: huggingface: red-teaming: intent: owasp-llm-02 prompts: assets/pii-seeds.csv Custom Intents -------------- To define a custom intent, you must specify configurations for at least one of the three core ARES components: - ``goal`` - ``strategy`` - ``evaluation`` Use the ``ares show modules`` command to list all available modules: .. code-block:: bash ares show modules Example structure for a custom intent: .. code-block:: yaml target: huggingface: red-teaming: intent: my-intent prompts: assets/safety_behaviors_text_subset.csv my-intent: goal: strategy: evaluation: You don’t need to define all three nodes. If a node is omitted, ARES will automatically use defaults based on the selected intent. Define only the nodes relevant to your use case. To list available implementations for each module: .. code-block:: bash ares show connectors ares show goals ares show strategies ares show evals To view template configurations for a specific module: .. code-block:: bash ares show strategies -n ares show evals -n keyword Verbose Mode ------------ To inspect the full configuration used during evaluation, use the ``-v`` or ``--verbose`` flag: .. code-block:: bash ares evaluate minimal.yaml -v ares evaluate minimal.yaml --verbose Example: Custom Strategy ------------------------ This example defines a custom intent ``my-intent`` with a user-defined strategy ``my_direct_request``: .. code-block:: yaml target: huggingface: red-teaming: intent: my-intent prompts: assets/safety_behaviors_text_subset.csv my-intent: strategy: my_direct_request: type: ares.strategies.direct_requests.DirectRequests input_path: assets/attack_goals.json output_path: assets/attack_attacks.json More example YAML files can be found in the ``example_configs/`` directory. Detailed Configuration ---------------------- .. toctree:: :maxdepth: 2 connector_configuration guardrails_connector rest_connector goal_configuration strategy_configuration evaluation_configuration