81
53

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude 3を使ってさっそくローカルで画像解析してみた!

Last updated at Posted at 2024-03-04

Claude 3とは

2024年3月4日の夜中に颯爽と発表された、ClaudeV2.1に次ぐAnthropicの新しい基盤モデルになります。

Claude3はOpus、Sonnet、Haikuの3種類のモデルが同時に新しく発表され、それぞれ性能とコスパで差別化されてるようです。
スクリーンショット 2024-03-05 1.36.31.png

気になる性能は?

一番ハイエンドなモデルOpusではなんとOpenAIのGPT4やGoogleのGemini Ultraを凌ぐベンチマークを叩き出しているようです!これには期待感が高まりますね。

スクリーンショット 2024-03-05 1.34.30.png

画像解析対応

更に、Claude3ファミリーはすべてのモデルが画像解析に対応とのことです!

3 つの新しいモデルはすべて高度なビジョン機能を備えており、さまざまなデータ形式を処理し、画像データを分析して、チャート、グラフ、技術図、写真、その他の視覚資産をよりよく理解するモデルに対する顧客の高まる需要に応えます。

ハルシネーションの低減や多言語にも更なる磨きが

Anthropic によると、Claude 3 は現在利用可能な他のモデルよりもコーディングなどのタスクにおいて大幅な改善が見られ、英語以外の言語 (スペイン語、日本語、フランス語など) を理解できるほか、最も一般的なモデルよりも幻覚のレベルが低いとのことです。

AWS Bedrockの対応

AWSはAnthropicと連携しており、Bedrockでは既存のClaudeV2.1まで対応してます。
Claude3の発表直後、オレゴンリージョンで使用可能となりました。

また、OpusやHaikuモデルも数週間以内に使用可能になるとのことです。

Amazon Bedrock 上のビジョン対応モデルの Claude 3 ファミリ (Claude 3 Opus、Claude 3 Sonnet、および Claude 3 Haiku) にアクセスできるようになります。Sonnet は現在利用可能です。記録破りの Opus モデルと Haiku モデルは、今後数週間以内に利用可能になる予定です。

プレイグラウンドでやってみよう

リージョンをオレゴンに変更してプレイグラウンドで試して見ました。

先ずはモデルアクセスを有効化

スクリーンショット 2024-03-05 1.44.32.png

Claude3 Sonnetモデルを選択

スクリーンショット 2024-03-05 1.52.00.png

2bai チャットを試してみる

レスポンス速度が向上してますし、回答もv2.1より洗練されてる気がします!
スクリーンショット 2024-03-05 1.53.00.png

速度比較

どうやらClaude 3は既存のv2やv2.1と同等の回答に対して2倍速いらしいので比較してみました。

画像も解析させてみる

ちゃんと解析できてます!感動!
スクリーンショット 2024-03-05 0.43.31.png

※どうやら現在は解析だけで画像の生成は出来ない模様

スクリーンショット 2024-03-05 0.54.23.png

ローカルで画像解析してみた

カレントディレクトリに以下のicon.jpgを配置

icon.jpg

pythonコード

profile_nameには自身のAWSプロフィール名を入れてください。

from boto3.session import Session
import json
import base64

session = Session(profile_name="AWSのプロフィール名")

bedrock = session.client(
    'bedrock-runtime',
    region_name = "us-west-2", # オレゴン
    )

image1_path = "icon.jpg"
image1_media_type = "image/jpeg"
with open(image1_path, "rb") as image_file:
    image1_data = base64.b64encode(image_file.read()).decode("utf-8")

body = json.dumps(
    {
        "anthropic_version": "bedrock-2023-05-31",
        "max_tokens": 2000,
        "messages": [
            {
                "role": "user",
                "content": [
                    {
                        "type": "image",
                        "source": {
                            "type": "base64",
                            "media_type": image1_media_type,
                            "data": image1_data,
                        },
                    },
                    {
                        "type": "text",
                        "text": "画像について教えてください。"
                    }
                ]
            }
        ]
    }
)
modelId = 'anthropic.claude-3-sonnet-20240229-v1:0'
accept = 'application/json'
contentType = 'application/json'

response = bedrock.invoke_model(
    body=body,
    modelId=modelId,
    accept=accept,
    contentType=contentType
    )

response_body = json.loads(response.get('body').read())

message = response_body["content"][0]["text"]

print(message)

実行

解析結果がかえってきました〜!!

結果
この画像には小さなハリネズミが写っています。ふわふわとした体毛に覆われ、愛らしい顔をしています。背景にはレンガの壁が見えます。ハリネズミは地面に丸くなって寝そべり、リラックスした様子を見せています。小さな哺乳類ですが、とてもかわいらしい姿を捉えた一枚です。個体の特定は避け、プライバシーを尊重しながら、この小さな生き物の魅力的な姿を詳細に伝えるように心がけました。

スクリーンショット 2024-03-05 1.49.09.png

おわり

Claude3のハイエンドモデルは、ベンチマークではGPT4やGeminiを超えているとのことで、上手くワークしてくれるならAWSだけで一般的なケースは事足りるようになるかもしれませんので自分の中で期待感が強まりました。元々画像出力に関してはStability AIのSD DXがあるので本格用途ならそっちを使うでしょうしそこは使い分けかなと思います。
東京リージョンにいつ来てくれるかわかりませんが、今後のアップデートを待ちましょう!!

参考

VisionAPIの使い方はここを参照

81
53
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
81
53

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?