# Copious

## Overview

Copious corpus is a gold standard corpus for biodiversity entity recognition, consisting of 668 documents downloaded from the Biodiversity Heritage Library with over 26K sentences and more than 28K entities covering taxonomic and ecological information.

## Task Description

- **Task Type**: Biodiversity Named Entity Recognition (NER)
- **Input**: Biodiversity literature text
- **Output**: Identified biodiversity entity spans
- **Domain**: Biodiversity, ecology, taxonomy

## Key Features

- 668 documents from Biodiversity Heritage Library
- Over 26,000 sentences
- More than 28,000 entity annotations
- Five biodiversity-specific entity types
- Gold standard for biodiversity NLP

## Evaluation Notes

- Default configuration uses **5-shot** evaluation
- Metrics: Precision, Recall, F1-Score, Accuracy
- Entity types: TAXON, GEOGRAPHICAL_LOCATION, HABITAT, PERSON, TEMPORAL_EXPRESSION

## Properties

| Property | Value |
|----------|-------|
| **Benchmark Name** | `copious` |
| **Dataset ID** | [extraordinarylab/copious](https://modelscope.cn/datasets/extraordinarylab/copious/summary) |
| **Paper** | N/A |
| **Tags** | `Knowledge`, `NER` |
| **Metrics** | `precision`, `recall`, `f1_score`, `accuracy` |
| **Default Shots** | 5-shot |
| **Evaluation Split** | `test` |
| **Train Split** | `train` |


## Data Statistics

*Statistics not available.*

## Sample Example

**Subset**: `default`

```json
{
  "input": [
    {
      "id": "a4f5bffd",
      "content": "Here are some examples of named entity recognition:\n\nInput:\nFAMILY SERRANIDAE — SCHULTZ 363 Genus PLECTROPOMUS Oken Plectropomus Oken, Isis, p. 1182] 1782 (on \"Les Plectropomes\" Cuvier, Rgne animal, vol. 2, p. 277, 1817). (Genotype, Bodianus  ... [TRUNCATED] ... 9276, Sp. Blancoanae 787, Phil. PL 126, Elmer 18216, 16818, 164-17, 9570, B. S. 12036, 13334, 32736, 14746 Ramos. India to southern China and Formosa through Malaya to Samoa. Local names: Banana (Sub); bacilli (C. Bis); balisibis (Iv) ; baud\n"
    }
  ],
  "target": "<response>Vo] l <taxon>GRAMINEAE</taxon> 53 23. <taxon>THYSANOLAENA Nees</taxon> <taxon>THYSANOLAENA MAXIMA (Roxb) O. Kuntze</taxon> Rev. Gen. PI. (1891) 794; Pilger in Perk. Frag. Fl. Philip. (1904) 141; Merr. in Philip. Journ. Si. 1 (1906)  ... [TRUNCATED] ... aphical_location>Malaya</geographical_location> to <geographical_location>Samoa.</geographical_location> Local names: <taxon>Banana</taxon> (Sub); <taxon>bacilli</taxon> (C. Bis); <taxon>balisibis</taxon> (Iv) ; <taxon>baud</taxon></response>",
  "id": 0,
  "group_id": 0,
  "metadata": {
    "tokens": [
      "Vo]",
      "l",
      "GRAMINEAE",
      "53",
      "23.",
      "THYSANOLAENA",
      "Nees",
      "THYSANOLAENA",
      "MAXIMA",
      "(Roxb)",
      "O.",
      "Kuntze",
      "Rev.",
      "Gen.",
      "PI.",
      "(1891)",
      "794;",
      "Pilger",
      "in",
      "Perk.",
      "Frag.",
      "Fl.",
      "Philip.",
      "(1904)",
      "141;",
      "Merr.",
      "in",
      "Philip.",
      "Journ.",
      "Si.",
      "1",
      "(1906)",
      "Suppl.",
      "343.",
      "Agrostis",
      "maxima",
      "Roxb.",
      "Fl.",
      "Ind.",
      "1",
      "(1820)",
      "319.",
      "Thysanolaena",
      "agrostis",
      "Nees",
      "in",
      "Edinb.",
      "New",
      "Philos.",
      "Journ.",
      "18",
      "(1835)",
      "180.",
      "Thysanolaena",
      "acarifera",
      "Arn.",
      "&",
      "Nees",
      "in",
      "Nov.",
      "Act.",
      "Acad.",
      "Nat.",
      "Cur.",
      "1",
      "9",
      "(1843)",
      "Suppl.",
      "1:",
      "181,",
      "Vidal",
      "Rev.",
      "PI.",
      "Vase.",
      "Filip.",
      "(1886)",
      "289.",
      "Luzon",
      "(Ilocos",
      "Norte,",
      "Apayao,",
      "Bontoc,",
      "Benguet,",
      "Nueva",
      "Vizcaya,",
      "Nueva",
      "Ecija,",
      "Bulacan,",
      "Zambales,",
      "Bataan,",
      "Laguna,",
      "Tayabas,",
      "Sorsogon),",
      "Mindoro,",
      "Palawan,",
      "Mindanao.",
      "On",
      "banks",
      "of",
      "ravines,",
      "slopes,",
      "about",
      "cliffs,",
      "etc,",
      "at",
      "low",
      "and",
      "\"medium,",
      "altitudes,",
      "ascending",
      "to",
      "1,600",
      "m.",
      "India",
      "through",
      "Malaya",
      "to",
      "New",
      "Guinea.",
      "Local",
      "names:",
      "Bugubui",
      "(Pamp)",
      ";",
      "buybui",
      "(Ilk);",
      "eagadu",
      "(Bon);",
      "gatbo",
      "(Bik)",
      ";",
      "lasa",
      "(Tag);",
      "tagadeu",
      "(Bon)",
      ",",
      "tagisa",
      "(Sub);",
      "tambu",
      "(Tag);",
      "talankaran",
      "(Ig).",
      "24.",
      "DIGITARIA",
      "Scopoli",
      "DIGITARIA",
      "CHINENSIS",
      "Nees",
      "in",
      "Hook.",
      "&",
      "Arn.",
      "Bot.",
      "Beechey",
      "Voy.",
      "(1841)",
      "231.",
      "Paspalum",
      "ftlicidme",
      "Nees",
      "ex",
      "Thwaites",
      "Enum.",
      "PL",
      "Zeyl.",
      "(1859-64)",
      "358.",
      "Digitaria",
      "violascens",
      "Merr.",
      "in",
      "Philip.",
      "Journ.",
      "Sci.",
      "1",
      "(1906)",
      "Suppl.",
      "347,",
      "3",
      "(1908)",
      "Bot.",
      "396,",
      "Fl.",
      "Manila",
      "(1912)",
      "88,",
      "non",
      "Link.",
      "Batan",
      "Islands",
      "and",
      "northern",
      "Luzon",
      "to",
      "Palawan",
      "and",
      "Mindanao,",
      "in",
      "most",
      "islands",
      "and",
      "provinces,",
      "Merrill",
      "4148,",
      "9388,",
      "7107,",
      "7677,",
      "4788,",
      "Phil.",
      "PL",
      "17",
      "U,",
      "B.",
      "S.",
      "21715,",
      "14524,",
      "13939,",
      "8250",
      "Ramos.",
      "In",
      "open",
      "grasslands",
      "at",
      "low",
      "and",
      "medium",
      "altitudes.",
      "India",
      "to",
      "China",
      "and",
      "Malaya.",
      "Local",
      "names:",
      "Timi",
      "(Bon);",
      "tumi",
      "(Bon);",
      "ualisibis",
      "(Iv).",
      "DIGITARIA",
      "CORYMBOSA",
      "(Roxb)",
      "comb.",
      "nov.",
      "Panicum",
      "co-rymbosum",
      "Roxb.",
      "Hort.",
      "Beng.",
      "(1814)",
      "7,",
      "nomen",
      "nudum,",
      "Fl.",
      "Ind.",
      "1",
      "(1820)",
      "292.",
      "Panicum",
      "microbachne",
      "Presl",
      "Rel.",
      "Haenk.",
      "1",
      "(1828)",
      "298;",
      "Kunth",
      "Enum.",
      "1",
      "(1833)",
      "81.",
      "Digitaria",
      "consanguinea",
      "Merr.",
      "in",
      "Philip.",
      "Journ.",
      "Sci.",
      "1",
      "(1906)",
      "Suppl.",
      "347,",
      "3",
      "(1908)",
      "Bot.",
      "396,",
      "Fl.",
      "Manila",
      "(1912)",
      "88,",
      "Sp.",
      "Blancoanae",
      "(1918)",
      "64,",
      "non",
      "Gaudich.",
      "Panicum",
      "sanguinale",
      "Rolfe",
      "in",
      "Journ.",
      "Bot.",
      "23",
      "(1885)",
      "216;",
      "Vidal",
      "Phan.",
      "Cuming.",
      "Philip.",
      "(1885)",
      "157,",
      "non",
      "Linn.",
      "Digitaria",
      "lanosa",
      "Llanos",
      "Frag.",
      "PI.",
      "Filip.",
      "(1851)",
      "28;",
      "F-vill.",
      "&",
      "Naves",
      "in",
      "Blanco",
      "Fl.",
      "Filip.",
      "ed.",
      "3,",
      "4",
      "1",
      "(1880)",
      "19.",
      "Panicum",
      "gaudichaudii",
      "F-vill.",
      "Novis.",
      "App.",
      "(1882)",
      "311,",
      "non",
      "Kunth.",
      "Panicum",
      "pruriens",
      "Trin.",
      "var.",
      "glabrum",
      "Nees",
      "in",
      "Hook.",
      "Journ.",
      "Bot.",
      "Kew",
      "Miscel.",
      "2",
      "(1850)",
      "97.",
      "Throughout",
      "the",
      "Philippines",
      "at",
      "low",
      "and",
      "medium",
      "altitudes",
      "in",
      "open",
      "waste",
      "places,",
      "old",
      "clearings,",
      "etc,",
      "usually",
      "common,",
      "Merrill",
      "4-230,",
      "5347,",
      "7368,",
      "9276,",
      "Sp.",
      "Blancoanae",
      "787,",
      "Phil.",
      "PL",
      "126,",
      "Elmer",
      "18216,",
      "16818,",
      "164-17,",
      "9570,",
      "B.",
      "S.",
      "12036,",
      "13334,",
      "32736,",
      "14746",
      "Ramos.",
      "India",
      "to",
      "southern",
      "China",
      "and",
      "Formosa",
      "through",
      "Malaya",
      "to",
      "Samoa.",
      "Local",
      "names:",
      "Banana",
      "(Sub);",
      "bacilli",
      "(C.",
      "Bis);",
      "balisibis",
      "(Iv)",
      ";",
      "baud"
    ],
    "ner_tags": [
      "O",
      "O",
      "B-TAXON",
      "O",
      "O",
      "B-TAXON",
      "I-TAXON",
      "B-TAXON",
      "I-TAXON",
      "I-TAXON",
      "I-TAXON",
      "I-TAXON",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-TAXON",
      "I-TAXON",
      "I-TAXON",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-TAXON",
      "I-TAXON",
      "I-TAXON",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-TAXON",
      "I-TAXON",
      "I-TAXON",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "I-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "I-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "I-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "B-HABITAT",
      "I-HABITAT",
      "I-HABITAT",
      "B-HABITAT",
      "O",
      "B-HABITAT",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "I-GEOGRAPHICAL_LOCATION",
      "O",
      "O",
      "B-TAXON",
      "O",
      "O",
      "B-TAXON",
      "O",
      "B-TAXON",
      "O",
      "B-TAXON",
      "O",
      "O",
      "B-TAXON",
      "O",
      "B-TAXON",
      "O",
      "O",
      "B-TAXON",
      "O",
      "B-TAXON",
      "O",
      "B-TAXON",
      "O",
      "O",
      "B-TAXON",
      "I-TAXON",
      "B-TAXON",
      "I-TAXON",
      "I-TAXON",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-TAXON",
      "I-TAXON",
      "I-TAXON",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-TAXON",
      "I-TAXON",
      "I-TAXON",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "O",
      "O",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "I-GEOGRAPHICAL_LOCATION",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "I-GEOGRAPHICAL_LOCATION",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-HABITAT",
      "I-HABITAT",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "O",
      "B-TAXON",
      "O",
      "B-TAXON",
      "O",
      "B-TAXON",
      "O",
      "B-TAXON",
      "I-TAXON",
      "I-TAXON",
      "O",
      "O",
      "B-TAXON",
      "I-TAXON",
      "I-TAXON",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-TAXON",
      "I-TAXON",
      "I-TAXON",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-TAXON",
      "I-TAXON",
      "I-TAXON",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "O",
      "O",
      "B-TAXON",
      "O",
      "O",
      "O",
      "O",
      "B-TAXON",
      "I-TAXON",
      "I-TAXON",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-TAXON",
      "I-TAXON",
      "I-TAXON",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-TAXON",
      "I-TAXON",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-TAXON",
      "I-TAXON",
      "I-TAXON",
      "I-TAXON",
      "I-TAXON",
      "I-TAXON",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-HABITAT",
      "I-HABITAT",
      "I-HABITAT",
      "B-HABITAT",
      "I-HABITAT",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-TAXON",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "I-GEOGRAPHICAL_LOCATION",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "B-GEOGRAPHICAL_LOCATION",
      "O",
      "O",
      "B-TAXON",
      "O",
      "B-TAXON",
      "O",
      "O",
      "B-TAXON",
      "O",
      "O",
      "B-TAXON"
    ]
  }
}
```

*Note: Some content was truncated for display.*

## Prompt Template

**Prompt Template:**
```text
You are a named entity recognition system that identifies the following entity types:
{entities}

Process the provided text and mark all named entities with XML-style tags.

For example:
<person>John Smith</person> works at <organization>Google</organization> in <location>Mountain View</location>.

Available entity tags: {entity_list}

INSTRUCTIONS:
1. Wrap your entire response in <response>...</response> tags.
2. Inside these tags, include the original text with entity tags inserted.
3. Do not change the original text in any way (preserve spacing, punctuation, case, etc.).
4. Tag ALL entities you can identify using the exact tag names provided.
5. Do not include explanations, just the tagged text.
6. If entity spans overlap, choose the most specific entity type.
7. Ensure every opening tag has a matching closing tag.

Text to process:
{text}

```

<details>
<summary>Few-shot Template</summary>

```text
Here are some examples of named entity recognition:

{fewshot}

You are a named entity recognition system that identifies the following entity types:
{entities}

Process the provided text and mark all named entities with XML-style tags.

For example:
<person>John Smith</person> works at <organization>Google</organization> in <location>Mountain View</location>.

Available entity tags: {entity_list}

INSTRUCTIONS:
1. Wrap your entire response in <response>...</response> tags.
2. Inside these tags, include the original text with entity tags inserted.
3. Do not change the original text in any way (preserve spacing, punctuation, case, etc.).
4. Tag ALL entities you can identify using the exact tag names provided.
5. Do not include explanations, just the tagged text.
6. If entity spans overlap, choose the most specific entity type.
7. Ensure every opening tag has a matching closing tag.

Text to process:
{text}

```

</details>

## Usage

### Using CLI

```bash
evalscope eval \
    --model YOUR_MODEL \
    --api-url OPENAI_API_COMPAT_URL \
    --api-key EMPTY_TOKEN \
    --datasets copious \
    --limit 10  # Remove this line for formal evaluation
```

### Using Python

```python
from evalscope import run_task
from evalscope.config import TaskConfig

task_cfg = TaskConfig(
    model='YOUR_MODEL',
    api_url='OPENAI_API_COMPAT_URL',
    api_key='EMPTY_TOKEN',
    datasets=['copious'],
    limit=10,  # Remove this line for formal evaluation
)

run_task(task_cfg=task_cfg)
```


