File size: 2,501 Bytes
029fce6
 
 
 
 
 
 
 
d2f2e20
 
 
 
 
029fce6
d2f2e20
 
 
029fce6
 
 
 
d2f2e20
029fce6
 
d2f2e20
029fce6
 
 
 
 
d2f2e20
 
029fce6
 
 
d2f2e20
 
d8d9122
d2f2e20
 
 
 
 
 
 
 
 
029fce6
 
d2f2e20
029fce6
d8d9122
d2f2e20
 
 
 
 
029fce6
 
 
 
 
 
d8d9122
029fce6
 
 
 
 
 
d8d9122
 
029fce6
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
---
tags:
- adapter-transformers
- xlm-roberta
datasets:
- UKPLab/m2qa
---

# M2QA Adapter: Domain Adapter for MAD-X+Domain Setup
This adapter is part of the M2QA publication to achieve language and domain transfer via adapters.  
📃 Paper: [https://arxiv.org/abs/2407.01091](https://arxiv.org/abs/2407.01091)  
🏗️ GitHub repo: [https://github.com/UKPLab/m2qa](https://github.com/UKPLab/m2qa)  
💾 Hugging Face Dataset: [https://huggingface.co/UKPLab/m2qa](https://huggingface.co/UKPLab/m2qa)  

**Important:** This adapter only works together with the MAD-X language adapters and the M2QA QA head adapter.

This [adapter](https://adapterhub.ml) for the `xlm-roberta-base` model that was trained using the **[Adapters](https://github.com/Adapter-Hub/adapters)** library. For detailed training details see our paper or GitHub repository: [https://github.com/UKPLab/m2qa](https://github.com/UKPLab/m2qa). You can find the evaluation results for this adapter on the M2QA dataset in the GitHub repo and in the paper.


## Usage

First, install `adapters`:

```
pip install -U adapters
```

Now, the adapter can be loaded and activated like this:

```python
from adapters import AutoAdapterModel
from adapters.composition import Stack

model = AutoAdapterModel.from_pretrained("xlm-roberta-base")

# 1. Load language adapter
language_adapter_name = model.load_adapter("de/wiki@ukp") # MAD-X+Domain uses the MAD-X language adapter

# 2. Load domain adapter
domain_adapter_name = model.load_adapter("AdapterHub/m2qa-xlm-roberta-base-mad-x-domain-wiki")

# 3. Load QA head adapter
qa_adapter_name = model.load_adapter("AdapterHub/m2qa-xlm-roberta-base-mad-x-domain-qa-head")

# 4. Activate them via the adapter stack
model.active_adapters = Stack(language_adapter_name, domain_adapter_name, qa_adapter_name)
```


See our repository for more information: See https://github.com/UKPLab/m2qa/tree/main/Experiments/mad-x-domain


## Contact
Leon Engländer:
- [HuggingFace Profile](https://huggingface.co/lenglaender)
- [GitHub](https://github.com/lenglaender)
- [Twitter](https://x.com/LeonEnglaender)

## Citation

```
@article{englaender-etal-2024-m2qa,
    title="M2QA: Multi-domain Multilingual Question Answering",
    author={Engl{\"a}nder, Leon and
        Sterz, Hannah and
        Poth, Clifton and
        Pfeiffer, Jonas and
        Kuznetsov, Ilia and
        Gurevych, Iryna},
    journal={arXiv preprint},
    url="https://arxiv.org/abs/2407.01091",
    month = jul,
    year="2024"
}
```