Lambda(Python)からテキスト生成AI(Titan)を呼び出す – 【Amazon Bedrock】

Lambda(Python)からテキスト生成AI(Titan)を呼び出す – 【Amazon Bedrock】

Lambda(Python)からAmazon Titan Text G1 – Expressを呼び出してみます。

プレイグラウンドで試したことをLambdaでやってみます。

前提

Lambda…東京

Amazon Bedrock…バージニア北部

APIリクエスト

APIリクエストは「プロバイダー」-「Titan Text G1 – Express」に記載されています。

Python

ソースです。

import json
import boto3

bedrock = boto3.client('bedrock-runtime','us-east-1')
def lambda_handler(event, context):
    prompt = event['prompt']
    
    payload = json.dumps({
        "inputText": prompt,
        "textGenerationConfig":{
            "maxTokenCount": 4096,
            "stopSequences": [],
            "temperature": 0,
            "topP": 1
        }
    })
    
    response = bedrock.invoke_model(
        body=payload,
        modelId="amazon.titan-text-express-v1",
        contentType="application/json",
        accept="application/json"
    )
    response_body = json.loads(response.get('body').read())
    print(response_body)
    outputText = response_body.get('results')[0].get('outputText')
    print(outputText)
    return {
        'statusCode': 200,
        'body': json.dumps(outputText)
    }

テストイベントです。

{
  "prompt": "Is amazon bedrock useful?"
}

インラインポリシー

インラインポリシーをアタッチします。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Statement1",
            "Effect": "Allow",
            "Action": [
                "bedrock:InvokeModel"
            ],
            "Resource": [
                "arn:aws:bedrock:us-east-1::foundation-model/amazon.titan-text-express-v1"
            ]
        }
    ]
}

テスト

マネジメントコンソールからテストします。

レスポンスボディに生成AIからの結果が返ってきています。

ドキュメント

生成 AI の基盤モデル – Amazon Titan – AWS
Amazon が提供する高性能な基盤モデル (FM) を活用して、責任あるイノベーションを推進します。
Amazon Titan Text モデル - Amazon Bedrock
Amazon Titan テキストモデルには、Amazon Titan Text G1 - Express と Amazon が含まれます Titan Text G1 - Lite 。

コメント

株式会社CONFRAGE ITソリューション事業部をもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む

タイトルとURLをコピーしました