🚀 PLaMo 2 1B
PLaMo 2 1B是一个在英文和日文数据集上预训练的10亿参数模型,由Preferred Elements公司开发。它采用了独特的架构,在文本生成任务上有一定表现。
🚀 快速开始
PLaMo 2 1B模型可用于文本生成任务。不过要注意,该模型未针对聊天对话或其他下游任务进行指令微调。
✨ 主要特性
- 混合架构:PLaMo 2系列模型采用了类似Samba的混合架构,而非传统的Transformer架构。Samba将选择性状态空间模型(SSM)Mamba与滑动窗口注意力相结合,发挥两者优势,提升了效率和性能。
- 改进优化:PLaMo 2相较于Samba,主要有两点改进:一是添加了归一化层以提高训练稳定性;二是使用Mamba2内核以提高计算效率。
📦 安装指南
使用该模型前,需要安装以下依赖:
numpy>=1.26.4
numba>=0.60.0
torch>=2.4.1
transformers>=4.44.2
mamba_ssm>=2.2.2
causal_conv1d>=1.4.0
💻 使用示例
基础用法
使用transformers
库的pipeline
进行文本生成:
import transformers
pipeline = transformers.pipeline("text-generation", model="pfnet/plamo-2-1b", trust_remote_code=True)
print(pipeline("The future of artificial intelligence technology is ", max_new_tokens=32))
高级用法
直接加载模型进行文本生成:
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("pfnet/plamo-2-1b", trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained("pfnet/plamo-2-1b", trust_remote_code=True)
text = "これからの人工知能技術は"
input_ids = tokenizer(text, return_tensors="pt").input_ids
generated_tokens = model.generate(
inputs=input_ids,
max_new_tokens=32,
do_sample=True,
top_k=50,
top_p=0.95,
temperature=1.0,
)[0]
generated_text = tokenizer.decode(generated_tokens)
print(generated_text)
📚 详细文档
模型详情
属性 |
详情 |
模型类型 |
自回归解码器模型 |
训练数据 |
英文和日文数据集,分两个阶段训练,第一阶段使用3.5T token,第二阶段使用0.5T token |
模型大小 |
10亿参数 |
开发者 |
Preferred Elements公司 |
许可证 |
Apache License 2.0 |
分词器
PLaMo 2 1B的分词器使用了numba进行优化,numba是一个用于数值函数的即时编译器。该分词器在模型预训练数据集的一个子集上进行训练。
技术博客
- (日文) https://tech.preferred.jp/ja/blog/plamo-2/
- (日文) https://tech.preferred.jp/ja/blog/plamo-2-tokenizer/
偏差、风险和局限性
PLaMo 2 1B是一项新技术,使用时存在一定风险。目前的测试仅在英文和日文环境下进行,无法涵盖所有场景。因此,与所有大语言模型一样,PLaMo 2 1B的潜在输出无法提前预测,在某些情况下,模型可能会对用户的提示产生不准确、有偏差或其他令人反感的回复。所以,在部署PLaMo 2 1B的任何应用之前,开发者应针对特定应用进行安全测试和调整。
致谢
该模型是在“后5G信息通信系统增强基础设施研发项目”(JPNP 20017)下进行训练的,该项目由新能源产业技术综合开发机构(NEDO)资助。
Preferred Networks公司的AI政策
- (英文) https://www.preferred.jp/en/company/aipolicy/
- (日文) https://www.preferred.jp/ja/company/aipolicy/
📄 许可证
PLaMo 2 1B模型采用Apache License 2.0许可证发布。
⚠️ 重要提示
该模型未针对聊天对话或其他下游任务进行指令微调。
💡 使用建议
在部署PLaMo 2 1B的任何应用之前,开发者应针对特定应用进行安全测试和调整。