Amazon BedrockでSentence Embeddingを取得する
2023/9/29 22:25:00
import boto3
import json
bedrock_runtime = boto3.client('bedrock-runtime', region_name="us-east-1")
def handler(event, context):
# プロンプトに設定する内容を取得
prompt = event.get('prompt')
# 各種パラメーターの指定
modelId = 'amazon.titan-embed-text-v1'
accept = 'application/json'
contentType = 'application/json'
# リクエストBODYの指定
body = json.dumps({
"inputText": prompt,
})
# Bedrock APIの呼び出し
response = bedrock_runtime.invoke_model(
modelId=modelId,
accept=accept,
contentType=contentType,
body=body
)
# APIレスポンスからBODYを取り出す
response_body = json.loads(response.get('body').read())
print(response_body)
# レスポンスBODYから応答テキストを取り出す
embedding = response_body.get('embedding')
return embedding
コードの改変元
https://dev.classmethod.jp/articles/invoke-bedrock-form-lambda-function/