3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

生成AIAdvent Calendar 2024

Day 11

OLMo-2–1124–7B-Instruct: 安全性と実用性を兼ね備えた次世代LLM

Posted at

OLMo-2–1124–7B-Instructとは?

OLMo-2–1124–7B-Instructは、7億パラメータを持つAI2の指示チューニングモデルの一つです。このモデルは、コード生成や対話型AI、高度な推論タスクに特化しています。また、AI2の「OLMoイニシアティブ」の一環として開発されており、オープンソースの利点を活かして研究者や開発者が自由に活用できるよう設計されています。

主な特徴:

  1. 指示チューニング(Instruction Fine-Tuning)
    高品質なタスク固有のデータセットを用いて、ユーザー指示に対応する能力を強化。

  2. 対話最適化(Dialogue Preference Optimization, DPO)
    ユーザーの好みに合わせた自然な応答を生成。

  3. 価値正則化による強化学習(Reinforcement Learning with Value Regularization, RLVR)
    安全で文脈に沿った出力を可能にする独自の技術。

OLMo-2の重要性

オープンソースモデルの意義

OLMo-2シリーズは、透明性を重視しており、学習データ、モデルのチェックポイント、ログがすべて公開されています。この取り組みにより、研究者や開発者はモデルの内部構造を詳細に解析でき、再現性を確保しつつさらなるイノベーションを促進できます。

また、OLMo-2はコード、データ、手法を共有することで、AI研究を少数の大企業に依存させない開かれたエコシステムを形成しています。

性能の概要

OLMo-2–1124–7B-Instructは、さまざまなタスクで優れた性能を発揮します。

主なベンチマーク結果:

  1. GSM8K(数学問題解決)
    強力な推論能力を発揮し、複雑な数学問題に対応可能。

  2. MMLU(多タスク言語理解)
    多岐にわたるタスクで競争力のある結果を達成。

  3. 安全性ベンチマーク
    有害な出力のリスクを軽減する改善が見られるが、さらなるフィルタリングが推奨される。

特に指示チューニングと強化学習のプロセスにより、構造化された会話や専門的なタスクで卓越した性能を発揮します。

導入手順

OLMo-2–1124–7B-Instructを活用するためには、以下の手順に従います:

  1. ライブラリのインストール
    まず、必要なライブラリをインストールします。
Copy code
!pip install torch
!pip install --upgrade git+https://github.com/huggingface/transformers.git
!pip install git+https://github.com/huggingface/accelerate
!pip install huggingface_hub
  1. モデルの初期化
    Hugging Faceのpipelineを使用して、モデルを初期化します。
import torch
from transformers import pipeline

model_id = "allenai/OLMo-2-1124-7B-Instruct"
text_gen_pipeline = pipeline(
    "text-generation",
    model=model_id,
    model_kwargs={"torch_dtype": torch.bfloat16},
    device_map="auto",
)
  1. プロンプトを使った応答生成
    以下のように、プロンプトを提供して応答を生成できます。
prompt = "Which of these objects is not like the others: apple, banana, potato, chair?"
messages = [
    {"role": "system", "content": "You are a helpful assistant!"},
    {"role": "user", "content": prompt},
]

outputs = text_gen_pipeline(messages, max_new_tokens=1024)
output_text = outputs[0]["generated_text"]
print(output_text)
3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?