1
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?

2番煎じでDatabricks上でLlama-4を試してみる

Posted at

@taka_yayoiさん、流石めちゃめちゃ早い・・・!

導入

Meta社がLlama-4を公開しました。

現時点で一般公開されているのはLlama4 MaverickとScoutの2種ですが、Behemothという2T(!)の超巨大モデルも訓練中のようです。

いずれもMoEモデルであり、アクティブパラメータは総パラメータ数の一部であり、高速に推論が実行されます。

そして、Databricks社が即Databricks Platform上で利用できるようにしました。

解説記事も既に出ています。はやっ!!

Databricks上は上記モデルのうちMaverickがネイティブで2025年4月6日現在利用可能なようです。

テンションが高くなっているので、そのままの勢いで試してみます。
ちなみに、@taka_yayoiさんの記事と比べた新規要素はほとんどありません。
ほぼ純粋な2番煎じの内容となっております。

試行はDatabricks on AWSで行いました。
ノートブックではサーバレスクラスタを利用しています。

Playgroundで確認する

Playgroundを開くと、デフォルトのモデルが既にLlama4 Maverickになっていました。

image.png

現時点でツール対応はされてない模様。
この画面でモデルの詳細を見ると以下の通り。

image.png

100万トークンあたりの料金が表示上まだ設定されていませんね。
いくらになるんだろう。

それでは、デフォルトで用意されている「感情分析」を実行してみます。

image.png

ちょっと回答は遠慮がちな内容かな。
それはさておき、かなり高速に推論が実行されます。ほぼ同パラメータのLlama 3.1 405Bと比べて倍以上のスループットです。MoEモデルの恩恵ですね。

日本語も試してみましょう。

image.png

問題なく回答されますね。

コードから実行する

では、ノートブックを作成して、コードから推論してみます。

まずはOpenAIのフレームワークを使って実行。

必要なパッケージをインストール。

%pip install -U -qqqq databricks-langchain mlflow-skinny[databricks] openai
%restart_python

MLflow Tracingを有効化。

import mlflow

mlflow.openai.autolog()
mlflow.langchain.autolog()

openaiモジュールを使って推論してみます。
api_keyとbase_urlは事前にDatabricks Secretへ格納しているものとします。

from openai import OpenAI

api_key = dbutils.secrets.get(scope="llm-serve", key="api_token")
base_url = dbutils.secrets.get(scope="llm-serve", key="base_url")
client = OpenAI(api_key=api_key, base_url=base_url)

chat = client.chat.completions.create(
  messages=[
  {
    "role": "system",
    "content": "あなたは優秀なAIアシスタントです。"
  },
  {
    "role": "user",
    "content": "Databricksについて教えてください。"
  }
  ],
  model="databricks-llama-4-maverick",
)

print(chat.choices[0].message.content)

mlflow tracing含めた出力結果は以下の通り。

出力結果
Databricksは、Apache Sparkを基盤とするデータ処理および分析プラットフォームです。データエンジニアリング、データサイエンス、およびデータ分析のタスクをサポートするために設計されています。以下はDatabricksの主な特徴と利点です:

1. **Apache Sparkの統合**:DatabricksはApache Sparkを基盤としています。Sparkは、大規模なデータセットを高速に処理するためのオープンソースの分散処理エンジンです。DatabricksはSparkの機能をフル活用し、データのバッチ処理やストリーミング処理を効率的に行うことができます。

2. **クラウド対応**:Databricksは主要なクラウドプロバイダー(AWS、Azure、Google Cloud)で利用可能です。これにより、ユーザーはクラウドのスケーラビリティと柔軟性を活用して、大規模なデータ処理を実行できます。

3. **インタラクティブなワークスペース**:Databricksは、Jupyter Notebookに似たインタラクティブなノートブックを提供しています。これにより、データサイエンティストやアナリストは、Python、R、Scala、SQLなどの言語を使用して、データを探索し、可視化し、分析することができます。

4. **共同作業**:Databricksのワークスペースは、チームメンバー間の共同作業を促進します。ノートブックの共有、共同編集、コメント機能などがあり、データに関するインサイトをチーム全体で迅速に共有できます。

5. **セキュリティとコンプライアンス**:Databricksは、データのセキュリティとプライバシーを確保するための強力な機能を提供しています。データの暗号化、アクセス制御、監査ログなどの機能が含まれています。

6. **自動化とスケジューリング**:Databricksでは、ノートブックやジョブの自動化とスケジューリングが可能です。これにより、定期的なデータ処理タスクやレポートの生成を自動化できます。

7. **データの可視化とダッシュボード**:Databricksは、データを可視化するためのツールを提供しています。また、ダッシュボードを作成して、重要なメトリクスを追跡することもできます。

Databricksは、大規模なデータセットを扱う組織や、データ駆動型の意思決定を行いたい企業にとって強力なツールとなり得ます。データエンジニアリング、データサイエンス、データ分析の各領域での利用が想定されており、データ関連のタスクを効率化し、イノベーションを促進するのに役立ちます。

image.png

LangChain(databricks-langchain)も使ってみましょう。(唯一のオリジナル要素)

from databricks_langchain import ChatDatabricks

chat = ChatDatabricks(model="databricks-llama-4-maverick")
messages = [
    {"role": "system", "content": "あなたは優秀なAIアシスタントです。"},
    {"role": "user", "content": "Databricks社とMeta社の関係性を教えてください。"},
]

for c in chat.stream(messages):
    print(c.content, flush=True, end="")

出力結果は以下の通り。

出力結果
DatabricksとMetaは、Apache Sparkや機械学習などの分野で協力しています。Databricksは、Metaのエンジニアリングチームと協力して、Apache Sparkの開発と改善を行っています。また、Databricksは、Metaのデータ分析基盤の構築に使用されています。さらに、Databricksは、Metaの研究者と協力して、機械学習モデルの開発とデプロイを行っています。

image.png

さすがにこの程度の確認ではLlama4の実力値はさっぱりわからないのですが、エージェント用途への利用など、検証していきたいと思います。

まとめ

Llama-4をDatabricks上で試してみました。
4月2週目にリリースされるという噂は目にしていましたが、思ったより早く登場し、かつ即日Databricks上で利用可能になっていたので驚いています。
テンション高くなったままに記事を書いてみたので、内容おかしいところは多少目を瞑ってください。。。

1
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
1
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?