模型简介
模型特点
模型能力
使用案例
🚀 Gemma 2 JPN模型卡片
Gemma 2 JPN是基于Gemini系列技术的文本生成模型,针对日语进行了微调。它能处理多种文本任务,如问答、总结和推理,在日语场景下表现出色。
🚀 快速开始
要在Hugging Face上使用Gemma,你需要查看并同意Google的使用许可。请确保你已登录Hugging Face,然后点击下方按钮,请求将立即处理。 确认许可
资源与技术文档
使用条款:条款 作者:Google
✨ 主要特性
- 多源数据训练:使用包含网页文档、代码、数学文本和指令数据集等多种来源的8万亿token数据进行训练。
- 日语支持:Gemma-2-JPN是在日语文本上微调的模型,在日语任务上表现与英语相当。
- 多任务处理:适用于多种文本生成任务,如问答、总结、推理、翻译等。
📦 安装指南
首先,安装Transformers库:
pip install -U transformers
💻 使用示例
基础用法
使用pipeline
API运行模型
import torch
from transformers import pipeline
pipe = pipeline(
"text-generation",
model="google/gemma-2-2b-jpn-it",
model_kwargs={"torch_dtype": torch.bfloat16},
device="cuda", # 替换为 "mps" 可在Mac设备上运行
)
messages = [
{"role": "user", "content": "マシーンラーニングについての詩を書いてください。"},
]
outputs = pipe(messages, return_full_text=False, max_new_tokens=256)
assistant_response = outputs[0]["generated_text"].strip()
print(assistant_response)
示例输出
## マシーンラーニングの詩
**1.**
データの海、深淵の広がり、
複雑なパターン、隠された知識。
機械学習、その力強さ、
未来を予測、その道を開く。
**2.**
ニューラルネットワーク、複雑な枝、
学習の旅、その過程は静か。
データから学び、進化する姿、
予測の精度、その力強さ。
**3.**
教師あり学習、正解を導く、
教師なし学習、未知の世界へ。
機械学習、その進化は止まらない、
未来の扉を開く、新たな時代へ。
**4.**
画像認識、音声認識、
複雑なタスク、その答えを見つける。
機械学習、その力強さ、
未来の技術、その可能性を語る。
用于翻译
translation_input_text = f"Translate the following poem from Japanese to English:\n\n{assistant_response}"
messages = [
{"role": "user", "content": translation_input_text},
]
outputs = pipe(messages, return_full_text=False, max_new_tokens=1024)
translated_response = outputs[0]["generated_text"].strip()
print(translated_response)
示例输出
## A Poem About Machine Learning
**1.**
A vast ocean of data, a deep expanse,
Complex patterns, hidden knowledge.
Machine learning, its strength so vast,
Predicting the future, opening the way.
**2.**
A neural network, with branches intricate,
A journey of learning, its process serene.
Learning from data, evolving in its form,
The precision of prediction, its strength.
**3.**
Supervised learning, guiding the correct answer,
Unsupervised learning, venturing into the unknown.
Machine learning, its evolution never ends,
Opening the doors to the future, a new era.
**4.**
Image recognition, speech recognition,
Complex tasks, finding the answer.
Machine learning, its strength so vast,
The possibilities of future technology, a story to be told.
**Explanation:**
The poem uses vivid imagery and metaphors to describe the power and potential of machine learning.
* **Data as an ocean:** Represents the vast amount of information available for learning.
* **Complex patterns:** Highlights the intricate nature of data and the challenges of extracting meaningful insights.
* **Future prediction:** Emphasizes the ability of machine learning to analyze data and make predictions about the future.
* **Neural network as a tree:** Represents the interconnectedness and complexity of the learning process.
* **Learning from data:** Focuses on the core principle of machine learning, where algorithms learn from data to improve their performance.
The poem concludes by highlighting the diverse applications of machine learning, such as image and speech recognition, and emphasizes its potential to shape the future of technology.
高级用法
在单GPU或多GPU上运行模型
# pip install accelerate
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
tokenizer = AutoTokenizer.from_pretrained("google/gemma-2-2b-jpn-it")
model = AutoModelForCausalLM.from_pretrained(
"google/gemma-2-2b-jpn-it",
device_map="auto",
torch_dtype=torch.bfloat16,
)
messages = [
{"role": "user", "content": "マシーンラーニングについての詩を書いてください。"},
]
inputs = tokenizer.apply_chat_template(messages, return_tensors="pt", add_generation_prompt=True, return_dict=True).to(model.device)
outputs = model.generate(**inputs, max_new_tokens=256)
generated_text = tokenizer.batch_decode(outputs[:, inputs['input_ids'].shape[1]:], skip_special_tokens=True)[0]
print(generated_text.strip())
在GPU上使用不同精度运行模型
该模型的原生权重以bfloat16
精度导出。如果你跳过指定数据类型,也可以使用float32
,但不会提高精度(模型权重只会被转换为float32
)。
转换为torch.float32
# pip install accelerate
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("google/gemma-2-2b-jpn-it")
model = AutoModelForCausalLM.from_pretrained(
"google/gemma-2-2b-jpn-it",
device_map="auto",
)
messages = [
{"role": "user", "content": "マシーンラーニングについての詩を書いてください。"},
]
inputs = tokenizer.apply_chat_template(messages, return_tensors="pt", add_generation_prompt=True, return_dict=True).to(model.device)
outputs = model.generate(**inputs, max_new_tokens=256)
generated_text = tokenizer.batch_decode(outputs[:, inputs['input_ids'].shape[1]:], skip_special_tokens=True)[0]
print(generated_text.strip())
📚 详细文档
输入与输出
- 输入:文本字符串,如问题、提示或待总结的文档。
- 输出:针对输入生成的日语文本,如问题的答案或文档的总结。
模型数据
训练数据集
这些模型在包含多种来源的文本数据集上进行训练,总计8万亿token。主要组成部分如下:
- 网页文档:多样化的网页文本确保模型接触到广泛的语言风格、主题和词汇,主要为英语内容。
- 代码:让模型接触代码有助于学习编程语言的语法和模式,提高生成代码或理解代码相关问题的能力。
- 数学:在数学文本上训练有助于模型学习逻辑推理、符号表示和处理数学查询。
- 指令数据集:大规模、高质量的日语和多语言指令数据。
这些不同数据源的组合对于训练一个能够处理各种不同任务和文本格式的强大语言模型至关重要。
数据预处理
以下是应用于训练数据的主要数据清理和过滤方法:
- CSAM过滤:在数据准备过程的多个阶段应用严格的CSAM(儿童性虐待材料)过滤,以确保排除有害和非法内容。
- 敏感数据过滤:为了使Gemma预训练模型安全可靠,使用自动化技术从训练集中过滤掉某些个人信息和其他敏感数据。
- 其他方法:根据我们的政策对内容质量和安全性进行过滤。
实现信息
硬件
Gemma使用最新一代的张量处理单元(TPU)硬件(TPUv5p)进行训练。
训练大型语言模型需要大量的计算能力。TPU专门为机器学习中常见的矩阵运算而设计,在这一领域具有以下优势:
- 性能:TPU专门用于处理训练大语言模型(LLM)涉及的大量计算,与CPU相比,可显著加速训练过程。
- 内存:TPU通常配备大量高带宽内存,允许在训练期间处理大型模型和批量大小,有助于提高模型质量。
- 可扩展性:TPU Pod(大型TPU集群)为处理大型基础模型日益增长的复杂性提供了可扩展的解决方案。可以在多个TPU设备上分布训练,以实现更快、更高效的处理。
- 成本效益:在许多情况下,与基于CPU的基础设施相比,TPU可以为训练大型模型提供更具成本效益的解决方案,尤其是考虑到更快的训练速度节省的时间和资源。
这些优势符合Google对可持续运营的承诺。
软件
使用JAX和ML Pathways进行训练。
JAX允许研究人员利用最新一代的硬件(包括TPU)进行更快、更高效的大型模型训练。
ML Pathways是Google构建能够跨多个任务进行泛化的人工智能系统的最新成果。这特别适用于基础模型,包括此类大型语言模型。
如关于Gemini系列模型的论文所述,JAX和ML Pathways一起使用:“Jax和Pathways的‘单控制器’编程模型允许单个Python进程编排整个训练运行,大大简化了开发工作流程。”
评估
为了评估该模型的质量,我们收集了多样化的日语提示,并使用LLM作为评判的方法与GPT - 3.5进行对比评估。评分系统基于7级评估,分别为MuchBetterThan、BetterThan、SlightlyBetterThan、AboutTheSame、SlightlyWorse、WorseThan、MuchWorseThan,对应的数值分数分别为1.5、1.0、0.5、0、 - 0.5、 - 1.0、 - 1.5。我们还跟踪了模型以正确语言回答的能力:对于日语提示,模型通常应使用日语回答,而不是默认使用英语。
基准测试 | Gemma - 2 - IT | Gemma - 2 - IT - JPN |
---|---|---|
与GPT - 3.5的偏好度 | -0.25 ± 0.05 | 0.03 ± 0.04 |
语言正确性 | 86.47% | 98.24% |
伦理与安全
评估方法
我们的评估方法包括结构化评估和对相关内容政策的内部红队测试。红队测试由多个不同团队进行,每个团队有不同的目标和人工评估指标。这些模型针对与伦理和安全相关的多个不同类别进行评估,包括:
- 文本到文本内容安全:对涵盖安全政策的提示进行人工评估,包括儿童性虐待和剥削、骚扰、暴力和血腥以及仇恨言论。
- 文本到文本代表性危害:与相关学术数据集进行基准对比。
- 记忆:自动评估对训练数据的记忆情况,包括个人身份信息暴露的风险。
- 大规模危害:测试“危险能力”,如化学、生物、放射和核(CBRN)风险。
使用与限制
预期用途
开放大语言模型(LLM)在各个行业和领域有广泛的应用。以下潜在用途列表并非详尽无遗,目的是提供模型创建者在模型训练和开发过程中考虑的可能用例的上下文信息。
- 内容创作与通信
- 文本生成:这些模型可用于生成创意文本格式,如诗歌、脚本、代码、营销文案和电子邮件草稿。
- 聊天机器人和对话式AI:为客户服务、虚拟助手或交互式应用程序提供对话界面。
- 文本总结:生成文本语料库、研究论文或报告的简洁总结。
- 研究与教育
- 自然语言处理(NLP)研究:这些模型可作为研究人员试验NLP技术、开发算法和推动该领域发展的基础。
- 语言学习工具:支持交互式语言学习体验,帮助进行语法纠正或提供写作练习。
- 知识探索:通过生成总结或回答特定主题的问题,帮助研究人员探索大量文本。
局限性
- 训练数据
- 训练数据的质量和多样性显著影响模型的能力。训练数据中的偏差或差距可能导致模型响应的局限性。
- 训练数据集的范围决定了模型能够有效处理的主题领域。
- 上下文和任务复杂性
- 大语言模型更擅长可以用清晰提示和指令描述的任务。开放式或高度复杂的任务可能具有挑战性。
- 模型的性能可能受提供的上下文量影响(在一定范围内,更长的上下文通常会产生更好的输出)。
- 语言歧义与细微差别
- 自然语言本质上是复杂的。大语言模型可能难以理解微妙的细微差别、讽刺或比喻语言。
- 事实准确性
- 大语言模型根据从训练数据集中学到的信息生成响应,但它们不是知识库,可能会生成不正确或过时的事实陈述。
- 常识
- 大语言模型依赖于语言中的统计模式,在某些情况下可能缺乏应用常识推理的能力。
伦理考虑与风险
大型语言模型(LLM)的开发引发了一些伦理问题。在创建开放模型时,我们仔细考虑了以下方面:
- 偏差与公平性
- 在大规模真实世界文本数据上训练的大语言模型可能反映训练材料中嵌入的社会文化偏差。这些模型经过了仔细审查,本卡片中描述了输入数据预处理和后续评估情况。
- 错误信息与滥用
- 大语言模型可能被滥用来生成虚假、误导或有害的文本。
- 提供了负责任使用模型的指南,见负责任的生成式AI工具包。
- 透明度与问责制
- 本模型卡片总结了模型的架构、能力、局限性和评估过程的详细信息。
- 负责任开发的开放模型为AI生态系统中的开发者和研究人员提供了使用LLM技术的机会,促进创新共享。
风险识别与缓解
- 偏差的延续:鼓励在模型训练、微调及其他用例中进行持续监测(使用评估指标、人工审查)并探索去偏技术。
- 有害内容的生成:内容安全机制和指南至关重要。鼓励开发者谨慎行事,并根据具体产品政策和应用用例实施适当的内容安全保障措施。
- 恶意用途:技术限制以及对开发者和最终用户的教育有助于减轻大语言模型的恶意应用。提供教育资源和用户举报滥用的机制,Gemma禁止使用政策中概述了Gemma模型的禁止用途。
- 隐私侵犯:模型在过滤掉个人身份信息(PII)的数据上进行训练。鼓励开发者遵守隐私法规并使用隐私保护技术。
优势
在发布时,与同等规模的模型相比,该系列模型提供了高性能的开放大语言模型实现,从底层设计就考虑了负责任的AI开发。
📄 许可证
本模型遵循gemma许可证。



