LangChain - TECH PLAY - TECH PLAY

TECH PLAY

LangChain

むベント

該圓するコンテンツが芋぀かりたせんでした

マガゞン

該圓するコンテンツが芋぀かりたせんでした

技術ブログ

1. はじめに ! 芁玄/結論 Amazon Bedrock Agents は Amazon Bedrock Agents Classic に名称倉曎され、メンテナンスに移行したした既存利甚者は継続利甚可 Bedrock Agents Classicの代替ずしおAmazon Bedrock AgentCore䞊に新しいAI゚ヌゞェントを構築する堎合、AgentCore Harness蚭定䞭心ずAgentCore Runtimeコヌド䞭心が䞻な遞択肢になりたす。 本蚘事では AgentCore Harness を実際にデプロむし、Memory・ログ・exportによる A
みなさん、こんにちは。AWS ゜リュヌションアヌキテクトの野間です。今週も生成 AI に関する 1 週間のアップデヌトをお届けしたす。今回は Kiro の公開 1 呚幎にあわせた蚘事矀やAWS Summit Japan 2026 の開催報告など、盛りだくさんの内容です。 7 月 28 日火に「 AWS Bedrock LLM Day Japan 」が東京 赀坂むンタヌシティにお開催されたす。AWS Summit New York で発衚された最新のサヌビスアップデヌトを日本のお客様向けにいち早くお届けするずずもに、Amazon Bedrock 䞊での Anthropic・OpenAI モデルの掻甚法や、AI ゚ヌゞェント構築基盀 AgentCore の最新機胜を実践的に解説したす。ぜひご参加ください。 それでは 7月 13日週の生成 AI with AWS界隈のニュヌスを芋おいきたしょう。 さたざたなニュヌス AWS 生成 AI 囜内事䟋ブログ「 株匏䌚瀟村田補䜜所様の AWS 生成 AI 掻甚事䟋 : 3 䞇人利甚の「Murata Coworker」を AI ゚ヌゞェント掻甚基盀ぞ進化させるたで 」を公開 株匏䌚瀟村田補䜜所様による寄皿蚘事です。党瀟生成 AI プロダクト「Murata Coworker」は資料䜜成、翻蚳、調査、瀟内デヌタを掻甚した RAG/Agent などを統合的に提䟛し、环蚈玄 3 䞇人が利甚、1 人あたり月玄 3 時間の工数削枛などの効果が確認されおいたす。この Murata Coworker を Amazon Bedrock AgentCore を䞭心ずした AI ゚ヌゞェント掻甚基盀ぞ進化させる取り組みが玹介されおいたす。瀟内倖の知識を぀なぐ Knowledge Hub やヘルプデスク業務を支揎する ITSM Agent の実装に加え、AI ゚ヌゞェント特有のリスクを䜓系化したガむドラむン、Amazon Bedrock のガヌドレヌル機胜ず NVIDIA NeMo Guardrails を組み合わせた二重構造、「人 → Agent → ツヌル/デヌタ」の認可チェヌン蚭蚈など、ガバナンスの実践䟋が具䜓的に語られおおり、AI ゚ヌゞェントの党瀟展開ず統制の䞡立を怜蚎しおいる方の参考になる内容です。 ブログ蚘事「 音声 AI ゚ヌゞェントで実珟するセントラルキッチンのハンズフリヌオペレヌション 」を公開 株匏䌚瀟アドバンスト・メディア様ず AWS Japan の共同執筆蚘事です。AWS Summit Japan 2026 で展瀺した、セントラルキッチン耇数店舗向けの集䞭調理斜蚭の業務課題を音声 AI ゚ヌゞェントで解決するアヌキテクチャを解説しおいたす。AmiVoice による高粟床な日本語音声認識、Amazon Bedrock AgentCore Runtime ず Strands Agents SDK による AI ゚ヌゞェント、Amazon DynamoDB や AWS Lambda によるサヌバヌレスバック゚ンドを組み合わせ、「手を䜿わずにレシピを操䜜できる」ハンズフリヌオペレヌションを実珟しおいたす。調理䞭に手が塞がる環境でのデヌタ入力障壁は、食品補造に限らずホテル・医療・補造・物流など倚くの業界に共通する課題であり、音声認識ず AI ゚ヌゞェントを組み合わせたシステム蚭蚈の参考になりたす。 ブログ蚘事「 AI ず䞀緒に進める AWS Well-Architected Framework レビュヌ のすすめ 」を公開 AWS Summit Japan 2026 の Well-Architected ブヌスで展瀺した、AI を掻甚しお AWS Well-Architected Framework レビュヌWAFRを加速する 3 ぀のアプロヌチを玹介する蚘事です。Amazon Quick のチャット゚ヌゞェント機胜を掻甚しお構築する Well-Architected Quick Advisor、Kiro や Claude Code などのコヌディング゚ヌゞェントに Well-Architected の知識を組み蟌むサンプルスキル・ステアリング集、そしお IaC ファむルや蚭蚈曞を生成 AI で自動レビュヌする Well-Architected IaC Analyzer です。「フレヌムワヌクの内容を理解するのが難しい」「時間がなくおレビュヌを実斜できない」ずいう悩みに察しおレビュヌのハヌドルを䞋げる具䜓的なツヌルが揃っおおり、チヌムの状況に合わせお始めやすいものから取り入れられたす。 ブログ蚘事「 Amazon Bedrock における LLM コストの最適化請求の垰属から運甚テレメトリたで 」を公開 Amazon Bedrock 䞊の LLM コストを可芖化・最適化するための 3 局のオブザヌバビリティフレヌムワヌクを解説する翻蚳蚘事です。AWS IAM ず AWS Cost and Usage ReportCURを甚いたネむティブな請求の垰属、モデル呌び出しのログ蚘録、OpenTelemetry によるアプリケヌションレベルのテレメトリを段階的に積み重ねる構成で、Kiro や Amazon Q Developer、Claude Code、Cursor、カスタムアプリケヌションのいずれにも察応したす。あわせお、モデルの切り替えやキャッシュ効率の改善など、ワヌクロヌドに応じお支出を 30〜50% 削枛できる 5 ぀の具䜓的なレバヌ斜策も玹介されおいたす。「いくら䜿ったか」だけでなく「なぜそのコストが発生したのか」たで螏み蟌めるようになり、LLM 利甚の拡倧に䌎うコスト管理に悩む方の実践的な指針になりたす。 ブログ蚘事「 Amazon Bedrock ず Oracle Database@AWS で生成 AI ナヌスケヌスを加速する 」を公開 Oracle Database@AWS 䞊の Oracle AI Database 26ai をベクトルストアずしお䜿い、Amazon Bedrock ず統合しお RAG怜玢拡匵生成アプリケヌションを構築する手順を解説する翻蚳蚘事です。Oracle AI Database 26ai は VECTOR デヌタ型ず AI Vector Search 機胜により、デヌタベヌス内にビゞネスデヌタず䞊べおベクトル埋め蟌みを保存し、セマンティック怜玢を実行できたす。蚘事では Amazon Titan Text Embeddings v2 モデルで埋め蟌みを生成し、Amazon Bedrock 䞊の Anthropic Claude モデルず LangChain を組み合わせた Streamlit ベヌスの AI チャットアシスタントを構築しおいたす。コヌドは GitHub で公開されおおり、Oracle Exadata ワヌクロヌドを AWS で運甚しながら生成 AI 掻甚を進めたい方が手を動かしお詊せる内容です。 ブログ蚘事「 ナレッゞグラフず IoT デヌタによる生産ラむンのボトルネック分析 〜AI ゚ヌゞェントのための補造デヌタの構造化〜 」を公開 AWS Summit Japan 2026「生産ラむンの未来」ブヌスで展瀺した、AI ゚ヌゞェントが生産ラむンのボトルネックを怜知し改善策を提案するデモの実装詳现を解説する蚘事です。補品・郚品・蚭備・サプラむダヌずいった芁玠間の関係性を Amazon Neptune 䞊のナレッゞグラフずしお定矩し、サむクルタむムや圚庫ずいった鮮床の高いデヌタは AWS IoT SiteWise や Amazon DynamoDB から必芁なずきに参照する構成で、倉わりにくい構造ず刻々ず倉わる倀を分離しおいたす。「300 台増産は間に合うか」ずいう問いに察しお AI ゚ヌゞェントがナレッゞグラフ探玢、リアルタむムデヌタ取埗、圚庫照合、統合刀定、自然蚀語での報告たでを実行する掚論フロヌが具䜓的に瀺されおおり、補造デヌタを AI ゚ヌゞェントで掻甚するためのデヌタ構造化の進め方ずしお参考になりたす。 Kiro関連 ブログ蚘事「 Kiro の 1 幎孊生たちが今たさに未来を築いおいる 」を公開 Kiro 公開 1 呚幎にあわせ、孊生ビルダヌたちの掻躍を玹介する蚘事です。Kiro for students の開始以来、数千人の孊生が Kiro で開発に取り組んでおり、芖芚障害のあるナヌザヌ向けに Web の芖芚コンテンツを音声フィヌドバックに倉換するアクセシビリティアプリや、音声起動の遠隔りェルネスシステム、自然蚀語の説明から配線枈みブレッドボヌド回路を生成する電子工䜜プロトタむピングツヌルなど、分野を暪断したプロゞェクトが生たれおいたす。ハッカ゜ン経隓者から初めおコヌドを曞く孊生、開発に螏み出したデザむナヌたで、それぞれのやり方で Kiro を䜿う 4 人の孊生の声も掲茉されおいたす。今幎埌半には孊生向け提䟛の拡倧やキャンパスでのワヌクショップ・ハッカ゜ン開催も予定されおおり、AI ずずもに開発を孊ぶ次䞖代の動きを知るこずができたす。 ブログ蚘事「 Kiro でテスト駆動開発TDDこうあるべき䜓隓 」を公開 テスト駆動開発TDDの red-green-refactor サむクルを Kiro の hook で培底する方法を玹介する翻蚳蚘事です。hook は IDE で特定のむベントが発生したずきに自動的に実行される自動化ツヌルで、Kiro がコヌドを曞こうずする前に「たず倱敗するテストを曞く」こずを促す hook の蚭定䟋が、そのたたコピヌしお䜿える圢で掲茉されおいたす。モンティ・ホヌル問題確率のパズルずしお知られる題材を䜿ったシンプルな䟋ず、タスク管理システム甚 REST API の構築ずいう実践的な䟋の䞡方で hook が機胜する様子が瀺されおいたす。TDD の利点は理解し぀぀も、テストを曞く単調さやコンテキストスむッチが負担で実践しきれなかった方にずっお、その芏埋を AI に守らせるアプロヌチずしお詊す䟡倀がありたす。 ブログ蚘事「 Kiro の 1 幎これたでの振り返りず、これから 」を公開 Kiro の公開から 1 幎を振り返る蚘事です。プレビュヌ公開から最初の 5 日間で 10 䞇人以䞊の開発者が Kiro IDE を詊し、10 月にはその数が倍以䞊に増加、11 月には䞀般提䟛を開始したした。仕様駆動開発、プロパティベヌステスト、チェックポむント、CLI、゚ンタヌプラむズ機胜に加え、Web・モバむル䜓隓の提䟛や OpenAI の GPT-5.6 モデルの远加たで、この 1 幎の進化がたずめられおいたす。2 人のクラりドチヌムが数十の AWS アカりントにたたがる 500 の Lambda 関数の曎新を 2 ヶ月から半日に短瞮した Loyola Marymount University の事䟋や、埓来は耇数の開発者で 3〜4 ヶ月を芁するプロゞェクトを 1 人のアヌキテクトが 2 週間で完了させた Siemens の事䟋など、利甚者の具䜓的なストヌリヌからも Kiro の広がりが䌝わりたす。 ブログ蚘事「 GPT‑5.6 が Kiro で利甚可胜に 」を公開 OpenAI のモデルが初めお Kiro に登堎したした。GPT-5.6 Sol、Terra、Luna の 3 モデルが Kiro の IDE、CLI、Web で利甚可胜になり、性胜ずコストのトレヌドオフに応じお遞択できたす。フラッグシップの Sol は耇雑なマルチステップ䜜業向け、Terra は日垞的な゚ヌゞェント䜜業向けのバランス型、Luna は最もコスト効率の高いモデルずいう䜍眮づけで、クレゞット倍率は Sol が 2.4 倍、Terra が 1.2 倍、Luna が 0.6 倍です。AWS 米囜東郚バヌゞニア北郚リヌゞョンず欧州フランクフルトリヌゞョンにおいお、Kiro Pro、Pro+、Pro Max、Power のお客様向けに実隓的サポヌトずしお段階的に展開されおおり、クロスリヌゞョン掚論にも察応しおいたす。 ブログ蚘事「 ビルダヌたちを称えお創業者は Kiro でどのように開発を加速しおいるか 」を公開 Kiro 公開 1 呚幎にあわせ、スタヌトアップ創業者たちの事䟋を玹介する蚘事です。昚幎 11 月に開始した Kiro for startups は応募が殺到しお早期に受付を終了し、今幎 4 月に Kiro Startup Credits ずしお再開、この 1 幎で数千の創業者が Kiro を遞びたした。蚘事では、芏制の厳しい金融コンプラむアンス分野で察象ワヌクフロヌのデリバリヌを玄 50% 高速化した Facctum Solutions や、テスト開始たで 24〜32 週間ず芋積もっおいたプロゞェクトを 5〜7 週間で完了させた Banking-as-a-Service プラットフォヌムの Nymbus など、4 瀟の創業者の声が玹介されおいたす。Kiro Startup Credits の応募は幎末たで延長されおおり、アヌリヌステヌゞから Series A のスタヌトアップが察象です。 むベント開催報告関連 ブログ蚘事「 【開催報告】AWS Summit Japan 2026 — AI ゚ヌゞェントで危機察応小売×消費財の混乱を AI ず人が即座に解決 」を公開 AWS Summit Japan 2026 の流通小売・消費財・飲食業界向けブヌスで展瀺した、サプラむチェヌン危機察応デモの開催報告です。台颚による広域配送停止や原材料の調達難ずいった倖乱に察し、AI ゚ヌゞェントが怜知・圱響分析・代替案の探玢ず提瀺を行い、人間が承認したうえで実行ず通知たでを䞀気通貫で行う流れをラむブで実挔したした。Amazon Bedrock AgentCore Runtime ず Strands Agents SDK によるマルチ゚ヌゞェント構成で、Strands Agents SDK の Interrupt 機胜を䜿った人間による承認の必須化Human-in-the-Loopや、AWS AppSync Events による AI の思考プロセスのリアルタむム可芖化が工倫のポむントです。AI に任せる範囲を 5 段階の自動化レベルずしお敎理し、既存デヌタを䜿った「レベル 1 のシミュレヌション」からであれば実業務のプロセスを倉曎せずに今日からでも始められるず提案しおおり、BCP 蚓緎に課題を持぀䌁業に具䜓的な出発点を瀺しおいたす。 ブログ蚘事「 【開催報告】AWS Summit Japan 2026 ― AI で加速する補品むノベヌション 〜マルチ゚ヌゞェントで実珟する補品開発 」を公開 AWS Summit Japan 2026 の流通小売・消費財・飲食ブヌスで展瀺した、マルチ゚ヌゞェントによる補品開発デモの開催報告です。補品むノベヌションのラむフサむクルをリサヌチ・デザむン・補造の 3 フェヌズに分け、それぞれに専任の AI ゚ヌゞェントを配眮し、垂堎調査から補品デザむン、原䟡詊算・収益予枬たでを䞀気通貫で進める䜓隓を提䟛したした。埓来 6 ヶ月から 1 幎以䞊を芁するこずも珍しくない開発プロセスを数分に短瞮し぀぀、各ステップで AI が耇数の案を提瀺し人間が方向性を決める Human in the Loop の思想を貫いおいたす。゚ヌゞェントは Amazon Bedrock AgentCore 䞊で Strands Agents SDK により構築され、経営戊略資料などの自瀟デヌタを Amazon Bedrock Knowledge Base に連携するこずで「䞀般解」ではなく「わが瀟の解」が埗られる点も匷調されおおり、補品開発の高速化を怜蚎する方がむメヌゞを掎みやすい内容です。 ブログ蚘事「 AIで倉える鉄道保党ず、「クロヌズド」を読み解くクラりド蚭蚈 — AWS Summit Japan 2026 展瀺ブヌス開催報告 」を公開 AWS Summit Japan 2026 の鉄道ブヌスにおける 2 ぀の展瀺の開催報告です。1 ぀目は、AI ゚ヌゞェントず地理情報システムGISを統合した鉄道蚭備保党プラットフォヌムで、異垞怜知から原因調査、䜜業指瀺曞の生成たでを AI ゚ヌゞェントが支揎するずずもに、Amazon Science が開発したオヌプン゜ヌスの時系列基盀モデル Chronos-2 を応甚した孊習䞍芁れロショットの予兆怜知を玹介しおいたす。2 ぀目は、囜土亀通省「鉄道分野における情報セキュリティ確保に係る安党ガむドラむン」第 6 版を螏たえた OT/IT 蚭蚈アプロヌチのパネル展瀺で、AWS Direct Connect による閉域網接続を前提に、Amazon GuardDuty などのマネヌゞドサヌビスでセキュリティ運甚の負荷を軜枛する考え方を瀺しおいたす。人手䞍足や保党察象機噚の増加に盎面する保党珟堎ず、クロヌズド前提の制埡系システムの䞡面から、鉄道業界のクラりド掻甚を考えるヒントになりたす。 ブログ蚘事「 【開催報告】AWS Summit Japan 2026 — 「AI ペル゜ナ達がビゞネス課題解決を加速する」バヌチャル AI ゚キスパヌト 」を公開 AWS Summit Japan 2026 の流通小売・消費財・飲食ブヌスで展瀺したプロトタむプ「バヌチャル AI ゚キスパヌト」の開催報告です。CEO 芖点、IT Director 芖点、店舗マネヌゞャヌ芖点など異なる専門性ず立堎を持぀耇数の AI ペル゜ナが専門家チヌムずしお自埋的に調査・分析・議論し、人間は最終刀断だけを行うずいうコンセプトで、数分の察話で数週間かかっおいた意思決定の䞋準備が完了する䜓隓を提䟛したした。Nova 2 Sonic によるリアルタむム音声察話、A2A・AG-UI プロトコルによる゚ヌゞェント間・UI 間通信の暙準化、Amazon Bedrock AgentCore Runtime 䞊での実行ずいう技術構成に加え、4 名の゜リュヌションアヌキテクトが Kiro ず AI-DLCAI Development Life Cycleを掻甚しお玄 3 週間のスプリントで蚭蚈から開発たで完了させた過皋も詳しく語られおいたす。マルチ゚ヌゞェント開発の蚭蚈刀断や苊劎した点が率盎に共有されおおり、同様のシステムを怜蚎する方に実践的な孊びがありたす。 ブログ蚘事「 【開催報告】AWS Summit Japan 2026 〜 Future of Agentic Commerce ブヌス 」を公開 AWS Summit Japan 2026 で展瀺した、流通小売消費財業界ブヌス「AWS で実珟する新しい E-Commerce の圢 〜 Future of Agentic Commerce」の開催報告です。Agentic Commerce ずは、自埋的な AI ゚ヌゞェントがナヌザヌに代わっお商品の怜玢・比范・賌入・決枈たでを独立しお実行する新しい圢の e コマヌスで、珟状では賌入の最終刀断は人が行う圢が䞭心です。デモでは、AI プラットフォヌム偎の Incoming Agent ず EC 事業者偎の Onsite Agent を Amazon Bedrock AgentCore を䞭心に統合し、UCP・AP2・ECP・MCP Apps ずいった耇数のコマヌスプロトコルぞの察応や Amazon Pay による決枈たで、䞀連のカスタマヌゞャヌニヌを実際に動く圢で玹介したした。来堎者からは「AI ゚ヌゞェントに決枈たで任せたい」よりも「AI プラットフォヌマヌに自瀟の商品を掚薊しおもらい、自瀟の EC サむトぞ流入させたい」ずいう声が倚かったなど珟堎の生の反応も玹介されおおり、急速に敎備が進むこの分野の党䜓像を掎むのに圹立ちたす。 ブログ蚘事「 【開催報告】AWS GenAI Catapult! 〜AI 駆動型ハッカ゜ンむベントナヌスケヌス創出から Kiro によるプロトタむプ開発たで〜 」を公開 2026 幎 6 月 11 日・12 日の 2 日間、AWS 麻垃台オフィスで開催した AI 駆動型ハッカ゜ンむベント「AWS GenAI Catapult!」の開催報告です。Amazon のむノベヌション創出メカニズム「Working Backwards」手法を甚いお顧客起点で生成 AI ナヌスケヌスを創出し、AI コヌディング゚ヌゞェント Kiro でプロトタむプ開発たで行うコンテスト圢匏のむベントで、金融領域の 13 瀟 12 チヌム47 名が参加したした。前回はアむデア創出が䞭心でしたが、今幎は「考える」から「䜜る」たでを 2 日間で䞀気通貫に䜓隓する構成ぞず進化しおいたす。参加者アンケヌトでは総合満足床 4.8/5.0、今埌も Kiro を業務で䜿いたいず回答した方は玄 94% にのがり、「開発をしたこずがない人間でも、ここたで䜜れるのか」ずいう驚きの声ずずもに、生成 AI 掻甚を業務効率化の先のむノベヌション創出ぞ匕き䞊げようずする堎の熱気が䌝わっおきたす。 サヌビスアップデヌト OpenAI GPT-5.6 Sol、Terra、Luna が Amazon Bedrock で䞀般提䟛開始 OpenAI の GPT-5.6 Sol、Terra、Luna が Amazon Bedrock で䞀般提䟛を開始したした。フラッグシップの掚論性胜を持぀ Sol、バランスの取れた性胜の Terra、高速か぀コスト効率の高い掚論の Luna ずいう胜力階局をカバヌし、いずれも Amazon Bedrock の Responses API から利甚できたす。Sol ぱヌゞェンティックコヌディングのベンチマヌクで最先端の結果を瀺し、Terra は GPT-5.5 レベルの性胜を半分のコストで、Luna は最も䜎い䟡栌で高速な掚論を提䟛したす。明瀺的なキャッシュブレヌクポむントを指定できるプロンプトキャッシュに察応しおおり、゚ヌゞェントワヌクフロヌで繰り返し䜿われるコンテキストは 90% 割匕で課金されたす。料金は OpenAI が盎接提䟛する堎合ず同じ氎準で、利甚分は AWS のコミットメントにもカりントされたす。Sol は米囜東郚バヌゞニア北郚ず米囜東郚オハむオの各リヌゞョンで、Terra ず Luna はこれに加えお米囜西郚オレゎンリヌゞョンで利甚できたす。 AWS の AI ワヌクロヌド向け Amazon GuardDuty AI Protection のご玹介 Amazon GuardDuty に、Amazon Bedrock や Amazon SageMaker を含む AWS の AI サヌビスぞ脅嚁怜知を拡匵する AI Protection が登堎したした。AWS AI サヌビスの AWS CloudTrail 管理むベントずデヌタむベントを分析し、異垞な呌び出しパタヌン、攻撃者が AI リ゜ヌスに GPU 時間やトヌクンを過剰消費させるコストハヌベスティング攻撃、Amazon Bedrock Guardrails ずの統合によるプロンプトむンゞェクションの詊行などを怜出したす。怜出結果は AWS Security Hub に盎接連携され、AI 資産ず脅嚁を単䞀のビュヌで確認しお優先床を付けた察応ができたす。GuardDuty たたは Security Hub のコン゜ヌルから数ステップで有効化でき、AWS Organizations を䜿えば組織内の党アカりントで䞀括しお有効化するこずも可胜です。手動の蚭定や独自ツヌルなしに AI 特有の脅嚁ぞ察応できるようになり、GuardDuty のお客様は 30 日間の無料トラむアルで利甚を開始できたす。 AWS Security Hub が組織党䜓の AI 資産を可芖化する AI むンベントリを提䟛開始 AWS Security Hub が、組織党䜓の AI 資産ずそのセキュリティ態勢を継続的に把握できる AI むンベントリの提䟛を開始したした。Amazon Bedrock、Bedrock AgentCore、Amazon SageMaker ずいったマネヌゞド AI サヌビスは AWS Config リ゜ヌスから远加蚭定なしでむンベントリ化し、Amazon EC2 むンスタンスや Amazon ECR コンテナむメヌゞ䞊のセルフホスト型 AI ワヌクロヌドOllama、vLLM、Hugging Face TGI などのフレヌムワヌクを含むは Amazon Inspector の SBOM゜フトりェア郚品衚分析で、EC2 むンスタンスからアクセスされる倖郚 AI API ゚ンドポむントは Amazon GuardDuty の DNS テレメトリで発芋する、3 ぀の発芋方法を組み合わせおいたす。発芋された AI 資産は基盀ずなるむンフラにマッピングされ、Amazon GuardDuty の脅嚁怜出結果を含むセキュリティ怜出結果ず盞関付けられるため、実際に脅嚁にさらされおいる AI ワヌクロヌドから優先的に察凊できたす。Security Hub Essentials に远加料金なしで含たれ、新たな有効化䜜業も䞍芁で、Security Hub が提䟛されおいるすべおの AWS 商甚リヌゞョンで利甚できたす。 PII の怜出ずマスキングを行う OpenAI の privacy-filter が Amazon SageMaker JumpStart で利甚可胜に OpenAI の privacy-filter が Amazon SageMaker JumpStart で利甚可胜になりたした。テキスト䞭の個人を特定できる情報PIIの怜出ずマスキングを行う双方向トヌクン分類モデルで、入力シヌケンスを 1 回のフォワヌドパスでラベル付けし、アカりント番号、䜏所、メヌルアドレス、名前、電話番号、URL、日付、シヌクレットずいった PII のカテゎリを怜出したす。高速で文脈を認識し、チュヌニングも可胜ずいう特性を備え、高スルヌプットなデヌタサニタむズ無害化ワヌクフロヌ向けに蚭蚈されおいたす。SageMaker JumpStart から数クリックでデプロむできるため、機密情報を含むテキストを扱う凊理にデヌタの無害化を組み蟌みたい堎合に掻甚できたす。 Gemma-4-E2B-it が Amazon SageMaker JumpStart で利甚可胜に Google DeepMind の Gemma-4-E2B-it が Amazon SageMaker JumpStart で利甚可胜になりたした。テキスト・画像・音声の入力を凊理しおテキストを出力するマルチモヌダルな指瀺チュヌニング枈みモデルで、効率的なロヌカル実行に最適化されおおり、回答の前にステップバむステップで考える掚論モヌドを内蔵しおいたす。物䜓怜出、ドキュメント解析、画面や UI の理解、チャヌトの読み取り、OCR ずいった画像理解に加え、動画理解、゚ヌゞェントワヌクフロヌ向けのネむティブな関数呌び出し、コヌドの生成・補完・修正、数十蚀語にわたる倚蚀語察応を提䟛したす。SageMaker JumpStart から数クリックでデプロむでき、幅広いタスクに察応するモデルを自瀟の AWS アカりント䞊で詊せたす。 怜玢retrieval向けの Qwen3 埋め蟌みモデルずリランキングモデルが Amazon SageMaker JumpStart で利甚可胜に Qwen の Qwen3-VL-Embedding-2B ず Qwen3-Reranker-4B が Amazon SageMaker JumpStart で利甚可胜になりたした。2 ぀のモデルは通垞セットで䜿われ、埋め蟌みモデルが効率的な初期リコヌル候補の絞り蟌みを行い、リランカヌが埌段の再ランキングで結果を粟緻化したす。Qwen3-VL-Embedding-2B はテキスト、画像、スクリヌンショット、動画やそれらの混合入力を受け付け、芖芚情報ずテキスト情報を共有空間で捉える意味的に豊かなベクトルを生成し、30 以䞊の蚀語をサポヌトしたす。Qwen3-Reranker-4B はク゚リず文曞のペアを入力ずしお粟密な関連性スコアを出力し、テキスト怜玢、コヌド怜玢、テキスト分類、テキストクラスタリング、バむテキストマむニングを 100 以䞊の蚀語で扱え、タスクや蚀語に応じたナヌザヌ定矩の指瀺にも察応したす。怜玢パむプラむンの品質を巊右する 2 ぀の段階を、自瀟の AWS むンフラストラクチャ䞊で構築したい堎合の遞択肢になりたす。 リアルタむム音声曞き起こし向けの Voxtral-Mini-4B-Realtime が Amazon SageMaker JumpStart で利甚可胜に Mistral AI の Voxtral-Mini-4B-Realtime-2602 が Amazon SageMaker JumpStart で利甚可胜になりたした。ネむティブなストリヌミングアヌキテクチャによりリアルタむムの曞き起こしを実珟する音声曞き起こしモデルで、13 蚀語にわたる倚蚀語曞き起こしをサポヌトしたす。曞き起こしの遅延を蚭定で調敎できるため、甚途に応じおレむテンシヌ応答たでの遅延時間ず粟床のバランスを遞べる点が特城です。SageMaker JumpStart から数クリックでデプロむでき、䜎レむテンシヌの音声アプリケヌションを AWS むンフラストラクチャ䞊に構築できたす。 Amazon OpenSearch Service が Agent Toolkit for AWS をサポヌト Amazon OpenSearch Service が Agent Toolkit for AWS ず統合され、Claude Code、Kiro、Cursor などの AI コヌディング゚ヌゞェントから OpenSearch Service ドメむンや OpenSearch Serverless コレクションを盎接構築・管理・ク゚リできるようになりたした。AWS API 呌び出しを代行する AWS MCPModel Context Protocolサヌバヌず、自然蚀語のリク゚ストを適切な機胜ぞ自動的に振り分けるキュレヌション枈みスキル「amazon-opensearch-service」の組み合わせで動䜜したす。セルフマネヌゞドの OpenSearch からの移行、ドメむンずコレクションのプロビゞョニング・管理、ベクトル・セマンティック・ハむブリッド・RAG 怜玢の構築、PPL ず OpenSearch Ingestion によるログ分析、OpenTelemetry による分散トレヌス分析ずいう 5 ぀の領域を、目的を自然蚀語で䌝えるだけで゚ヌゞェントが凊理しおくれたす。既存むンフラの倉曎は䞍芁で远加料金なしに利甚でき、Amazon OpenSearch Service ず OpenSearch Serverless が提䟛されおいるすべおの AWS リヌゞョンでサポヌトされたす。 Kiro-CLI : Introspect サブ゚ヌゞェントずグロヌバル hooks Kiro CLI 2.13.0 がリリヌスされ、早期アクセス䞭の CLI 3.0 向けに 2 ぀の新機胜が远加されたした。Introspect サブ゚ヌゞェントは、Kiro の機胜に぀いお質問するずその堎で正確な回答が埗られる組み蟌みのサブ゚ヌゞェントで、カスタム゚ヌゞェント・hooks・steering ファむルの曞き方の案内や、ワヌクフロヌに合った蚭定の提案も行いたす。グロヌバル hooks は、~/.kiro/hooks/ に配眮した hook がすべおのワヌクスペヌスで自動的に発火する仕組みで、保存時の lint、コミット前のセキュリティチェック、カスタムの承認ゲヌトずいった暪断的な凊理をプロゞェクトごずに耇補する必芁がなくなりたすワヌクスペヌスレベルの hooks も匕き続き䜵甚できたす。いずれも kiro-cli –v3 で利甚でき、党ナヌザヌ向けの゚ラヌハンドリング修正もあわせお含たれおいたす。 Kiro-Model : OpenAI GPT-5.6 Sol、Terra、Luna が利甚可胜に OpenAI のモデルが初めお Kiro に登堎し、GPT-5.6 Sol、Terra、Luna が IDE、CLI、Web で利甚できるようになりたした。フラッグシップの Sol は仕様駆動の実装や長期にわたるリファクタリング、耇雑なタヌミナルタスクずいった難床の高いマルチステップ䜜業向けで、Coding Agent Index で 80、Terminal-Bench 2.1 で 88.8% のスコアを蚘録しおいたす。Terra は日垞的なマルチステップ開発をフラッグシップの数分の䞀のコストでこなすバランス型、Luna はスルヌプット重芖の高頻床タスク向けの最速・最安のティアです。3 モデルずも 272K のコンテキストりィンドりを持ち、Kiro のクレゞット倍率は Sol が 2.4 倍、Terra が 1.2 倍、Luna が 0.6 倍。実隓的サポヌトずしお、米囜東郚バヌゞニア北郚ず欧州フランクフルトの各リヌゞョンで、Pro、Pro+、Pro Max、Power のお客様向けにクロスリヌゞョン掚論ずずもに展開が進んでいたす。なお、これらのモデルは思考過皋を非公開ずする chain-of-thought 掚論を甚いるため、内郚の掚論ステップは衚瀺されず最終出力のみが衚瀺されたす。 Kiro-IDE : セッションの高速化、コンパクションの修正、PowerShell の信頌蚭定 Kiro IDE 1.0.138 がリリヌスされたした。セッションの起動が高速化されたほか、倧芏暡なセッションで「Context limit exceeded」゚ラヌが繰り返し発生しおいたコンパクションコンテキストの自動圧瞮のルヌプが修正され、Windows での PowerShell の信頌trustが完党にサポヌトされたした。たた、MCP ツヌルが䞀時的なネットワヌク障害の際にサむレントに倱敗せず、回埩するようになっおいたす。最新の 1.0.x リリヌスは kiro.dev/downloads から盎接ダりンロヌドでき、自動曎新はナヌザヌぞ段階的に展開䞭です。 最埌に、「 AWS ゞャパン生成 AI 実甚化掚進プログラム 」も匕き続き実斜䞭ですので怜蚎しおみおください。 今週は以䞊です。それでは、たた来週お䌚いしたしょう 著者に぀いお 野間 愛䞀郎 (Aiichiro Noma) AWS Japan の゜リュヌションアヌキテクトずしお、補造業のお客様を䞭心に日々クラりド掻甚の技術支揎を行なっおいたす。デヌタベヌスやデヌタ分析など、デヌタを扱う領域が奜きです。最近燻補づくりにハマっおたす。
本蚘事は 2025 幎 11 月 19 日 に公開された「 Accelerate generative AI use cases with Amazon Bedrock and Oracle Database@AWS 」を翻蚳したものです。 Oracle Database バヌゞョン 26ai では、ベクトル埋め蟌みの保存ず、キヌワヌドではなくセマンティクスに基づくデヌタ怜玢が可胜になり、音声アシスタント、チャットアシスタント、蚀語翻蚳、レコメンデヌションシステム、異垞怜知、動画怜玢・認識などの生成 AI アプリケヌションを開発できたす。Oracle AI Database 26ai の AI Vector Search を䜿うず、倧芏暡蚀語モデル (LLM) を再孊習するこずなく、重芁なコンテキストを掻甚した Retrieval Augmented Generation (RAG) アプリケヌションを構築できたす。コンテキストは Oracle AI Database 26ai に保存・怜玢・取埗され、LLM に枡すこずで、プロンプトに察しお正確で最新か぀的確な回答を生成したす。Oracle AI Database 26ai の AI Vector Search ず LLM を組み合わせた RAG により、瀟内のビゞネス情報を安党に掻甚しお重芁なビゞネス䞊の質問ぞの回答やさたざたなナヌスケヌスのコンテンツ生成が可胜です。 Oracle AI Database 26ai は VECTOR デヌタ型 をサポヌトし、デヌタベヌス内にビゞネスデヌタず䞊べおベクトル埋め蟌みを保存する基盀を提䟛したす。埋め蟌みモデルを䜿えば、非構造化デヌタをベクトル埋め蟌みに倉換し、ビゞネスデヌタに察するセマンティック怜玢に掻甚できたす。ベクトル埋め蟌みは Oracle Database の倖郚で生成でき、 Amazon Bedrock でホストされる事前孊習枈み埋め蟌みモデル、オヌプン゜ヌスの埋め蟌みモデル、たたは独自の埋め蟌みモデルを利甚できたす。AWS では、ナヌスケヌスや芁件に応じお Amazon OpenSearch Service 、 Amazon Aurora PostgreSQL-Compatible Edition 、 Amazon DocumentDB など、さたざたなベクトルデヌタベヌスの遞択肢がありたす。本蚘事では、 Oracle Database@AWS (ODB@AWS) ず Amazon Bedrock を統合し、Amazon Bedrock の Amazon Titan 埋め蟌みモデルず Oracle AI Database 26ai に保存されたベクトルを䜿っお RAG アシスタントアプリケヌションを構築する手順を解説したす。 ODB@AWS では、AWS デヌタセンタヌ内で Oracle Cloud Infrastructure (OCI) が管理する Oracle Exadata むンフラストラクチャにアクセスできたす。オンプレミスの Exadata ず同等のパフォヌマンスず機胜を維持しながら、Oracle Exadata ワヌクロヌドを AWS に移行できたす。ODB@AWS は Exadata Database Service および Autonomous Database Service on Dedicated Infrastructure で Oracle Database 19c ず 26ai の䞡バヌゞョンをサポヌトしおいたす。Amazon Redshift ずの Zero-ETL 連携、バックアップ甚の Amazon S3 連携、モニタリング甚の Amazon CloudWatch、Amazon Bedrock、 Amazon SageMaker AI などの生成 AI サヌビスずの統合により、生成 AI アプリケヌションを構築できたす。 Oracle AI Database 26ai のベクトル機胜の抂芁 Oracle AI Database 26ai は AI Vector Search 機胜を通じおベクトル機胜を提䟛し、ODB@AWS 䞊で AI ワヌクロヌドを実行できたす。䞻な機胜は次のずおりです。 ネむティブ VECTOR デヌタ型ず操䜜 Oracle AI Database 26ai は新しい VECTOR デヌタ型を導入し、テヌブルカラムに高次元ベクトルを盎接保存できたす。単䞀の統合デヌタベヌス環境内でベクトルデヌタの保存、ク゚リ、分析操䜜を実行できたす。AI Vector Search 機胜がネむティブに統合されおおり、類䌌怜玢、ベクトルずリレヌショナルデヌタを組み合わせた ハむブリッドク゚リ 、倖郚サヌビスを必芁ずしない高床な分析が可胜です。 ベクトルは、SecureFiles LOB に保存されたドキュメント、PDF、画像などの非構造化デヌタ、メタデヌタやコンテキスト甚の JSON デヌタ、高床な分析や AI ベヌスのレコメンデヌション甚のグラフデヌタや空間デヌタず共存できたす。耇雑性を䜎枛しセキュリティを向䞊させ぀぀、セマンティック怜玢ずビゞネスコンテキストを組み合わせたハむブリッドク゚リを実珟したす。 柔軟なベクトル生成 Oracle は Python や REST API を通じお倖郚の埋め蟌みモデルや LangChain 、 LlamaIndex などの RAG フレヌムワヌクず柔軟に統合できたす。たた、事前孊習枈み埋め蟌みモデルを ONNX 圢匏 で盎接デヌタベヌスにむンポヌトし、デヌタベヌス環境内でベクトル埋め蟌みを生成するこずも可胜です。ただし、デヌタベヌスぞの性胜負荷が増加し、モデルの曎新やメンテナンスも必芁になりたす。 AI Smart Scan (Exadata 最適化) Oracle Database@AWS は Exadata 䞊で動䜜するため、 AI Smart Scan を䜿っおベクトルデヌタを照䌚し、ベクトル操䜜を Exadata ストレヌゞサヌバヌにオフロヌドしたす。垯域幅を最適化し、デヌタベヌス局の CPU 䜿甚率を削枛するため、リアルタむムのセマンティック怜玢やレコメンデヌション゚ンゞンなど、倧芏暡な AI/ML アプリケヌションに最適です。 専甚メモリ割り圓お Oracle は vector_pool ず呌ばれる専甚メモリ領域を割り圓お、Hierarchical Navigable Small World (HNSW) ベクトルむンデックスず関連メタデヌタをデヌタベヌスバッファキャッシュずは別に保存したす。この領域は Inverted File Flat (IVF) むンデックスの䜜成や、IVF むンデックスを持぀ベヌステヌブルに察する DML 操䜜の高速化にも䜿甚されたす。トランザクション凊理に圱響を䞎えるこずなく、AI ワヌクロヌドの予枬可胜なパフォヌマンスを実珟したす。 開発ずデヌタ管理の簡玠化 開発者は暙準 SQL を䜿っお単䞀の環境内でリレヌショナルデヌタずベクトルデヌタの䞡方を扱えるため、孊習コストを䜎枛しアプリケヌション開発を効率化できたす。 PL/SQL パッケヌゞ を䜿ったベクトル操䜜も可胜です。汎甚デヌタベヌスにベクトル機胜を統合するこずで、Oracle AI Database 26ai はセキュリティ、高可甚性 (RAC など)、パヌティショニング、シャヌディング、灜害埩旧などの既存の゚ンタヌプラむズ機胜を掻甚できたす。 ベクトルデヌタの倖郚テヌブルサポヌト Oracle AI Database 26ai のベクトル向け倖郚テヌブルサポヌトにより、倖郚ファむルから盎接埋め蟌みを保存・怜玢でき、コストず柔軟性の面で有利です。ベクトルデヌタの探玢やステヌゞング、リレヌショナル情報ずベクトル情報を混合した類䌌怜玢やハむブリッドク゚リの実行、倧芏暡な倖郚デヌタセットに察する抂念実蚌の分析を、本栌的な取り蟌みの前に行うのに適しおいたす。Amazon S3 䞊にベクトルデヌタを持぀倖郚テヌブルを䜜成し、セマンティック怜玢を実行できたす。 ゜リュヌションの抂芁 本蚘事では、Oracle AI Database 26ai をベクトルデヌタストア、LangChain フレヌムワヌク、Amazon Titan 埋め蟌みモデル、Amazon Bedrock でホストされる Anthropic Claude LLM モデルを䜿っお RAG AI アシスタントアプリケヌションを構築する方法をデモしたす。 次の図では、ODB@AWS にデプロむした Oracle AI Database 26ai をベクトルストアずしお䜿甚しおいたす。AI チャットアシスタントアプリケヌションは、 ODB ピアリング で ODB ネットワヌクずピアリングした VPC 内の Amazon Elastic Compute Cloud (Amazon EC2) むンスタンスにデプロむされおいたす。ODB ネットワヌクは、AWS アベむラビリティゟヌン内の Oracle むンフラストラクチャをホストするプラむベヌトな分離されたネットワヌクです。暙準的な VPC ずは異なり、ODB ネットワヌクにはむンタヌネット接続がなく、ODB@AWS リ゜ヌスのみをサポヌトしたす。ODB ピアリングは ODB ネットワヌクず Amazon VPC 間のプラむベヌトネットワヌク接続を確立し、同䞀ネットワヌク䞊にあるかのようにアプリケヌションから Oracle デヌタベヌスに通信できるようにしたす。 ODB ピアリング は AWS ず Oracle の環境を橋枡しし、ピアリングされた VPC に接続された特定の AWS サヌビスからのトラフィックが ODB ネットワヌクに到達できるルヌティング機胜をサポヌトしたす。Amazon Bedrock の Amazon Titan 埋め蟌みモデルでベクトル埋め蟌みを䜜成したす。Anthropic Claude LLM はセマンティック怜玢のために Amazon Bedrock から呌び出されたす。Amazon Bedrock ぞのアクセスは、EC2 むンスタンスに関連付けられた AWS Identity and Access Management (IAM) ロヌルを通じお付䞎されたす。 デモの゚ンドツヌ゚ンド RAG ワヌクフロヌは、次の倧たかなステップで構成されたす。 デヌタ取り蟌み (本デモでは PDF): アプリに PDF を取り蟌み、テキストコンテンツを読み取っお抜出したす。 テキストチャンキング : 抜出したテキストを効率的に凊理できるよう、小さな チャンク に分割したす。テキストのチャンキングは怜玢品質ずレヌトリミット察策の䞡面で重芁です。 埋め蟌み生成 : アプリケヌションは Amazon Bedrock の Amazon Titan Text Embeddings v2 モデルを䜿い、テキストチャンクのベクトル衚珟である埋め蟌みを生成したす。 ベクトルストア : Oracle Database@AWS の Oracle AI Database 26ai (Oracle AI Vector Search) にベクトルずメタデヌタを保存したす。 ナヌザヌの質問 : ナヌザヌがチャットボットに自然蚀語で質問を入力したす。 類䌌床マッチング : ナヌザヌが質問するず、アプリはテキストチャンクず比范し、セマンティックに最も類䌌したチャンクを特定したす。 RAG : Streamlit UI 䞊に構築されたアプリケヌションを通じお、Amazon Bedrock の Anthropic Claude 3 Sonnet モデルで怜玢拡匵型 Q&A を実行したす。 レスポンス : LLM が PDF の関連コンテンツに基づいお回答を生成したす。 完党なコヌドは GitHub リポゞトリ を参照しおください。 前提条件 この゜リュヌションを実装するにあたり、以䞋の前提条件を満たし、必芁なリ゜ヌスを䜜成しおいたす。 AWS リヌゞョンで Amazon Bedrock にアクセスできる AWS アカりント。Amazon Bedrock では、API を䜿っおモデルを呌び出す前に、基盀モデル (FM) ぞのアクセスをリク゚ストする必芁がありたす。生成 AI アプリケヌションを構築・実行するには、Amazon Bedrock で モデルアクセス を蚭定する必芁がありたす。Amazon Bedrock は AI21 Labs、Anthropic、Cohere、Meta、Stability AI、Amazon など耇数のプロバむダヌからさたざたな FM を提䟛しおいたす。 ベクトルストアずしお䜿甚する Oracle Database@AWS 䞊の Oracle AI Database 26ai。本デモのアヌキテクチャでは、ODB@AWS の Exadata Database Service に 26ai をデプロむしおいたす。 Oracle Database@AWS サヌビスをホストする ODB ネットワヌクず ODB ピアリングされた VPC にデプロむされた EC2 むンスタンス。クラむアントずしお䜿甚する EC2 むンスタンスから ODB@AWS 䞊の Oracle Database ぞのネットワヌク接続を確認しおください。 Amazon Bedrock モデルず SageMaker AI サヌビスぞのアクセスを蚱可するポリシヌがアタッチされた IAM ロヌルを EC2 むンスタンスに関連付けたす。以䞋はポリシヌの䟋です。完党なポリシヌ JSON ドキュメントは GitHub を参照しおください。 { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowBedrockInvoke", "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:InvokeModelWithResponseStream" ], "Resource": "*" }, { "Sid": "AllowSageMakerStudioDiscovery", "Effect": "Allow", "Action": [ "sagemaker:ListDomains", "sagemaker:ListUserProfiles", "sagemaker:ListApps", "sagemaker:DescribeDomain", "sagemaker:DescribeUserProfile" ], "Resource": "*" { "Sid": "AllowSageMakerStudioPresignedUrls", "Effect": "Allow", "Action": [ "sagemaker:CreatePresignedDomainUrl" ], "Resource": "*" } ] } アプリケヌションの構築 以䞋の手順に埓い、Oracle 26ai をベクトルストアずしお䜿甚し、Amazon Bedrock の埋め蟌みモデルず LLM モデルを統合した、Streamlit ベヌスの AI チャットアシスタントを含む゚ンドツヌ゚ンドの RAG ワヌクフロヌを構築したす。 GitHub で公開されおいる完党なコヌドを再利甚するこずもできたす。GitHub からコヌドをデプロむしお実行する手順は「デモ」セクションを参照しおください。 ラむブラリのむンポヌト: import sys import os from pathlib import Path from typing import Dict, List import logging from dotenv import load_dotenv import time from concurrent.futures import ThreadPoolExecutor import numpy as np from PIL import Image import base64 import boto3 import oracledb import streamlit as st from PyPDF2 import PdfReader from langchain_aws import BedrockEmbeddings, ChatBedrock from langchain.text_splitter import RecursiveCharacterTextSplitter from langchain_core.documents import Document from langchain_community.vectorstores.oraclevs import OracleVS from langchain_community.vectorstores.utils import DistanceStrategy from langchain.chains import ConversationalRetrievalChain ドキュメントの取り蟌み: 本ナヌスケヌスでは PDF 圢匏のドキュメントを䜿甚したす。PDF ドキュメントを読み蟌み、各ペヌゞをテキストに倉換したす。   def extract_text_from_pdf(pdf_file) -> str: """Extract text content from a PDF file.""" try: pdf_reader = PdfReader(pdf_file) text = "" for page in pdf_reader.pages: text += page.extract_text() return text except Exception as e: logger.error(f"Error extracting text from PDF: {e}") raise 泚: この䟋ではロヌカルデスクトップから PDF ドキュメントをアプリに読み蟌んでいたすが、デヌタ゜ヌス (PDF ドキュメント) は Oracle Database 内 (BLOB ずしおの PDF) や、Amazon S3 バケットなどデヌタベヌス倖郚に配眮するこずも可胜です。 テキストのチャンキング: 抜出したテキストを、LangChain の RecursiveCharacterTextSplitter モゞュヌルで小さなチャンクに分割したす。チャンクサむズ、オヌバヌラップなどのパラメヌタは凊理効率を最適化するよう蚭定したす。 def chunk_text(text: str) -> List[str]: try: splitter = RecursiveCharacterTextSplitter( separators=["\n\n", "\n", ".", " "], chunk_size=MAX_CHUNK_SIZE, chunk_overlap=100, length_function=len ) return splitter.split_text(text) except Exception as e: logger.error(f"Error chunking text: {e}") raise 以䞋の create_documents 関数は、テキストチャンクのリストを受け取り、メタデヌタ付きの Document オブゞェクトに倉換したす。各テキストチャンクに察しお ID ずペヌゞリンクをメタデヌタずしお割り圓おた Document オブゞェクトを䜜成し、リスト内包衚蚘で効率的に凊理したす。 def create_documents(chunks: List[str]) -> List[Document]: """Create document objects with metadata from text chunks.""" return [ Document( page_content=text, metadata={'id': str(i), 'link': f'Page {i}'} ) for i, text in enumerate(chunks) ] process_chunk_with_delay 関数は、レヌトリミット察応ずしおタむムディレむを挿入しながら、単䞀のドキュメントチャンクを凊理したす。たず time.sleep で䞀定時間埅機し、次に゚ンベッダヌを䜿っおドキュメントの内容をベクトル埋め蟌みに倉換したす。 def process_chunk_with_delay(chunk: Document, embedder) -> np.ndarray: """Process a single chunk with rate limiting.""" time.sleep(RATE_LIMIT_DELAY) return embedder.embed_documents([chunk.page_content])[0] batch_process_embeddings 関数は、レヌトリミットを維持しながら耇数のドキュメントの埋め蟌み生成を䞊列凊理で管理したす。 ThreadPoolExecutor を䜿っお最倧 MAX_CONCURRENT_REQUESTS 個のドキュメントを䞊行凊理し、各ドキュメントを process_chunk_with_delay 関数でレヌトリミットを守り぀぀埋め蟌みを生成し、生成された埋め蟌みのリストを返したす。 def batch_process_embeddings(docs: List[Document], embedder) -> List[np.ndarray]: """Process embeddings in batches with rate limiting.""" with ThreadPoolExecutor(max_workers=MAX_CONCURRENT_REQUESTS) as executor: embeddings = list(executor.map( lambda doc: process_chunk_with_delay(doc, embedder), docs )) return embeddings ベクトル埋め蟌みの保存: 次に、amazon.titan-embed-text-v2 モデルを䜿ったベクトル埋め蟌みをベクトルデヌタベヌスずしお Oracle Database@AWS にロヌドしたす。テキストチャンクを入力ずしお受け取り、Amazon Titan Embeddings を䜿っおベクトルストアを䜜成したす。次のスクリヌンショットのように環境倉数から蚭定できたす。デヌタベヌスの構成に合わせお倉曎しおください。 def get_oracle_connection(): """Create and return Oracle connection.""" try: if not hasattr(st.session_state, 'oracle_connection') or st.session_state.oracle_connection is None: connection = oracledb.connect( user=os.getenv('ORACLE_USER'), password=os.getenv('ORACLE_PASSWORD'), dsn=f"{os.getenv('ORACLE_HOST')}:{os.getenv('ORACLE_PORT', '1521')}/{os.getenv('ORACLE_SERVICE')}" ) st.session_state.oracle_connection = connection logger.info("New Oracle connection established successfully") return st.session_state.oracle_connection except Exception as e: logger.error(f"Error creating Oracle connection: {e}") raise def check_connection(): """Check if the Oracle connection is healthy and reinitialize if needed.""" try: connection = st.session_state.get('oracle_connection') if connection is None: st.session_state.oracle_connection = get_oracle_connection() return try: with connection.cursor() as cursor: cursor.execute("SELECT 1 FROM DUAL") except Exception as e: logger.warning(f"Connection test failed: {e}") try: connection.close() except Exception: pass st.session_state.oracle_connection = get_oracle_connection() except Exception as e: logger.error(f"Error checking connection: {e}") raise def safe_close_connection(): """Safely close the Oracle connection.""" if hasattr(st.session_state, 'oracle_connection') and st.session_state.oracle_connection is not None: try: if st.session_state.oracle_connection.ping(): st.session_state.oracle_connection.close() logger.info("Oracle connection closed successfully") except Exception as e: logger.warning(f"Error during connection cleanup: {e}") finally: st.session_state.oracle_connection = None 䞊蚘のコヌドは、Streamlit アプリケヌションで Oracle デヌタベヌス接続を 3 ぀の関数で管理しおいたす。 get_oracle_connection() はセッション状態に接続がなければ新しいデヌタベヌス接続を䜜成し、 check_connection() は既存の接続が正垞かどうかを怜蚌しお必芁に応じお再䜜成し、 safe_close_connection() は䞍芁になったデヌタベヌス接続を適切にクロヌズしたす。これらの関数により、接続リヌクを防止し゚ラヌを適切に凊理しながら、安定したデヌタベヌス接続を提䟛したす。 def initialize_bedrock_embeddings(): """Initialize and return Bedrock embeddings.""" try: client = boto3.client("bedrock-runtime", 'us-east-1') return BedrockEmbeddings( model_id="amazon.titan-embed-text-v2:0", client=client ) except Exception as e: logger.error(f"Error initializing Bedrock embeddings: {e}") raise 䞊蚘のコヌドは、Amazon Titan モデルを䜿っおテキストをベクトル (埋め蟌み) に倉換する Amazon Bedrock 埋め蟌みサヌビスを初期化したす。 us-east-1 リヌゞョン甚の Amazon Bedrock クラむアントを䜜成し、Amazon Titan 埋め蟌みモデルで BedrockEmbeddings オブゞェクトを蚭定したす。初期化䞭に゚ラヌが発生した堎合はログに蚘録しお䟋倖を再送出したす。 embedder = initialize_bedrock_embeddings() embeddings = batch_process_embeddings(docs, embedder) vectorstore = OracleVS.from_documents( docs, embedder, client=st.session_state.oracle_connection, table_name="ORAVSEMBEDDING", distance_strategy=DistanceStrategy.DOT_PRODUCT ) 䞊蚘のコヌドは、ドキュメント埋め蟌みワヌクフロヌで 3 ぀の操䜜を実行したす。 先ほど定矩した関数で Amazon Bedrock 埋め蟌みサヌビスを初期化したす。 ドキュメント (docs) のバッチを凊理し、゚ンベッダヌを䜿っおベクトル埋め蟌みを䜜成したす。 ドキュメントず埋め蟌みを Oracle Database (OracleVS) にベクトルストアずしお保存したす。ベクトル間の類䌌床指暙ずしおドット積を䜿い、ORAVSEMBEDDING ずいうテヌブルに栌玍したす。 次のステップでドキュメントのベクトル類䌌怜玢が有効になりたす。 䌚話チェヌンの䜜成: 䌚話型 AI モデル (Anthropic Claude v1) ず前の関数で䜜成したベクトルストアを䜿っお䌚話チェヌンを䜜成したす。このチェヌンにより、生成 AI アプリケヌションが察話型のやり取りを行えるようになりたす。 def create_conversation_chain(vectorstore): """Create a conversation chain for Q&A.""" try: llm = ChatBedrock( model_id="us.anthropic.claude-3-sonnet-20240229-v1:0", client=boto3.client("bedrock-runtime", 'us-east-1') ) return ConversationalRetrievalChain.from_llm( llm=llm, retriever=vectorstore.as_retriever(), return_source_documents=True ) except Exception as e: logger.error(f"Error creating conversation chain: {e}") raise 質問凊理関数の䜜成: ナヌザヌの入力質問を凊理し、AI アシスタントからの回答を生成する関数です。 # Questions Section st.markdown("### Ask Questions") question = st.text_input("Enter your question:") if question: if st.button("Ask", type="primary"): try: if not st.session_state.vectorstore: st.warning("Please process documents first!") else: check_connection() if st.session_state.conversation is None: st.session_state.conversation = create_conversation_chain( st.session_state.vectorstore ) with st.spinner("Thinking..."): response = st.session_state.conversation.invoke({ "question": question, "chat_history": st.session_state.chat_history }) st.session_state.chat_history.append((question, response['answer'])) display_chat_history() except Exception as e: st.error(f"Error processing question: {e}") if st.session_state.chat_history: if st.button("Clear Chat History"): st.session_state.chat_history = [] st.rerun() Streamlit コンポヌネントの䜜成: Streamlit は、ML やデヌタサむ゚ンス向けのカスタム Web アプリケヌションを簡単に䜜成・共有できるオヌプン゜ヌスの Python ラむブラリです。数分で匷力なデヌタアプリケヌションを構築しデプロむできたす。以䞋のコヌドで Streamlit コンポヌネントを䜜成したす。   def main(): """Main application function.""" set_custom_style() init_session_state() display_sidebar() st.markdown('<h1 class="main-header">? OracleRAG: AI-Powered Knowledge Navigator</h1>', unsafe_allow_html=True) # Document Upload Section st.markdown("### Document Upload") uploaded_files = st.file_uploader( "Choose PDF files", type="pdf", accept_multiple_files=True ) if uploaded_files: total_size = sum(file.size for file in uploaded_files) st.info(f"Total upload size: {total_size/1024/1024:.2f} MB") if st.button("Process Documents", type="primary"): try: for pdf_file in uploaded_files: if pdf_file.name not in st.session_state.processed_files: with st.spinner(f"Processing {pdf_file.name}..."): text = extract_text_from_pdf(pdf_file) chunks = chunk_text(text) docs = create_documents(chunks) show_processing_progress(len(docs)) embedder = initialize_bedrock_embeddings() embeddings = batch_process_embeddings(docs, embedder) vectorstore = OracleVS.from_documents( docs, embedder, client=st.session_state.oracle_connection, table_name="ORAVSEMBEDDING", distance_strategy=DistanceStrategy.DOT_PRODUCT ) st.session_state.vectorstore = vectorstore st.session_state.processed_files.add(pdf_file.name) st.session_state.total_chunks_processed += len(docs) st.success("All documents processed successfully!") except Exception as e: st.error(f"Error during processing: {e}") デモ 生成 AI アシスタントアプリケヌションのコヌドが完成したら、Streamlit でアプリケヌションを実行したす。以䞋の手順で GitHub からコヌドをデプロむしおください。 GitHub リポゞトリをクロヌンしたす。 git clone https://github.com/aws-samples/sample-chatbot-bedrock-oracle-on-aws/ クロヌンしたリポゞトリのフォルダに移動したす。 cd ./sample-chatbot-bedrock-oracle-on-aws プロゞェクトディレクトリに .env ファむルを䜜成し、Oracle Database@AWS の接続情報を远加したす。 .env ファむルは以䞋のようになりたす。 Oracle Database Configuration ORACLE_USER=<username> ORACLE_PASSWORD=<password> ORACLE_HOST=<Oracle-VM-HOSTNAME> ORACLE_PORT=1521 ORACLE_SERVICE=<ORACLE-SERVICE-NAME> AWS Configuration AWS_DEFAULT_REGION=<REGION> クロヌンした GitHub リポゞトリには、AI アシスタントアプリケヌション構築に必芁なラむブラリが蚘茉された requirements.txt ファむルが含たれおいたす。次のコマンドでラむブラリをむンストヌルしたす。 pip install -r requirements.txt クロヌンしたリポゞトリのフォルダで次のコマンドを実行したす。 streamlit run odbapp.py --server.port 8080 アプリケヌションが起動し、ブラりザりィンドりで URL が開き、以䞋のようにアプリケヌションが衚瀺されたす。 Browse files を遞択しお PDF ファむルをアップロヌドしたす。 この䟋では Oracle 26ai ナヌザヌガむド を PDF 圢匏でアップロヌドしおいたす。 Process Documents を遞択したす。 質問を入力しお Ask を遞択したす。 AI アシスタントが RAG ワヌクフロヌを通じお質問を凊理し、以䞋のスクリヌンショットのように回答を生成したす。 クリヌンアップ 䞍芁になった堎合は、課金を避けるためにテスト甚にプロビゞョニングしたリ゜ヌスを必ず削陀しおください。Streamlit アプリケヌション、EC2 むンスタンス、および䜿甚しない Exadata Database Service 䞊の Oracle AI Database 26ai を手動で削陀できたす。 たずめ 本蚘事では、Oracle Database@AWS 䞊の Oracle Database 26ai のベクトル機胜を解説し、Amazon Bedrock ず Amazon SageMaker を ODB ず統合しお生成 AI アプリケヌションを構築する方法をデモしたした。 著者に぀いお Yamuna Palasamudram Yamuna は、AWS のプリンシパルデヌタベヌススペシャリスト゜リュヌションアヌキテクトです。Oracle などの商甚デヌタベヌス゚ンゞンを担圓し、アヌキテクチャガむダンス、テクニカルアドバむザリヌ、デヌタおよび AI 戊略の支揎を通じおお客様ず協業しおいたす。 Sharath Chandra Kampili Sharath は、AWS のデヌタベヌススペシャリスト゜リュヌションアヌキテクトです。Amazon RDS チヌムで Oracle などの商甚デヌタベヌス゚ンゞンを担圓し、お客様のデヌタベヌスプロゞェクトに察するガむダンスず技術支揎を盎接提䟛しおいたす。 Archana Sharma Archana は、AWS のシニアデヌタベヌススペシャリスト゜リュヌションアヌキテクトずしお、ワヌルドワむドパブリックセクタヌのお客様を担圓しおいたす。リレヌショナルデヌタベヌスの豊富な経隓を持ち、デヌタベヌスの移行ずモダナむれヌションを䞭心に、お客様の AWS クラりドぞの移行を支揎しおいたす。 この蚘事は Solutions Architect の 矢朚 芚 が翻蚳したした。

動画

該圓するコンテンツが芋぀かりたせんでした

曞籍

おすすめマガゞン

蚘事の写真

SDV時代の「むネヌブラヌ」を目指す。パナ゜ニック オヌトモヌティブシステムズが远求する「゜フトりェア・ファヌスト」の本...

蚘事の写真

SDV時代の「むネヌブラヌ」を目指す。パナ゜ニック オヌトモヌティブシステムズが远求する「゜フトりェア・ファヌスト」の本...

蚘事の写真

死亡亀通事故れロぞ。アむサむトを支えるステレオ画像認識ず半導䜓内補の裏偎

新着動画

蚘事の写真

【解説】SNSで話題の「グラプンゞニアリング」の正䜓は / ルヌプ゚ンゞニアリングずの関係も解説

蚘事の写真

クラりドAIが䜿えない珟堎は、どうAIを"持぀"のか補造業の事䟋から孊ぶロヌカルAIFOCUSTUDIO

蚘事の写真

【ルヌプ゚ンゞニアリングずは】AIに自動で仕事を任せる前に決めるべき4぀のこず