ゼファーネットのロゴ

GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める – KDnuggets

日付:

GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める
著者による画像 

Anthropic は最近、ベンチマーク テストで GPT-4 と Gemini の両方を上回る新しい AI モデル シリーズを発表しました。 AI 業界の急速な成長と進化に伴い、Claude 3 モデルは大規模言語モデル (LLM) の次の目玉として大きな進歩を遂げています。

このブログ投稿では、Claude の 3 つのモデルのパフォーマンス ベンチマークを調査します。また、拡張されたビジョン機能とともに、シンプルで非同期のストリーム応答生成をサポートする新しい Python API についても学習します。

Claude 3 は、AI テクノロジーの分野における大きな進歩です。 MMLU、GPQA、GSM8K などのさまざまな評価ベンチマークで最先端の言語モデルを上回り、複雑なタスクにおける人間に近いレベルの理解力と流暢さを実証します。

Claude 3 モデルには XNUMX つのバリエーションがあります。 俳句、ソネット、オーパス、それぞれに独自の機能と強みがあります。

  1. 俳句 は最速かつ最もコスト効率の高いモデルで、情報密度の高い研究論文を 3 秒以内に読み取り、処理できます。
  2. Sonnet Claude 2 および 2 よりも 2.1 倍高速であり、ナレッジ検索やセールスオートメーションなど、迅速な応答が要求されるタスクに優れています。
  3. 作品 Claude 2 および 2.1 と同様の速度を実現しますが、はるかに高いレベルのインテリジェンスを備えています。

以下の表によると、Claude 3 Opus はすべての LLM ベンチマークで GPT-4 および Gemini Ultra を上回り、AI 界の新たなリーダーとなりました。

GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める
からのテーブル クラウディア3 

Claude 3 モデルの大幅な改良点の XNUMX つは、強力な視覚機能です。写真、チャート、グラフ、技術図などのさまざまなビジュアル形式を処理できます。

GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める
からのテーブル クラウディア3 

最新モデルの使用を開始するには、次のリンクをクリックしてください。 https://www.anthropic.com/claude そして新しいアカウントを作成します。 OpenAI プレイグラウンドと比較すると、非常にシンプルです。

GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める 

  1. Python パッケージをインストールする前に、次の場所に移動する必要があります。 https://console.anthropic.com/dashboard そしてAPIキーを取得します。 
    GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める 
  2. クライアント オブジェクトを作成するために API キーを直接提供する代わりに、`ANTHROPIC_API_KEY` 環境変数を設定し、それをキーとして提供できます。
  3. PIP を使用して「anthropic」Python パッケージをインストールします。
pip install anthropic
  1. APIキーを使用してクライアントオブジェクトを作成します。テキストの生成、ビジョン機能へのアクセス、ストリーミングにクライアントを使用します。
import os
import anthropic
from IPython.display import Markdown, display

client = anthropic.Anthropic(
    api_key=os.environ["ANTHROPIC_API_KEY"],
)

古い Python API がまだ動作するかどうかをテストしてみましょう。モデル名、最大トークン長、およびプロンプトを含む完了 API を提供します。

from anthropic import HUMAN_PROMPT, AI_PROMPT

completion = client.completions.create(
    model="claude-3-opus-20240229",
    max_tokens_to_sample=300,
    prompt=f"{HUMAN_PROMPT} How do I cook a original pasta?{AI_PROMPT}",
)
Markdown(completion.completion)

このエラーは、「claude-3-opus-20240229」モデルに古い API を使用できないことを示しています。代わりにメッセージ API を使用する必要があります。

GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める 

Messages API を使用して応答を生成しましょう。プロンプトの代わりに、メッセージ引数に役割とコンテンツを含む辞書のリストを指定する必要があります。

Prompt = "Write the Julia code for the simple data analysis."
message = client.messages.create(
    model="claude-3-opus-20240229",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": Prompt}
    ]
)
Markdown(message.content[0].text)

IPython Markdown を使用すると、応答が Markdown 形式で表示されます。つまり、箇条書き、コードブロック、見出し、リンクがきれいに表示されます。

GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める 

応答をカスタマイズするためのシステム プロンプトも提供できます。私たちの場合は、Claude 3 Opus にウルドゥー語で応答するよう依頼しています。

client = anthropic.Anthropic(
    api_key=os.environ["ANTHROPIC_API_KEY"],
)

Prompt = "Write a blog about neural networks."

message = client.messages.create(
    model="claude-3-opus-20240229",
    max_tokens=1024,
    system="Respond only in Urdu.",
    messages=[
        {"role": "user", "content": Prompt}
    ]
)

Markdown(message.content[0].text)

オーパスモデルはかなり良いです。つまり、かなりはっきりと理解できるのです。

GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める 

同期 API は API リクエストを順番に実行し、応答が受信されるまでブロックしてから次の呼び出しを呼び出します。一方、非同期 API は、ブロックすることなく複数の同時リクエストを許可し、より効率的でスケーラブルになります。

  1. Async Anthropic クライアントを作成する必要があります。
  2. main関数をasyncで作成します。
  3. await 構文を使用して応答を生成します。
  4. await 構文を使用して main 関数を実行します。
import asyncio
from anthropic import AsyncAnthropic

client = AsyncAnthropic(
    api_key=os.environ["ANTHROPIC_API_KEY"],
)


async def main() -> None:

    Prompt = "What is LLMOps and how do I start learning it?"
       
    message = await client.messages.create(
        max_tokens=1024,
        messages=[
            {
                "role": "user",
                "content": Prompt,
            }
        ],
        model="claude-3-opus-20240229",
    )
    display(Markdown(message.content[0].text))


await main()

GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める 

注: Jupyter Notebook で async を使用している場合は、asyncio.run(main()) の代わりに await main() を使用してみてください。

ストリーミングは、完全な応答を待たずに、言語モデルの出力が使用可能になるとすぐに処理できるようにするアプローチです。このメソッドは、出力トークンを一度に返すのではなくトークンごとに返すことにより、認識される待ち時間を最小限に抑えます。

「messages.create」の代わりに、応答ストリーミングに「messages.stream」を使用し、応答から複数の単語が利用可能になるとすぐにループを使用して表示します。

from anthropic import Anthropic

client = anthropic.Anthropic(
    api_key=os.environ["ANTHROPIC_API_KEY"],
)


Prompt = "Write a mermaid code for typical MLOps workflow."


completion = client.messages.stream(
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": Prompt,
        }
    ],
    model="claude-3-opus-20240229",
)

with completion as stream:
    for text in stream.text_stream:
            print(text, end="", flush=True)

ご覧のとおり、応答は非常に高速に生成されています。

GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める 

ストリーミングでも非同期関数を使用できます。創造力を発揮してそれらを組み合わせるだけです。

import asyncio
from anthropic import AsyncAnthropic

client = AsyncAnthropic()

async def main() -> None:
   
    completion = client.messages.stream(
        max_tokens=1024,
        messages=[
            {
                "role": "user",
                "content": Prompt,
            }
        ],
        model="claude-3-opus-20240229",
    )
    async with completion as stream:
        async for text in stream.text_stream:
            print(text, end="", flush=True)

await main()

GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める 

Claude 3 Vision は時間の経過とともに改善されており、応答を取得するには、base64 タイプの画像をメッセージ API に提供するだけで済みます。

この例では、 チューリップ (画像1)と フラミンゴ (画像 2) Pexel.com からの写真を使用して、画像に関する質問をすることで応答を生成します。

GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める 

「httpx」ライブラリを使用して両方の画像を pexel.com から取得し、base64 エンコードに変換します。

import anthropic
import base64
import httpx

client = anthropic.Anthropic()

media_type = "image/jpeg"

img_url_1 = "https://images.pexels.com/photos/20230232/pexels-photo-20230232/free-photo-of-tulips-in-a-vase-against-a-green-background.jpeg"

image_data_1 = base64.b64encode(httpx.get(img_url_1).content).decode("utf-8")

img_url_2 = "https://images.pexels.com/photos/20255306/pexels-photo-20255306/free-photo-of-flamingos-in-the-water.jpeg"

image_data_2 = base64.b64encode(httpx.get(img_url_2).content).decode("utf-8")

Base64 でエンコードされた画像を画像コンテンツ ブロック内のメッセージ API に提供します。応答を正常に生成するには、以下に示すコーディング パターンに従ってください。

message = client.messages.create(
    model="claude-3-opus-20240229",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": media_type,
                        "data": image_data_1,
                    },
                },
                {
                    "type": "text",
                    "text": "Write a poem using this image."
                }
            ],
        }
    ],
)
Markdown(message.content[0].text)

チューリップについての美しい詩をもらいました。

GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める 

複数の画像を同じ Claude 3 メッセージ API にロードしてみましょう。

message = client.messages.create(
    model="claude-3-opus-20240229",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "text",
                    "text": "Image 1:"
                },
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": media_type,
                        "data": image_data_1,
                    },
                },
                {
                    "type": "text",
                    "text": "Image 2:"
                },
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": media_type,
                        "data": image_data_2,
                    },
                },
                {
                    "type": "text",
                    "text": "Write a short story using these images."
                }
            ],
        }
    ],
)
Markdown(message.content[0].text)

チューリップとフラミンゴの庭園についての短い物語があります。

GPT-3 と Gemini を破壊したばかりの Claude 4 Opus を始める 

コードの実行に問題がある場合は、次の手順を参照してください。 ディープノートワークスペース コードを自分でレビューして実行できます。

GPT-3 や Gemini ほど高速ではないかもしれませんが、Claude 4 Opus は有望なモデルだと思います。有料ユーザーの方が速度が速い可能性があると思います。

このチュートリアルでは、Claude 3 と呼ばれる Anthropic の新しいモデル シリーズについて学び、そのベンチマークを確認し、ビジョン機能をテストしました。また、単純な非同期応答、およびストリーム応答を生成する方法も学びました。それが最高の LLM であるかどうかを判断するのは時期尚早ですが、公式テスト ベンチマークを見ると、AI の王座に新しい王が誕生しました。

 
 

アビッド・アリ・アワン (@ 1abidaliawan)は、機械学習モデルの構築を愛する認定データサイエンティストの専門家です。 現在、彼はコンテンツの作成と、機械学習とデータサイエンステクノロジーに関する技術ブログの執筆に注力しています。 Abidは、技術管理の修士号と電気通信工学の学士号を取得しています。 彼のビジョンは、精神疾患に苦しんでいる学生のためにグラフニューラルネットワークを使用してAI製品を構築することです。

スポット画像

最新のインテリジェンス

スポット画像