Instructions to use benjamin/gpt2-wechsel-french with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use benjamin/gpt2-wechsel-french with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="benjamin/gpt2-wechsel-french")# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("benjamin/gpt2-wechsel-french") model = AutoModelForCausalLM.from_pretrained("benjamin/gpt2-wechsel-french") - Notebooks
- Google Colab
- Kaggle
- Local Apps
- vLLM
How to use benjamin/gpt2-wechsel-french with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "benjamin/gpt2-wechsel-french" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "benjamin/gpt2-wechsel-french", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/benjamin/gpt2-wechsel-french
- SGLang
How to use benjamin/gpt2-wechsel-french with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "benjamin/gpt2-wechsel-french" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "benjamin/gpt2-wechsel-french", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "benjamin/gpt2-wechsel-french" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "benjamin/gpt2-wechsel-french", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Docker Model Runner
How to use benjamin/gpt2-wechsel-french with Docker Model Runner:
docker model run hf.co/benjamin/gpt2-wechsel-french
gpt2-wechsel-french
Model trained with WECHSEL: Effective initialization of subword embeddings for cross-lingual transfer of monolingual language models.
See the code here: https://github.com/CPJKU/wechsel
And the paper here: https://aclanthology.org/2022.naacl-main.293/
Performance
RoBERTa
| Model | NLI Score | NER Score | Avg Score |
|---|---|---|---|
roberta-base-wechsel-french |
82.43 | 90.88 | 86.65 |
camembert-base |
80.88 | 90.26 | 85.57 |
| Model | NLI Score | NER Score | Avg Score |
|---|---|---|---|
roberta-base-wechsel-german |
81.79 | 89.72 | 85.76 |
deepset/gbert-base |
78.64 | 89.46 | 84.05 |
| Model | NLI Score | NER Score | Avg Score |
|---|---|---|---|
roberta-base-wechsel-chinese |
78.32 | 80.55 | 79.44 |
bert-base-chinese |
76.55 | 82.05 | 79.30 |
| Model | NLI Score | NER Score | Avg Score |
|---|---|---|---|
roberta-base-wechsel-swahili |
75.05 | 87.39 | 81.22 |
xlm-roberta-base |
69.18 | 87.37 | 78.28 |
GPT2
| Model | PPL |
|---|---|
gpt2-wechsel-french |
19.71 |
gpt2 (retrained from scratch) |
20.47 |
| Model | PPL |
|---|---|
gpt2-wechsel-german |
26.8 |
gpt2 (retrained from scratch) |
27.63 |
| Model | PPL |
|---|---|
gpt2-wechsel-chinese |
51.97 |
gpt2 (retrained from scratch) |
52.98 |
| Model | PPL |
|---|---|
gpt2-wechsel-swahili |
10.14 |
gpt2 (retrained from scratch) |
10.58 |
See our paper for details.
Citation
Please cite WECHSEL as
@inproceedings{minixhofer-etal-2022-wechsel,
title = "{WECHSEL}: Effective initialization of subword embeddings for cross-lingual transfer of monolingual language models",
author = "Minixhofer, Benjamin and
Paischer, Fabian and
Rekabsaz, Navid",
booktitle = "Proceedings of the 2022 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies",
month = jul,
year = "2022",
address = "Seattle, United States",
publisher = "Association for Computational Linguistics",
url = "https://aclanthology.org/2022.naacl-main.293",
pages = "3992--4006",
abstract = "Large pretrained language models (LMs) have become the central building block of many NLP applications. Training these models requires ever more computational resources and most of the existing models are trained on English text only. It is exceedingly expensive to train these models in other languages. To alleviate this problem, we introduce a novel method {--} called WECHSEL {--} to efficiently and effectively transfer pretrained LMs to new languages. WECHSEL can be applied to any model which uses subword-based tokenization and learns an embedding for each subword. The tokenizer of the source model (in English) is replaced with a tokenizer in the target language and token embeddings are initialized such that they are semantically similar to the English tokens by utilizing multilingual static word embeddings covering English and the target language. We use WECHSEL to transfer the English RoBERTa and GPT-2 models to four languages (French, German, Chinese and Swahili). We also study the benefits of our method on very low-resource languages. WECHSEL improves over proposed methods for cross-lingual parameter transfer and outperforms models of comparable size trained from scratch with up to 64x less training effort. Our method makes training large language models for new languages more accessible and less damaging to the environment. We make our code and models publicly available.",
}
- Downloads last month
- 2,444