|
--- |
|
language: |
|
- ar |
|
- en |
|
thumbnail: null |
|
tags: |
|
- Arabic |
|
- English |
|
- LLM |
|
- Decoder |
|
- causal-lm |
|
license: apache-2.0 |
|
pipeline_tag: text-generation |
|
--- |
|
|
|
# Jais-30b-v3 |
|
|
|
<!-- Provide a quick summary of what the model is/does. --> |
|
|
|
This is a 30 billion parameter pre-trained bilingual large language model for both Arabic and English. |
|
The model has been trained on a total of 1.6 trillion tokens, consisting of 971 billion tokens in English, 475 billion |
|
in Arabic, and 193 billion in code. |
|
|
|
The present model is the successor to our previously released [Jais-30b-v1](https://huggingface.co/core42/jais-30b-v1) |
|
model. |
|
It employs a transformer-based decoder-only (GPT-3) architecture and incorporates the SwiGLU non-linearity. |
|
It implements ALiBi position embeddings, enabling the model to extrapolate |
|
to long sequence lengths, providing improved context handling and model precision. |
|
|
|
## Getting started |
|
|
|
Below is sample code to use the model. Note that the model requires a custom model class, so users must |
|
enable `trust_remote_code=True` while loading the model. |
|
Also, note that this code is tested on `transformers==4.37.2`. |
|
|
|
```python |
|
# -*- coding: utf-8 -*- |
|
|
|
import torch |
|
from transformers import AutoTokenizer, AutoModelForCausalLM |
|
|
|
model_path = "core42/jais-30b-v3" |
|
|
|
device = "cuda" if torch.cuda.is_available() else "cpu" |
|
|
|
tokenizer = AutoTokenizer.from_pretrained(model_path) |
|
model = AutoModelForCausalLM.from_pretrained(model_path, device_map="auto", trust_remote_code=True) |
|
|
|
|
|
def get_response(text, tokenizer=tokenizer, model=model): |
|
input_ids = tokenizer(text, return_tensors="pt").input_ids |
|
inputs = input_ids.to(device) |
|
input_len = inputs.shape[-1] |
|
generate_ids = model.generate( |
|
inputs, |
|
top_p=0.9, |
|
temperature=0.3, |
|
max_length=200, |
|
min_length=input_len + 4, |
|
repetition_penalty=1.2, |
|
do_sample=True, |
|
) |
|
response = tokenizer.batch_decode( |
|
generate_ids, skip_special_tokens=True, clean_up_tokenization_spaces=True |
|
)[0] |
|
return response |
|
|
|
|
|
text = "عاصمة دولة الإمارات العربية المتحدة ه" |
|
print(get_response(text)) |
|
|
|
text = "The capital of UAE is" |
|
print(get_response(text)) |
|
|
|
``` |
|
|
|
## Model Details |
|
|
|
- **Developed by:** |
|
Core42 ([Inception](https://www.inceptioniai.org/en/)), [Cerebras Systems](https://www.cerebras.net/). |
|
- **Language(s) (NLP):** Arabic and English |
|
- **License:** Apache 2.0 |
|
- **Input:** Text only data. |
|
- **Output:** Model generates text. |
|
- **Paper :** [Jais and Jais-chat: Arabic-Centric Foundation and Instruction-Tuned Open Generative Large Language Models](https://arxiv.org/abs/2308.16149) |
|
- **Blog :** [Access here](https://g42.ai/resources/publications/Jais-30B) |
|
- **Demo :** [Access here](https://arabic-gpt.ai) |
|
|
|
## Intended Use |
|
|
|
<!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. --> |
|
We release the Jais 30B model under a full open source license. We welcome all feedback and opportunities to |
|
collaborate. |
|
|
|
This is the third release after [Jais-13b](https://huggingface.co/core42/jais-13b) from Core42, and at the time of |
|
release, |
|
achieved state of the art across a comprehensive Arabic test suite as noted in the evaluation section. |
|
Some potential downstream uses include: |
|
|
|
- *Research*: This model can be used by researchers and developers. |
|
- *Commercial Use*: It can be used as a base model to further fine-tune for specific use cases (similar |
|
to [jais-13b-chat](https://huggingface.co/core42/jais-13b-chat)). |
|
Some potential use cases include: |
|
- Chat-assistants. |
|
- Customer service. |
|
|
|
Audiences that we hope will benefit from our model: |
|
|
|
- *Academics*: For those researching Arabic natural language processing. |
|
- *Businesses*: Companies targeting Arabic-speaking audiences. |
|
- *Developers*: Those integrating Arabic language capabilities in apps. |
|
|
|
### Out-of-Scope Use |
|
|
|
<!-- This section addresses misuse, malicious use, and uses that the model will not work well for. --> |
|
|
|
While Jais-30b is a powerful Arabic and English bilingual model, it's essential to understand its limitations and the |
|
potential of misuse. |
|
It is prohibited to use the model in any manner that violates applicable laws or regulations. |
|
The following are some example scenarios where the model should not be used. |
|
|
|
- *Malicious Use*: The model should not be used for generating harmful, misleading, or inappropriate content. This |
|
includes but is not limited to: |
|
- Generating or promoting hate speech, violence, or discrimination. |
|
- Spreading misinformation or fake news. |
|
- Engaging in or promoting illegal activities. |
|
|
|
- *Sensitive Information*: The model should not be used to handle or generate personal, confidential, or sensitive |
|
information. |
|
|
|
- *Generalization Across All Languages*: Jais-30b is bilingual and optimized for Arabic and English, it should not be |
|
assumed to have equal proficiency in other languages or dialects. |
|
|
|
- *High-Stakes Decisions*: The model should not be used to make high-stakes decisions without human oversight. This |
|
includes medical, legal, financial, or safety-critical decisions. |
|
|
|
## Bias, Risks, and Limitations |
|
|
|
<!-- This section is meant to convey both technical and sociotechnical limitations. --> |
|
|
|
The model is trained on publicly available data which was in part curated by Inception. We have employed different |
|
techniqes to reduce bias in the model. While efforts have been made to minimize biases, it is likely that the model, as |
|
with all LLM models, will exhibit some bias. |
|
|
|
The model is trained as an AI assistant for Arabic and English speakers. The model is limited to produce responses for |
|
queries in these two languages |
|
and may not produce appropriate responses to other language queries. |
|
|
|
By using Jais, you acknowledge and accept that, as with any large language model, it may generate incorrect, misleading |
|
and/or offensive information or content. |
|
The information is not intended as advice and should not be relied upon in any way, nor are we responsible for any of |
|
the content or consequences resulting from its use. |
|
We are continuously working to develop models with greater capabilities, and as such, welcome any feedback on the model |
|
|
|
## Training Details |
|
|
|
### Training Data |
|
|
|
<!-- This should link to a Data Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. --> |
|
|
|
For the pre-training of Jais-30b, we used a diverse bilingual corpus sourced from the Web and other sources. We also |
|
used publicly available English and code datasets. |
|
To collect Arabic data, we use multiple sources including web pages, wikipedia articles, news articles, Arabic books, |
|
and social network content. We augment the volume of Arabic data by translating English to Arabic using an in-house |
|
machine translation system. |
|
We restrict this to high quality English resources such as English Wikipedia and English books. Our data acquisition |
|
strategy is similar to as mentioned in [Jais-13b](https://arxiv.org/abs/2308.16149). |
|
|
|
### Training Procedure |
|
|
|
<!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. --> |
|
|
|
|
|
Training was performed on the Condor Galaxy 1 (CG-1) supercomputer platform. |
|
|
|
#### Training Hyperparameters |
|
|
|
| Hyperparameter | Value | |
|
|----------------|-------------------------------| |
|
| Precision | fp32 | |
|
| Optimizer | AdamW | |
|
| Learning rate | 0 to 0.012 (<= 69 steps) | |
|
| | 0.012 to 0.0012 (< 89k steps) | |
|
| | 0.003 to 0.0005 (<167k steps) | |
|
| | 0.002 to 0.0005 (<260k steps) | |
|
| Weight decay | 0.1 | |
|
| Batch size | 768 | |
|
| Steps | 260k | |
|
|
|
## Evaluation |
|
|
|
<!-- This section describes the evaluation protocols and provides the results. --> |
|
|
|
We conducted a comprehensive evaluation of Jais and benchmarked it against other leading base language models, focusing |
|
on both English and Arabic. |
|
The evaluation criteria spanned various dimensions, including: |
|
|
|
- **Knowledge:** How well the model answers factual questions. |
|
- **Reasoning:** The model's ability to answer questions requiring reasoning. |
|
- **Misinformation/Bias:** Assessment of the model's susceptibility to generating false or misleading information, and |
|
its neutrality. |
|
|
|
Arabic evaluation results: |
|
|
|
| Models | Avg | EXAMS | MMLU (M) | LitQA | Hellaswag | PIQA | BoolQA | SituatedQA | ARC-C | OpenBookQA | TruthfulQA | CrowS-Pairs | |
|
|--------------|----------|-------|----------|-------|-----------|------|--------|------------|-------|------------|------------|-------------| |
|
| Jais-30b-v3 | **48.9** | 4 | 35.2 | 60.6 | 60.4 | 69 | 67.7 | 42.2 | 39.2 | 33.8 | 45.1 | 57.3 | |
|
| Jais-30b-v1 | 47.8 | 40 | 30.8 | 58.3 | 60.1 | 70 | 68.7 | 43.3 | 38.5 | 32.2 | 42.6 | 56.9 | |
|
| Jais (13B) | 46.5 | 40.4 | 30.0 | 58.3 | 57.7 | 67.6 | 62.6 | 42.5 | 35.8 | 32.4 | 41.1 | 58.4 | |
|
| acegpt-13b | 42.5 | 34.7 | 29.9 | 42.3 | 45.6 | 60.3 | 63.2 | 38.1 | 32.8 | 32.2 | 45.1 | 56.4 | |
|
| acegpt-7b | 42.4 | 35.4 | 29 | 46.3 | 43.8 | 60.4 | 63.4 | 37.2 | 31.1 | 32 | 45.3 | 55.4 | |
|
| BLOOM (7.1B) | 40.9 | 34.0 | 28.2 | 37.1 | 40.9 | 58.4 | 59.9 | 39.1 | 27.3 | 28.0 | 44.4 | 53.5 | |
|
| LLaMA (30B) | 38.8 | 27.9 | 28.5 | 32.6 | 35 | 52.7 | 63.7 | 34.9 | 25.7 | 28.6 | 47.2 | 49.8 | |
|
| LLaMA2 (13B) | 38.1 | 29.2 | 28.4 | 32.0 | 34.3 | 52.9 | 63.8 | 36.4 | 24.3 | 30.0 | 45.5 | 49.9 | |
|
|
|
English evaluation results: |
|
|
|
| Models | Avg | MMLU | RACE | Hellaswag | PIQA | BoolQA | SituatedQA | ARC-C | OpenBookQA | Winogrande | TruthfulQA | CrowS-Pairs | |
|
|--------------|----------|------|------|-----------|------|--------|------------|-------|------------|------------|------------|-------------| |
|
| Jais-30b-v3 | **58.8** | 42.3 | 40.3 | 79.1 | 80.5 | 80.9 | 49.3 | 48.4 | 43.2 | 70.6 | 40.3 | 72.3 | |
|
| Jais-30b-v1 | 56.2 | 34.5 | 39.8 | 75.1 | 79.5 | 74.3 | 49.9 | 45.9 | 41.2 | 68.4 | 36.5 | 73.3 | |
|
| Jais (13B) | 53.9 | 31.5 | 38.3 | 71.8 | 77.9 | 67.6 | 48.2 | 41.9 | 40.6 | 68.4 | 35.4 | 71.5 | |
|
| OPT-30b | 59.4 | 38.6 | 45.2 | 71.7 | 78.5 | 87.3 | 63.4 | 44.8 | 40.2 | 72.2 | 38.7 | 72.7 | |
|
| MPT-30b | 57.3 | 38.8 | 39.7 | 80 | 80.8 | 73.9 | 45.6 | 49.2 | 43.2 | 71.1 | 38.3 | 69.3 | |
|
| Llama-30b | 55.4 | 37 | 40.2 | 79.2 | 80.1 | 68.3 | 44 | 45.3 | 42 | 72.7 | 42.3 | 58.2 | |
|
| Falcon (40B) | 54.8 | 31.3 | 37.1 | 76.4 | 80.5 | 73.7 | 43.2 | 43.6 | 44.2 | 67.2 | 34.3 | 72.3 | |
|
|
|
## Citation |
|
|
|
``` |
|
@misc{sengupta2023jais, |
|
title={Jais and Jais-chat: Arabic-Centric Foundation and Instruction-Tuned Open Generative Large Language Models}, |
|
author={Neha Sengupta and Sunil Kumar Sahu and Bokang Jia and Satheesh Katipomu and Haonan Li and Fajri Koto and Osama Mohammed Afzal and Samta Kamboj and Onkar Pandit and Rahul Pal and Lalit Pradhan and Zain Muhammad Mujahid and Massa Baali and Alham Fikri Aji and Zhengzhong Liu and Andy Hock and Andrew Feldman and Jonathan Lee and Andrew Jackson and Preslav Nakov and Timothy Baldwin and Eric Xing}, |
|
year={2023}, |
|
eprint={2308.16149}, |
|
archivePrefix={arXiv}, |
|
primaryClass={cs.CL} |
|
} |
|
|
|
``` |
|
|
|
Copyright Inception Institute of Artificial Intelligence Ltd. |