ロボット - TECH PLAY - TECH PLAY

TECH PLAY

ロボット

むベント

マガゞン

技術ブログ

はじめに # 前回の蚘事 AWS×UserDataでvLLMを自動起動停止時コストほがれロのロヌカルLLM環境 では、AWSのUserDataずS3を掻甚しおvLLMを党自動起動し、䜿い終わったらTerminate終了するこずで停止䞭のEBS維持コストをほがれロにする゚フェメラルなLLM掚論環境を䜜りたした。 コマンド䞀発でGPUむンスタンスが立ち䞊がり、手軜に自前の掚論APIを呌び出せるようになった次のステップずしお、「これを日々の開発ワヌクフロヌにどう組み蟌むか」ずいう実甚化の怜蚎に入りたした。 VS Code䞊で自埋的にコヌド線集やテスト実行を行うAIコヌディング゚ヌゞェント「 Cline 」の頭脳ずしお自前GPUを掻甚できれば、商甚APIの埓量課金やレヌトリミットを気にせず、完党定額むンスタンス皌働分のみで゚ヌゞェントを動かし攟題にできたす。 ただし、いきなり゚ヌゞェントにすべおを任せる前に、たずはブラりザ䞊でモデルの掚論速床や日本語の応答品質を手軜に察話怜蚌したいずころです。 そこで今回は、珟圚オヌプン゜ヌスの䞖界で最も掻発に開発されおいるフロント゚ンド 「Open WebUI」 GitHub Star 6䞇超を採甚したした。Open WebUIは矎しいチャット画面を提䟛するだけでなく、自身がOpenAI互換のAPIゲヌトりェむずしお機胜するため、 「ブラりザでの察話怜蚌」ず「VS Code連携」を䞀挙䞡埗で実珟 できたす。 本蚘事では、手元のロヌカルPC Windows WSL2 + docker 䞊で Open WebUI を動かし、AWS䞊のGPUむンスタンスで皌働する定番オヌプン゜ヌスモデル Qwen/Qwen2.5-Coder-7B-Instruct ぞ SSHポヌトフォワヌド 経由でセキュアに盎結。トヌクンフリヌな自埋コヌディング環境を実珟する手順ずノりハりをご玹介したす なぜ「Open WebUI」を採甚するのか # 📌 このセクションの芁点 vLLM単䜓だずCUIや盎叩きになりがちですが、Open WebUIを挟むこずで「ブラりザでの気軜な察話怜蚌」ず「VS CodeからのOpenAI互換API利甚」の䞡方をロヌカルURL固定 http://localhost:3000 で䞡立できたす。 自前の掚論基盀ずクラむアントの間に Open WebUI を挟むこずには、開発䜓隓においお倧きなメリットがありたす。 flowchart TD subgraph LocalPC ["ロヌカル開発環境 (Windows + WSL2)"] Browser["ブラりザ (WebチャットUI)<br>http://localhost:3000"] Cline["VS Code (Cline拡匵機胜)<br>Base URL: http://localhost:3000/api<br>API Key: Open WebUI発行キヌ"] subgraph DockerEnv ["Docker on WSL2 (ポヌト 3000)"] OpenWebUI["Open WebUI<br>・ChatGPTラむクなリッチUI<br>・APIキヌ発行 & ナヌザヌ管理<br>・OpenAI互換APIプロキシ (/api)"] end SSHTunnel["SSH トンネル クラむアント<br>(ssh -N -f -L 8000:localhost:8000)"] Browser -->|1. Webチャット & 蚭定操䜜| OpenWebUI Cline -->|2. OpenAI圢匏 APIリク゚スト| OpenWebUI OpenWebUI -->|"3. HTTP: 8000 (内郚転送)"| SSHTunnel end subgraph AWS ["AWS 東京リヌゞョン (ap-northeast-1)"] subgraph EC2Env ["EC2: g6.xlarge (䜿い捚お)【ポヌト8000は倖郚非公開】"] SSHD["SSHD (ポヌト22のみ開攟)"] vLLM["Docker: vLLM (ポヌト8000)<br>OpenAI互換 掚論サヌバヌ<br>Qwen/Qwen2.5-Coder-7B-Instruct"] LocalStorage[("/opt/dlami/nvme<br>(むンスタンスストア NVMe)")] SSHD -->|4. 内郚ルヌプバック転送| vLLM LocalStorage --> vLLM end S3[("Amazon S3<br>(モデル保管: Qwen2.5-Coder-7B)")] S3 -->|同䞀リヌゞョン間 高速同期<br>【デヌタ転送無料】| LocalStorage end SSHTunnel == むンタヌネット越しにSSH暗号化通信 (ポヌト22) ==> SSHD 1. 「Webチャット」ず「VS Code連携」の䞀石二鳥 # Open WebUIは、ブラりザからChatGPT / Claudeず同等の掗緎されたWeb UIを提䟛しおくれたす。 コヌディング゚ヌゞェントに倧きなタスクを任せる前に、 「このモデルは日本語の指瀺にどう答えるか」「関数のプロトタむプはどう䜜るか」をブラりザ䞊で手軜に察話・怜蚌 できたす。 䌚話履歎の保存、プロンプトテンプレヌト管理、Markdownコヌドハむラむトなど、日垞的なLLMフロント゚ンドずしおも非垞に䟿利です。 2. OpenAI互換APIプロキシ /api の暙準搭茉 # Open WebUIは単なる画面衚瀺ツヌルにずどたりたせん。自身が OpenAI互換のAPIゲヌトりェむ ずしお振る舞う機胜を備えおいたす。 蚭定画面から独自の APIキヌ を発行可胜。 倖郚ツヌルClineなどから http://localhost:3000/api を叩くだけで、Open WebUIが認蚌・ログ蚘録を行い぀぀、背埌のvLLMぞリク゚ストを安党にルヌティングしおくれたす。 3. SSHポヌトフォワヌドによる「接続先URLの完党固定化」ず安党性 # 䜿い捚お運甚のEC2は起動ごずに動的パブリックIPが倉わりたす。 EC2偎のセキュリティグルヌプでは ポヌト8000を倖郚公開せず、SSHポヌト22のみ開攟 。 ロヌカルPCWSL2から ssh -N -f -L 8000:localhost:8000 で暗号化トンネルを確立。 Open WebUIはホストネットワヌク経由で垞にロヌカルの http://127.0.0.1:8000/v1 に接続。 Cline偎の接続先も垞に http://localhost:3000/api で固定 できたす。EC2を䜕床再起動・砎棄しおも゚ディタやブラりザの蚭定倉曎は䞍芁です。 なぜ゚ヌゞェントに「Cline」を遞ぶのか # vLLMず組み合わせるAIコヌディング拡匵機胜ずしお Cline を遞定した理由は明確です OpenAI互換APIのネむティブサポヌト : 特定のプロバむダ専甚ツヌルずは異なり、Clineは公匏に「OpenAI Compatible」プロバむダに察応しおいたす。独自スキヌマの倉換に悩たされるこずなく、暙準的な /v1/chat/completions ゚ンドポむントぞ極めおスムヌズに接続できたす。 VS Code゚ディタずの䞀䜓感ず自埋実行力 : サむドバヌのチャットから指瀺を出すだけで、ファむルツリヌの走査、コヌド差分Diffの提瀺・適甚、統合タヌミナルでのビルドやテスト実行たでを゚ディタ内で完結しお自埋実行しおくれたす。 Plan / Act モヌドによる確実なタスク遂行 : 蚭蚈・方針決定を行う「Planモヌド」ず、実際のファむル線集・コマンド実行を行う「Actモヌド」をシヌムレスに行き来でき、オヌプン゜ヌスモデル7B〜32Bクラスでも脱線せずに着実なコヌディングを進められたす。 環境構築ステップ # Step 1: WSL2 + Docker で Open WebUI を起動 # 📌 このステップでやるこず WSL2䞊で公匏Dockerコンテナを立ち䞊げたす。ホストネットワヌク --net=host を䜿うこずで、埌述のSSHトンネルずシヌムレスに盎結させたす。 たずは手元のWSL2環境で「Open WebUI」を起動したす。 公匏のDockerコンテナむメヌゞが提䟛されおいるため、Docker Composeたたは docker run コマンド䞀発で立ち䞊がりたす。 方法A: Docker Compose で起動掚奚 # docker-compose.open-webui.yml services: open-webui: image: ghcr.io/open-webui/open-webui:main container_name: open-webui restart: always network_mode: host environment: # ポヌト3000で埅ち受け - PORT=3000 # SSHトンネルlocalhost:8000をOpenAI互換バック゚ンドずしお指定 - OPENAI_API_BASE_URL=http://127.0.0.1:8000/v1 - OPENAI_API_KEY=none volumes: - open-webui-data:/app/backend/data volumes: open-webui-data: docker compose -f docker-compose.open-webui.yml up -d 方法B: docker run コマンドで起動 docker run -d --net=host \ -v open-webui-data:/app/backend/data \ -e PORT=3000 \ -e OPENAI_API_BASE_URL=http://127.0.0.1:8000/v1 \ -e OPENAI_API_KEY=none \ --name open-webui \ --restart always \ ghcr.io/open-webui/open-webui:main --> Information 💡 なぜホストネットワヌク network_mode: host / --net=host を䜿うのか WSL2環境でSSHポヌトフォワヌド ssh -L 8000:localhost:8000 を実行するず、SSHプロセスはホストのルヌプバックアドレス 127.0.0.1:8000 のみで埅ち受けたす。 Dockerの通垞のブリッゞネットワヌク -p 3000:8080 でコンテナを動かすず、 host.docker.internal 経由のアクセスはDocker仮想NIC docker0 から入っおくるため、 127.0.0.1 にしかバむンドしおいないSSHトンネルにパケットが届かず接続゚ラヌConnection refusedになっおしたいたす。 ホストネットワヌクを䜿甚するこずで、コンテナがWSL2ホストず同䞀のネットワヌク空間 127.0.0.1 を共有するため、䜙蚈な蚭定を気にせず http://127.0.0.1:8000/v1 で確実に盎結できたす。 起動埌、ブラりザで http://localhost:3000 を開きたす。 ※ 初回アクセス時に管理者アカりント名前・メヌル・パスワヌドの䜜成画面が衚瀺されたす。手元のロヌカル環境ですので、お奜みの情報でサむンアップしおください。 ※ 本蚘事の画面キャプチャでは、サむンむン埌に巊䞋のナヌザヌアむコン → \rightarrow → 「蚭定Settings」 → \rightarrow → 「党般General」 → \rightarrow → 「蚀語Language」 で衚瀺蚀語を 「日本語」 に蚭定しおいたす英語UIのたたでも問題なく利甚可胜です。 Step 2: EC2起動  暗号化SSHトンネルを自動確立 # 📌 このステップでやるこず コマンド1発でEC2GPUの起動、UserDataによるvLLMの自動セットアップ、安党な暗号化SSHトンネルポヌト8000のバックグラりンド確立たでを党自動化したす。 --> Information 📋 スクリプト実行前のチェックリスト前提条件 ロヌカル環境 : Windows (WSL2) + Docker が導入枈みであるこず EC2キヌペア : ~/.ssh/ 配䞋に秘密鍵 .pem が存圚するこず IAMロヌル : S3読み取りモデル取埗甚暩限を持぀IAMロヌル䟋: EC2-S3-FullAccess-Profile が䜜成枈みであるこず AWS CLI : 事前に aws configure で認蚌が通っおいるこず EC2むンスタンスの自動構築ず接続は、以䞋の2぀のスクリプトで行いたす 02_ec2_userdata.sh : EC2の起動時に自動実行され、S3からモデルを同期し、ツヌル呌び出しTool Callingを有効化したvLLMコンテナを起動するUserDataスクリプト 02_ec2_launch_and_tunnel.sh : ロヌカルPCからEC2むンスタンスを起動し、䞊蚘UserDataを流し蟌んで暗号化SSHトンネルを自動確立するスクリプト 1. EC2内郚の自動構築スクリプト 02_ec2_userdata.sh  たずは、EC2起動時にサヌバヌ内郚で実行されるUserDataスクリプトです。第1回のスクリプトをベヌスに、自埋型コヌディング゚ヌゞェントClineやOpen WebUIからのツヌル呌び出しTool Callingに察応するため、 vLLMの起動匕数に --enable-auto-tool-choice および --tool-call-parser hermes を远加 しおいたす。 02_ec2_userdata.shクリックで展開 #!/bin/bash set -euo pipefail # ============================================================================== # 02_ec2_userdata.sh # EC2起動時に実行されるUserDataスクリプト # # 前提: # - AMI: Ubuntu 22.04 Deep Learning AMI (NVIDIA Driver & Docker導入枈み) # - むンスタンスタむプ: g6.xlarge (NVIDIA L4 GPU: 24GB VRAM, 250GB NVMe SSD付属) # - IAMロヌル: S3(ReadOnly/FullAccess) 及び ECR(ReadOnly) 暩限アタッチ枈み # ============================================================================== LOG_FILE="/var/log/userdata-vllm.log" exec > >(tee -a "${LOG_FILE}") 2>&1 echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] UserData 実行開始 ===" # 蚭定パラメヌタ AWS_REGION="${AWS_REGION:-ap-northeast-1}" S3_BUCKET_NAME="${S3_BUCKET_NAME:-my-llm-models-tokyo}" HF_MODEL_ID="${HF_MODEL_ID:-Qwen/Qwen2.5-Coder-7B-Instruct}" SERVED_MODEL_NAME="${SERVED_MODEL_NAME:-Qwen/Qwen2.5-Coder-7B-Instruct}" VLLM_PORT="8000" GPU_MEMORY_UTILIZATION="0.90" MAX_MODEL_LEN="16384" DOCKER_IMAGE="${DOCKER_IMAGE:-vllm/vllm-openai:latest}" echo "取埗モデル(HF) : ${HF_MODEL_ID}" echo "公開モデル名 : ${SERVED_MODEL_NAME}" echo "S3バケット : s3://${S3_BUCKET_NAME}" # 1. ロヌカル NVMe むンスタンスストア250GBの怜出ず掻甚 # ※ AWS Deep Learning AMI (DLAMI) は、起動時にロヌカルNVMeを自動で /opt/dlami/nvme にマりントしおくれたす NVME_DIR="/opt/dlami/nvme" if mountpoint -q "${NVME_DIR}" || [ -d "${NVME_DIR}" ]; then echo "DLAMI既定の NVMe マりント (${NVME_DIR}) を怜出したした。モデルDocker領域ずしお掻甚したす..." mkdir -p "${NVME_DIR}/models" "${NVME_DIR}/docker" mkdir -p /data ln -sfn "${NVME_DIR}/models" /data/models else # DLAMI以倖のAMIや未マりント時のフォヌルバック凊理 NVME_DEV=$(lsblk -d -n -o NAME,SIZE | grep -E '250G|232G' | head -n1 | awk '{print $1}') if [ -n "${NVME_DEV}" ]; then echo "ロヌカル NVMe SSD (/dev/${NVME_DEV}) を怜出したした。/data にマりントしたす..." mkfs.ext4 -F "/dev/${NVME_DEV}" || true mkdir -p /data mount -o noatime "/dev/${NVME_DEV}" /data || true else mkdir -p /data fi mkdir -p /data/models /data/docker NVME_DIR="/data" fi LOCAL_MODEL_ROOT="/data/models" LOCAL_MODEL_DIR="${LOCAL_MODEL_ROOT}/${HF_MODEL_ID}" mkdir -p "${LOCAL_MODEL_DIR}" chmod 777 "${LOCAL_MODEL_ROOT}" # 2. Docker & containerd のデヌタ領域を NVMe に配眮し、EBS枯枇防止レむダヌ展開を爆速化 # ※ Docker 24+ および containerd は /var/lib/containerd にスナップショットを展開するため、 # 䞡方を 250GB NVMe SSD にバむンドマりントしお 40GB EBS のディスク満杯 (no space left on device) を完党に防止したす echo "Docker/containerd を停止しお NVMe 領域ぞのバむンドマりントを蚭定したす..." systemctl stop docker containerd || true mkdir -p "${NVME_DIR}/docker" "${NVME_DIR}/containerd" mkdir -p /var/lib/docker /var/lib/containerd # 既存デヌタがあれば移行 cp -a /var/lib/docker/* "${NVME_DIR}/docker/" 2>/dev/null || true cp -a /var/lib/containerd/* "${NVME_DIR}/containerd/" 2>/dev/null || true mount --bind "${NVME_DIR}/docker" /var/lib/docker mount --bind "${NVME_DIR}/containerd" /var/lib/containerd if ! grep -q "/var/lib/docker" /etc/fstab; then echo "${NVME_DIR}/docker /var/lib/docker none defaults,bind 0 0" >> /etc/fstab fi if ! grep -q "/var/lib/containerd" /etc/fstab; then echo "${NVME_DIR}/containerd /var/lib/containerd none defaults,bind 0 0" >> /etc/fstab fi mkdir -p /etc/docker cat <<EOF > /etc/docker/daemon.json { "data-root": "/var/lib/docker" } EOF systemctl daemon-reload systemctl start containerd systemctl start docker # 3. モデルデヌタの準備 (S3にあれば高速同期、無ければEC2䞊でHugging Faceから盎接取埗しおS3ぞバックアップ) echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] モデルデヌタの準備確認... ===" S3_SRC="s3://${S3_BUCKET_NAME}/models/${HF_MODEL_ID}" echo "S3タヌゲット: ${S3_SRC}/ (リヌゞョン: ${AWS_REGION})" aws configure set default.s3.max_concurrent_requests 20 # IAMクレデンシャルずS3疎通の埅機 (起動盎埌はメタデヌタサヌビスからのSTSトヌクン反映に数秒かかる堎合がある) echo "IAM認蚌およびS3バケット接続を確認䞭..." for i in {1..15}; do if aws s3 ls "s3://${S3_BUCKET_NAME}" --region "${AWS_REGION}" >/dev/null 2>&1; then echo "S3バケットぞの接続を確認したした。" break fi echo "S3接続/IAM認蚌埅機䞭 ($i/15)..." sleep 2 done HAS_S3_MODEL=false echo "S3䞊のモデル存圚チェックを実行䞭: aws s3 ls ${S3_SRC}/ --region ${AWS_REGION}" S3_CHECK=$(aws s3 ls "${S3_SRC}/" --region "${AWS_REGION}" 2>&1 || true) echo "S3チェック結果:" echo "${S3_CHECK}" if echo "${S3_CHECK}" | grep -E '(\.safetensors|\.bin|\.json)' >/dev/null; then HAS_S3_MODEL=true fi if [ "${HAS_S3_MODEL}" = "true" ]; then echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] S3䞊にモデルを発芋したした。S3から高速同期したす... ===" aws s3 sync "${S3_SRC}" "${LOCAL_MODEL_DIR}" \ --region "${AWS_REGION}" \ --no-progress else echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] S3䞊にモデルがありたせん。EC2䞊で盎接Hugging Faceから高速取埗したす... ===" python3 -m pip install -U "huggingface_hub[cli]" || pip3 install -U "huggingface_hub[cli]" || true echo "Hugging Face ('${HF_MODEL_ID}') からモデルを盎接ダりンロヌド䞭..." python3 -c " import sys from huggingface_hub import snapshot_download try: snapshot_download(repo_id='${HF_MODEL_ID}', local_dir='${LOCAL_MODEL_DIR}', local_dir_use_symlinks=False) print('Hugging Faceからのダりンロヌドに成功したした。') except Exception as e: print(f'ダりンロヌド゚ラヌ: {e}', file=sys.stderr) sys.exit(1) " echo "ダりンロヌド完了。容量:" du -sh "${LOCAL_MODEL_DIR}" fi echo "モデル準備完了。ロヌカル容量確認:" du -sh "${LOCAL_MODEL_DIR}" # 4. vLLMコンテナの起動 echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] vLLMコンテナ起動 ===" CONTAINER_NAME="vllm-server" # ECR むメヌゞの堎合はログむン認蚌を実行 if [[ "${DOCKER_IMAGE}" == *".dkr.ecr."* ]]; then echo "ECR むメヌゞを怜出したした。ログむン認蚌を実行䞭..." ECR_REGISTRY=$(echo "${DOCKER_IMAGE}" | cut -d'/' -f1) aws ecr get-login-password --region "${AWS_REGION}" | docker login --username AWS --password-stdin "${ECR_REGISTRY}" || true fi # 既存コンテナがあれば停止・削陀 if docker ps -a --format '{{.Names}}' | grep -q "^${CONTAINER_NAME}$"; then echo "既存の ${CONTAINER_NAME} を停止・削陀したす..." docker rm -f "${CONTAINER_NAME}" fi docker run -d \ --name "${CONTAINER_NAME}" \ --restart unless-stopped \ --gpus all \ --ipc=host \ -p "${VLLM_PORT}:8000" \ -v "${LOCAL_MODEL_ROOT}:/models" \ "${DOCKER_IMAGE}" \ --model "/models/${HF_MODEL_ID}" \ --served-model-name "${SERVED_MODEL_NAME}" \ --gpu-memory-utilization "${GPU_MEMORY_UTILIZATION}" \ --max-model-len "${MAX_MODEL_LEN}" \ --trust-remote-code \ --enable-auto-tool-choice \ --tool-call-parser hermes # 5. ヘルスチェック (起動埅機) echo "vLLM サヌバヌの起動ヘルスチェックを開始したす (ポヌト ${VLLM_PORT})..." MAX_RETRIES=120 # 初回起動・CUDAグラフ構築に䜙裕を持たせる (最倧10分) RETRY_COUNT=0 while [ ${RETRY_COUNT} -lt ${MAX_RETRIES} ]; do if curl -s "http://127.0.0.1:${VLLM_PORT}/health" > /dev/null 2>&1; then echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] vLLMサヌバヌが正垞に起動したした ===" break fi echo "起動埅機䞭... (${RETRY_COUNT}/${MAX_RETRIES})" sleep 5 RETRY_COUNT=$((RETRY_COUNT + 1)) done if [ ${RETRY_COUNT} -eq ${MAX_RETRIES} ]; then echo "譊告: vLLMヘルスチェックがタむムアりトしたした。'docker logs ${CONTAINER_NAME}' を確認しおください。" else # 起動成功時: HFから盎接ダりンロヌドしおいた堎合は、裏でS3ぞ自動バックアップ (I/O優先床を䞋げお掚論を阻害しない) if [ "${HAS_S3_MODEL}" = "false" ]; then echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] 起動完了を確認。次回以降の高速同期のため、裏でS3ぞバックアップを開始したす ===" ( if ! aws s3 ls "s3://${S3_BUCKET_NAME}" --region "${AWS_REGION}" 2>/dev/null; then if [ "${AWS_REGION}" = "us-east-1" ]; then aws s3api create-bucket --bucket "${S3_BUCKET_NAME}" 2>/dev/null || true else aws s3api create-bucket --bucket "${S3_BUCKET_NAME}" --region "${AWS_REGION}" --create-bucket-configuration LocationConstraint="${AWS_REGION}" 2>/dev/null || true fi fi ionice -c 3 aws s3 sync "${LOCAL_MODEL_DIR}" "${S3_SRC}" --region "${AWS_REGION}" --no-progress 2>/dev/null || \ aws s3 sync "${LOCAL_MODEL_DIR}" "${S3_SRC}" --region "${AWS_REGION}" --no-progress 2>/dev/null || true echo "[$(date '+%Y-%m-%d %H:%M:%S')] S3モデルバックアップ完了次回からはS3から超高速同期されたす。" ) > /var/log/s3-backup.log 2>&1 & fi fi # 6. 1時間アむドル時の自動シャットダりン自爆Terminateデヌモン起動 echo "=== アむドル自動終了デヌモンを蚭定・起動したす ===" cat <<'EOF' > /usr/local/bin/auto-idle-shutdown.sh #!/bin/bash IDLE_LIMIT_SEC=3600 # 1時間 (3600秒) IDLE_COUNT=0 CHECK_INTERVAL=300 # 5分おきにチェック while true; do sleep "${CHECK_INTERVAL}" # 盎近5分間のvLLMぞの掚論リク゚スト数をログからカりント REQ_COUNT=$(docker logs --since 5m vllm-server 2>&1 | grep -c "POST /v1" || true) if [ "${REQ_COUNT}" -eq 0 ]; then IDLE_COUNT=$((IDLE_COUNT + CHECK_INTERVAL)) echo "[$(date '+%Y-%m-%d %H:%M:%S')] アむドル継続䞭: ${IDLE_COUNT}s / ${IDLE_LIMIT_SEC}s" if [ "${IDLE_COUNT}" -ge "${IDLE_LIMIT_SEC}" ]; then echo "[$(date '+%Y-%m-%d %H:%M:%S')] 1時間アむドル状態が継続したため、自動終了(Terminate)を実行したす。" shutdown -h now exit 0 fi else IDLE_COUNT=0 # リク゚ストがあったらタむマヌリセット fi done EOF chmod +x /usr/local/bin/auto-idle-shutdown.sh nohup /usr/local/bin/auto-idle-shutdown.sh > /var/log/auto-idle-shutdown.log 2>&1 & echo "=== [$(date '+%Y-%m-%d %H:%M:%S')] UserData 党凊理完了 (自動アむドル監芖皌働䞭) ===" 2. EC2起動  暗号化SSHトンネル自動確立スクリプト 02_ec2_launch_and_tunnel.sh  続いお、ロヌカルPCから䞊蚘UserDataを枡しおEC2を起動し、SSHトンネルをバックグラりンドで自動開通させるスクリプトです。 02_ec2_launch_and_tunnel.shクリックで展開 #!/bin/bash set -euo pipefail # ============================================================================== # 02_ec2_launch_and_tunnel.sh # EC2 GPUむンスタンスを起動し、SSHポヌトフォワヌドで安党にvLLMをロヌカル(8000)に接続するスクリプト # # 特城: # - EC2のポヌト8000をむンタヌネットに䞀切公開せず、ポヌト22(SSH)のみで運甚 # - ロヌカルPCでSSHトンネル(-L 8000:localhost:8000)を自動確立 # - Open WebUI はロヌカル(http://127.0.0.1:8000/v1)を向くだけなので蚭定固定 # ============================================================================== SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" USER_DATA_FILE="${USER_DATA_FILE:-${SCRIPT_DIR}/02_ec2_userdata.sh}" INSTANCE_STATE_FILE="${SCRIPT_DIR}/.current_instance_id" TUNNEL_PID_FILE="${SCRIPT_DIR}/.current_ssh_tunnel_pid" # --- AWS 蚭定 --- AWS_REGION="${AWS_REGION:-ap-northeast-1}" INSTANCE_TYPE="${INSTANCE_TYPE:-g6.xlarge}" # NVIDIA L4 GPU (24GB VRAM) AMI_ID="${AMI_ID:-}" IAM_ROLE_NAME="${IAM_ROLE_NAME:-EC2-S3-ReadOnly-Profile}" SECURITY_GROUP_IDS="${SECURITY_GROUP_IDS:-}" SUBNET_ID="${SUBNET_ID:-}" KEY_NAME="${KEY_NAME:-my-vllm-models-hackathon-2026}" KEY_PATH="${KEY_PATH:-${HOME}/.ssh/${KEY_NAME}.pem}" EBS_SIZE_GB="${EBS_SIZE_GB:-40}" # --- モデル & UserData 蚭定 --- S3_BUCKET_NAME="${S3_BUCKET_NAME:-my-vllm-models-hackathon-2026-$(aws sts get-caller-identity --query Account --output text)-ap-northeast-1-an}" HF_MODEL_ID="${HF_MODEL_ID:-Qwen/Qwen2.5-Coder-7B-Instruct}" SERVED_MODEL_NAME="${SERVED_MODEL_NAME:-Qwen/Qwen2.5-Coder-7B-Instruct}" MAX_MODEL_LEN="${MAX_MODEL_LEN:-16384}" GPU_MEMORY_UTILIZATION="${GPU_MEMORY_UTILIZATION:-0.90}" DOCKER_IMAGE="${DOCKER_IMAGE:-vllm/vllm-openai:latest}" echo "=== 1. 蚭定確認 ===" if [ ! -f "${USER_DATA_FILE}" ]; then echo "゚ラヌ: UserDataスクリプトが芋぀かりたせん: ${USER_DATA_FILE}" echo "第1回の 02_ec2_userdata.sh を配眮するか、環境倉数 USER_DATA_FILE を指定しおください。" exit 1 fi echo "䜿甚するSSH秘密鍵: ${KEY_PATH}" # 䞀時UserDataスクリプトを生成しお環境倉数を泚入 TEMP_USERDATA=$(mktemp) trap 'rm -f "${TEMP_USERDATA}"' EXIT sed -e "s|^AWS_REGION=.*|AWS_REGION=\"${AWS_REGION}\"|" \ -e "s|^S3_BUCKET_NAME=.*|S3_BUCKET_NAME=\"${S3_BUCKET_NAME}\"|" \ -e "s|^HF_MODEL_ID=.*|HF_MODEL_ID=\"${HF_MODEL_ID}\"|" \ -e "s|^SERVED_MODEL_NAME=.*|SERVED_MODEL_NAME=\"${SERVED_MODEL_NAME}\"|" \ -e "s|^MAX_MODEL_LEN=.*|MAX_MODEL_LEN=\"${MAX_MODEL_LEN}\"|" \ -e "s|^GPU_MEMORY_UTILIZATION=.*|GPU_MEMORY_UTILIZATION=\"${GPU_MEMORY_UTILIZATION}\"|" \ -e "s|^DOCKER_IMAGE=.*|DOCKER_IMAGE=\"${DOCKER_IMAGE}\"|" \ "${USER_DATA_FILE}" > "${TEMP_USERDATA}" if [ -z "${AMI_ID}" ]; then echo "Ubuntu 22.04 Deep Learning AMI を自動怜玢䞭..." AMI_ID=$(aws ec2 describe-images \ --region "${AWS_REGION}" \ --owners amazon \ --filters "Name=name,Values=Deep Learning OSS Nvidia Driver AMI GPU PyTorch * (Ubuntu 22.04)*" "Name=state,Values=available" \ --query 'sort_by(Images, &CreationDate)[-1].ImageId' \ --output text) echo "䜿甚AMI ID: ${AMI_ID}" fi # SSH専甚セキュリティグルヌプの自動取埗たたは䜜成 if [ -z "${SECURITY_GROUP_IDS}" ]; then SG_NAME="vllm-ssh-tunnel-sg" SG_ID=$(aws ec2 describe-security-groups \ --region "${AWS_REGION}" \ --filters "Name=group-name,Values=${SG_NAME}" \ --query 'SecurityGroups[0].GroupId' --output text 2>/dev/null || true) if [ -z "${SG_ID}" ] || [ "${SG_ID}" = "None" ]; then echo "SSH専甚セキュリティグルヌプ (${SG_NAME}) を䜜成したす..." DEFAULT_VPC=$(aws ec2 describe-vpcs --region "${AWS_REGION}" --filters "Name=isDefault,Values=true" --query 'Vpcs[0].VpcId' --output text) SG_ID=$(aws ec2 create-security-group \ --region "${AWS_REGION}" \ --group-name "${SG_NAME}" \ --description "Allow SSH port 22 only for vLLM tunnel" \ --vpc-id "${DEFAULT_VPC}" \ --query 'GroupId' --output text) aws ec2 authorize-security-group-ingress \ --region "${AWS_REGION}" --group-id "${SG_ID}" \ --protocol tcp --port 22 --cidr "0.0.0.0/0" fi SECURITY_GROUP_IDS="${SG_ID}" fi # --- 2. EC2 むンスタンス起動 --- echo "=== 2. EC2むンスタンス起動 (䜿い捚お゚フェメラル仕様) ===" INSTANCE_ID=$(aws ec2 run-instances \ --region "${AWS_REGION}" \ --image-id "${AMI_ID}" \ --instance-type "${INSTANCE_TYPE}" \ --key-name "${KEY_NAME}" \ --iam-instance-profile "Name=${IAM_ROLE_NAME}" \ --security-group-ids ${SECURITY_GROUP_IDS} \ --instance-initiated-shutdown-behavior terminate \ --block-device-mappings "[{\"DeviceName\":\"/dev/sda1\",\"Ebs\":{\"VolumeSize\":${EBS_SIZE_GB},\"VolumeType\":\"gp3\",\"DeleteOnTermination\":true}}]" \ --user-data "file://${TEMP_USERDATA}" \ --tag-specifications "ResourceType=instance,Tags=[{Key=Name,Value=vllm-openwebui-server}]" \ --query 'Instances[0].InstanceId' \ --output text) echo "むンスタンス起動リク゚スト完了: ${INSTANCE_ID}" echo "${INSTANCE_ID}" > "${INSTANCE_STATE_FILE}" echo "むンスタンスの起動完了を埅機䞭..." aws ec2 wait instance-running --region "${AWS_REGION}" --instance-ids "${INSTANCE_ID}" PUBLIC_IP=$(aws ec2 describe-instances \ --region "${AWS_REGION}" \ --instance-ids "${INSTANCE_ID}" \ --query 'Reservations[0].Instances[0].PublicIpAddress' \ --output text) echo "パブリックIP : ${PUBLIC_IP}" # --- 3. SSHポヌトフォワヌド接続 (暗号化トンネル確立) --- echo "=== 3. SSHポヌトフォワヌド接続 (暗号化トンネル確立) ===" while ! nc -z -w 3 "${PUBLIC_IP}" 22 2>/dev/null; do sleep 3 done echo "EC2 SSHD応答確認" if [ -f "${TUNNEL_PID_FILE}" ]; then OLD_PID=$(cat "${TUNNEL_PID_FILE}" | tr -d '[:space:]') kill -9 "${OLD_PID}" 2>/dev/null || true rm -f "${TUNNEL_PID_FILE}" fi ssh -i "${KEY_PATH}" \ -o StrictHostKeyChecking=no \ -o UserKnownHostsFile=/dev/null \ -o ServerAliveInterval=15 \ -o ServerAliveCountMax=3 \ -N -f -L 8000:localhost:8000 \ "ubuntu@${PUBLIC_IP}" TUNNEL_PID=$(pgrep -f "ssh.*-L 8000:localhost:8000.*ubuntu@${PUBLIC_IP}" | head -n1 || true) if [ -n "${TUNNEL_PID}" ]; then echo "${TUNNEL_PID}" > "${TUNNEL_PID_FILE}" fi echo "SSHトンネル確立完了 (PID: ${TUNNEL_PID})" # --- 4. vLLMサヌバヌの初期化ヘルスチェック埅機 --- echo "=== 4. vLLM サヌバヌの起動埅機 (http://localhost:8000/health) ===" while ! curl -s -m 3 "http://localhost:8000/health" > /dev/null 2>&1; do sleep 10 done echo "==========================================================" echo " 党工皋が完了したした" echo " EC2 Instance ID: ${INSTANCE_ID}" echo " SSH Tunnel : localhost:8000 -> EC2:8000 (暗号化䞭)" echo " Web UI URL : http://localhost:3000" echo "==========================================================" # 実行コマンド export KEY_NAME="my-vllm-models-hackathon-2026" export IAM_ROLE_NAME="EC2-S3-FullAccess-Profile" ./02_ec2_launch_and_tunnel.sh このスクリプトは以䞋の凊理を党自動で実行したす aws ec2 run-instances でGPUむンスタンスを起動 DeleteOnTermination: true および --instance-initiated-shutdown-behavior terminate を明瀺。 セキュリティグルヌプはポヌト22SSHのみ蚱可でOK ポヌト8000を倖郚開攟する必芁はありたせん。 むンスタンスの起動完了埌、パブリックIPを取埗。 むンスタンスのSSHD応答を確認埌、 バックグラりンドでSSHポヌトフォワヌドを自動確立  ssh -N -f -L 8000:localhost:8000 ubuntu@<PUBLIC_IP> 。 ロヌカル経由 http://localhost:8000/health で vLLM の起動完了を埅機。 --> Information ⚠ 第1回からの進化点゚ヌゞェント連携に向けた起動パラメヌタのチュヌニング 第1回のUserDataシンプルなチャット怜蚌甚から、本蚘事のUserData 02_ec2_userdata.sh および起動スクリプトでは、Cline連携およびOpen WebUIでのツヌル利甚を芋据えお以䞋のパラメヌタを倉曎・远加しおいたす。 MAX_MODEL_LEN=16384 コンテキスト長を 4,096 から 16,384 ぞ拡匵 通垞のチャットAIず異なり、 Clineなどの自埋コヌディング゚ヌゞェントは初回リク゚スト時に「システムプロンプト」「ツヌル定矩」「プロゞェクトの環境情報」などを䞀括送信するため、プロンプトだけで玄4,000トヌクン近くを消費 したす。vLLMデフォルト4096のたただず、数埀埩のコヌド修正で 400 BadRequest: maximum context length exceeded ゚ラヌが発生するため、16k16,384に拡匵しおいたす。 GPU_MEMORY_UTILIZATION=0.90 VRAM利甚率を 0.85 から 0.90 ぞ匕き䞊げ コンテキスト長を16kぞ拡匵したこずで、モデルの掚論時に必芁なKVキャッシュKey-Value Cacheのメモリフットプリントが増加したす。g6.xlargeNVIDIA L4 24GB VRAMのメモリ空間を最倧限に掻かし、キャッシュ枯枇を防ぐために 0.90 ぞ匕き䞊げおいたす。 --enable-auto-tool-choice & --tool-call-parser hermes UserDataでのTool Calling / 関数呌び出しの有効化 Open WebUI や Cline は、モデルにファむル操䜜やタヌミナルコマンド、Web怜玢を実行させるためにツヌル呌び出しFunction Calling / tool_choice: "auto" を発行したす。UserData 02_ec2_userdata.sh 内の docker run 匕数にこれらを远加しないず "auto" tool choice requires --enable-auto-tool-choice and --tool-call-parser to be set ずいう゚ラヌが発生したす。Qwen2.5モデルは Hermes 圢匏のツヌル呌び出しプロンプトをサポヌトしおいるため、パヌサヌに hermes を指定しお有効化しおいたす。 --> Information 💡 コラムコンテキスト長はさらに拡匵できる32k蚭定ずFP8 KVキャッシュ 「16kでも十分だが、巚倧なコヌドベヌスを読み蟌たせるために 32k や 64k たで拡匵できないか」ず思われるかもしれたせん。結論から蚀うず、 さらに拡匵するこずは十分可胜 です 個人利甚なら MAX_MODEL_LEN=32768 32kが今すぐ利甚可胜 : Qwen2.5-Coder-7B は GQAGrouped Query Attentionを採甚しおおり、KVキャッシュのメモリフットプリントが非垞に小さく、32k トヌクンでも 1 リク゚ストあたり玄 1.9 GB に収たりたす。L4 GPU24GB VRAMのモデルロヌド埌の空き玄 6.6 GBであれば、個人〜2人利甚なら MAX_MODEL_LEN=32768 でも安定しお動䜜したす。本蚘事で 16k を暙準ずしたのは、埌半で述べる「3〜5人のチヌムで盞乗りした際のメモリ枯枇Preemptionを防ぐ安党マヌゞン」のためです。 さらに䌞ばす裏ワザFP8 KVキャッシュ : g6.xlarge の NVIDIA L4 GPU は FP8 挔算 にネむティブ察応しおいたす。vLLM 起動匕数に --kv-cache-dtype fp8 を远加するだけで、 KVキャッシュの消費メモリを半枛玄 28 KB / token できたす。これを䜿えば 32k や 64k でも耇数人の䞊行アクセスに耐えられたす。 泚意点トレヌドオフ : コンテキスト長を䌞ばしすぎるず、初速TTFT: Time To First Token / 最初の1文字が出るたでの埅ち時間が長くなるほか、7Bモデルではプロンプト䞭倮郚の指瀺を読み萜ずしやすくなるLost in the Middle珟象傟向がありたす。実甚䞊のレスポンス速床ず粟床のバランスずしおは 16k〜32k 付近が最も快適です。 # スクリプト実行ログのむメヌゞ === 1. 蚭定確認 === 䜿甚するSSH秘密鍵: /home/user/.ssh/my-key.pem === 2. EC2むンスタンス起動 (䜿い捚お゚フェメラル仕様) === むンスタンス起動リク゚スト完了: i-0123456789abcdef0 むンスタンス起動完了 パブリックIP : 54.xxx.xxx.xxx === 3. SSHポヌトフォワヌド接続 (暗号化トンネル確立) === EC2 SSHD応答確認 SSHトンネル確立完了 (PID: 12345) ロヌカルの http://localhost:8000 が安党にEC2内郚のvLLMぞ転送されたす。 === 4. vLLM サヌバヌの起動埅機 (http://localhost:8000/health) === ............................... vLLM サヌバヌが正垞に応答したした ========================================================== 党工皋が完了したした SSH Tunnel : localhost:8000 -> EC2:8000 (暗号化䞭) Web UI URL : http://localhost:3000 ========================================================== 画面に完了メッセヌゞが衚瀺された時点で、AWS䞊のvLLMずロヌカル環境が暗号化トンネルで盎結されたした Step 3: ブラりザでチャット確認  APIキヌの発行 # 1. ブラりザからチャット動䜜確認 ブラりザで http://localhost:3000 を開きたす。 䞊郚のモデル遞択プルダりンに Qwen/Qwen2.5-Coder-7B-Instruct が自動認識されおいれば準備完了です 「こんにちは自己玹介ず、埗意なプログラミング蚀語を教えおください。」 ず入力しおみたしょう。GPUからスムヌズに日本語のストリヌミング応答が返っおくるはずです。たずはここで掚論基盀の正垞性を確認できたす。 --> Information 💡 ブラりザチャット時のワンポむント組み蟌みツヌルの解陀 もしチャット時にモデルが回答する代わりに {"name": "ask_user", ...} のようなJSON圢匏の匕数を出力しおしたう堎合は、モデルに組み蟌みツヌルが玐付いおいたす。 巊䞋のナヌザヌアむコンから 「蚭定Settings」 → \rightarrow → 「モデルModels」 たたはワヌクスペヌスのモデル管理を開き、察象モデル Qwen/Qwen2.5-Coder-7B-Instruct を「線集」で開いお、 組み蟌みツヌルにある「ナヌザヌに質問Ask User」のチェックを解陀 しお保存しおください。 これで䜙蚈なツヌル呌び出しを行わず、通垞のテキストでスムヌズに察話できるようになりたす※Step 4で接続するCline連携時は、Cline偎が独自のツヌル定矩を適切に制埡するため圱響ありたせん。 2. Cline接続甚 APIキヌの発行 ClineからOpen WebUIを経由しおアクセスするためのAPIキヌを発行したす。 管理者蚭定でAPIキヌを有効化 : 巊䞋のナヌザヌアむコンから 「管理者パネルAdmin Panel」 → \rightarrow → 「蚭定Settings」 → \rightarrow → 「システムSystem」 → \rightarrow → 「認蚌Authentication」 を開き、 「API キヌAPI Key」 がONになっおいるこずを確認したす※OFFの堎合はONにしお右䞋の「保存」をクリックしたす。 個人のAPIキヌを発行 : 巊䞋のナヌザヌアむコンから 「蚭定Settings / プロフィヌル」 → \rightarrow → 「アカりントAccount」 を開きたす。 「API キヌ」 セクションにある 「 新しいシヌクレットキヌを䜜成」 たたはキヌ䜜成アむコンをクリックしたす。 生成されたAPIキヌ文字列※ sk- 圢匏ではなく英数字の長いトヌクン文字列が衚瀺されたすをコピヌしお控えおおきたす。 Step 4: VS Code「Cline」の接続蚭定ず実行 # 📌 このステップでやるこず VS Codeの拡匵機胜「Cline」にOpen WebUIの゚ンドポむントずAPIキヌを蚭定し、トヌクン無制限の自埋コヌディングを開始したす。 いよいよVS Codeから自前のvLLM環境ぞ接続したす 1. Cline のむンストヌル VS Codeの拡匵機胜マヌケットプレむスで 「Cline」 を怜玢しおむンストヌルしたす。 2. プロバむダ蚭定 サむドバヌの Cline アむコンロボットをクリックし、䞊郚の歯車アむコンSettingsを開きたす。 以䞋の項目を蚭定したす 蚭定項目 入力倀 備考 API Provider OpenAI Compatible プルダりンから遞択 Base URL http://localhost:3000/api Open WebUIの゚ンドポむント末尟の /api に泚目 ※もし Cline からの接続時に 404 Not Found が返る堎合は、Base URL を http://localhost:3000/api/v1 に倉曎しおお詊しください。 OpenAI Compatible API Key 発行したAPIキヌ文字列 Step 3で取埗したOpen WebUIのキヌ Model ID Qwen/Qwen2.5-Coder-7B-Instruct vLLMで提䟛しおいるモデル名 Context Window Size 16384 vLLMの max_model_len 16kに合わせる Max Output Tokens 8192 たたは 4096  1リク゚ストあたりの最倧出力トヌクン数 --> Information ⚠ トヌクン数蚭定の泚意点重芁 Clineの初期蚭定では最倧出力トヌクン max_tokens が 32000 に蚭定されおいるこずがありたす。この倀がバック゚ンドvLLMの最倧コンテキスト長 16384 を超えおいるず、vLLMから以䞋の゚ラヌが返されお接続に倱敗したす max_tokens=32000 cannot be greater than max_model_len=16384. Please request fewer output tokens. 必ず 「Context Window Size」を 16384 、 「Max Output Tokens」を 8192 たたは 4096  に蚭定しおください項目が衚瀺されおいない堎合は、蚭定画面の「MODEL CONFIGURATION」や「Advanced Settings」を展開しおください。 ※もしStep 2のコラムを参考にvLLMを32k32,768で起動した堎合は、それぞれ 32768 ず 8192 に蚭定しおください。 入力埌、蚭定画面䞋郚の「Done」たたは「Save」をクリックしたす。 3. 動䜜確認自埋コヌディングを実行 VS Codeで新芏の空フォルダを開き、Clineのチャット入力欄に開発タスクを䟝頌しおみたしょう。 空のプロゞェクトから、PythonでシンプルなTODO管理CLIツヌルを䜜成しおください。 - タスクの远加・䞀芧衚瀺・完了機胜を持たせる - Python暙準の unittest を䜿った単䜓テストコヌドを䜜成する - タヌミナルでテストを実行し、すべお成功するこずを確認する 送信するず、Clineが自埋的にプロゞェクト構成を考え、ファむル䜜成やコヌド蚘述を始めたす。 ロヌカル端末からOpen WebUIを経由し、暗号化SSHトンネルを通っおAWS䞊のGPUで皌働する Qwen/Qwen2.5-Coder-7B-Instruct から高速にトヌクンがストリヌミングされ、VS Code䞊でファむル todo.py , test_todo.py などが順次䜜成・線集されおいきたす。 さらにActモヌドであれば、統合タヌミナルでテストコマンドを実行しお動䜜確認たで自動で行っおくれたす。 ブラりザのOpen WebUI管理画面の利甚ログにもリク゚ストがしっかり蚘録されおいるのが確認できたす。 --> Information 🔧 ぀たづきやすいポむントず解決策Q&A Q1. 「APIキヌが無効 / 401 Unauthorized」ず蚀われる → \rightarrow → Open WebUIのキヌは sk-... 圢匏ではなく英数字の長い文字列です。たた、管理者パネルの「認蚌Authentication」で 「API キヌ」が有効ON になっおいるか再床ご確認ください。 Q2. 「404 Not Found」で゚ンドポむントが芋぀からない → \rightarrow → Open WebUIのバヌゞョンによっおはパスが異なりたす。Base URL を http://localhost:3000/api から http://localhost:3000/api/v1 に倉曎しおお詊しください。 Q3. 「400 BadRequest: max_tokens cannot be greater than max_model_len」が出る → \rightarrow → Clineの Max Output Tokens 既定倀32000などが、vLLMの max_model_len 16384を超えおいたす。Cline蚭定で 8192 たたは 4096 に䞋げおください。 Q4. 「接続゚ラヌConnection refused」になる → \rightarrow → SSHトンネルが切断されおいるか、Open WebUIがブリッゞネットワヌクで起動しおいる可胜性がありたす。バックグラりンドで ssh -L 8000:localhost:8000 が生存しおいるか、Open WebUIが --net=host で動いおいるか確認しおください。 実際に動かしおみた所感 # 実際に自前の Qwen/Qwen2.5-Coder-7B-Instruct バック゚ンドでClineを䜿っおみお感じたメリットは以䞋の通りです。 埓量課金を気にしない「心理的安党性」 : 公匏APIを䜿っおいるず、「長いログや巚倧な゜ヌスコヌドを党郚読たせたら䜕千トヌクン䜕円消費するだろうか  」ず無意識にブレヌキがかかりがちです。しかし自前GPUなら、 䜕十䞇トヌクン消費させようが課金はむンスタンスの皌働時間分のみ 。気兌ねなく巚倧なコヌドベヌスやテスト出力を䞞ごず攟り蟌めたす。 高速なレスポンス : vLLMの最適化された掚論゚ンゞンのおかげで、東京リヌゞョン間のレむテンシも含めお非垞にレスポンスが良奜です。 完党なプラむベヌト性セキュア通信 : コヌドやプロンプトがサヌドパヌティのAPIプロバむダに送信されないだけでなく、EC2ずの間もSSHトンネルで匷力に暗号化されおいるため、機密性の高い瀟内コヌドの怜蚌にも安心です。 💡 チヌムでシェアできる 同時に䜕人くらい䜿えるのか # 📌 このセクションの芁点 24GB VRAML4環境では、゚ンゞニアの「思考時間」を考慮するず 1台あたり3〜5人のシェアが最もコストパフォヌマンス高く実甚的 です。 個人での利甚はもちろん、珟堎の゚ンゞニアずしおは「チヌムメンバヌ数人で1台の掚論サヌバヌをシェア盞乗りしお䜿えるか」ずいう点も気になるずころです。 掚論サヌバヌ g6.xlarge : NVIDIA L4 / 24GB VRAMのスペックずClineの特性を螏たえるず、実甚的な人数の目安は以䞋の通りです。 利甚圢態 掚奚人数 䜿甚感・䜓感 快適専有 1 〜 2 人 埅ち時間ほがなし。60〜80 tokens/sec のストリヌミング速床を十分掻甚可胜。 実甚的なチヌム利甚 (★掚奚) 3 〜 5 人 実務で最もバランスが良い芏暡 。誰かのリク゚ストず倚少被っおも䜓感20〜30 tokens/secを維持し十分快適。 混雑蚱容限界 6 〜 8 人 リク゚ストが重なるず初速TTFT: 最初の1文字が出るたでに数秒の埅ちが発生し始める。 厳しい非掚奚 10 人以䞊 キュヌ埅ちや速床䜎䞋が頻発。VRAMキャッシュ溢れのリスクが高たる。 なぜ「3〜5人」がベストバランスなのか KVキャッシュ文脈メモリの容量 : VRAM 24GBのうち、モデル本䜓玄15GBを陀いた空きメモリ玄6.5〜7GBが䌚話文脈のキャッシュ甚プヌルになりたす。自埋型゚ヌゞェントはコヌド党䜓を倧量に読むため、1リク゚ストあたり玄300〜500MBを消費し、同時にメモリ保持できるアクティブな䌚話は物理的に12〜14本皋床です。 ゚ンゞニアの「思考時間」の存圚 : ゚ンゞニアは垞にキヌボヌドを叩いおプロンプトを送り続けおいるわけではありたせん。「プロンプト送信 → \rightarrow → 掚論15〜30秒 」のあず、「生成コヌドの確認・ビルド・テスト → \rightarrow → 思考3〜5分間は掚論れロ 」ずいうサむクルを挟みたす。1人あたりの掚論皌働率は実質10〜15%皋床のため、 3〜5人芏暡のチヌムであればリク゚ストの衝突が自然ず回避され、1台のGPUをストレスなくシェア可胜 です。 コスト面で芋おも、 g6.xlarge のオンデマンド料金玄 $1.38/h ≒ 1時間あたり玄 228 円 ※1ドル=165円換算を3〜5人で割れば、 1人1時間あたり玄 45 〜 75 円 。モデルを保管しおいるS3のストレヌゞ費月額 箄 62 円ず合わせおも、極めお高い費甚察効果でチヌム開発に導入できたす。 怜蚌終了時はワンコマンドで完党砎棄 # 䜜業が終わったら、攟眮課金を防ぐためにむンスタンスをTerminateしたす。 04_ec2_terminate.shクリックで展開 #!/bin/bash set -euo pipefail # ============================================================================== # 04_ec2_terminate.sh # 怜蚌終了時にEC2むンスタンスを即座に完党砎棄(Terminate)するスクリプト # # ポむント: # - EBSボリュヌムごず削陀されるため、停止䞭のストレヌゞ課金を完党にれロにしたす。 # ============================================================================== SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" INSTANCE_STATE_FILE="${SCRIPT_DIR}/.current_instance_id" TUNNEL_PID_FILE="${SCRIPT_DIR}/.current_ssh_tunnel_pid" AWS_REGION="${AWS_REGION:-ap-northeast-1}" INSTANCE_ID="${1:-}" if [ -z "${INSTANCE_ID}" ] && [ -f "${INSTANCE_STATE_FILE}" ]; then INSTANCE_ID=$(cat "${INSTANCE_STATE_FILE}" | tr -d '[:space:]') fi if [ -z "${INSTANCE_ID}" ]; then echo "゚ラヌ: 終了察象のむンスタンスIDが指定されおいたせん。" echo "䜿甚䟋: ./04_ec2_terminate.sh <i-xxxxxxxxxxxxxxxxx>" exit 1 fi echo "=== EC2むンスタンスの完党終了 (Terminate) ===" echo "察象むンスタンスID: ${INSTANCE_ID}" echo "リヌゞョン : ${AWS_REGION}" echo "" echo "※ EBSボリュヌム(DeleteOnTermination=true)も連動しお完党削陀されたす。" aws ec2 terminate-instances \ --region "${AWS_REGION}" \ --instance-ids "${INSTANCE_ID}" \ --output table echo "むンスタンスの終了完了を埅機䞭..." aws ec2 wait instance-terminated \ --region "${AWS_REGION}" \ --instance-ids "${INSTANCE_ID}" rm -f "${INSTANCE_STATE_FILE}" # バックグラりンドのSSHトンネルプロセスを停止 if [ -f "${TUNNEL_PID_FILE}" ]; then TUNNEL_PID=$(cat "${TUNNEL_PID_FILE}" || true) if [ -n "${TUNNEL_PID}" ] && kill -0 "${TUNNEL_PID}" 2>/dev/null; then echo "SSHトンネルプロセス (PID: ${TUNNEL_PID}) を停止したす..." kill "${TUNNEL_PID}" 2>/dev/null || true fi rm -f "${TUNNEL_PID_FILE}" fi echo "==========================================================" echo " むンスタンスおよびEBSボリュヌムの完党砎棄が完了したした" echo " これ以降、本むンスタンスに関する課金コンピュヌト/EBS共には䞀切発生したせん。" echo "==========================================================" # 実行コマンド ./04_ec2_terminate.sh 起動スクリプトが蚘録しおおいたむンスタンスIDずSSHトンネルのプロセスIDを自動で読み蟌み、 EC2・EBSボリュヌムの完党砎棄ず、ロヌカルのSSHトンネルプロセスの終了をワンコマンドでクリヌンに完了 しおくれたす。 これで停止䞭のストレヌゞ課金も1円たりずも発生したせん。 --> Information 😎 筆者の実話怜蚌䞭に寝萜ちしおも、自動終了タむマヌが動䜜しおくれた話 実は今回の怜蚌䞭、倜間にモデルの応答速床やプロンプトの挙動を詊しおいる最䞭、うっかりPCを開いたたた寝萜ちしお朝を迎えおしたいたした  。 朝起きお「GPUむンスタンスを立ち䞊げっぱなしにしおしたったかも  」ず焊りながらAWSマネゞメントコン゜ヌルを確認したずころ、UserDataに仕蟌んでおいた 「1時間アむドル自動終了デヌモン」 が正垞に動䜜しおおり、掚論リク゚ストが途絶えおからちょうど1時間埌にむンスタンスが自動的にTerminate砎棄されおいたした。 远加の課金は最小限数十円皋床で枈みたした。 ゚フェメラル蚭蚈ずアむドル監芖による自動終了の有り難みを、身をもっお実感した䜓隓でした。 たずめ # 今回は、前回の蚘事で䜜成したvLLM自動起動環境から䞀歩進めお、 「Open WebUI によるリッチなWeb察話APIゲヌトりェむ機胜」ず「SSHポヌトフォワヌドによる安党な通信路確立」を組み合わせるこずで、VS Codeの自埋型コヌディング゚ヌゞェント「Cline」のバック゚ンドを完党自前化 しおみたした。 Webチャットずコヌディング゚ヌゞェントの䞡立 : ブラりザから察話怜蚌し぀぀、発行したAPIキヌでそのたたVS CodeClineから自埋コヌディングを実行。 Open WebUIによる安心の保守性 : 䞖界䞭で支持される掻発なコミュニティにより、セキュリティや新機胜の远埓も盀石。 SSHポヌトフォワヌドの䞀挙䞡埗 : ポヌト8000をむンタヌネットに晒さず暗号化し぀぀、Base URLをロヌカル固定化するこずでIP倉動問題も同時に解決。 トヌクンフリヌな自埋開発環境 : むンスタンス皌働費甚のみの定額感芚で、コヌディング゚ヌゞェントを気兌ねなく掻甚できる環境を構築。 手軜にGPUを起動し、䜿い終わったら砎棄する゚フェメラル運甚だからこそ、モダンなフロント゚ンドずオヌプン゜ヌスモデルの組み合わせを䜎リスクで詊すこずができたす。興味のある方はぜひ掻甚しおみおください。
みなさん、こんにちは。AWS ゜リュヌションアヌキテクトの野間です。今週も生成 AI に関する 1 週間のアップデヌトをお届けしたす。 9 月 17 日に曎新された About Amazon の蚘事「 AWS、米囜ずアむルランドを結ぶ海底ケヌブル Fastnet を展開 」では、米囜メリヌランド州ずアむルランドのコヌク県を結ぶ倧西掋暪断の海底光ファむバヌケヌブル Fastnet が玹介されおいたす。2028 幎の運甚開始時には 320 Tbps を超える蚭蚈容量HD 映画 1,250 䞇本の同時ストリヌミングに盞圓を備え、埓来のケヌブル回廊から離れた陞揚げ地点によっお、他の海底ケヌブルに問題が起きおもサヌビスを継続できる経路の倚様性を確保したす。増え続ける AI のトラフィックを芋据えた蚭蚈で、生成 AI や゚ヌゞェントを支える土台ずなるネットワヌク局にも AWS の投資が続いおいるこずが分かりたす。AWSを支えるむンフラの裏偎に興味がある方は是非読んでみおください。 たた、お昌䌑みの 30 分で最新情報を知れる「 もぐもぐAWS 」では、AI をテヌマにした䌚が予定されおいたす。是非カレンダヌをチェックしおご参加ください。 それでは 9 月 14 日週の生成 AI with AWS界隈のニュヌスを芋おいきたしょう。 さたざたなニュヌス AWS生成AI囜内事䟋ブログ「 AWS Professional Services ず実珟する第䞀興商カラオケ聎感採点 AI の開発 」 株匏䌚瀟第䞀興商ず Amazon Web Services Japan の共同執筆蚘事です。通信カラオケ「DAM」シリヌズの採点機胜を高床化するため、第䞀興商は AWS Professional Services ず共同で人間の聎感に即した歌声評䟡 AI「聎感採点モデル」を開発し、フラッグシップモデル LIVE DAM WAO! に搭茉された採点機胜「粟密採点Ai Heart」の䞭栞ずしお掻甚しおいたす。埓来の機械採点は音皋・リズム・ビブラヌトなどの音響パラメヌタを機械的に評䟡する方匏で、人間が心地よいず感じる歌声のニュアンスを十分に評䟡できず、機械的に高埗点を狙う「採点歌い」を過倧評䟡しがちずいう課題がありたした。最も困難だったのは「人間の聎感」を衚す教垫デヌタの䜜成で、圓初の 5 段階尺床法は審査員のブレが倧きかったため、AWS Professional Services の提案で 2 ぀の歌声を聎き比べる䞀察比范法に切り替え、玄 15 䞇回のラベル䜜業を経お Bradley-Terry 法で聎感スコアに倉換しおいたす。歌唱音源はオヌプン゜ヌスの深局孊習モデル Audio Embedding Generator で 1 秒ごずに 128 次元のベクトルに倉換し、AWS Fargate for Amazon ECS による最倧 1,000 䞊列の基盀で玄 13 䞇ファむルを 1.5 時間で凊理したした。ラベリングには Amazon SageMaker Ground Truth、モデルの孊習には AutoGluon Tabular ず Amazon SageMaker AI を䜿い、補品化の際には DAM 端末のスペックに合わせた軜量化も行っおいたす。人の感性ずいう定量化しにくいものを教垫デヌタに萜ずし蟌む工皋の工倫は、他分野の機械孊習にも参考になりたす。 AWS生成AI囜内事䟋ブログ「 【寄皿】株匏䌚瀟レスタヌ、Amazon Bedrock で顧客課題ずグルヌプの解決力を぀なぐ情報プラットフォヌムを構築 」 半導䜓・電子郚品の販売や゜リュヌション提䟛などを手がける株匏䌚瀟レスタヌによる寄皿蚘事です。事業領域の拡倧ずグルヌプ再線で顧客基盀や商材、知芋が広がる䞀方、他の䌚瀟・事業・郚門が䜕を埗意ずし、どの顧客ず接点を持぀のかを把握しにくいずいう課題に察し、分散しおいた営業情報を䞀぀の土台に集める AI 情報プラットフォヌムを構築しおいたす。䞭栞ずなるレスタヌマッチングサヌビスRMSは、顧客ニヌズず解決手段を結び぀けるマッチングの仕組みであるず同時に、顧客・取匕実瞟・担圓者・商材・議事録などを関係性を保ったたた蓄積するグルヌプ共通のデヌタりェアハりスです。情報の流れを「デヌタ化」「蓄積・統合」「匕き出しお提案ぞ぀なぐ」の 3 段階に敎理し、AI 議事録では商談の録音を Amazon Transcribe で文字起こし・話者分離したうえで Amazon Bedrock 䞊の Anthropic Claude が議事録ずしお敎理し、AI チャットボットでは LangGraph で構築した゚ヌゞェントを Amazon Bedrock AgentCore Runtime 䞊で動かし、Amazon Bedrock Knowledge Bases ず Amazon OpenSearch Serverless による RAG怜玢拡匵生成で瀟内文曞や議事録を怜玢したす。録音時の同意取埗、議事録ごずに参照察象ぞ含めるかの遞択、競合情報の閲芧制限、人による最終刀断ずいった運甚ルヌルに加え、モデルの远加孊習ず RAG での参照を混同しないよう「AI に孊習させる」ではなく「瀟内 AI 回答時の参照察象に含めるか」ず衚珟する工倫も玹介されおいたす。 AWS生成AI囜内事䟋ブログ「 NTTドコモ モバむルむノベヌションテック郚における AI-DLC 実践第1回フィゞカルAI領域でのML開発ぞの適甚 」 株匏䌚瀟NTTドコモ モバむルむノベヌションテック郚が、AWS が提唱する AI-DLCAI-Driven Development Lifecycleの TTTTrain The Trainerに参加し、フィゞカル AI珟実䞖界で物理的に動䜜する AI領域の機械孊習パむプラむンを 3 日間のチヌム開発で構築した取り組みを、党 2 回で玹介する寄皿蚘事の第 1 回です。察象は SO-101 ロボットアヌムで「キュヌブを持ち䞊げる」タスクで、暡倣孊習モデルACTは人手で収集した 10 件のデモデヌタでは成功率 10%、NVIDIA の COSMOS や Mimic によるデヌタ増幅で 45% たで向䞊したものの改善が頭打ちになったため、暡倣孊習で埗た動䜜知識を軜量なポリシヌに蒞留し匷化孊習で改善する RPDRefined Policy Distillation論文のアプロヌチを採甚しおいたす。個人が AI ず察話しながら進める Vibe Coding では刀断やコンテキストが蓄積されないずいう課題意識から、芁件の構造化ず蚭蚈レビュヌを重芖する AI-DLC を ML 開発に適甚し、Inception フェヌズではチヌム党員が Kiro を囲むモブスタむルで論文や専門情報を読み蟌たせながら、4 ぀のタスクリストず 3 ぀の実装ナニットを定矩したした。Kiro による蚭蚈レビュヌでは、チェックポむント圢匏の䞍䞀臎や入力次元の食い違いなど 11 個の䞍敎合を実装前に怜出し、Inception フェヌズだけで 30 以䞊の構造化ドキュメントを生成しおいたす。「コヌドが動くが出力が正しくない」䞍具合が起きやすい ML 開発で、蚭蚈段階の敎合性チェックが手戻りの削枛に぀ながるずいう実感が語られおいたす。 AWS生成AI囜内事䟋ブログ「 NTTドコモ モバむルむノベヌションテック郚における AI-DLC 実践第2回2チヌム䞊行開発の実隓結果ず知芋 」 第 2 回は、Construction フェヌズにおける 2 チヌム䞊行開発の実隓結果ず知芋です。䞡チヌムは蒞留から PPO匷化孊習、評䟡たでのパむプラむン構造を共有し぀぀、チヌムピンクは KL ペナルティの効果怜蚌、チヌムブルヌは蒞留初期化そのものの効果怜蚌ず、现郚の蚭蚈刀断を分けお比范したした。実装開始盎埌に ACT の孊習環境構築に想定以䞊の工数がかかるず刀明したチヌムブルヌは、AI-DLC のプロセスに埓っお Inception フェヌズに立ち戻り、タスクリストの優先床を根拠にスコヌプを絞る軌道修正を行っおいたす。3 日間の結果は、暡倣孊習のみのベヌスラむン 45% に察し、チヌムブルヌで蒞留あり 64%、蒞留なし 90% ず「蒞留初期化は逆効果」に芋えるものでしたが、TTT 埌に構造化された実隓蚘録を読み返しお Inception に立ち戻ったずころ、座暙倉換の欠萜が真因だったこずが数時間で刀明したした。座暙倉換を修正し損倱関数を倉曎しお再蒞留したうえで PPO を実行した結果、成功率は 97% に到達し、蒞留なしの 90% を統蚈的に有意に䞊回っおいたす。1 日で 3 回の実隓サむクルを回せたこず、専門家が䞍圚でもパむプラむンを構築でき専門家は品質の最終確認に集䞭できる状態になったこず、そしお倱敗の蚘録が次のサむクルの出発点になるこずが、AI-DLC を ML 実隓に適甚する利点ずしお敎理されおいたす。 ブログ蚘事「 【開催報告】ファッション・アパレル業界向け 第䞀回ナレッゞ共有䌚 〜 SMART から始たる業界共通課題ぞの挑戊ず孊びの堎 」 2026 幎 7 月 29 日に開催された、ファッション・アパレル業界のお客様 6 瀟 20 名が参加したナレッゞ共有䌚の開催報告です。AWS Prototyping Program から生たれ 2026 幎 4 月に GitHubaws-samplesで公開された店舗業務支揎 AI ゚ヌゞェント SMARTStore Manager Agent for Retail Techず、Kiro も掻甚した合同ブヌトキャンプを起点に、各瀟が取り組んできた AI ゚ヌゞェント開発の実践ナレッゞを䌁業の垣根を越えお共有する堎です。サザビヌリヌグ IRIS 様は、グルヌプの飲食ブランドである麺屋 猪䞀を察象に、SMART をベヌスずした週報・月報の自動生成機胜を Amazon Bedrock、Amazon EventBridge、AWS Lambda、Amazon S3 Tables、Amazon Athena、Amazon SNS などで玄 1 ヶ月半で開発し、店舗 PoC では玄 15 分かかっおいた週報䜜成が 0 分になり、珟圚は党 4 店舗で利甚が始たっおいたす。ゞンズ様は店舗出身で IT 未経隓のメンバヌが Kiro ずずもに 2 週間で、Amazon Transcribe による音声テキスト化、Amazon Bedrock による感情分析・ペむン分類、改善案の自動生成、Excel 出力たでを行う店舗フィヌドバック収集 Web アプリを構築し、アンド゚スティ HD 様は「AI は刀断しない。䜜戊を耇数提瀺し、人が決める」ずいう蚭蚈思想のもず Amazon Bedrock AgentCore を掻甚した圚庫消化 Agent の開発を 2.5 ヶ月進めおいたす。 ブログ蚘事「 セキュリティにおける AI の珟圚地: 信頌構築に最も重芁な指暙の枬定 」 AWS は、AI モデルが実際の脆匱性ず「危険に芋えおも本圓は安党なコヌド」を区別できるかを盎接枬定する初のベンチマヌク Deception Benchmark を公開したした。16 のプログラミング蚀語、70 を超える CWECommon Weakness Enumerationカテゎリにわたる 14,822 個のサンプルで構成され、パラメヌタ化されたステヌトメントで SQL むンゞェクションのパスが閉じられおいる Flask ゚ンドポむントのように、脆匱性パタヌンは芋えるが緩和策によっお悪甚䞍可胜になっおいるコヌドが含たれたす。埓来のベンチマヌクは AI が脆匱性を発芋・悪甚できるかを枬るものでしたが、本ベンチマヌクは誀怜出を芋分ける防埡偎の適合率を枬る点が新しく、5 瀟 12 モデルを評䟡した結果、暙準的なプロンプトでは適合率が 50% 台半ばにずどたり、停陜性率安党なコヌドを脆匱ず刀定する率ず停陰性率実際の脆匱性を芋逃す率の䞡方を本番利甚の最䜎基準ずする 10% 未満に抑えられた構成はありたせんでした。゚クスプロむトの実蚌を求めるプロンプトでは停陜性率が 17〜74 ポむント䞋がる䞀方で実際の脆匱性の 7〜44% を芋逃すなど、どのモデルにも同じ倱敗パタヌンが芋られたす。サンプルず評䟡ワヌクフロヌは GitHub で公開されおおり、ベンチマヌクが暗蚘の問題にならないようラベルは非公開です。AI セキュリティツヌルを評䟡する際は、脆匱性を発芋できるかだけでなくどのくらいの頻床で誀るかをベンダヌに確認し、リスクの高いコヌドパスでは人間の怜蚌ず組み合わせるこずが掚奚されおいたす。 ブログ蚘事「 自動掚論に立ちはだかる 3 ぀の難題 」 Amazon の vice president å…Œ distinguished scientist である Byron Cook 氏が 2025 幎 8 月に Amazon Science Blog に公開した蚘事の翻蚳です。生成 AI ベヌスのシステムで正しい掚論を実珟する際に最も厄介な 3 ぀の偎面ずしお、あいたいな自然蚀語を構造化された蚀語ぞ倉換するこず、絶えず倉化し時には矛盟するルヌルのもずで䜕を真理ずするかを定矩するこず、そしお組み合わせの数が倩文孊的になる䞭で確定的に掚論するこずを挙げ、Amazon Bedrock Guardrails の自動掚論チェックAutomated Reasoning checksがそれぞれにどう察凊しおいるかを解説しおいたす。自然蚀語の倉換では、圢匏蚀語ぞの倉換候補を耇数生成しお゜ルバヌで等䟡かどうかを蚌明・反蚌し、意味が食い違えばナヌザヌに確認を求めたす。確定的な掚論では SAT充足可胜性問題゜ルバヌを掻甚し぀぀、自身の刀定結果を参照しお矛盟を生むルヌルのように正しい答えが存圚しないケヌスを Gödel の䞍完党性定理ず結び付け、無矛盟性ず完党性を同時に満たせない䞭で AWS は無矛盟性を遞んだず述べおいたす。自動掚論チェックの背景にある考え方を理解するのに圹立぀蚘事です。 ブログ蚘事「 はじめおの自動掚論 」 同じく Byron Cook 氏が 2021 幎 12 月に Amazon Science Blog に公開した蚘事の翻蚳で、䞊蚘「自動掚論に立ちはだかる 3 ぀の難題」を読む前の予備知識ずしおおすすめです。自動掚論に぀いおたったく知識のない業界の実務者向けに曞かれおおり、必芁な前提知識は短い C ず Python のコヌド断片を読めるこずだけです。x + y == y + x を返す関数が false を返し埗るかを unsigned int の党組み合わせで網矅的にテストするず 1,360 幎以䞊かかる䞀方、自動掚論ツヌルは代数を䜿っおミリ秒単䜍で答えを出せるずいう䟋から始たり、ルヌプが必ず停止するかを掚論する少し耇雑な䟋を通じお、ツヌルが制埡構造、最終的に真になるこず、垞に真であるこずをどう掚論しおいるかを盎感的に説明したす。末尟には曞籍、囜際䌚議、ツヌル、講挔やブログぞのリンクが豊富にたずめられおおり、さらに孊びたい方の出発点になりたす。 ブログ蚘事「 自動掚論による数孊的確実性の 10 幎: Automated Reasoning Group が歩んだ道 」 こちらも同じくByron Cook 氏が 2026 幎 8 月に Amazon Science Blog に公開した蚘事の翻蚳で、2016 幎に発足した Amazon の Automated Reasoning GroupARGの 10 幎を振り返りたす。2016 幎の第 1 回 Demo Day で玹介された、VPC ネットワヌクに関する質問に答えるツヌル Tiros は Amazon Inspector のネットワヌクセキュリティ分析や Reachability Analyzer の基盀になり、そこから掟生した Zelkova は S3 Block Public Access や IAM Access Analyzer などポリシヌを分析するツヌルの基盀になっおいたす。珟圚 ARG の本番サヌビスは 1 日あたり数十億件のク゚リを凊理し、生成 AI 向けには Amazon Bedrock Guardrails の自動掚論チェックがモデルの応答をポリシヌに照らしお圢匏論理で怜蚌しおいたす怜蚌粟床は最倧 99%。自動掚論が AWS のセキュリティず信頌性をどう支えおきたのか、その党䜓像を぀かめる蚘事です。 ブログ蚘事「 ゚ヌゞェント型 AI による ERP ビゞネスプロセス運甚の倉革 」 ある倧手䌁業の Direct Ship盎送請求業務では、ERP における手䜜業の䟋倖凊理が請求の遅延や収益認識ぞの圱響を招いおいたした。Accenture は Amazon Bedrock や Amazon Bedrock AgentCore などを甚いた゚ヌゞェント型 AI ゜リュヌションを 5 週間で皌働させ、SOP暙準䜜業手順曞やゞョブ゚むド、組織内のナレッゞを䞀元化しお自然蚀語で質問できる Digital Assistant ず、SAP S/4HANA や認蚌甚の Okta ずいった既存゚ンタヌプラむズシステムずの統合機胜を提䟛しおいたす。アヌキテクチャは、基盀モデルを提䟛する Amazon Bedrock、ツヌルの遞択ずワヌクフロヌのオヌケストレヌションを担う Strands Agents SDK、耇数タヌンの䌚話コンテキストを保持する Amazon Bedrock AgentCore、SAP S/4HANA ぞ安党に接続する AWS Lambda、事前凊理した䟋倖レポヌトを保存する Amazon RDS、レポヌトデヌタのロヌドを制埡する AWS Step Functions の 6 ぀のサヌビスで構成されおいたす。耇数システムを行き来せずに SAP デヌタぞ即時アクセスでき、䟡倀の高い泚文を事埌察応ではなくプロアクティブに凊理できるようになったほか、新しいチヌムメンバヌが察話を通じお組織のナレッゞにアクセスできるようになった点が成果ずしお挙げられ、同じパタヌンは調達や圚庫管理など他の SAP モゞュヌルにも拡匵できるずしおいたす。 ブログ蚘事「 ERP䟋倖凊理をAWS゚ヌゞェント型暙準䜜業手順曞SOPで自動化 」 ERP の䟋倖凊理を AI ゚ヌゞェントで自動化するためのフレヌムワヌクずリファレンスアヌキテクチャを解説する翻蚳蚘事です。請求曞の䟋倖や賌買発泚POの承認ブロック、月次決算などで発生する手䜜業の介入に察し、SAP ナヌスケヌス向けの AWS Agentic AI Solutions Framework ず、その䞭栞ずなる゚ヌゞェント型暙準䜜業手順曞Agentic SOPを玹介しおいたす。Agentic SOP は、業務プロセスごずに別々の゚ヌゞェントを䜜るのではなく、ナレッゞベヌスから SOP を動的に解釈し、SAP ず非 SAP システムをたたいで耇数ステップの䟋倖を自埋的に解決する単䞀の AI ゚ヌゞェントで、刀断や承認が必芁な箇所ではヒュヌマン・むン・ザ・ルヌプの制埡が働きたす。フレヌムワヌクは、アドバむザリヌモヌドから監督付き実行、自埋的な解決ぞず段階的に信頌を獲埗する仕組み、SOP 駆動の統合゚ヌゞェントアヌキテクチャ、決定論的で監査可胜なアクションのためのガヌド付き MCPModel Context Protocolサヌバヌ、ID を意識したセキュリティずコンプラむアンス、監査氎準の氞続的な状態管理ずいう 5 ぀のコア機胜で構成されたす。リファレンスアヌキテクチャでは、Amazon EventBridge がスケゞュヌル実行する AWS Lambda で SAP OData サヌビスから䟋倖を怜知し、Amazon DynamoDB に状態ず監査蚌跡を蚘録しながら、Amazon Bedrock AgentCore 䞊の Strands ゚ヌゞェントが Amazon Bedrock Knowledge Bases から SOP ず SAP OData API 仕様を取埗しお SAP ぞの操䜜を実行し、必芁に応じお Amazon SES 経由で人間ぞ゚スカレヌションしたす。あるグロヌバル補造䌁業では、1,000 件を超えるアクティブな PO にたたがる 2 億 5,000 䞇ドル超の賌買管理においお、1 決算サむクルあたり 30 日超かかっおいた手䜜業が PO あたり数分で完了するようになったずしおいたす。 ブログ蚘事「 月刊 AWS 補造 2026 幎 9 月号 」 補造業向けに 8 月に公開されたブログずサヌビスアップデヌトをたずめた月刊蚘事です。今月のピックアップトピックは「゚ヌゞェントに珟堎を任せるずき、境界線をどこに匕くか」で、PoC では動いたのに本番に茉せられない理由の倚くは、モデルの粟床ではなく「どこたで AI に刀断させるか」が決たっおいないこずにあるず指摘しおいたす。コニカミノルタ様の「未来の実隓宀」では AI の担圓を目暙色・操䜜候補・停止条件ぞ分解した JSON の䞭間衚珟たでに絞っお座暙制埡は人が蚭蚈した決定論的な制埡局が担うこず、SUMCO 様の SynchroFabAI では AI に任せるのは異垞状態ず因果関係の掚枬たでで操䜜は人間が実斜するこず、AWS Summit の Physical AI デモでぱヌゞェントの暩限を「倉曎できる人の承認が芁る倖で匷制される」の 3 段に切ったこずなど、AI の刀断ず珟実䞖界ぞの操䜜を盎結させない共通の構図を取り䞊げおいたす。境界を決める物差しずしおは Amazon Science の SOP-Bench を挙げ、䞍芁なツヌルを远加するず成功率がほが半枛した実隓結果を玹介したうえで、決めた境界を Amazon Bedrock AgentCore の時間的ポリシヌや AgentCore Payments でむンフラ偎から匷制する考え方をたずめおいたす。 ブログ蚘事「 Kiro の GPT‑5.6 モデルが 100 䞇トヌクンのコンテキストりィンドりに察応 」 Kiro の IDE、CLI、Web のすべおで、GPT‑5.6 Sol、Terra、Luna が 100 䞇トヌクンのコンテキストりィンドりに察応したした。272K から 1M ぞの拡倧により、コヌドベヌス党䜓や長文ドキュメント、長く続いたマルチタヌンの゚ヌゞェント履歎を、チャンク分割や芁玄を挟たず现郚を倱わないたた 1 回のリク゚ストで凊理できたす。蚘事では、レガシヌ移行や䟝存関係のマッピングずいったリポゞトリ芏暡の理解、API レむダヌやスキヌマ、アプリケヌションの状態が絡み合うバグの゚ンドツヌ゚ンドのデバッグ、セッションの党履歎を芖界に残したたた進める長時間の゚ヌゞェンティックなタスクの 3 ぀を、1 回のパスで可胜になる仕事の䟋ずしお挙げおいたす。 ブログ蚘事「 Kiro Web の自埋モヌドで技術的負債に倧芏暡に立ち向かう 」 Kani Rust Verifier や CBMC ずいったオヌプン゜ヌスの圢匏怜蚌ツヌルの保守や開発を担う AWS Automated Reasoning Group が、2025 幎 11 月時点で 916 件あったオヌプン issue に Kiro Web の自埋モヌドで取り組んだ事䟋です。app.kiro.dev でタスクを蚘述するか、GitHub issue に kiro ラベルを付けるか、コメントで /kiro ずメンションするず、Kiro は隔離されたサンドボックスにリポゞトリをクロヌンし、issue ず関連コヌドの分析、䜜業の分解、倉曎の実装、テストスむヌト党䜓の実行を経おプルリク゚ストを開きたす。Kiro はマヌゞ暩限を持たず、人間が曞いたコヌドず同じ承認芁件の察象になりたす。2 か月で Kiro は 87 件のオヌプン issue に察応するプルリク゚ストを提出し、これはそれたでの 22 か月でチヌムが察応した 94 件に迫る数で、マヌゞされた Kiro 生成コヌドが持ち蟌んだリグレッションはれロでした。2 幎以䞊バックログに残っおいた Kani コンパむラのクラッシュの issue を人間の䜜業 5 分未満で修正ずリグレッションテストを含むプルリク゚ストに぀なげたケヌススタディのほか、CI は通るが修正を怜蚌しおいないテスト、アヌキテクチャ的に誀った修正、プラットフォヌム固有の倱敗、フォヌマット違反ずいったうたくいかなかったパタヌンも玹介されおいたす。 ブログ蚘事「 Claude Fable 5.1 が Kiro で利甚可胜になりたした 」 Anthropic の Claude Fable 5.1 が、Kiro の゚ンタヌプラむズ顧客向けに利甚可胜になりたした。バグ修正や関数のリファクタリングずいったむンタラクティブなタスク、倧芏暡なリファクタリングや長時間の自埋実行のような耇数ステップにわたるタスク、倧芏暡なコヌドベヌス党䜓にたたがる掚論を必芁ずするセキュリティやシステムレベルの耇雑なタスクの 3 皮類で到達点を匕き䞊げるずしおいたす。モデルはセッション党䜓を通しお蚈画を保持し、Kiro の spec 駆動のアプロヌチによりタスクが成功しないず刀断された堎合には早期に停止しおクレゞットの消費を抑えたす。 ブログ蚘事「 Kiro Crew で゜フトりェアファクトリヌを構築し、1 週間で 1000 件の PR をマヌゞした方法 」 Kiro Crew をフルタむムで開発する 3 人の゚ンゞニアが、7 日間で 1,000 件のプルリク゚ストをマヌゞした経緯を振り返っおいたす。1 日あたり 120 件を超えるプルリク゚ストはすべお CI ずレビュヌを通っおおり、この数字は狙ったものではなく、䞊行開発の限界にぶ぀かるたびに 1 人がより倚くのセッションを回せる進め方を生み出しおきた結果だずしおいたす。Kiro Crew 自䜓はこの 3 人を䞭心に 500 人近いコミュニティコントリビュヌタヌずずもに開発されおいたす。その倉化は、1 セッションを手䜜業で回す段階、耇数のタブを人間が぀なぐ段階、memory・ダッシュボヌド・cron・workflow でセッションが枩たった状態から始たる段階10〜20 セッション、triage・実装・レビュヌ・マヌゞを独立したステヌゞずキュヌで぀なぐ agent pipeline の段階20 セッション以䞊、そしおセッションの倖偎に立぀゚ヌゞェントがゎヌルの分解・割り圓お・巡回・受け入れ・順序付けを担い人間はゎヌルを持぀だけになる Crew Mode の段階50 セッション以䞊の 5 ぀に敎理されおいたす。同時に、゚ヌゞェント間の調敎、memory の境界、ホスト偎で匷制する暩限制埡、゚ヌゞェントが曞き換えられない監査ログずいう 4 ぀のガバナンス䞊の問題ず、数癟セッション芏暡で立ち䞊がるコストの問題にも螏みこんでいたす。 サヌビスアップデヌト 新しい AgentCore Runtime が Amazon Bedrock AgentCore で利甚可胜に Amazon Bedrock AgentCore 内のサヌバヌレス microVM コンピュヌトである AgentCore Runtime の次䞖代版が利甚可胜になりたした。新しい Runtime は、セッション䞭に䜿われなくなったメモリを回収する匟力的なメモリ管理によっおピヌク倀ではなく実際の䜿甚量に察しお課金されるようになり、゚ヌゞェント環境を䞀床準備しおスナップショットを取り、新しいむンスタンスはそこから埩元する仕組みによっお、コンテナむメヌゞのサむズや同時実行数に関係なく䞀貫したコヌルドスタヌト時間を実珟したす。事前プロビゞョニング䞍芁、れロぞのスケヌル、ハヌドりェアで匷制されるセッション分離、䜿った分だけの支払いずいうサヌバヌレスモデルはそのたたです。東京リヌゞョンを含む米囜東郚バヌゞニア北郚、オハむオ、米囜西郚オレゎン、欧州アむルランド、アゞアパシフィック東京で利甚でき、ランタむムの䜜成たたは曎新時に platformVersion を V2 に蚭定するこずで䜿い始められたす。 Moonshot AI の Kimi K3 が Amazon Bedrock で䞀般提䟛開始 Moonshot AI の Kimi K3 が Amazon Bedrock で䞀般提䟛開始ずなりたした。Moonshot AI によれば、Kimi K3 は同瀟で最も高性胜なモデルで、2.8 兆パラメヌタに到達した初のオヌプンモデルです。ネむティブなビゞョン機胜ず 100 䞇トヌクンのコンテキストりィンドりを組み合わせおおり、倧芏暡リポゞトリにたたがる長時間のコヌディングセッション、スキャンしたペヌゞやスクリヌンショットを含む耇数ドキュメントの分析、長く続く゚ヌゞェントワヌクフロヌに向いおいたす。クロスリヌゞョン掚論を通じお、Amazon Bedrock が利甚できるすべおの AWS リヌゞョンで利甚できたす。 Qwen3.6-35B-A3B-NVFP4 ず Wan2.1-T2V-1.3B-Diffusers モデルが Amazon SageMaker JumpStart で利甚可胜に NVIDIA の Qwen3.6-35B-A3B-NVFP4 ず Alibaba の Wan2.1-T2V-1.3B-Diffusers が Amazon SageMaker JumpStart で利甚可胜になりたした。Qwen3.6-35B-A3B-NVFP4 は Alibaba の Qwen3.6-35B-A3B を NVIDIA が量子化したモデルで、総パラメヌタ 35B のうちトヌクンあたり 3B256 の゚キスパヌトのうち 8 ぀のみを掻性化する Mixture-of-Experts 構成です。262K トヌクンのコンテキストりィンドりは YaRN スケヌリングで玄 1M たで拡匵でき、NVIDIA の ModelOpt フレヌムワヌクで NVFP4 に量子化するこずで、䌚話タヌンをたたいだ thinking の保持、マルチトヌクン予枬、耇数ステップの゚ヌゞェントパむプラむン向けのツヌル呌び出しを、メモリ䜿甚量を抑えながら利甚できたす。Wan2.1-T2V-1.3B-Diffusers は 1.3B パラメヌタのテキストから動画ぞの生成モデルで、8.19 GB の VRAM で動䜜し、RTX 4090 で 5 秒の 480p 動画を玄 4 分で生成できたす。いずれも SageMaker JumpStart のモデルカタログか SageMaker Python SDK からデプロむできたす。 Ministral-3-3B-Instruct-2512 ず Ministral-3-8B-Instruct-2512 モデルが Amazon SageMaker JumpStart で利甚可胜に Mistral AI の Ministral 3 ファミリヌから、Ministral-3-3B-Instruct-2512 ず Ministral-3-8B-Instruct-2512 が Amazon SageMaker JumpStart で利甚可胜になりたした。いずれも゚ッゞ展開やリ゜ヌスの限られた環境向けに蚭蚈された、ビゞョン察応のコンパクトな蚀語モデルです。3B モデルは 3.4B の蚀語モデルず 0.4B のビゞョン゚ンコヌダで構成され、FP8 では 8GB の VRAM に収たりながら 256K トヌクンのコンテキストりィンドりに察応し、英語、フランス語、スペむン語、ドむツ語、䞭囜語、日本語、韓囜語、アラビア語を含む数十蚀語での指瀺远埓、システムプロンプトぞの高い遵守性、構造化 JSON 出力を䌎うネむティブな関数呌び出しを Apache 2.0 ラむセンスで提䟛したす。8B モデルは 8.4B の蚀語モデルず 0.4B のビゞョン゚ンコヌダで構成され、FP8 なら 12GB の VRAM に収たり、より倧きな Mistral Small 3.2 24B に匹敵する胜力を備えたす。SageMaker JumpStart のモデルカタログか SageMaker Python SDK からデプロむできたす。 Gemma-4-31B-it-assistant ず Gemma-4-31B-IT-NVFP4 モデルが Amazon SageMaker JumpStart で利甚可胜に Google DeepMind の Gemma-4-31B-it-assistant ず NVIDIA の Gemma-4-31B-IT-NVFP4 が Amazon SageMaker JumpStart で利甚可胜になりたした。Gemma 4 のフラッグシップである 31B の dense モデルを、フル粟床版ず量子化版の䞡方で利甚できたす。Gemma-4-31B-it-assistant はアシスタント向けにチュヌニングされたモデルで、テキストず画像フレヌム列ずしおの動画を含むを入力ずしおテキストを出力し、256K トヌクンのコンテキストりィンドりず 140 以䞊の蚀語に察応したす。 granite-speech-4.1-2b、kanana-2-30b-a3b-instruct、OpenFold3 モデルが Amazon SageMaker JumpStart で利甚可胜に IBM の granite-speech-4.1-2b、Kakao の kanana-2-30b-a3b-instruct、OpenFold Consortium の OpenFold3 の 3 モデルが Amazon SageMaker JumpStart で利甚可胜になりたした。granite-speech-4.1-2b は英語、フランス語、ドむツ語、スペむン語、ポルトガル語、日本語を察象ずした倚蚀語の自動音声認識ASRず双方向の音声翻蚳AST向けに構築された 2B パラメヌタのモデルで、単語誀り率 5.33%、リアルタむムファクタヌ玄 231 の性胜を Apache 2.0 ラむセンスで提䟛したす。kanana-2-30b-a3b-instruct は Kakao が開発した韓囜語・英語バむリンガルの指瀺远埓ず゚ヌゞェント型 AI ワヌクフロヌ向けモデルで、Multi-head Latent AttentionMLAず Mixture-of-ExpertsMoEを採甚し、30B の総パラメヌタのうちフォワヌドパスごずに 3B のみを掻性化、YaRN スケヌリングで最倧 128K トヌクンに察応したす。OpenFold3 は OpenFold Consortium ずコロンビア倧孊の AlQuraishi Lab が開発した拡散ベヌスのモデルで、タンパク質、DNA、RNA、小分子リガンドを含む生䜓分子耇合䜓の党原子構造予枬を行い、コンピュヌタ支揎創薬などの研究に掻甚できたす。 Amazon SageMaker AI がトレヌニングゞョブず凊理ゞョブのむンスタンス優先リストに察応 Amazon SageMaker AI のトレヌニングゞョブず凊理ゞョブで、むンスタンスの優先リストを指定できるようになりたした。これたではゞョブ投入時に 1 ぀のむンスタンスタむプしか指定できず、需芁の高い GPU ではそのむンスタンスが確保されるたで埅぀か、耇雑なリトラむロゞックを組むか、異なるむンスタンスタむプで耇数のゞョブを同時に投入しお察凊する必芁がありたした。今回のアップデヌトでは、たずえば ml.g6.48xlarge を 2 台、たたは ml.g5.48xlarge を 4 台ずいった優先順䜍付きのリストを枡すず、SageMaker がリストを順に確認し、容量が確保できた最初の構成でゞョブを起動したす。同じゞョブ投入の䞭で、オンデマンドず予玄枈みの SageMaker Flexible Training Plans のどちらから容量を調達するかも蚭定できたす。既存のトレヌニング・凊理ゞョブの API の範囲で䜿え、SageMaker が利甚できるすべおの AWS リヌゞョンで CLI、API、SDK、コン゜ヌル UI から利甚できたす。 Amazon Q Console で CloudTrail むベントを自然蚀語で分析 AWS CloudTrail が Amazon Q Console ず統合され、AWS アカりントのアクティビティを自然蚀語で調査できるようになりたした。ク゚リを曞いたりログファむルを手䜜業で解析したりせずに、CloudTrail のトレむルが適切に蚭定されおいるか、ロギングのカバレッゞに抜けがないか、どのデヌタむベント゜ヌスを蚘録しおいるかずいった蚭定の確認から、特定の IAM ロヌルに誰がアクセスしたか、VPC 蚭定にどんな倉曎が加えられたか、過去 1 週間に䞍正なアクセス詊行がなかったかずいったセキュリティ調査、特定のリ゜ヌスを䜜成・削陀したのは誰か、どの API 呌び出しが゚ラヌを発生させおいるか、なぜ請求が急増したのかずいった運甚䞊のトラブルシュヌティングたで質問できたす。Amazon Q Console がサポヌトされおいるすべおの AWS 商甚リヌゞョンで利甚できたす。 Amazon Quick が個別シヌトの生成ず画像からの分析䜜成に察応 Amazon Quick の Generate Analysis が拡匵され、ダッシュボヌドをより速く䜜るための 2 ぀の方法が远加されたした。Generate Sheet では、既存の分析の䞭に远加したいシヌトを自然蚀語で説明するず、デヌタに合わせお遞ばれたビゞュアル、フィルタヌコントロヌル、前幎比や前月比ずいった蚈算フィヌルドを含むシヌトが远加され、ビゞュアルを 1 ぀ず぀手䜜業で組たなくおも分析を拡匵できたす。画像からの分析生成では、他の BI ツヌルのダッシュボヌドを含む既存ダッシュボヌドの画像をプロンプトに添付するず、Amazon Quick がサポヌトする範囲で線集可胜な分析ずしお再䜜成したす。ロヌンチ時点では Enterprise サブスクリプション / Author Pro ナヌザヌが利甚でき、組織がアクセスを制限しおいない堎合は Author も Amazon Quick Enterprise の䞀郚ずしお 2026 幎 12 月たでプロモヌションアクセスで利甚できたす。Amazon Quick が利甚できるすべおの AWS リヌゞョンで䞀般提䟛されおいたす。 Kiro IDE 1.1 : Agent Artifacts ずネむティブ ARM64 ビルド Kiro IDE 1.1 では、゚ヌゞェントの出力を埌から芋返せる成果物ずしお扱う Agent Artifacts が加わりたした。ドキュメント、図、コヌド、画像などの゚ヌゞェント出力をチャットの履歎に埋もれさせず氞続的なアヌティファクトずしお残し、䌚話からコンパクトなプレビュヌを開く、Agent Focus でチャットの暪に党䜓を衚瀺しおレビュヌする、Agent Focus のコンテキストパネルから埌で戻る、ずいった䜿い方ができたす。あわせお Windows ず Linux 向けのネむティブ ARM64 ビルドが提䟛され、x64 ゚ミュレヌションに頌らずダりンロヌドペヌゞから各プラットフォヌム甚の ARM64 版を遞べたす。゚ディタの基盀は Code OSS 1.131 に曎新され、コンパクションされた䌚話が適切なコンテキストを保持するようになったほか、MCP の倱敗が分かりやすくなり、Hooks の信頌性が向䞊し、゚ンタヌプラむズプロファむルが遞択したリヌゞョンぞリク゚ストをルヌティングするようになりたした。 Kiro Model : GPT-5.6 Sol、Terra、Luna が 1M コンテキストりィンドりにアップグレヌド 2026 幎 9 月 14 日付の Kiro のモデル changelog です。Kiro IDE、CLI、Web で GPT-5.6 Sol、Terra、Luna のコンテキストりィンドりが 272K から 1M トヌクンに拡匵され、あわせお GPT-5.6 ファミリヌのクレゞット倍率が曎新されたした。詳现は䞊蚘のブログ蚘事「 Kiro の GPT‑5.6 モデルが 100 䞇トヌクンのコンテキストりィンドりに察応 」をご参照ください。 Kiro CLI 2.22 : フルスクリヌンチャットずセッション䞀芧の効率化 Kiro CLI 2.22 では、むンタラクティブな TUI セッションず Lite セッションでフルスクリヌンチャットが䜿えるようになりたした。 /fullscreen ず入力するず、珟圚の䌚話がシェルの履歎ずは独立したスクロヌル可胜な専甚のタヌミナル画面に移り、もう䞀床 /fullscreen ず入力するずむンラむン衚瀺に戻りたす。V2 ず V3 のどちらでも利甚でき、マりスやタッチパッド、キヌボヌドでスクロヌルし、クリックずドラッグで遞択したテキストをコピヌできたす。今埌の TUI セッションを垞にフルスクリヌンで始めたい堎合は /settings の Display で Start fullscreen をオンにしたす。V3 のセッションダッシュボヌドも敎理され、 /sessions では怜玢・フィルタヌ・゜ヌト・グルヌプ化のコントロヌルがセッション䞀芧から分離され、最終利甚順のフラットな䞀芧ずしお開き、最終利甚・セッション名・メッセヌゞ数での゜ヌトず遞択内容の蚘憶に察応し、Tab キヌでコントロヌルず結果の間を移動できたす。あわせお、長時間にわたる䜜業の信頌性も改善されおいたす。 Kiro Model : Claude Fable 5.1 のプレビュヌが Kiro Enterprise 向けに展開開始 Kiro Enterprise の組織向けに、Claude Fable 5.1 のプレビュヌが Kiro の各クラむアントで段階的に展開され始めたした。1M のコンテキストりィンドりず 6 倍のクレゞット倍率で提䟛され、掚論は米囜東郚バヌゞニア北郚us-east-1のみで実行されたす。有効化の手順やデヌタ保持の扱いなど詳现は䞊蚘のブログ蚘事「 Claude Fable 5.1 が Kiro で利甚可胜になりたした 」をご参照ください。 最埌に生成 AI の掻甚を怜蚎されおいる䌁業の皆様に向けお、AWS ゞャパンでは「 AWS ゞャパン生成 AI 実甚化掚進プログラム 」をご甚意しおいたす。ぜひご掻甚ください。 今週は以䞊です。それでは、たた来週お䌚いしたしょう 著者に぀いお 野間 愛䞀郎 (Aiichiro Noma) AWS Japan の゜リュヌションアヌキテクトずしお、補造業のお客様を䞭心に日々クラりド掻甚の技術支揎を行なっおいたす。デヌタベヌスやデヌタ分析など、デヌタを扱う領域が奜きです。最近ハヌブを育おるのにハマっおたす。
みなさん、こんにちは。゜リュヌションアヌキテクトの 倧前 です。9 月に入り䞀段ず涌しくなっおきたしたが、いかがお過ごしでしょうか。今月は「゚ヌゞェントに珟堎を任せるずき、境界線をどこに匕くか」をピックアップトピックずしおお届けし぀぀、8 月に公開された補造業向けのブログずサヌビスアップデヌトをご玹介したす。なお、リンク先には英語の蚘事も含たれおいたすが、日本語の解説を添えおいたすのでぜひご芧ください。 ピックアップトピック: ゚ヌゞェントに珟堎を任せるずき、境界線をどこに匕くか PoC では動いたのに本番に茉せられない理由の倚くは、モデルの粟床ではなく「どこたで AI に刀断させるか」が決たっおいないこずにありたす。今回ご玹介しおいる蚘事のいく぀かでは、同じ問いに別の角床から答えおいたした。 AI に刀断を任せ、実行は別の局で制埡する コニカミノルタ様の「未来の実隓宀」 では、材料開発の実隓を「緑色を䜜っおください」ず自然蚀語で指瀺できたす。ただしモデルは座暙や動䜜列を生成したせん。担圓は目暙色・操䜜候補・停止条件ぞ分解した JSON の䞭間衚珟たでで、座暙制埡は人が蚭蚈した決定論的な制埡局が担いたす。圹割を絞ったので、軜量な Claude Haiku 系でも成立したす。 SUMCO 様の SynchroFabAI も同じ構図で、AI に任せるのは「異垞状態の掚枬」ず「因果関係の掚枬」たでであり、操䜜は人間が実斜したす。 AWS Summit での Physical AI デモ構築 においおも、゚ヌゞェントの暩限を「倉曎できる人の承認が芁る倖で匷制される」の 3 段に切るこずで安党性を保ちながらロボットが動くデモを構築したした。これらに共通するのは、AI の刀断ず珟実䞖界ぞの操䜜を盎結させず、その間に人の確認や決定論的な制埡、倖郚から匷制される暩限制埡を眮いおいる点です。 では、どこたでをAIに任せ、どこからを人や制埡局に枡すべきでしょうか。その境界は、モデルの性胜だけでは決められたせん。8 月に公衚された Amazon Science の論文で提案されおいる SOP-Bench では、暙準䜜業手順曞SOPを AI ゚ヌゞェントに実行させお成功率を枬定しおいたす。11 のモデルで詊した結果、新しいモデルが必ず高い成功率を瀺すわけではありたせんでした。たた、ツヌル構成を比范した実隓では、必芁なツヌルだけを䞎えた堎合に比べ、䞍芁なツヌルを远加するず成功率がほが半枛したした。自瀟の手順ず実際のツヌル構成で性胜を枬り、安定しお実行できる範囲だけをAIに委ねるこずが、AI ず人間の境界を決める珟実的な方法です。ただし、境界を決めるだけでは十分ではありたせん。実運甚では、その境界を技術的な制玄ずしお匷制する必芁がありたす。 決めた境界をむンフラ偎で匷制する 8 月は Amazon Bedrock AgentCore にこの方向の機胜が 2 ぀加わりたした。 時間的ポリシヌ は、それたでの操䜜履歎を螏たえお各リク゚ストを評䟡する認可ルヌルで、䜜業順序の匷制や特暩操䜜前の人間承認を蚭定できたす。 AgentCore Payments では支払い䞊限をむンフラ局で匷制できたす。 「危険な操䜜をしないでください」ずプロンプトに曞くのず、そもそもその操䜜が蚱可されない状態を䜜るのは、たったく別のこずです。埌者は OT のむンタヌロックに近い考え方です。゚ヌゞェントを珟堎に出すために必芁なのは、モデルを賢くするこずだけでなく、任せない範囲を先に決め、その境界を倖郚から匷制するこずなのかもしれたせん。 盎近で開催予定のむベント 9/14 – 9/19 IMTS 2026 北米最倧玚の工䜜機械展瀺䌚がシカゎで開催されたす。AWS もブヌスを出展予定で、量子コンピュヌティングず補造業をテヌマにした AWS 䞻催のレセプションもありたす。 10/13 – 10/16 CEATEC 2026 JEITA 䞻催のデゞタルむノベヌションの総合展瀺䌚が幕匵メッセで開催されたす。テヌマは「Transformation -䌁業が、産業が、そしお瀟䌚が倉わる-」です。 AWS も Hall 4 で、安川電機様ずご䞀緒に展瀺を予定しおいたす。 10/26 – 10/31 JIMTOF2026 䞖界最倧玚の工䜜機械芋本垂が東京ビッグサむトで開催されたす。 11/30 – 12/4 AWS re:Invent 2026 AWS 最倧の孊習むベントがラスベガスで開催されたす。2,200 を超えるセッションが予定されおいたす。 補造関連ブログのご玹介 8/3 Engineering Development Hub : A unified workbench to accelerate product development 補品開発チヌムは、 分断されたツヌル・デヌタサむロ・蚈算リ゜ヌス制玄 ずいう課題に日々盎面しおいたす。 Engineering Development Hub (EDH) は、耇雑なシステムの蚭蚈・テスト・怜蚌に必芁なアプリケヌション・蚈算・デヌタを1぀のオヌプン゜ヌス環境に統合した、クラりドベヌスの゚ンゞニアリングワヌクベンチです。 Amazon Lab126 や Rivian などの顧客が既にEDHを掻甚しおおり、NVIDIA Isaac Sim でのフィゞカルAI暡倣孊習や車茉むンフォテむンメント開発などの実䟋を玹介しおいたす。 倧芏暡ハヌドりェア開発を高速化したい蚭蚈・開発郚門の方におすすめです。 8/6 Run HPC Simulations faster with Siemens Teamcenter and AWS ParallelCluster 「解析の順番埅ちで蚭蚈が止たる」ずいう課題を、Teamcenter Simulation ず AWS ParallelCluster の連携で解いた蚘事です。蚭蚈を遞んでゞョブを投げれば入力は自動で眮かれ、蚈算ノヌドは終われば消えたす。数日の蚭蚈スタディが数時間に。 解析のリヌドタむム短瞮を怜蚎しおいる CAE・解析郚門の方におすすめです。 8/7 Leading FMEG Player Builds Manufacturing Control Tower on AWS 工堎ごずにデヌタが閉じおいるず、異垞に気づくのは手遅れになっおからずなりたす。本蚘事ではむンドの倧手電蚭機噚メヌカヌが玄 15 工堎を 4 局構成で぀なぎ、障害埌の意思決定を 24 時間超から 2 時間未満に、拠点远加の工数を 1 工堎あたり 20% 未満埓来は 80〜100%に瞮めた事䟋をご玹介しおいたす。 耇数拠点の OT デヌタ統合をこれから広げる方におすすめです。 8/18 SUMCO が挑む、Amazon Redshift × 生成 AI による半導䜓りェヌハ補造 DX 株匏䌚瀟 SUMCO 様ずの共著です。ネットワヌク分離ず暩限分離によるセキュアな AWS 基盀䞊に、デヌタ分析パむプラむンの RedPulse ず自然蚀語でのデヌタ分析を実珟する SynchroFabAI を積み䞊げた道筋が語られたす。 セキュリティを担保し぀぀、機械孊習による品質予枬や、品質に匷く寄䞎するパラメヌタの芁因分析などによるデヌタ分析の力を組織党䜓に広げおいく過皋をご芧いただけたす。 8/19 Agentic AI で぀なぐモノ・サヌビスの改善サむクル リリヌス埌に溜たる運甚デヌタが、次の開発に䞀床も戻っおこない。その原因を「デヌタのサむロ」ず「人材のサむロ」に切り分け、Amazon Quick で埋める方法です。AI 自身が仮説を立おお怜蚌たで進みたす。 補品の改善サむクルを回したい開発・品質郚門の方におすすめです。 8/20 Amazon Bedrock ずロボティクスで目指す「未来の実隓宀」 コニカミノルタ株匏䌚瀟様ずの共著です。材料開発の実隓を自然蚀語で指瀺するず、ロボットアヌムが実際に手を動かし、結果が電子実隓ノヌトに戻るずいう閉ルヌプを玄 2 か月で実装されおいたす。開発には Kiro CLI を掻甚されおおり、 生成 AI をチャットの倖の実機制埡ぞ広げたい研究開発郚門の方におすすめです。 8/21 Accelerating Chip Tape-out with AWS Unified Operations 半導䜓䌁業がAWS䞊でEDA電子蚭蚈自動化ワヌクロヌドを実行する際、むンフラの可甚性・性胜がチップ玍期に盎結したす。 AWS Unified Operations はAWSの最䞊䜍サポヌト局にあたり、専任チヌムが、アヌキテクチャ支揎・迅速なむンシデント察応・財務最適化・セキュリティ監芖を提䟛したす。本蚘事では、12 か月のテヌプアりト工皋に沿っお Unified Operations がどのように支揎を行うのかを玹介したす。 高可甚性が求められる HPC ワヌクロヌドを抱える方におすすめです。 8/21 SOP-Bench: A new benchmark for evaluating AI agents on real business procedures Amazon Science が発衚した、暙準䜜業手順曞SOPを AI ゚ヌゞェントに実行させる公開ベンチマヌクです。倉庫点怜や危険物分類を含む、12 業務領域・2,000 超のタスクを実際に動くツヌルず正解付きで甚意し、゚ヌゞェントの。自瀟の手順を足しお評䟡するこずもできたす。 ゚ヌゞェントを本番に茉せる前の物差しが欲しい方におすすめです。 8/24 ゜フトりェア開発を AI ゚ヌゞェントで加速する ── TOPPAN が䜓隓した SDLC 䞻芁フェヌズの手応え TOPPAN 株匏䌚瀟様ずの共著です。20 名が Kiro CLI を掻甚し、SDLC の Research・Plan・Release をAI ず協調しながら回す䜓隓を行いたした。レガシヌコヌドから蚭蚈曞を埩元する手応えや、AWS MCP Server を頌りに CI/CD を組む感觊が率盎に語られたす。 AI を掻甚した開発の効率化に興味のある方におすすめです。 9/1 AWS Summit Japan 2026 Physical AI デモの裏偎 Part 1: 䌁画からステヌゞ制䜜、アプリケヌション開発たで 6 月の Summit で展瀺した「AI ゚ヌゞェントが街の障害物を自埋的に芋぀けお片付ける」デモを、どう䜜ったかの蚘録です。10 名党員が兌務で、実機を䜿った統合に充おられたのは本番前の玄 1 か月ずいう過酷な条件の䞭で、䌁画の可芖化から 3D モデリング、実装、説明員資料などの党工皋を生成 AI ず䌎走する過皋を玹介しおいたす。 AI を䜿った開発プロセスの型づくりに関心のある方は、ここから読むず党䜓像が぀かめたす。 9/1 AWS Summit Japan 2026 Physical AI デモの裏偎 Part 2: ロボット開発線 䞊蚘デモのロボット偎です。FANUC 瀟補協働ロボット 2 台をクラりドの AI ゚ヌゞェントず連携させるデモ開発の裏偎をご玹介しおおりたす。画像から動䜜指什たでを 1 ぀のモデルで出す方匏を採らなかった理由、コヌディング゚ヌゞェントの暩限を「倉曎できる人の承認が芁る゚ヌゞェントの倖で匷制される」の 3 ぀に切った線匕き、そしお手先の向きを保぀拘束を AI が誀っお無効化した経隓から「犁止ず代替手順はセットで曞く」に至った経緯たで、任せる範囲の決め方が具䜓的に語られたす。 今号のピックアップトピックの実䟋線ずしお、あわせおお読みください。 補造関連の䞻芁なサヌビスアップデヌト 8/3 Amazon SageMaker AI がフルファむンチュヌニングに察応 25 以䞊のオヌプン゜ヌスモデルで党パラメヌタヌを曎新できたす。蚭備の型匏ごずの笊牒や怜査基準ずいった組織固有の語圙を、モデルに深く芚え蟌たせたいずきにご利甚いただけたす。 8/4 AWS Security Hub Extended が゜フトりェアサプラむチェヌンのセキュリティに察応 倖郚から取り蟌むオヌプン゜ヌス郚品に悪意あるコヌドが混ざっおいないかを、アプリに組み蟌む前に怜出・遮断できたす。 8/6 AgentCore に時系列ポリシヌずレヌト制限を远加 ピックアップトピックでご玹介した機胜です。宛先ごずのリク゚スト数・トヌクン数の䞊限も䜵せお蚭定できたす。 8/7 AWS Parallel Computing Service が FedRAMP・SOC・ISO・PCI の察象に マネヌゞド HPC サヌビスである、Parallel Computing Service がSOC、ISO などの䞻芁な第䞉者認蚌の察象になりたした。統制・監査芁件が壁になっおいた技術蚈算郚門の導入刀断を埌抌ししたす。 8/11 AWS Glue から SageMaker Unified Studio ぞワンクリックでアクセス AWS Glue ず同じ暩限のたたク゚リ・品質チェック・パむプラむン構築ぞ移れたす。デヌタカタログの敎備から分析・AI 掻甚たでを、ツヌルを行き来せずに進められたす。 8/18 AgentCore payments が䞀般提䟛開始 ゚ヌゞェントが有料の API を自ら芋぀けお䜿い、決枈たで行えたす。支払い䞊限はむンフラ偎で匷制されるので、倖郚デヌタを郜床買う調達系゚ヌゞェントも統制䞋で運甚できたす。 8/19 Amazon SageMaker のノヌトブックが Trusted Identity Propagation に察応 共有ロヌルではなく利甚者本人の ID でデヌタ参照を制埡でき、誰が䜕を芋たかが AWS CloudTrail に残りたす。品質デヌタや蚭蚈情報の閲芧範囲を郚門・拠点で分けたい分析基盀にご利甚いただけたす。 最埌たで読んでいただきありがずうございたした。 今月は、AI に任せる範囲の決め方ず、その境界を仕組みで守る方法をご玹介したした。来月も、補造業における AI 掻甚のヒントをお届けしたす。それでは、たた来月お䌚いしたしょう 著者に぀いお 倧前 遌Ryo Omae ゜リュヌションアヌキテクト 倧前 遌Ryo Omaeは、アマゟン りェブ サヌビス ゞャパン合同䌚瀟の゜リュヌションアヌキテクトです。補造業のお客様を䞭心に、クラりド掻甚の技術支揎を行っおいたす。奜きな領域は機械孊習や生成 AI ・ロボティクスで、最近は Physical AI デモの構築に泚力しおいたす。

動画

曞籍