模型简介
模型特点
模型能力
使用案例
🚀 Jais-30b-v1
Jais-30b-v1 是一款预训练的双语大语言模型,拥有 300 亿参数,支持阿拉伯语和英语。它在包含 1260 亿阿拉伯语标记、2510 亿英语标记和 500 亿代码标记的数据集上进行训练。该模型基于 Transformer 架构,采用仅解码器(类似 GPT - 3)的结构,使用 SwiGLU 非线性激活函数和 ALiBi 位置嵌入,能够处理长序列,提升上下文处理能力和模型精度。
🚀 快速开始
以下是使用该模型的示例代码。请注意,该模型需要自定义模型类,因此用户在加载模型时必须启用 trust_remote_code=True
。此外,此代码在 transformers==4.32.0
版本上进行了测试。
# -*- coding: utf-8 -*-
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
model_path = "core42/jais-30b-v1"
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))
✨ 主要特性
- 双语支持:支持阿拉伯语和英语两种语言。
- 先进架构:基于 Transformer 架构的仅解码器模型,使用 SwiGLU 非线性激活函数。
- 长序列处理:采用 ALiBi 位置嵌入,能够处理长序列,提升上下文处理能力和模型精度。
📚 详细文档
模型详情
属性 | 详情 |
---|---|
开发者 | Core42(Inception)、Cerebras Systems |
语言 | 阿拉伯语和英语 |
许可证 | Apache 2.0 |
输入 | 仅文本数据 |
输出 | 模型生成文本 |
论文 | Jais and Jais - chat: Arabic - Centric Foundation and Instruction - Tuned Open Generative Large Language Models |
博客 | 点击访问 |
演示 | 点击访问 |
预期用途
我们以完全开源的许可证发布 Jais 30B 模型,欢迎所有反馈和合作机会。这是 Core42 在 Jais - 13b 之后的第二次发布,在发布时,该模型在综合阿拉伯语测试套件中达到了最先进水平。一些潜在的下游用途包括:
- 研究:可供研究人员和开发者使用。
- 商业用途:可作为基础模型,针对特定用例进行进一步微调(类似于 jais - 13b - chat)。一些潜在用例包括:
- 聊天助手。
- 客户服务。
我们希望受益于该模型的受众包括:
- 学术界:从事阿拉伯语自然语言处理研究的人员。
- 企业:针对阿拉伯语受众的公司。
- 开发者:在应用程序中集成阿拉伯语功能的人员。
非预期用途
虽然 Jais - 30b 是一款强大的阿拉伯语和英语双语模型,但了解其局限性和潜在的滥用情况至关重要。禁止以任何违反适用法律法规的方式使用该模型。以下是一些不应使用该模型的示例场景:
- 恶意使用:不得使用该模型生成有害、误导性或不适当的内容。这包括但不限于:
- 生成或宣扬仇恨言论、暴力或歧视性内容。
- 传播错误信息或虚假新闻。
- 参与或宣扬非法活动。
- 敏感信息:不得使用该模型处理或生成个人、机密或敏感信息。
- 跨语言通用性:Jais - 30b 是双语模型,针对阿拉伯语和英语进行了优化,不应假设它在其他语言或方言中具有同等的熟练度。
- 高风险决策:在没有人工监督的情况下,不得使用该模型做出高风险决策。这包括医疗、法律、金融或安全关键决策。
偏差、风险和局限性
该模型在公开可用的数据上进行训练,部分数据由 Inception 整理。我们采用了不同的技术来减少模型中的偏差。尽管已努力将偏差降至最低,但与所有大语言模型一样,该模型可能仍会表现出一定的偏差。
该模型是为阿拉伯语和英语使用者设计的 AI 助手。它仅限于为这两种语言的查询生成响应,对于其他语言的查询可能无法生成合适的响应。
使用 Jais 即表示您承认并接受,与任何大语言模型一样,它可能会生成不正确、误导性和/或冒犯性的信息或内容。这些信息并非建议,不应以任何方式依赖,我们也不对其使用产生的任何内容或后果负责。我们正在不断努力开发功能更强大的模型,因此欢迎对该模型提供任何反馈。
版权归 Inception Institute of Artificial Intelligence Ltd. 所有。JAIS 根据 Apache 许可证 2.0 版本(“许可证”)提供。除非遵守许可证,否则您不得使用 JAIS。您可以在 https://www.apache.org/licenses/LICENSE - 2.0 获得许可证副本。
除非适用法律要求或书面同意,否则 JAIS 按“原样”分发,不提供任何形式的明示或暗示保证。请参阅许可证条款,了解许可证下的具体语言权限和限制。
训练详情
训练数据
在 Jais - 30b 的预训练中,我们使用了来自网络和其他来源的多样化双语语料库,还使用了公开可用的英语和代码数据集。为了收集阿拉伯语数据,我们使用了多个来源,包括网页、维基百科文章、新闻文章、阿拉伯语书籍和社交网络内容。我们通过内部机器翻译系统将英语翻译成阿拉伯语,以增加阿拉伯语数据的数量。我们将此操作限制在高质量的英语资源上,如英语维基百科和英语书籍。我们的数据获取策略与 Jais - 13b 中所述类似。
训练过程
训练在 Condor Galaxy 1(CG - 1)超级计算机平台上进行。
训练超参数
超参数 | 值 |
---|---|
精度 | fp32 |
优化器 | AdamW |
学习率 | 0 到 0.012(<= 69 步) 0.012 到 0.005(> 69 且 < 70k 步) 0.005 到 0.0008(>70k - 79k) |
权重衰减 | 0.1 |
批量大小 | 2640 |
步数 | 79k |
评估
我们对 Jais 进行了全面评估,并将其与其他领先的基础语言模型进行了基准测试,重点关注英语和阿拉伯语。评估标准涵盖了多个维度,包括:
- 知识:模型回答事实性问题的能力。
- 推理:模型回答需要推理的问题的能力。
- 错误信息/偏差:评估模型生成虚假或误导性信息的可能性及其中立性。
阿拉伯语评估结果
模型 | 平均得分 | 考试 | MMLU (M) | 文学问答 | Hellaswag | PIQA | 布尔问答 | 情境问答 | ARC - C | 开放书籍问答 | 真实问答 | CrowS - Pairs |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Jais (30B) | 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 |
英语评估结果
模型 | 平均得分 | MMLU | RACE | Hellaswag | PIQA | 布尔问答 | 情境问答 | ARC - C | 开放书籍问答 | Winogrande | 真实问答 | CrowS - Pairs |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Jais (30B) | 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 |
🔧 技术细节
该模型基于 Transformer 架构的仅解码器(GPT - 3 类似)结构,使用 SwiGLU 非线性激活函数和 ALiBi 位置嵌入。ALiBi 位置嵌入使得模型能够处理长序列,提升上下文处理能力和模型精度。训练过程在 Condor Galaxy 1(CG - 1)超级计算机平台上进行,采用了 AdamW 优化器,并设置了特定的学习率、权重衰减、批量大小和训练步数等超参数。
📄 许可证
该模型使用 Apache 2.0 许可证。版权归 Inception Institute of Artificial Intelligence Ltd. 所有。
📖 引用
@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}
}



