個人視点で見るAWSのAIサービスの10年

TL;DR

かつて個人開発者の遊び場だったAWSのAIサービスは、LLMの登場とBedrockのエンタープライズ最適化によって、個人視点での意味を失いました。例外のAmazon Q DeveloperもGitHub CopilotやClaude Codeに埋もれ、AWSのAIは個人から離れたというより、個人が期待する形では競争に勝てていないのが現状です。

Cover
Table of Contents

かつてAWSのAIは、IAMキー1本と数行のコードで遊べる個人開発者の場所でした。LLM時代の2026年、そこで何が起きたのかを個人の視点から辿ります。

AWSのAIサービスが革新的だった頃

2018年頃の話です。当時、商用AIの旗手とされていたIBM Watsonは、私が直接触れた範囲では期待を裏切る場面が多く、宣伝の勢いと現場感覚のズレが徐々に目立ち始めていた頃でした。

一方、2015年にGoogleが公開したTensorFlowは急速に普及し、「大量のデータを用意して学習させれば、自分の問題を解けるモデルがそのうち作れる」という楽観論も開発者側で盛り上がっていました。ただ、データ収集、アノテーション、訓練用のGPU確保、学習済みモデルのホスティング。どれも個人で完走するには重く、絵に描いた餅で終わることも多かったのが実情です。

そんな中で登場したAWSのAIサービス群は、本当に革新的でした。データを集める必要も、モデルを訓練する必要も、推論用のサーバーを用意する必要もありません。IAMキーと数行のコードさえあれば、訓練済みモデルをAPIとして叩ける。自前の機械学習パイプラインを丸ごとスキップできる衝撃は、今振り返っても大きかったと思います。

翻訳で言えば、DeepLのPro APIが登場したばかりで、Google翻訳APIは法人契約の印象が強く、個人が気軽に叩けるクラウド翻訳APIはAmazon Translateくらいしかありませんでした。curlで一発叩くだけでなく、ちょっとしたCLIツールを自作することも多く、その一例として、私自身もIBM時代にAmazon Translateをバックエンドに採用した社内向けラッパーツールを書いたことがあります。このツールはWord・Excel・PowerPointのファイルを日英相互翻訳していました。

個人ユーザーにはLLMで十分な時代

かつてのAWSには、機械学習をブラックボックスのまま呼び出せるAPI群がきれいに揃っていました。翻訳はTranslate、画像解析はRekognition、自然言語処理はComprehend、帳票はTextract、音声合成はPolly。自前で学習データを集める必要はなく、IAMキーと数行のコードさえあれば機能を呼び出せました。この「気軽さ」こそが、当時の個人開発者にとっての魅力でした。

ところが今、同じ機能の大半はLLMに直接投げれば済むようになりました。

サービス機能LLM時代の代替
Amazon Translateニューラル機械翻訳API(多言語対応)GPT/Claude/Geminiに訳文を直接依頼。DeepL Pro APIも成熟
Amazon Rekognition画像・動画解析(物体検出、顔認識、モデレーション、テキスト検出)ビジョン対応LLM(GPT-4o、Claude、Gemini)に画像を渡して記述や抽出を頼む
Amazon Comprehend自然言語処理(エンティティ抽出、感情分析、キーフレーズ抽出、言語判定)同じ処理をLLMへの1プロンプトで任せる
Amazon Textract書類のOCRとフォーム・表の構造化抽出ビジョン対応LLMに直接PDF・画像を渡して構造化JSONを返させる
Amazon Pollyニューラル音声合成(TTS)OpenAI TTS、ElevenLabs、Gemini Native Speechなど生成AI系音声モデル

個人のツールや単発のトランザクションで、わざわざ用途別のAPIを選んで使う意味は、ほとんど残っていません。画像の内容を説明してほしければ、ClaudeやGPTに画像をそのまま渡せば事足ります。領収書から項目を抜き出したいときも、PDFをLLMに渡してJSONで返すよう頼めば済みます。APIの名前を覚え、サービスごとに異なる出力フォーマットを吸収する手間と比べて、LLMに自然言語で頼む方が圧倒的に速いからです。

もっとも、これはあくまで個人開発者のツールや単発利用の話です。エンタープライズの大量処理では、これらのAPIは現在もLLMパイプラインの前処理部品として現役です。例えば、TextractでPDFを構造化してからLLMに渡す、Translateで多言語テキストを統一する、ComprehendでPIIをマスクしてから生成系に流すといった使い方が典型です。

理由は、個人利用では意識する必要のない要件が企業では避けられないからです。LLMは同じ入力でも出力が揺れ、ハルシネーションを起こし、大量処理ではトークン課金が嵩みます。一方、Textractのような専用APIは決定的な出力を返し、料金もページ単価で桁違いに安く、出力形式が固定なので監査ログやSLA契約にも馴染みます。個人の単発処理ではこれらの差が表面化しないため、LLM直叩きの手軽さが勝るのです。

AWSのLLMはエンタープライズのために

前節で見たように、かつてのAIサービスは個人視点ではLLMに置き換えられました。ではAWSはこの流れにどう応えたのでしょうか。自前で競争力のあるLLMを持たないAWSが出した答えは、外部のモデル提供者を集めて統一APIで呼び出せるようにしたBedrockでした。

2026年4月時点では、Anthropic (Claude) を筆頭に、Amazon自社のNovaとTitan、Meta (Llama)、Mistral、OpenAI、DeepSeek、Cohere、AI21 Labsなど、十数社・100モデル超が並びます。OpenAIのオープンウェイトモデル(gpt-oss系)までBedrockから呼べるようになったのは2025年の大きな動きでした。モデルの厚みだけを見れば、単一ベンダーの直接APIよりも広い選択肢が用意されているとも言えます1

ただ、Bedrockの価値の本体はモデル選択の自由そのものではなく、AWSの枠組みへ組み込まれていることにあります。既存のIAMポリシーで権限を統制でき、VPCエンドポイントでインターネットを経由せず呼び出せ、CloudTrailで全ての呼び出しを監査でき、利用料はAWSの単一請求にまとまります。データが既にS3にある組織では、そこからRetrieval Augmented Generationへ繋ぐ道もBedrockの中で完結します。既にAWS上に業務基盤がある企業にとっては、こうした統合こそがBedrockを選ぶ最大の理由です。

一方で、個人開発者がBedrockを介する恩恵はほとんど残っていません。新モデルの到達はAnthropicやOpenAIの直接APIより遅れることが多く、IAMやリージョンの設定、モデルアクセス申請といったセットアップの重さも、APIキー1本で始められる本家との差としてのしかかります。かつてIAMキーと数行のコードから始められたAWS AIサービスの気軽さは、LLM時代には失われたと言って良いでしょう。

つまり、AWSがLLM時代に出した答えは、AWSを既に使っている企業への最適化でした。AWSが誰を主な顧客として見ているのか、この選択そのものが物語っています。

まとめ

個人から見たAWSのAIは、この10年で位置づけを大きく変えました。IAMキーと数行のコードで訓練済みモデルを叩ける気軽さは、LLMの登場によって個人視点では蒸発しています。翻訳、画像解析、帳票処理のいずれも、ClaudeやGPTに直接渡す方が速く柔軟で、専用APIを選ぶ理由はほとんど残っていません。

LLM時代の本命であるBedrockも、個人開発者にとっては分が悪い選択肢です。その価値はIAM/VPC/監査/単一請求といった統合レイヤーにあり、新モデル到達は直接APIより遅れ、セットアップも重く、モデル選択肢の広さも個人が手軽に享受できる形にはなっていません。

個人向けの例外として、コード補完のAmazon Q Developerには無料枠があります。しかし実際の現場ではGitHub Copilot、Cursor、Claude Codeが競合し、Q Developerがデフォルトに選ばれる場面はほとんど見かけません。AWSが個人向け枠を用意している事実と、個人がそこを選んでいない事実は両立しています。

AWSのAIは個人から離れたわけではなく、個人が期待する形では競争に勝てていない、というのが正直な現状でしょう。Bedrock、SageMaker、Q Businessといった現在のAI製品群は、企業の業務システムと不可分な形で組み立てられています。かつてAWSにあった「IAMキーと数行のコードで叩ける個人の遊び場」としての姿は、もう見つけにくくなっています。

  1. こういった機能説明を読むと「Bedrockではマルチモデルを統一したインターフェイスで扱える」と期待するかも知れません。たしかにBedrockには統一メッセージ形式でモデル差し替えを可能にするConverse APIもあります。ただし、モデルごとに対応したプロンプトチューニングは必要ですし挙動もモデルごとに異なるため、Converse APIだから簡単に差し替え可能と言うわけではありません。また、当然ながらモデル固有機能は利用できません。