{"id":24682,"date":"2023-09-30T02:13:27","date_gmt":"2023-09-29T17:13:27","guid":{"rendered":"https:\/\/www.skyarch.net\/blog\/?p=24682"},"modified":"2023-10-04T18:04:03","modified_gmt":"2023-10-04T09:04:03","slug":"%e7%a5%9dga-amazon-bedrock%e3%81%a7%e5%af%be%e5%bf%9c%e8%80%85%e3%81%ab%e8%a6%aa%e5%88%87%e3%81%aa%e7%9b%a3%e8%a6%96%e3%82%b7%e3%82%b9%e3%83%86%e3%83%a0%e6%a7%8b%e7%af%89%e3%82%92%e7%9b%ae%e6%8c%87","status":"publish","type":"post","link":"https:\/\/www.skyarch.net\/blog\/%e7%a5%9dga-amazon-bedrock%e3%81%a7%e5%af%be%e5%bf%9c%e8%80%85%e3%81%ab%e8%a6%aa%e5%88%87%e3%81%aa%e7%9b%a3%e8%a6%96%e3%82%b7%e3%82%b9%e3%83%86%e3%83%a0%e6%a7%8b%e7%af%89%e3%82%92%e7%9b%ae%e6%8c%87\/","title":{"rendered":"\u795dGA! Amazon Bedrock\u3067\u5bfe\u5fdc\u8005\u306b\u89aa\u5207\u306a\u76e3\u8996\u30b7\u30b9\u30c6\u30e0\u69cb\u7bc9\u3092\u76ee\u6307\u3057\u3066\u307f\u308b"},"content":{"rendered":"<h2>\u306f\u3058\u3081\u306b<\/h2>\n<p>\u795d\uff01GA (\u4e00\u822c\u63d0\u4f9b\u958b\u59cb) \u3068\u306a\u3063\u305fAmazon Bedrock\u3092\u4f7f\u3044\u3001\u305b\u3063\u304b\u304f\u306a\u306e\u3067\u4f55\u304b\u7d20\u6575\u306a\u6d3b\u7528\u6cd5\u3092\u30ef\u30af\u30ef\u30af\u3057\u306a\u304c\u3089\u8003\u3048\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u3002<\/p>\n<h2>\u76ee\u6b21<\/h2>\n<ul>\n<li><a href=\"#overview\">\u6982\u8981<\/a><\/li>\n<li><a href=\"#env\">\u5b9f\u884c\u74b0\u5883<\/a><\/li>\n<li><a href=\"#tejun\">\u5b9f\u65bd\u5185\u5bb9<\/a><\/li>\n<li><a href=\"#response\">\u30d7\u30ed\u30f3\u30d7\u30c8\/\u5fdc\u7b54<\/a>\n<ul>\n<li><a href=\"#response-jurassic2\">Jurassic-2 Ultra<\/a><\/li>\n<li><a href=\"#response-claude-v2\">Claude-v2<\/a><\/li>\n<li><a href=\"#response-gpt-4\">GPT-4<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"#matome\">\u307e\u3068\u3081<\/a><\/li>\n<\/ul>\n<h2 id=\"overview\">\u6982\u8981<\/h2>\n<p>\u81ea\u3089\u306e\u7d4c\u9a13\u304b\u3089\u3067\u3059\u304c\u3001\u30b7\u30b9\u30c6\u30e0\u76e3\u8996\u306e\u304a\u4ed5\u4e8b\u306f24\/365 \u6642\u9593\u3092\u554f\u308f\u306a\u3044\u305f\u3081\u5927\u5909\u306a\u4f5c\u696d\u3067\u3059\u3002<br \/>\n\u30af\u30e9\u30a6\u30c9\u306e\u9032\u5316\u306b\u3088\u3063\u3066\u3001\u8f9b\u3044\u90e8\u5206\u304b\u3089\u89e3\u653e\u3055\u308c\u3064\u3064\u3042\u308a\u307e\u3059\u304c\u3001\u3044\u3056\u30b7\u30b9\u30c6\u30e0\u306b\u30a8\u30e9\u30fc\/\u30c8\u30e9\u30d6\u30eb\u304c\u767a\u751f\u3057\u305f\u969b\u306b\u306f\u6e96\u5099\u3055\u308c\u305f\u624b\u9806\u3060\u3051\u3067\u306f\u4e0d\u6e2c\u306e\u4e8b\u614b\u3082\u767a\u751f\u3059\u308b\u305f\u3081\u3001\u5c11\u3057\u3067\u3082\u30d2\u30f3\u30c8\u306b\u306a\u308b\u3088\u3046\u306a\u5185\u5bb9\u3092AI\u306b\u793a\u5506\u3057\u3066\u3082\u3089\u3048\u306a\u3044\u304b\u3068\u3001\u65e9\u901fBedrock\u306b\u3066\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u3002<\/p>\n<ul>\n<li>\u8ffd\u8a18 \uff110\/2 Anthropic Claude v2\u3092\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u306e\u3067\u3001\u8ffd\u52a0\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u3002<\/li>\n<li>\u8ffd\u8a18 \uff110\/3 \u6771\u4eac\u30ea\u30fc\u30b8\u30e7\u30f3\u3067\u3082\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\uff01\u3067\u3059\u304c\u5229\u7528\u3067\u304d\u308b\u30e2\u30c7\u30eb\u306f\u5c11\u306a\u3081\u306a\u306e\u3067us-east-1\u6307\u5b9a\u306f\u3053\u306e\u307e\u307e\u3067...<\/li>\n<\/ul>\n<h2 id=\"env\">\u5b9f\u884c\u74b0\u5883<\/h2>\n<p>\u60f3\u5b9a\u3059\u308b\u30b7\u30b9\u30c6\u30e0\u306f\u3053\u306e\u3088\u3046\u306a\u611f\u3058\u3067\u3059\u3002\uff08\u53f3\u5074\u304c\u4eca\u56de\u306e\u30e1\u30a4\u30f3)<\/p>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/architecture-1024x578.png\" alt=\"\" width=\"728\" height=\"411\" class=\"aligncenter size-large wp-image-24684\" srcset=\"https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/architecture-1024x578.png 1024w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/architecture-300x169.png 300w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/architecture-768x433.png 768w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/architecture-1536x867.png 1536w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/architecture-2048x1156.png 2048w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/architecture-728x411.png 728w\" sizes=\"auto, (max-width: 728px) 100vw, 728px\" \/>\n<h2 id=\"tejun\">\u5b9f\u65bd\u5185\u5bb9<\/h2>\n<h3>1. Bedrock\u306b\u3066\u3069\u306eModel\u3092\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u306b\u3059\u308b\u304b\u8a2d\u5b9a<\/h3>\n<p>Anthropic Claude \u3092\u4f7f\u3063\u3066\u307f\u305f\u304b\u3063\u305f\u306e\u3067\u3059\u304c\u3001\u5225\u9014\u7533\u3057\u8fbc\u307f\u304c\u5fc5\u8981\u306a\u305f\u3081\u3001AI21 Labs Jurassic-2 Ultra\u3092\u9078\u5b9a\u3057\u307e\u3057\u305f\u3002<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/model_access-1024x501.png\" alt=\"\" width=\"728\" height=\"356\" class=\"aligncenter size-large wp-image-24686\" srcset=\"https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/model_access-1024x501.png 1024w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/model_access-300x147.png 300w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/model_access-768x376.png 768w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/model_access-1536x752.png 1536w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/model_access-2048x1002.png 2048w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/model_access-728x356.png 728w\" sizes=\"auto, (max-width: 728px) 100vw, 728px\" \/><\/p>\n<h3>2. Bedrock\u547c\u3073\u51fa\u3057\u7528Lambda\u3092\u30c7\u30d7\u30ed\u30a4(CDK)<\/h3>\n<p>Python\u30e9\u30f3\u30bf\u30a4\u30e0\u3068\u3057\u3066\u6700\u65b0\u306e\u3082\u306e\u3092\u9078\u5b9a\u3057\u3066\u3082\u3001boto3\u30d0\u30fc\u30b8\u30e7\u30f3\u304cBedrock\u306b\u5bfe\u5fdc\u3057\u3066\u3044\u306a\u3044\u30d0\u30fc\u30b8\u30e7\u30f3\u3060\u3063\u305f\u305f\u3081\u3001\u6700\u65b0\u306eboto3\u3092\u5165\u308c\u305fLayer\u3092\u4f5c\u6210\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3057\u305f\u3002<\/p>\n<pre nums=\"false\" toolbar=\"false\">\nbedrock = boto3.client(service_name='bedrock-runtime', region_name='us-east-1')\n<\/pre>\n<p>\u4e0a\u8a18\u30b3\u30fc\u30c9\u3092\u5b9f\u884c\u6642\u306b\u3001\u4e0b\u8a18\u306e\u3088\u3046\u306a\u30a8\u30e9\u30fc\u304c\u51fa\u307e\u3057\u305f\u3002<\/p>\n<pre nums=\"false\" toolbar=\"false\">\n\"errorMessage\": \"Unknown service: 'bedrock-runtime'\"\n<\/pre>\n<p>\u305b\u3063\u304b\u304f\u306a\u306e\u3067CDK\u3067...<\/p>\n<h4>lib\/custom_runtime-stack.ts<\/h4>\n<p>Layer\u542b\u3080Lambda\u5468\u308a\u306e\u307e\u3068\u3081\u3066\u30c7\u30d7\u30ed\u30a4 (\u3044\u305a\u308cLayer\u4e0d\u8981\u3067\u3057\u3087\u3046\u304c)<\/p>\n<pre>\nimport * as cdk from 'aws-cdk-lib';\nimport { Construct } from 'constructs';\n\nimport * as iam from 'aws-cdk-lib\/aws-iam';\nimport * as lambda from 'aws-cdk-lib\/aws-lambda';\nimport * as path from 'path';\n\nexport class CustomLayerStack extends cdk.Stack {\n  constructor(scope: Construct, id: string, props?: cdk.StackProps) {\n    super(scope, id, props);\n\n    \/\/ IAM\u30dd\u30ea\u30b7\u30fc\u4f5c\u6210\n    const lambda_policy = new iam.ManagedPolicy(this, 'iam-policy', {\n      managedPolicyName: \"cloudwatch-alarm-trigger-lambda-policy\",\n      description: 'Lambda basic execution policy',\n      statements: [\n          new iam.PolicyStatement({\n              effect: iam.Effect.ALLOW,\n              actions: [\n                  'logs:CreateLogGroup',\n                  'logs:CreateLogStream',\n                  'logs:PutLogEvents',\n              ],\n              resources: ['arn:*:logs:*:*:*'],\n          }),\n          new iam.PolicyStatement({\n              effect: iam.Effect.ALLOW,\n              actions: [\n                  'bedrock:*'\n              ],\n              resources: [\n                '*'\n              ],\n          }),\n      ],\n    });\n\n    \/\/ \u30ed\u30fc\u30eb\u4f5c\u6210\n    const iam_role = new iam.Role(this, 'iam-role', {\n        roleName: \"cloudwatch-alarm-trigger-lambda-role\",\n        assumedBy: new iam.ServicePrincipal('lambda.amazonaws.com'),\n    });\n    iam_role.addManagedPolicy(lambda_policy);\n\n    \/\/ LambdaLayer\u4f5c\u6210\n    const layer = new lambda.LayerVersion(this, \"CustomLayer\", {\n      code: lambda.Code.fromAsset(\"dependencies.zip\"),\n      compatibleRuntimes: [lambda.Runtime.PYTHON_3_11]\n    });\n\n    \/\/ LambdaFunction\u4f5c\u6210\n    const fn = new lambda.Function(this, \"handler\", {\n      runtime: lambda.Runtime.PYTHON_3_11,\n      handler: \"app.lambda_handler\",\n      code: lambda.Code.fromAsset(path.join(__dirname, \"..\/lambda\")),\n      timeout: cdk.Duration.seconds(120),\n      memorySize: 128,\n      role: iam_role,\n      layers: [layer]\n    });\n  };\n}\n<\/pre>\n<h4>lambda\/app.py<\/h4>\n<p>SNS\u3092\u7d4c\u3066CloudWatch Alarm\u5185\u5bb9\u3092\u53d7\u4fe1\u3057\u3001Bedrock\u3092\u547c\u3073\u51fa\u3059\u4eca\u56de\u30e1\u30a4\u30f3\u306eLambda Function<\/p>\n<pre>\nimport boto3\nimport json\n\nbedrock = boto3.client(service_name='bedrock-runtime', region_name='us-east-1')\n\ndef lambda_handler(event, context):\n    # print(\"Received event: \" + json.dumps(event, indent=2))\n    # SNS\u7d4c\u7531\u3067event\u914d\u5217\u306b\u3066\u53d7\u3051\u53d6\u3063\u305f\u5024\n    alarm_time = event['Records'][0]['Sns']['Timestamp']\n    alarm_subject = event['Records'][0]['Sns']['Subject']\n    alarm_message = event['Records'][0]['Sns']['Message']\n    \n    prompt = f'''\n    APIGateway\u3001Lambda\u3001DynamoDB\u3092\u5229\u7528\u3057\u305f\u69cb\u6210\u3067\u4e0b\u8a18\u30a2\u30e9\u30fc\u30e0\u304c\u4e0a\u304c\u308a\u307e\u3057\u305f\u3002\n    \u60f3\u5b9a\u3055\u308c\u308b\u4e8b\u8c61\u3001\u539f\u56e0\u3068\u3001\u3069\u306e\u3088\u3046\u306a\u70b9\u3092\u78ba\u8a8d\u3057\u3001\u3069\u306e\u3088\u3046\u306a\u5bfe\u5fdc\u3092\u884c\u3046\u3079\u304d\u304b\u3001\u624b\u9806\u3092\u65e5\u672c\u8a9e\u3067\u56de\u7b54\u3057\u3066\u4e0b\u3055\u3044\u3002\n    \u30a2\u30e9\u30fc\u30e0\u4ef6\u540d\u306b\u300cOK:\u300d\u304c\u542b\u307e\u308c\u308b\u5834\u5408\u306f\u30a2\u30e9\u30fc\u30c8\u304b\u3089\u306e\u5fa9\u65e7\u3092\u610f\u5473\u3057\u307e\u3059\u3001\u5fa9\u65e7\u3057\u305f\u5834\u5408\u52b4\u3044\u306e\u8a00\u8449\u3092\u304b\u3051\u3066\u4e0b\u3055\u3044\u3002\n    \n    \u30a2\u30e9\u30fc\u30e0\u6642\u523b: {alarm_time}\n    \u30a2\u30e9\u30fc\u30e0\u4ef6\u540d: {alarm_subject}\n    \u30a2\u30e9\u30fc\u30e0\u30e1\u30c3\u30bb\u30fc\u30b8: {alarm_message}\n    '''\n    \n    print(prompt)\n    \n    body = json.dumps({\n        \"prompt\": prompt,\n        \"maxTokens\": 2000,\n        \"temperature\": 0.7,\n        \"topP\": 1,\n    })\n    \n    modelId = 'ai21.j2-ultra-v1'\n    accept = 'application\/json'\n    contentType = 'application\/json'\n    \n    response = bedrock.invoke_model(body=body, modelId=modelId, accept=accept, contentType=contentType)\n    response_body = json.loads(response.get('body').read())\n    \n    outputText = response_body.get('completions')[0].get('data').get('text')\n    print(outputText)\n<\/pre>\n<h4>requirements.txt<\/h4>\n<pre nums=\"false\" toolbar=\"false\">\nboto3\n<\/pre>\n<h4>package.json<\/h4>\n<pre nums=\"false\" toolbar=\"false\">\n  \"scripts\": {\n   ...\u4e0b\u8a18\u3092\u8ffd\u52a0...\n    \"layer\": \"mkdir python && pip install -r requirements.txt -t python\/python\/lib\/python3.11\/site-packages\/ && cd python && zip -r ..\/dependencies.zip . && cd .. && rm -rf python\"\n<\/pre>\n<h4>\u30c7\u30d7\u30ed\u30a4<\/h4>\n<p>npm run layer \u306b\u3066Lambda Layer Upload\u7528\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u4f5c\u6210\u5f8c\u306b\u3000cdk deploy<\/p>\n<h3>CloudWatch Alarm\/SNSTopic\u306e\u4f5c\u6210<\/h3>\n<p>CloudWatch Alarm\u3092\u53d6\u308a\u6025\u304e\u767a\u751f\u3055\u305b\u3084\u3059\u3044 4XX \u3067\u4f5c\u6210\u3001\u767a\u5831\u5148\u306eSNSTopic\u3092\u4f5c\u6210\u3057\u3001CDK\u306b\u3066\u69cb\u7bc9\u3057\u305fLambda\u3068\u7d10\u3065\u3051\u307e\u3059\u3002<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/CloudwatchAlarm-1024x858.png\" alt=\"\" width=\"728\" height=\"610\" class=\"aligncenter size-large wp-image-24690\" srcset=\"https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/CloudwatchAlarm-1024x858.png 1024w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/CloudwatchAlarm-300x251.png 300w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/CloudwatchAlarm-768x643.png 768w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/CloudwatchAlarm-1536x1287.png 1536w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/CloudwatchAlarm-728x610.png 728w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/CloudwatchAlarm.png 1810w\" sizes=\"auto, (max-width: 728px) 100vw, 728px\" \/><\/p>\n<h3>\u30a2\u30e9\u30fc\u30c8\u3092\u767a\u751f\u3055\u305b\u5b9f\u969b\u306e\u5fdc\u7b54\u306e\u78ba\u8a8d<\/h3>\n<p>AWS Chatbot\u7b49\u3068\u9023\u643a\u3055\u305b\u308c\u3070\u3088\u308a\u826f\u3044\u3068\u601d\u3044\u307e\u3059\u304c\u3001\u672c\u984c\u3068\u305a\u308c\u308b\u306e\u3067CloudWatch\u304b\u3089\u78ba\u8a8d\u306e\u307f\u3068\u3057\u307e\u3057\u305f\u3002<br \/>\n\u5e30\u3063\u3066\u304d\u3066\u3044\u307e\u3059\u306d\u3001\u5f8c\u8ff0\u3057\u307e\u3059\u3002<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/response-1024x541.png\" alt=\"\" width=\"728\" height=\"385\" class=\"aligncenter size-large wp-image-24691\" srcset=\"https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/response-1024x541.png 1024w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/response-300x158.png 300w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/response-768x406.png 768w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/response-1536x811.png 1536w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/response-2048x1082.png 2048w, https:\/\/www.skyarch.net\/blog\/wp-content\/uploads\/2023\/09\/response-728x385.png 728w\" sizes=\"auto, (max-width: 728px) 100vw, 728px\" \/><\/p>\n<h2 id=\"response\">\u30d7\u30ed\u30f3\u30d7\u30c8\/\u5fdc\u7b54<\/h2>\n<h3 id=\"response-jurassic2\">\u30a2\u30e9\u30fc\u30e0\u767a\u751f (Jurassic-2 Ultra)<\/h3>\n<h4>\u5f15\u304d\u6e21\u3057\u305f\u30d7\u30ed\u30f3\u30d7\u30c8<\/h4>\n<pre nums=\"false\" toolbar=\"false\">\nAPIGateway\u3001Lambda\u3001DynamoDB\u3092\u5229\u7528\u3057\u305f\u69cb\u6210\u3067\u4e0b\u8a18\u30a2\u30e9\u30fc\u30e0\u304c\u4e0a\u304c\u308a\u307e\u3057\u305f\u3002\n\u60f3\u5b9a\u3055\u308c\u308b\u4e8b\u8c61\u3001\u539f\u56e0\u3068\u3001\u3069\u306e\u3088\u3046\u306a\u70b9\u3092\u78ba\u8a8d\u3057\u3001\u3069\u306e\u3088\u3046\u306a\u5bfe\u5fdc\u3092\u884c\u3046\u3079\u304d\u304b\u3001\u624b\u9806\u3092\u65e5\u672c\u8a9e\u3067\u56de\u7b54\u3057\u3066\u4e0b\u3055\u3044\u3002\n\u88dc\u8db3\u60c5\u5831\u3001\u30a2\u30e9\u30fc\u30e0\u4ef6\u540d\u306e\u5148\u982d\u304cOK\u306e\u5834\u5408\u306f\u30a2\u30e9\u30fc\u30c8\u304b\u3089\u306e\u5fa9\u65e7\u3092\u610f\u5473\u3057\u307e\u3059\u3001\u5fa9\u65e7\u3057\u305f\u5834\u5408\u52b4\u3044\u306e\u8a00\u8449\u3092\u304b\u3051\u3066\u4e0b\u3055\u3044\u3002\n\u30a2\u30e9\u30fc\u30e0\u6642\u523b: 2023-09-29T15:48:58.433Z\n\u30a2\u30e9\u30fc\u30e0\u4ef6\u540d: ALARM: \"Alarm_APIGateway_4XX\" in Asia Pacific (Tokyo)\n\u30a2\u30e9\u30fc\u30e0\u30e1\u30c3\u30bb\u30fc\u30b8: \n{\n    \"AlarmName\": \"Alarm_APIGateway_4XX\",\n    \"AlarmDescription\": null,\n    \"AWSAccountId\": \"xxxxxx\",\n    \"AlarmConfigurationUpdatedTimestamp\": \"2023-09-29T15:28:13.140+0000\",\n    \"NewStateValue\": \"ALARM\",\n    \"NewStateReason\": \"Threshold Crossed: 1 out of the last 1 datapoints [20.0 (29\/09\/23 15:47:00)] was greater than the threshold (10.0) (minimum 1 datapoint for OK -> ALARM transition).\",\n    \"StateChangeTime\": \"2023-09-29T15:48:58.378+0000\",\n    \"Region\": \"Asia Pacific (Tokyo)\",\n    \"AlarmArn\": \"arn:aws:cloudwatch:ap-northeast-1:xxxxxx:alarm:Alarm_APIGateway_4XX\",\n    \"OldStateValue\": \"OK\",\n    ... \u7701\u7565\n    }\n}\n<\/pre>\n<h4>\u5e30\u3063\u3066\u6765\u305f\u30ec\u30b9\u30dd\u30f3\u30b9<\/h4>\n<pre nums=\"false\" toolbar=\"false\">\n\u30a8\u30e9\u30fc\u7b87\u6240:\nAPIGateway\u3001Lambda\u3001DynamoDB\u3092\u5229\u7528\u3057\u305f\u69cb\u6210\u3067\u4e0a\u8a18\u30a2\u30e9\u30fc\u30e0\u304c\u4e0a\u304c\u308a\u307e\u3057\u305f\u3002\n\u4e0a\u8a18\u30a2\u30e9\u30fc\u30e0\u306f\"Alarm_APIGateway_4XX\"\u3068\u3044\u3046\u540d\u524d\u306eCloudWatch\u30a2\u30e9\u30fc\u30e0\u304c\"ALARM\"\u72b6\u614b\u306b\u5909\u66f4\u3057\u307e\u3057\u305f\u3002\n\n\u4e8b\u8c61:\n\u904e\u53bb1\u5206\u9593\u306eAPIGateway\u306b\u304a\u3051\u308b4XX\u30a8\u30e9\u30fc\u306e\u6570\u304c1\u3064\u8d85\u3048\u3066\u3044\u308b\u305f\u3081\u3001\u30a2\u30e9\u30fc\u30e0\u304c\u767a\u706b\u3057\u307e\u3057\u305f\u3002\n\n\u539f\u56e0:\n\u30a2\u30e9\u30fc\u30e0\u8a2d\u5b9a\u306b\u3064\u3044\u3066\u306f\u30011\u5206\u3054\u3068\u306bAPIGateway\u306b\u304a\u3051\u308b4XX\u30a8\u30e9\u30fc\u306e\u6570\u304c1\u3064\u8d85\u3048\u308b\u5834\u5408\u306b\u3001ALARM\u3068\u306a\u308b\u8a2d\u5b9a\u306b\u306a\u3063\u3066\u3044\u307e\u3059\u3002\n\n\u5bfe\u5fdc:\n1. \u4e0a\u8a18\u30a2\u30e9\u30fc\u30e0\u3092\u78ba\u8a8d\u3057\u3001\u5909\u66f4\u3055\u308c\u305f\u72b6\u614b\u306b\u306a\u3063\u3066\u3044\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002\n2. \u8d77\u56e0\u3068\u306a\u3063\u305f4XX\u30a8\u30e9\u30fc\u306e\u6570\u3092\u78ba\u8a8d\u3057\u3001\u8d85\u3048\u3066\u3044\u308b\u6570\u304c\u305d\u306e\u8a2d\u5b9a\u306b\u5f53\u3066\u306f\u307e\u3089\u306a\u3044\u5834\u5408\u306f\u3001\u30a2\u30e9\u30fc\u30e0\u306e\u8a2d\u5b9a\u3092\u4fee\u6b63\u3057\u3066\u3044\u305f\u3060\u304d\u307e\u3059\u3002\n3. 4XX\u30a8\u30e9\u30fc\u306e\u6570\u304c\u8a2d\u5b9a\u306b\u5f53\u3066\u306f\u307e\u308b\u5834\u5408\u306f\u3001\u305d\u306e\u30a8\u30e9\u30fc\u304c\u4f55\u306e\u554f\u984c\u3092\u5f15\u304d\u8d77\u3053\u3057\u3066\u3044\u308b\u306e\u304b\u3001\u3069\u306e\u3088\u3046\u306a\u5bfe\u51e6\u3092\u53d6\u308b\u3079\u304d\u304b\u3092\u5224\u65ad\u3057\u3001\u5bfe\u5fdc\u3092\u884c\u3044\u307e\u3059\u3002\n\n\u624b\u9806:\n1. CloudWatch\u30a2\u30e9\u30fc\u30e0\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u78ba\u8a8d\u3057\u3001ALARM\u72b6\u614b\u306b\u306a\u3063\u3066\u3044\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002\n2. \u8d77\u56e0\u3068\u306a\u3063\u305f4XX\u30a8\u30e9\u30fc\u306e\u6570\u3092\u78ba\u8a8d\u3057\u3001\u30a2\u30e9\u30fc\u30e0\u8a2d\u5b9a\u306b\u5f53\u3066\u306f\u307e\u308b\u5834\u5408\u306f\u3001\u305d\u306e\u6570\u304c\u8a2d\u5b9a\u306b\u5f53\u3066\u306f\u307e\u308b\u304b\u3069\u3046\u304b\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002\n3. 4XX\u30a8\u30e9\u30fc\u306e\u6570\u304c\u8a2d\u5b9a\u306b\u5f53\u3066\u306f\u307e\u308b\u5834\u5408\u306f\u3001\u305d\u306e\u30a8\u30e9\u30fc\u304c\u4f55\u306e\u554f\u984c\u3092\u5f15\u304d\u8d77\u3053\u3057\u3066\u3044\u308b\u306e\u304b\u3001\u3069\u306e\u3088\u3046\u306a\u5bfe\u51e6\u3092\u53d6\u308b\u3079\u304d\u304b\u3092\u5224\u65ad\u3057\u3001\u5bfe\u5fdc\u3092\u884c\u3044\u307e\u3059\u3002\n\n\u5fa9\u65e7:\n\u30a2\u30e9\u30fc\u30e0\u304c\u66f4\u65b0\u3055\u308c\u305f\u72b6\u614b\u304cOK\u306b\u306a\u3063\u305f\u5834\u5408\u306f\u5fa9\u65e7\u6e08\u307f\u3068\u3057\u3066\u78ba\u8a8d\u3057\u307e\u3059\u3002\n<\/pre>\n<h4>\u6240\u611f<\/h4>\n<p>\u95be\u5024\u3084\u6761\u4ef6\u306e\u90e8\u5206\u304c\u5b9f\u969b\u306e\u72b6\u614b\u3068\u7570\u306a\u308a\u307e\u3059\u304c\u3001\u3056\u3063\u304f\u308a\u3068\u6982\u8981\u306f\u63b4\u307f\u3084\u3059\u3044\u304b\u306a\u3068\u601d\u3044\u307e\u3059\u3002<br \/>\nAI\u306e\u529b\u3092\u6301\u3063\u3066\u3057\u3066\u3082\u3001CloudWatch Alarm\u3000\u5b8c\u5168\u8aad\u89e3\u306f\u96e3\u3057\u305d\u3046\u3067\u3059\u306d :sweat_smile:<\/p>\n<h3>\u5fa9\u65e7 (Jurassic-2 Ultra)<\/h3>\n<h4>\u5f15\u304d\u6e21\u3057\u305f\u30d7\u30ed\u30f3\u30d7\u30c8<\/h4>\n<pre nums=\"false\" toolbar=\"false\">\nAPIGateway\u3001Lambda\u3001DynamoDB\u3092\u5229\u7528\u3057\u305f\u69cb\u6210\u3067\u4e0b\u8a18\u30a2\u30e9\u30fc\u30e0\u304c\u4e0a\u304c\u308a\u307e\u3057\u305f\u3002\n\u60f3\u5b9a\u3055\u308c\u308b\u4e8b\u8c61\u3001\u539f\u56e0\u3068\u3001\u3069\u306e\u3088\u3046\u306a\u70b9\u3092\u78ba\u8a8d\u3057\u3001\u3069\u306e\u3088\u3046\u306a\u5bfe\u5fdc\u3092\u884c\u3046\u3079\u304d\u304b\u3001\u624b\u9806\u3092\u65e5\u672c\u8a9e\u3067\u56de\u7b54\u3057\u3066\u4e0b\u3055\u3044\u3002\n\u30a2\u30e9\u30fc\u30e0\u4ef6\u540d\u306b\u300cOK:\u300d\u304c\u542b\u307e\u308c\u308b\u5834\u5408\u306f\u30a2\u30e9\u30fc\u30c8\u304b\u3089\u306e\u5fa9\u65e7\u3092\u610f\u5473\u3057\u307e\u3059\u3001\u5fa9\u65e7\u3057\u305f\u5834\u5408\u52b4\u3044\u306e\u8a00\u8449\u3092\u304b\u3051\u3066\u4e0b\u3055\u3044\u3002\n\u30a2\u30e9\u30fc\u30e0\u6642\u523b: 2023-09-29T16:16:58.439Z\n\u30a2\u30e9\u30fc\u30e0\u4ef6\u540d: OK: \"Alarm_APIGateway_4XX\" in Asia Pacific (Tokyo)\n\u30a2\u30e9\u30fc\u30e0\u30e1\u30c3\u30bb\u30fc\u30b8: \n{\n    \"AlarmName\": \"Alarm_APIGateway_4XX\",\n    \"AlarmDescription\": null,\n    \"AWSAccountId\": \"xxxxxx\",\n    \"AlarmConfigurationUpdatedTimestamp\": \"2023-09-29T15:28:13.140+0000\",\n    \"NewStateValue\": \"OK\",\n    \"NewStateReason\": \"Threshold Crossed: 1 out of the last 1 datapoints [7.0 (29\/09\/23 16:15:00)] was not greater than the threshold (10.0) (minimum 1 datapoint for ALARM -> OK transition).\",\n    \"StateChangeTime\": \"2023-09-29T16:16:58.377+0000\",\n    \"Region\": \"Asia Pacific (Tokyo)\",\n    \"AlarmArn\": \"arn:aws:cloudwatch:ap-northeast-1:xxxxxx:alarm:Alarm_APIGateway_4XX\",\n    \"OldStateValue\": \"ALARM\",\n    ... \u7701\u7565\n}\n<\/pre>\n<h4>\u5e30\u3063\u3066\u6765\u305f\u30ec\u30b9\u30dd\u30f3\u30b9<\/h4>\n<pre nums=\"false\" toolbar=\"false\">\n\u539f\u56e0: ApiGateway\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u3066\u3044\u305f\u305f\u3081\n\u5bfe\u5fdc: ApiGateway\u306e\u30b9\u30c6\u30fc\u30bf\u30b9\u3092\u78ba\u8a8d\u3057\u3001\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u3066\u3044\u308b\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8\u3084\u30b9\u30c6\u30fc\u30bf\u30b9\u30b3\u30fc\u30c9\u3092\u8abf\u3079\u3066\u3001\u539f\u56e0\u3092\u7279\u5b9a\u3057\u3001\u4fee\u6b63\u3092\u884c\u3046\u3002\n\u52b4\u3044\u306e\u8a00\u8449: \u5fa9\u65e7\u3057\u305f\n\u5fa9\u65e7: \u5fa9\u65e7\n<\/pre>\n<h4>\u6240\u611f<\/h4>\n<p>\u52b4\u3044\u306e\u8a00\u8449\u306b\u4eba\u9593\u5473\u304c\u7121\u3044\uff01<br \/>\n\u3051\u3069\u3061\u3083\u3093\u3068\u5224\u65ad\u3057\u3066\u304f\u308c\u305f\u3088\u3046\u3067\u3059\u3002<\/p>\n<h3 id=\"response-claude-v2\">Anthropic Claude v2\u306b\u3066\u8a66\u3057\u3066\u307f\u305f<\/h3>\n<h4>\u30a2\u30e9\u30fc\u30e0\u767a\u751f \u30ec\u30b9\u30dd\u30f3\u30b9<\/h4>\n<pre nums=\"false\" toolbar=\"false\">\n\u3053\u306e\u30a2\u30e9\u30fc\u30e0\u306f\u3001API Gateway \u30674XX\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u3066\u3044\u308b\u3053\u3068\u3092\u793a\u3057\u3066\u3044\u307e\u3059\u3002\n\n\u8003\u3048\u3089\u308c\u308b\u539f\u56e0\u306f\u3001\n- API\u306e\u30ea\u30af\u30a8\u30b9\u30c8\u304c\u6b63\u3057\u304f\u5f62\u5f0f\u3055\u308c\u3066\u3044\u306a\u3044\u305f\u3081\u306b4XX\u30a8\u30e9\u30fc\u304c\u8fd4\u3055\u308c\u3066\u3044\u308b \n- \u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304b\u3089\u4e0d\u6b63\u306a\u30ea\u30af\u30a8\u30b9\u30c8\u304c\u9001\u4fe1\u3055\u308c\u3066\u3044\u308b\n- API\u306e\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u304c\u30a8\u30e9\u30fc\u3092\u8fd4\u3057\u3066\u3044\u308b\n\u306a\u3069\u304c\u8003\u3048\u3089\u308c\u307e\u3059\u3002\n\n\u5bfe\u5fdc\u3068\u3057\u3066\u306f\u3001\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u3053\u3068\u3092\u78ba\u8a8d\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u3067\u3057\u3087\u3046\u3002\n- CloudWatch\u306e\u30e1\u30c8\u30ea\u30af\u30b9\u3092\u78ba\u8a8d\u3057\u30014XX\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u3066\u3044\u308bAPI\u306e\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8\u3084\u30b9\u30c6\u30fc\u30bf\u30b9\u30b3\u30fc\u30c9\u3092\u7279\u5b9a\u3059\u308b\n- API Gateway\u306e\u30ed\u30b0\u3092\u78ba\u8a8d\u3057\u30014XX\u30a8\u30e9\u30fc\u306e\u8a73\u7d30\u306a\u539f\u56e0\u3092\u8abf\u67fb\u3059\u308b\n- \u30ea\u30af\u30a8\u30b9\u30c8\u3084\u30ec\u30b9\u30dd\u30f3\u30b9\u306e\u5185\u5bb9\u3092\u78ba\u8a8d\u3057\u3001\u5f62\u5f0f\u306e\u554f\u984c\u3084\u4e0d\u6b63\u306a\u30ea\u30af\u30a8\u30b9\u30c8\u304c\u9001\u4fe1\u3055\u308c\u3066\u3044\u306a\u3044\u304b\u3092\u78ba\u8a8d\u3059\u308b\n- \u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u30ed\u30b0\u7b49\u3092\u78ba\u8a8d\u3057\u3001\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u5074\u306e\u30a8\u30e9\u30fc\u304c\u306a\u3044\u304b\u3092\u8abf\u3079\u308b\n- Lambda\u306e\u30ed\u30b0\u3092\u78ba\u8a8d\u3057\u30014XX\u30a8\u30e9\u30fc\u306e\u539f\u56e0\u3092\u8abf\u67fb\u3059\u308b\n- DynamoDB\u306e\u30ec\u30a4\u30c6\u30f3\u30b7\u30fc\u7b49\u3082\u78ba\u8a8d\u3057\u3001DB\u306e\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u4f4e\u4e0b\u304c\u539f\u56e0\u3067\u306f\u306a\u3044\u304b\u78ba\u8a8d\u3059\u308b\n\n\u539f\u56e0\u3092\u7279\u5b9a\u3057\u305f\u3089\u3001API\u306e\u8a2d\u5b9a\u3001\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u4fee\u6b63\u3001\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u306e\u30a8\u30e9\u30fc\u51e6\u7406\u306a\u3069\u306e\u5bfe\u5fdc\u3092\u884c\u3046\u5fc5\u8981\u304c\u3042\u308b\u3067\u3057\u3087\u3046\u3002\n\u9577\u6642\u9593\u653e\u7f6e\u305b\u305a\u8abf\u67fb\u3068\u5bfe\u5fdc\u3092\u958b\u59cb\u3059\u308b\u3053\u3068\u304c\u91cd\u8981\u3067\u3059\u3002\n<\/pre>\n<h4>\u5fa9\u65e7 \u30ec\u30b9\u30dd\u30f3\u30b9<\/h4>\n<pre nums=\"false\" toolbar=\"false\">\n\u306f\u3044\u3001\u3053\u306e\u30a2\u30e9\u30fc\u30e0\u306fAPI Gateway\u3067\u767a\u751f\u3057\u305f4XX\u306e\u30a8\u30e9\u30fc\u6570\u306b\u95a2\u3059\u308b\u30a2\u30e9\u30fc\u30e0\u306e\u3088\u3046\u3067\u3059\u3002\n\u300cOK:\u300d\u304c\u542b\u307e\u308c\u3066\u3044\u308b\u306e\u3067\u3001\u3053\u306e\u30a2\u30e9\u30fc\u30e0\u306fRecovery\u3057\u305f\u3053\u3068\u3092\u793a\u3057\u3066\u3044\u307e\u3059\u3002\n\u3053\u306e\u30a2\u30e9\u30fc\u30e0\u304cRecovery\u3057\u305f\u7406\u7531\u306f\u3001\u76f4\u8fd11\u5206\u9593\u306e4XX\u30a8\u30e9\u30fc\u6570\u304c\u3057\u304d\u3044\u5024(10\u4ef6)\u3092\u4e0b\u56de\u3063\u305f\u305f\u3081\u306e\u3088\u3046\u3067\u3059\u3002\n\n\u30a2\u30e9\u30fc\u30e0\u304cRecovery\u3057\u305f\u3053\u3068\u3067\u3059\u306e\u3067\u3001\u7279\u306b\u5bfe\u5fdc\u3059\u308b\u5fc5\u8981\u306f\u3042\u308a\u307e\u305b\u3093\u3002\nAPI Gateway\u306e4XX\u30a8\u30e9\u30fc\u304c\u3057\u304d\u3044\u5024\u3092\u8d85\u3048\u305f\u5834\u5408\u306f\u3001\u539f\u56e0\u3092\u8abf\u67fb\u3057\u5bfe\u5fdc\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u304c\u3001\u4eca\u56de\u306f\u305d\u306e\u5fc5\u8981\u306f\u306a\u3055\u305d\u3046\u3067\u3059\u3002\n\u30a2\u30e9\u30fc\u30e0\u304cRecovery\u3057\u305f\u3053\u3068\u3001\u826f\u304b\u3063\u305f\u3067\u3059\u306d\u3002\u30b5\u30fc\u30d3\u30b9\u304c\u6b63\u5e38\u306b\u56de\u5fa9\u3057\u305f\u3053\u3068\u304c\u78ba\u8a8d\u3067\u304d\u307e\u3057\u305f\u3002\u304a\u75b2\u308c\u69d8\u3067\u3057\u305f\u3002\u4eca\u5f8c\u3068\u3082\u30b5\u30fc\u30d3\u30b9\u306e\u5b89\u5b9a\u7a3c\u50cd\u306b\u3054\u5c3d\u529b\u3044\u305f\u3060\u3051\u308c\u3070\u3068\u601d\u3044\u307e\u3059\u3002\n<\/pre>\n<h4>\u6240\u611f<\/h4>\n<p>\u826f\u597d\u306a\u56de\u7b54\u3092\u5f97\u3089\u308c\u307e\u3057\u305f\u3001\u5e8f\u76e4\u306b\u4e0e\u3048\u305f\u69cb\u6210\u3092\u610f\u8b58\u3057\u305f\u56de\u7b54\u3067\u3042\u3063\u305f\u308a\u3001\u5fa9\u65e7\u6642\u3082\u5224\u65ad\u3057\u305f\u4e0a\u3067\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u3082\u3089\u3048\u307e\u3057\u305f\u3002<\/p>\n<h3 id=\"response-gpt-4\">GPT-4\u306b\u3066\u8a66\u3057\u3066\u307f\u305f<\/h3>\n<h4>\u30a2\u30e9\u30fc\u30e0\u767a\u751f \u30ec\u30b9\u30dd\u30f3\u30b9<\/h4>\n<pre nums=\"false\" toolbar=\"false\">\n\u3053\u306e\u30a2\u30e9\u30fc\u30e0\u306fAPI Gateway\u30674XX\u30a8\u30e9\u30fc\u304c\u5897\u52a0\u3057\u305f\u3053\u3068\u3092\u793a\u3057\u3066\u3044\u307e\u3059\u30024XX\u30a8\u30e9\u30fc\u306f\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u5074\u306e\u30a8\u30e9\u30fc\u3067\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u304c\u4e0d\u6b63\u3067\u3042\u3063\u305f\u308a\u3001\u8a8d\u8a3c\u304c\u5fc5\u8981\u3067\u3042\u3063\u305f\u308a\u3001\u5b58\u5728\u3057\u306a\u3044\u30ea\u30bd\u30fc\u30b9\u3092\u8981\u6c42\u3057\u3066\u3044\u305f\u308a\u3059\u308b\u5834\u5408\u306b\u767a\u751f\u3057\u307e\u3059\u3002\n\n\u4ee5\u4e0b\u306e\u539f\u56e0\u304c\u8003\u3048\u3089\u308c\u307e\u3059\u3002\n1. API\u3078\u306e\u30ea\u30af\u30a8\u30b9\u30c8\u304c\u4e0d\u6b63\u3067\u3042\u308b\u3002\n2. API\u306e\u8a8d\u8a3c\u3084\u8a8d\u53ef\u304c\u6b63\u3057\u304f\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u306a\u3044\u3002\n3. \u30ea\u30af\u30a8\u30b9\u30c8\u3055\u308c\u305fAPI\u306e\u30ea\u30bd\u30fc\u30b9\u304c\u5b58\u5728\u3057\u306a\u3044\u3002\n\n\u5bfe\u7b56\u3068\u3057\u3066\u306f\u4ee5\u4e0b\u306e\u624b\u9806\u3092\u8e0f\u307f\u307e\u3059\u3002\n1. CloudWatch Logs\u3092\u78ba\u8a8d\u3057\u3001\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8\u3084\u30b9\u30c6\u30fc\u30bf\u30b9\u30b3\u30fc\u30c9\u3092\u7279\u5b9a\u3057\u307e\u3059\u3002\u3053\u308c\u306b\u3088\u308a\u3001\u3069\u306e\u30ea\u30af\u30a8\u30b9\u30c8\u304c\u30a8\u30e9\u30fc\u3092\u5f15\u304d\u8d77\u3053\u3057\u3066\u3044\u308b\u306e\u304b\u3001\u305d\u306e\u539f\u56e0\u306f\u4f55\u304b\u3092\u7279\u5b9a\u3067\u304d\u307e\u3059\u3002\n2. API Gateway\u306e\u8a2d\u5b9a\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002\u8a8d\u8a3c\u3084\u8a8d\u53ef\u306e\u8a2d\u5b9a\u3001\u30ea\u30bd\u30fc\u30b9\u306e\u8a2d\u5b9a\u306b\u554f\u984c\u304c\u306a\u3044\u304b\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002\n3. \u5fc5\u8981\u306b\u5fdc\u3058\u3066\u3001API\u306e\u30b3\u30fc\u30c9\u3092\u78ba\u8a8d\u307e\u305f\u306f\u30c7\u30d0\u30c3\u30b0\u3057\u307e\u3059\u3002\u30ea\u30af\u30a8\u30b9\u30c8\u306e\u51e6\u7406\u65b9\u6cd5\u306b\u554f\u984c\u304c\u3042\u308b\u5834\u5408\u3001\u3053\u3053\u3067\u4fee\u6b63\u3067\u304d\u307e\u3059\u3002\n4. \u554f\u984c\u304c\u89e3\u6c7a\u3057\u305f\u3089\u3001\u540c\u3058\u30ea\u30af\u30a8\u30b9\u30c8\u3092\u518d\u5ea6\u9001\u4fe1\u3057\u3066\u30a8\u30e9\u30fc\u304c\u89e3\u6d88\u3055\u308c\u305f\u304b\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002\n\u3053\u308c\u3089\u306e\u624b\u9806\u306b\u3088\u308a\u3001\u554f\u984c\u306e\u7279\u5b9a\u3068\u89e3\u6c7a\u304c\u53ef\u80fd\u3067\u3059\u3002\n<\/pre>\n<h4>\u5fa9\u65e7 \u30ec\u30b9\u30dd\u30f3\u30b9<\/h4>\n<pre nums=\"false\" toolbar=\"false\">\n\u3053\u306e\u30a2\u30e9\u30fc\u30e0\u306fAPI Gateway\u30674XX\u30a8\u30e9\u30fc\u304c\u4e00\u5b9a\u6570\u4ee5\u4e0a\u767a\u751f\u3057\u305f\u3053\u3068\u3092\u793a\u3057\u3066\u3044\u307e\u3057\u305f\u304c\u3001\u73fe\u5728\u306f\u30a8\u30e9\u30fc\u6570\u304c\u95be\u5024\u3092\u4e0b\u56de\u3063\u305f\u305f\u3081\u5fa9\u65e7\u3057\u305f\u3053\u3068\u3092\u793a\u3057\u3066\u3044\u307e\u3059\u30024XX\u30a8\u30e9\u30fc\u306f\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u5074\u306e\u30a8\u30e9\u30fc\u3067\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u304c\u4e0d\u6b63\u3067\u3042\u3063\u305f\u308a\u3001\u8a8d\u8a3c\u304c\u5fc5\u8981\u3067\u3042\u3063\u305f\u308a\u3001\u5b58\u5728\u3057\u306a\u3044\u30ea\u30bd\u30fc\u30b9\u3092\u8981\u6c42\u3057\u3066\u3044\u305f\u308a\u3059\u308b\u5834\u5408\u306b\u767a\u751f\u3057\u307e\u3059\u3002\n\n\u539f\u56e0\u3068\u3057\u3066\u306f\u4ee5\u4e0b\u304c\u8003\u3048\u3089\u308c\u307e\u3059\u3002\n1. API\u3078\u306e\u30ea\u30af\u30a8\u30b9\u30c8\u304c\u4e00\u6642\u7684\u306b\u4e0d\u6b63\u3067\u3042\u3063\u305f\u3002\n2. API\u306e\u8a8d\u8a3c\u3084\u8a8d\u53ef\u304c\u4e00\u6642\u7684\u306b\u6b63\u3057\u304f\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u306a\u304b\u3063\u305f\u3002\n3. \u30ea\u30af\u30a8\u30b9\u30c8\u3055\u308c\u305fAPI\u306e\u30ea\u30bd\u30fc\u30b9\u304c\u4e00\u6642\u7684\u306b\u5b58\u5728\u3057\u306a\u304b\u3063\u305f\u3002\n\n\u5fa9\u65e7\u3057\u305f\u3068\u306e\u3053\u3068\u3067\u3059\u304c\u3001\u518d\u767a\u9632\u6b62\u306e\u305f\u3081\u306b\u4ee5\u4e0b\u306e\u70b9\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n1. CloudWatch Logs\u3092\u78ba\u8a8d\u3057\u3001\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u305f\u6642\u9593\u5e2f\u306e\u30ed\u30b0\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002\u3053\u308c\u306b\u3088\u308a\u3001\u3069\u306e\u30ea\u30af\u30a8\u30b9\u30c8\u304c\u30a8\u30e9\u30fc\u3092\u5f15\u304d\u8d77\u3053\u3057\u3066\u3044\u305f\u306e\u304b\u3001\u305d\u306e\u539f\u56e0\u306f\u4f55\u304b\u3092\u7279\u5b9a\u3067\u304d\u307e\u3059\u3002\n2. API Gateway\u306e\u8a2d\u5b9a\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002\u8a8d\u8a3c\u3084\u8a8d\u53ef\u306e\u8a2d\u5b9a\u3001\u30ea\u30bd\u30fc\u30b9\u306e\u8a2d\u5b9a\u306b\u554f\u984c\u304c\u306a\u3044\u304b\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002\n3. \u5fc5\u8981\u306b\u5fdc\u3058\u3066\u3001API\u306e\u30b3\u30fc\u30c9\u3092\u78ba\u8a8d\u307e\u305f\u306f\u30c7\u30d0\u30c3\u30b0\u3057\u307e\u3059\u3002\u30ea\u30af\u30a8\u30b9\u30c8\u306e\u51e6\u7406\u65b9\u6cd5\u306b\u554f\u984c\u304c\u3042\u3063\u305f\u5834\u5408\u3001\u3053\u3053\u3067\u4fee\u6b63\u3067\u304d\u307e\u3059\u3002\n\u4ee5\u4e0a\u306e\u624b\u9806\u306b\u3088\u308a\u3001\u554f\u984c\u306e\u7279\u5b9a\u3068\u518d\u767a\u9632\u6b62\u304c\u53ef\u80fd\u3067\u3059\u3002\n\n\u306a\u304a\u3001\u30a2\u30e9\u30fc\u30e0\u304c\u5fa9\u65e7\u3057\u305f\u3053\u3068\u3001\u304a\u75b2\u308c\u69d8\u3067\u3057\u305f\u3002\u3057\u304b\u3057\u3001\u518d\u767a\u3057\u306a\u3044\u3088\u3046\u306b\u5f15\u304d\u7d9a\u304d\u76e3\u8996\u3092\u7d9a\u3051\u3066\u304f\u3060\u3055\u3044\u3002\n<\/pre>\n<h4>\u6240\u611f<\/h4>\n<p>\u539f\u56e0\u7279\u5b9a\u306e\u5177\u4f53\u7684\u306a\u5185\u5bb9\u3001\u518d\u767a\u9632\u6b62\u7b56\u63d0\u793a\u3001\u6d41\u77f3\u3068\u3044\u3063\u305f\u611f\u3058\u3067\u3059\u3002<\/p>\n<h2 id=\"matome\">\u307e\u3068\u3081<\/h2>\n<p>\u5168\u3066\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u3059\u3050\u306b\u3001AI\u3092\u5b9f\u88c5\u51fa\u6765\u308b\u6642\u4ee3\u3068\u306a\u3063\u305f\u4e8b\u3092\u5b9f\u611f\u3057\u307e\u3057\u305f\u3002<br \/>\nAmazon Bedrock\u306e\u3053\u308c\u304b\u3089\u306b\u671f\u5f85\u3092\u81a8\u3089\u307e\u305b\u3064\u3064\u3001\u5f15\u304d\u7d9a\u304d\u65b0\u30b5\u30fc\u30d3\u30b9\u306e\u691c\u8a3c\u3092\u3057\u3066\u3044\u304d\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n<ul>\n<li>\u65b0\u3057\u3044\u30e2\u30c7\u30eb\u306b\u3059\u3050\u306b\u5207\u308a\u66ff\u3048\u53ef\u80fd<\/li>\n<li>\u30b3\u30fc\u30c9\u6570\u884c\u3067\u3059\u3050\u306b\u547c\u3073\u51fa\u305b\u308b<\/li>\n<li>\u901a\u4fe1\u7d4c\u8def<\/li>\n<li>\u30ed\u30ae\u30f3\u30b0<\/li>\n<li>CustomModel\/FineTuning<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>\u306f\u3058\u3081\u306b \u795d\uff01GA (\u4e00\u822c\u63d0\u4f9b\u958b\u59cb) \u3068\u306a\u3063\u305fAmazon Bedrock\u3092\u4f7f\u3044\u3001\u305b\u3063\u304b\u304f\u306a\u306e\u3067\u4f55\u304b\u7d20\u6575\u306a\u6d3b\u7528\u6cd5\u3092\u30ef\u30af\u30ef\u30af\u3057\u306a\u304c\u3089\u8003\u3048\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u3002 \u76ee\u6b21 \u6982\u8981 \u5b9f\u884c\u74b0\u5883 \u5b9f\u65bd\u5185\u5bb9 \u30d7\u30ed\u30f3\u30d7\u30c8\/\u5fdc\u7b54 Jurassic-&#8230;<\/p>\n","protected":false},"author":2,"featured_media":24688,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_locale":"ja","_original_post":"https:\/\/www.skyarch.net\/blog\/?p=24682","footnotes":""},"categories":[1260,20,276],"tags":[],"class_list":{"0":"post-24682","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-ai","8":"category-aws","9":"category-serverless","10":"ja"},"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.skyarch.net\/blog\/wp-json\/wp\/v2\/posts\/24682","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.skyarch.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.skyarch.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.skyarch.net\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.skyarch.net\/blog\/wp-json\/wp\/v2\/comments?post=24682"}],"version-history":[{"count":9,"href":"https:\/\/www.skyarch.net\/blog\/wp-json\/wp\/v2\/posts\/24682\/revisions"}],"predecessor-version":[{"id":24720,"href":"https:\/\/www.skyarch.net\/blog\/wp-json\/wp\/v2\/posts\/24682\/revisions\/24720"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.skyarch.net\/blog\/wp-json\/wp\/v2\/media\/24688"}],"wp:attachment":[{"href":"https:\/\/www.skyarch.net\/blog\/wp-json\/wp\/v2\/media?parent=24682"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.skyarch.net\/blog\/wp-json\/wp\/v2\/categories?post=24682"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.skyarch.net\/blog\/wp-json\/wp\/v2\/tags?post=24682"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}