LoginSignup
16
9
記事投稿キャンペーン 「AI、機械学習」

話題の言語モデルLlama 2がAmazon Bedrockに登場! 宇宙最速で触ってみた

Last updated at Posted at 2023-11-13

概要

今朝2023/11/14未明、AWSの生成AIサービスAmazon Bedrockで利用可能な言語モデルとしてMeta社のLlama 2が追加されました!

AWSさんのBedrock資料でもたびたび紹介されていたコイツですね。ようやくBedrockでも実際に利用可能となりました。

aws07.jpg

AWSの公式ブログで紹介されている内容の抜粋です。

  • Llama 2のベースモデルは、オンラインの公開データソースから2兆トークンで事前トレーニングされています。
  • ベースモデルの上に構築されたLlama 2 Chatモデルは、ダイアログユースケース用に最適化されています。これは、人間のフィードバックからの強化学習(RLHF)として知られる技術で、100万以上の人間のアノテーションで微調整されており、Metaによってテストされています。これにより、チャットユースケースでのパフォーマンスのギャップを特定し、攻撃的または不適切な応答などの問題のある応答を緩和します。

Llama 2の何がすごいの?

Llama 2はFacebookやInstagramで有名なMeta社が今年の7月に公開したオープンソースのLLM(大規模言語モデル)です。

Llama 2が話題を呼んでいる理由は

  • オープンソースで公開されているため、自分の組織で研究や商用利用ができる
  • その中でも、LLMの精度に影響する「パラメーター数」が大きい(本家は70Bまで公開)

という点で、欧米圏ではオープンなLLMとしてデファクトスタンダードになりつつあるようです。

触ってみた

AWSマネジメントコンソールにログインし、Amazon Bedrockコンソールにアクセス。Model Access を開きます。

スクリーン ショット 2023-11-14 に 07.53.54 午前.png

us-east-1およびus-west-2リージョンにMetaのLlama 2 Chat 13Bが出現しています!ついでに今朝同時リリースのCohere追加モデルもいますね。右上の Manage model access からまとめて有効化しちゃいましょう。

スクリーン ショット 2023-11-14 に 07.56.41 午前.png

すべて選択して Save changes します。

スクリーン ショット 2023-11-14 に 07.58.40 午前.png

わりと一瞬でAccess grantedされました。

スクリーン ショット 2023-11-14 に 08.00.33 午前.png

マネコンから呼び出してみる

PlaygroundsのChatからLlama 2を試すことができます。

 スクリーン ショット 2023-11-14 に 08.22.57 午前.png

オープンソースの言語モデルって何がすごいの? と聞いてみました。

スクリーン ショット 2023-11-14 に 08.25.29 午前.png

いい感じに答えてくれていますが、英語で返ってきますねw 和訳してもらおうとしましたが、そのままだと日本語には対応していないようです。(Amazon Titanと違って、入力は日本語でも受け付けてくれるようです)

スクリーン ショット 2023-11-14 に 08.27.38 午前.png

APIからPythonで呼び出してみる

PCのローカルに test.py というPythonファイルを作って試しに実行してみます。ホームディレクトリ配下の設定ファイルを確認し、AWSの認証設定はLlama 2を有効化したAWSアカウント&リージョンに向けておきましょう。

スクリーン ショット 2023-11-14 に 08.40.21 午前.png

公式ブログに倣って、まずはBedrockのモデル一覧を取得してみます。

test.py
import boto3

bedrock = boto3.client(service_name='bedrock', region_name='us-east-1')
listModels = bedrock.list_foundation_models(byProvider='meta')
print("\n".join(list(map(lambda x: f"{x['modelName']} : { x['modelId'] }", listModels['modelSummaries']))))

AWS SDKのバージョンは特に上げていませんが、ちゃんとLlama 2のモデルIDが返却されてきました。

Llama 2 Chat 13B : meta.llama2-13b-chat-v1

それでは実際にプロンプトを入れてInvokeしてみましょう。AWS公式ブログのサンプルをベースに、応答が途切れないよう 'max_gen_len' を少し大きくしました。

test.py
import boto3
import json

llamaModelId = 'meta.llama2-13b-chat-v1' 
prompt = "KDDIアジャイル開発センターってどんな会社?"

llamaPayload = json.dumps({ 
	'prompt': prompt,
    'max_gen_len': 1024,
	'top_p': 0.9,
	'temperature': 0.2
})

bedrock_runtime = boto3.client(
    service_name='bedrock-runtime', 
    region_name='us-east-1'
)
response = bedrock_runtime.invoke_model(
    body=llamaPayload, 
    modelId=llamaModelId, 
    accept='application/json', 
    contentType='application/json'
)
body = response.get('body').read().decode('utf-8')
response_body = json.loads(body)
print(response_body['generation'].strip())

すると、なんと日本語で応答が返ってきました!

KDDIアジャイル開発センターは、KDDIの子会社であり、ソリューション開発やアジャイル開発を行う会社です。

以下は、KDDIアジャイル開発センターの特徴やサービスの一例です。

1. アジャイル開発のエキスパートise
KDDIアジャイル開発センターは、アジャイル開発において多くの成功例を持つエキスパートです。彼らは、クライアントのニーズに応えるために、最新のテクノロジーと方法を適用しています。
2. ソリューション開発
KDDIアジャイル開発センターは、クライアントのニーズに応えるために、各種のソリューションを開発しています。これらのソリューションは、Webアプリケーション、モバイルアプリケーション、クラウドサービスなど、多岐にわたっています。
3. アジャイル開発方法の適用
KDDIアジャイル開発センターは、アジャイル開発方法を適用して、クライアントのニーズに応えるために最適なソリューションを開発しています。これらの方法には、スクラム、ケニー・ロジャース、デザインドリブンなどが含まれます。
4. クラウドサービスの提供
KDDIアジャイル開発センターは、クラウドサービスを提供しています。これらのサービスには、AWS、Google Cloud Platform、Microsoft Azureなどのマjorクラウドプラットフォームが含まれます。
5. インキュベートの支援
KDDIアジャイル開発センターは、スタートアップ企業や新興企業のインキュベートを支援しています。彼らは、創造的なアイデアや新しいビジネスモデルを持つ企業に対して、技術的な支援や経営的な支援を提供しています。

KDDIアジャイル開発センターは、アジャイル開発、ソリューション開発、クラウドサービス、インキュベートなど、多岐にわたるサービスを提供しています。彼らは、クライアントのニーズに応えるために、最新のテクノロジーと方法を適用しています。

ちょいちょい謎のアルファベットが混じっていますが、全体として自然な日本語ですね。(内容は一部、正確でないところがありますのでご容赦ください)

気になるお値段は…

めちゃくちゃ安いようです!

スクリーン ショット 2023-11-14 に 09.44.20 午前.png

入力トークンあたりの単価を比べると、Claudeの通常モデルと比べると15分の1ぐらいの激安価格。性能重視のお手軽モデルClaude Instantと比べても半分以下のお値段です。

スクリーン ショット 2023-11-14 に 09.44.32 午前.png

言語設定を英語にしないとLlama 2など新しいモデルの料金が表示されないのでご注意ください。

おわりに

みなさんもお手元のAWSアカウントで、ぜひ試してみましょう!
Meta公式のLlama学習ノートブックも公開されているようです。

16
9
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
16
9