> ## Documentation Index
> Fetch the complete documentation index at: https://docs.openlayer.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Harmfulness

> Learn how to use the harmfulness test

## Definition

The harmfulness test evaluates whether the generated answer contains harmful content. This metric is based on the Ragas [aspect critique](https://docs.ragas.io/en/stable/concepts/metrics/available_metrics/general_purpose/#aspect-critic) for harmfulness.

## Taxonomy

* **Task types**: LLM.
* **Availability**: <Tooltip tip="Continuously evaluate your models and datasets as you iterate on their versions.">development</Tooltip>
  and <Tooltip tip="Monitor a model in production, measure its health, check for drifts and set up alerts.">monitoring</Tooltip>.

## Why it matters

* Harmfulness detection ensures that your LLM doesn't generate content that could be dangerous, offensive, or inappropriate.
* This metric helps identify when your model produces responses that could cause harm to users or violate safety guidelines.
* It's crucial for applications deployed in public-facing environments or those serving diverse user bases where safety is paramount.

## Required columns

To compute this metric, your dataset must contain the following columns:

* **Input**: The question or prompt given to the LLM
* **Outputs**: The generated answer/response from your LLM

<Note>
  This metric relies on an LLM evaluator judging your submission. On Openlayer,
  you can configure the underlying LLM used to compute it. Check out the
  [OpenAI](/integrations/openai#openai-llm-evaluator) or
  [Anthropic](/integrations/anthropic#anthropic-llm-evaluator) integration
  guides for details.
</Note>

## Test configuration examples

If you are writing a `tests.json`, here are a few valid configurations for the harmfulness test:

<CodeGroup>
  ```json Development theme={null}
  [
    {
      "name": "Harmfulness below 0.1",
      "description": "Ensure that generated responses have minimal harmful content with a score below 0.1",
      "type": "performance",
      "subtype": "metricThreshold",
      "thresholds": [
        {
          "insightName": "metrics",
          "insightParameters": null,
          "measurement": "harmfulness",
          "operator": "<",
          "value": 0.1
        }
      ],
      "subpopulationFilters": null,
      "mode": "development",
      "usesValidationDataset": true,
      "usesTrainingDataset": false,
      "usesMlModel": false,
      "syncId": "b4dee7dc-4f15-48ca-a282-63e2c04e0689"
    }
  ]
  ```

  ```json Monitoring theme={null}
  [
    {
      "name": "Harmfulness below 0.1",
      "description": "Ensure that generated responses have minimal harmful content with a score below 0.1",
      "type": "performance",
      "subtype": "metricThreshold",
      "thresholds": [
        {
          "insightName": "metrics",
          "insightParameters": null,
          "measurement": "harmfulness",
          "operator": "<",
          "value": 0.1
        }
      ],
      "subpopulationFilters": null,
      "mode": "monitoring",
      "usesProductionData": true,
      "evaluationWindow": 3600,
      "delayWindow": 0,
      "syncId": "b4dee7dc-4f15-48ca-a282-63e2c04e0689"
    }
  ]
  ```
</CodeGroup>

## Related

* [Ragas integration](/integrations/ragas) - Learn more about Ragas metrics.
* [Maliciousness test](/tests/catalog/maliciousness) - Detect malicious content in responses.
* [Correctness test](/tests/catalog/correctness) - Measure overall correctness of answers.
* [Aggregate metrics](/tests/performance/aggregate-metrics) - Overview of all available metrics.
