Amazon Web Services ブログ

開発生産性向上とガバナンスの両立を目指した、Cline with Amazon Bedrock と LiteLLM 活用のコツ

本ブログは 2025 年 5 月 13 日に開催された「Coding Agent Workshop ~ 開発生産性向上とガバナンスの両立を目指した、Cline with Amazon Bedrock 活用のコツ ~」のイベントで提供した内容をまとめたものです。

はじめに

生成 AI の急速な発展により、ソフトウェア開発の現場は大きな変革期を迎えています。特に AI コーディング支援エージェントは、開発者の生産性を飛躍的に向上させる可能性を秘めていますが、企業での本格導入には「生産性向上」と「適切なガバナンス」という両面からの取り組みが不可欠です。本記事では、Amazon Bedrock を中心とした AWS サービスと、オープンソースツールを組み合わせた実践的なアプローチをご紹介します。

AI コーディング支援エージェント導入の課題

企業が AI コーディング支援エージェントを導入する際には、従来の開発環境とは異なる新たな課題に直面します。これらは AI エージェント特有の性質から生じるものです。

1. セキュリティとコンプライアンスの課題

従来のセキュリティ対策では想定されていなかった、AI エージェント固有のリスクが存在します。特に懸念されるのは、エージェントが「自律的に」機密情報を処理・送信してしまうリスクです。開発者の意図とは無関係に、AI が自動的に機密コードや設定情報を外部に漏えいする可能性があります。また、エージェントによる重要ファイルの意図しない削除やシステムコマンドの実行など、従来とは異なる脆弱性への対策も求められます。さらに、部門別のアクセス制御、監査対応、様々な法規制への準拠といったコンプライアンス要件にも対応する必要があります。

2. トークン消費と API 制限の課題

AI コーディング支援エージェントは、大量のトークンを消費するため特有の運用課題があります。コードベースの理解、複数ファイルの関連性分析、長期的なコンテキスト維持などの処理により、1 回のタスクで数万トークンを消費することも珍しくありません。この膨大なトークン消費は、API プロバイダーが設ける RPM/TPM(Requests/Tokens Per Minute)制限への抵触リスクを高めます。制限に達すると開発作業が中断されるため、開発者の思考の流れが阻害され、生産性が大きく低下することになります。

3. コスト管理の課題

AI モデル利用コストの予測困難性と管理の複雑さも大きな課題です。AI コーディング支援エージェントのコストは使用量に応じて変動し、同じタスクでもコードベースの複雑さ、エージェントの理解度、開発者とのやり取りの回数によって消費されるトークン数が大きく変わります。また、高性能なモデルほど高コストであり、適切なモデル選択の判断も難しくなります。さらに、チームや個人単位で自由にトークン消費を許すと、組織全体のコストが予測不能なレベルまで増加するリスクもあるため、適切な利用制限の設定と可視化が必要です。

Amazon Bedrock による課題緩和

Amazon Bedrock は、上記の課題に対して有効な解決策を提供します。

セキュリティ面での強み

セキュリティ面において、AWS は常に最優先事項としてセキュリティを位置づけています。Amazon Bedrock では、入出力データが学習に利用されることはなく、モデルプロバイダーとデータが共有されない設計になっています。プロンプトログもデフォルトでは収集が無効化されているため、機密性の高い企業データを安全に処理できます。さらに、Guardrails 機能により入出力データに対するリスク対応が可能で、不適切な内容の検出や制御を行うことができます。

運用面での柔軟性

運用面では、Amazon Bedrock は多様な推論オプションを提供しています。オンデマンド推論でのリアルタイム処理、バッチ推論による一括データ処理、Provisioned Throughput によるスループットパフォーマンス保証など、用途に応じた選択が可能です。また、Anthropic の Claude、Amazon Nova、Meta の Llama など、複数プロバイダの最先端モデルを統一的なインターフェースで利用できる点も大きな強みです。Cross-Region inference 機能を活用すれば、複数リージョンに推論リクエストを自動的に分散させ、TPM 制限等の影響を緩和することができます。

コスト管理機能

コスト管理においては、Application Inference Profile を使用することでチームや個人単位での使用状況を追跡できます。Amazon CloudWatch メトリクスでプロファイルごとの呼び出し回数、処理時間、トークン数などを監視し、AWS Cost Explorer でタグベースのコスト分析も実現できます。組織構造を反映したタグを Profile に付与することで、きめ細かなコスト配分が可能になり、部門別の予算管理や最適化にも役立ちます。

残存するニーズとソリューション提案

Amazon Bedrock の機能だけでは十分に対応できない課題も残ります。これらのニーズに対して、複数のコンポーネントを組み合わせたソリューションを提案します。

主要ニーズ

組織全体で AI コーディング支援エージェントを効率的に活用するためには、いくつかの重要なニーズに対応する必要があります。まず、AWS IAM Identity Center 連携によるセキュアなアクセス実現が求められます。次に、複数 AWS アカウントやリージョンを跨いだリクエスト分散とフォールバック機能の構築が必要です。また、過度な管理負荷を避けつつ組織単位での利用制限を設定できる仕組みや、組織階層に応じた利用状況の統合的な分析基盤も重要です。

提案するソリューションコンポーネント

以下のコンポーネントを組み合わせることで、上記のニーズに対応します:

各ニーズに対する具体的なソリューション

1. セキュアな実行環境の実現

開発者のローカル PC から切り離された安全な環境の構築は、セキュリティリスクを大幅に低減します。Amazon EC2 上の code-server を活用することで、ブラウザベースの VS Code 環境を開発者に提供できます。この環境は Amazon VPC 内に構築され、AWS Systems Manager Session Manager を通じて安全に接続できるため、機密コードや知的財産が外部に漏洩するリスクを最小化できます。

IAM ロールによる適切な権限管理によって、開発者がアクセスできるリソースを厳密に制御することも可能です。また、LiteLLM Proxy との連携においても、AWS ネットワーク内で閉じたセキュアなアクセス経路を確保し、認証方式についても Virtual Key、Custom Auth、RBAC など組織に適した選択肢から選ぶことができます。これにより、セキュリティポリシーに準拠しつつ、開発者の生産性を維持するバランスの とれた環境を実現できます。

2. モデルリクエスト分散とフォールバックの実装

LiteLLM Proxy を活用することで、複数の AWS アカウントやリージョンにまたがる Amazon Bedrock エンドポイントを一元管理し、効率的なモデルリクエスト分散を実現できます。この仕組みでは、高性能モデル(例えば Claude 3.7 Sonnet)がレート制限に達した場合、自動的に代替モデル(例えば Claude 3.5 Sonnet)にフォールバックするルールを設定することが可能です。

システム構成としては、開発者からのリクエストを LiteLLM Proxy が受け取り、設定されたルールに従って適切な Amazon Bedrock エンドポイントに振り分けます。レート制限による中断を検知した場合は、あらかじめ定義されたフォールバックパスに沿って別のモデルへ自動的に切り替えます。これにより開発者は API 制限を意識することなく作業を継続でき、思考の流れを妨げられることなく生産性を維持できます。

さらに、複数の AWS アカウントやリージョンにまたがるフォールバック設定も可能で、組織全体のリソース配分や地理的な要件に応じて柔軟に制御できます。これは、グローバルに展開する組織や、厳格なデータローカライゼーション要件を持つ企業にとって特に重要な機能です。

3. チーム・個人単位での柔軟な利用制限

LiteLLM Proxy の Virtual Key と Budget/Rate Limits 機能を活用することで、複雑な AWS アカウント分割や IAM ポリシー設計に頼ることなく、チームや個人単位できめ細かなアクセス制御を実現できます。組織構造を反映したユーザーとチームの階層を定義し、それぞれに適切な制限を設定することで、リソースの効率的な配分が可能になります。

例えば、ソフトウェア開発チームには高性能モデルへのアクセス権と大きな TPM 制限を、データ分析チームには中程度の性能モデルと適切な予算上限を設定するといった運用が可能です。さらに、チーム内でも経験豊富な開発者と新人では異なる制限を適用するといった細やかな制御も行えます。

管理者は Web インターフェースや API を通じて、これらの設定を簡単に変更できるため、ビジネス要件や予算状況の変化に応じて動的に制限を調整することが可能です。ユーザーやチーム自身も自分たちの利用状況や制限を確認できるため、リソースの効率的な活用が促進されます。AWS Marketplace で提供される Enterprise 版を利用すれば、既存の SSO システムとの統合も可能となり、よりシームレスな管理体制を構築できます。

4. 詳細な分析と可視化基盤の構築

AI コーディング支援エージェントの効果的な活用には、詳細な利用状況の分析と可視化が不可欠です。このニーズに応えるため、Langfuse と MLflow という 2 つの異なるプラットフォームを活用できます。

Langfuse は、LLM アプリケーションに特化したオブザーバビリティツールです。LiteLLM Proxy との統合が非常に容易で、設定ファイルに数行追加するだけで連携が可能です。リクエスト、レスポンス、トークン消費、レイテンシなどをリアルタイムで詳細に追跡し、チーム、プロジェクト、個人といった組織階層でデータを整理・分析できます。モデル別、チーム別のコスト分布を可視化することで、予算管理と最適化を支援し、異常な使用パターンの早期発見も可能です。インフラ面では、AWS Fargate 上などに自前でデプロイするか、AWS Marketplace での提供版を利用することになります。

一方、MLflow は機械学習ライフサイクル全体を管理するための包括的なプラットフォームです。Amazon SageMaker の managed MLflow を利用することで、インフラ管理の負担を大幅に軽減できます。LLM の呼び出しを実験として記録し、レイテンシ、トークン消費、コスト、ユーザー満足度など多角的な分析が可能です。SageMaker との統合性が高く、取得したデータをモデル評価や改善に直接活用できる点も大きな利点です。ただし、LiteLLM Proxy から MLflow への連携にはカスタム Callback の実装が必要となります。

どちらのツールを選択するかは、組織の既存インフラや運用方針によります。Langfuse は設定が簡単で LLM 特化の分析機能が充実している一方、MLflow は AWS SageMaker との統合性が高くモデル評価から改善までの一貫したワークフローを構築できます。これらのツールを活用することで、チームごとの利用パターンや効果的なプロンプト戦略の発見、予算管理の効率化など、組織全体での AI 活用を最適化するための貴重なデータを得ることができます。

まとめ

AI コーディング支援エージェントの組織導入において、開発生産性の向上とガバナンスの両立は避けて通れない重要課題です。Amazon Bedrock を基盤としながら、LiteLLM Proxy、Langfuse や MLflow といったツールを組み合わせることで、これらの課題に対する包括的なソリューションを構築することができます。

セキュリティと開発環境の分離、複数アカウント・リージョンを跨いだ柔軟なモデルアクセス管理、組織構造に合わせた階層型の利用制限設定、そして詳細な分析・可視化基盤の構築を実現することで、AI を活用した開発環境の安全性と効率性を高めることができます。

AWS のサービス改善は継続的に行われており、今後はさらに多くの課題がマネージドサービスとして解決されていくことも期待されます。各組織は自社の状況、ニーズ、既存インフラなどを考慮しながら、本記事で紹介したアプローチを参考に、最適な AI コーディング環境を構築していくことをお勧めします。AI コーディング支援エージェントの適切な活用は、開発者の創造性を解放し、組織全体のイノベーション力を高める大きな可能性を秘めています。


著者プロフィール

黒澤 蓮 黒澤 蓮 (Ren Kurosawa) は AWS Japan のソリューションアーキテクトで、Web 業界のお客様を中心にアーキテクチャ設計や構築をサポートしています。データアナリティクスサービスや機械学習の領域を得意としています。将来の夢は宇宙でポエムを詠むことです。
赤澤 智信 赤澤 智信 (Toshinobu Akazawa) は AWS Japan のソリューションアーキテクトで、SaaS 事業のお客様を中心にアーキテクチャ設計や構築をサポートしています。機械学習の領域を得意としています。趣味はコーディングとポケモン。ポケモンカードには目がありません。