Slide 1

Slide 1 text

Amazon Bedrock を利⽤ したAIチャットボット開発 2023.12.1 @Qiita Night〜AI、機械学習〜 KDDIアジャイル開発センター株式会社 松好 祐紀

Slide 2

Slide 2 text

1 KDDI Agile Development Center Corporation ⾃⼰紹介 • ⽒名︓ 松好 祐紀(@yu-Matsu) • 所属︓ KDDIアジャイル開発センター株式会社 • 役割︓ インフラ/フロントエンジニア • 業務︓ アプリのシステムインフラ/フロントエンド開発、 社内クラウド(AWS/Azure)環境整備、 ⽣成AI関連プロダクト開発 • 趣味︓ゲーム、ウォーキング、観光スポット巡り 先⽉頭にスカイツリーや動く ▶ ガンタムを⾒てきました

Slide 3

Slide 3 text

2 KDDI Agile Development Center Corporation Amazon Bedrockとは

Slide 4

Slide 4 text

3 KDDI Agile Development Center Corporation Amazon Bedrockとは • AWSから提供されている⽣成AIプラットフォーム • Amazonが開発した基盤モデル以外にも、他のAIスタートアップ企業が 開発したモデルを選択することが出来る • モデルをカスタマイズすることが出来るため、独⾃のデータを⽤いて チューニングすることも可能 • AWSのその他のサービスとも連携することが出来るので、 既存のアプリケーションに組み込むことも容易 • ϓϥΠόγʔͱηΩϡϦςΟΛҡ࣋͠ͳ͕Β։ൃ͕Մೳ • LangChainも対応済み︕ ◦ LangChain = LLMを⽤いたアプリケーション開発を効率的に⾏うためのライブラリ

Slide 5

Slide 5 text

4 KDDI Agile Development Center Corporation かぐたん のご紹介

Slide 6

Slide 6 text

5 KDDI Agile Development Center Corporation かぐたん について • ⽣成AI関連の取り組みの⼀種として開発している社内⽤Slack bot • 名前の由来は弊社の略称が「KAG(かぐ)」だから ※ KDDI Agile Development Center à KAG • 元々はAzure OpenAIを利⽤しており、AWS × Azure のハイブリッド構成だった AWS Cloud Azure &$3 'BSHBUF λεΫ "1*αʔό 4MBDL "[VSF0QFO"* 4FSWJDF Πϝʔδऔಘ イベント検知 会話履歴の送信 下記情報とともに AOAI APIエンドポイント にリクエスト ・システムプロンプト ・会話履歴 (認証︓IP+APIキー) '8CPMUGPS1ZUIPO (15 (15 ࠷৽ϝοηʔδͷจݴͰ ޲͖ઌ൑ఆ VPC かぐたん

Slide 7

Slide 7 text

6 KDDI Agile Development Center Corporation かぐたん について 回答フォーマットやキャラ設定は、システムプロンプトで実現

Slide 8

Slide 8 text

7 KDDI Agile Development Center Corporation かぐたん について

Slide 9

Slide 9 text

8 KDDI Agile Development Center Corporation かぐたん について • Amazon Bedrockを利⽤し、フルAWSで構築 • ⾔語モデルはClaude v2を採⽤(採⽤当時はGPT-4より安価だったが、今はGPT-4 Turboの⽅が安価。。。) • 社外展開も睨んで会話履歴とプロンプトをDynamoDBに保存、取得して利⽤出来るように変更 AWS Cloud &$3 'BSHBUF λεΫ "1*αʔό 4MBDL Πϝʔδऔಘ イベント検知 会話履歴の送信 '8CPMUGPS1ZUIPO VPC %ZOBNP%# "NB[PO#FESPDL Bedrockのみ バージニア北部 リージョンを利⽤ (Claude v2モデル 利⽤のため) 会話履歴の保持 テキスト⽣成 %ZOBNP%# プロンプトの取得 現在、Bedrockを利⽤して魔改造中︕︕ 会話履歴とプロンプ トをDynamoDBに 外出し

Slide 10

Slide 10 text

9 KDDI Agile Development Center Corporation かぐたん について • Bedrockを利⽤するにあたり、書き換えたコードはこれだけ︕ 既にLangChainでアプリを作成している場合は簡単に置き換え可能︕ ▼ Bedrock利⽤の場合 ▼ Azure OpenAI利⽤の場合 Claude v2 など を指定

Slide 11

Slide 11 text

10 KDDI Agile Development Center Corporation かぐたん の今後の展望 • 社内⽤Slack Botに留まらず、社外にも展開していきたい • RAG(Retrieval Augmented Generation: 検索拡張⽣成)の搭載 ◦ 提供先に合わせたデータを利⽤出来るように⼯夫したい ◦ Amazon Kendra や Knowledge Bases for Amazon Bedrock の利⽤ A社のについて教えて︕ A社の情報を検索 検索結果 検索結果を元に回答 Amazon Kendra A社のドキュメント

Slide 12

Slide 12 text

11 KDDI Agile Development Center Corporation LINE Bot 作ってみた

Slide 13

Slide 13 text

12 KDDI Agile Development Center Corporation LINE Bot 作ってみた • かぐたんへのRAG搭載に向けて、個⼈でLINE Botを開発し検証中 • かぐたんと同じくBedrockを利⽤(⾔語モデルはClaude Instance) • RAGのデータストアにはPineconeを利⽤ AWS Cloud &$3 Πϝʔδऔಘ ユーザーのメッセージ送信 4 "NB[PO#FESPDL 会話履歴の保持 テキスト⽣成 4 プロンプトの取得 "1*(BUFXBZ -BNCEB Claude v2ではなく Claude Instanceを利⽤ し、全て東京リージョ ンで実装 データを検索

Slide 14

Slide 14 text

13 KDDI Agile Development Center Corporation LINE Bot 作ってみた ずんだもん 東北地⽅のマスコットキャラクター (擬⼈化) ▼ システムプロンプト ずんだもん︓https://zunko.jp/#charaZM イラスト: 坂本アヒル様(h"ps://seiga.nicovideo.jp/user/illust/97452727) キャラクター設定はかぐたんと同様に、システムプロンプトで実現

Slide 15

Slide 15 text

14 KDDI Agile Development Center Corporation LINE Bot 作ってみた

Slide 16

Slide 16 text

15 KDDI Agile Development Center Corporation LINE Bot 作ってみた • RAGのデータソースは、ずんだもんに関連するキャラクターや⾳声合成ソフト(VOICEOVOX/VOICEROID)の Wikipediaのデータを利⽤ • 検証する上での⼯夫点 ◦ コスト削減のために、会話履歴とシステムプロンプトの管理にDynamoDBを利⽤せず、S3を利⽤ ◦ 特に会話履歴の管理に関しては、仕組みの理解につながったので良かった PDFで保存 Vector Store作成

Slide 17

Slide 17 text

16 KDDI Agile Development Center Corporation PartyRock

Slide 18

Slide 18 text

17 KDDI Agile Development Center Corporation PartyRock 誰でも簡単に⽣成AIアプリが作成出来ます︕ • Amazon Bedrockを活⽤したサービスで、ローコードで⽣成AIアプリケーションを作成することが出来る︕ • Amazonアカウント、Googleアカウント、Apple IDがあれば誰でも利⽤可能︕ • 作成したアプリを、簡単に他のユーザーに公開することも出来る︕ https://partyrock.aws/

Slide 19

Slide 19 text

18 KDDI Agile Development Center Corporation PartyRock 以下のようなアプリケーションが、ローコードで5分ほどで作成出来ます︕ 「PartyRockを早速使ってみた︕」︓https://qiita.com/yu-Matsu/items/40cf32c2950f3d0e6094

Slide 20

Slide 20 text

19 KDDI Agile Development Center Corporation まとめ

Slide 21

Slide 21 text

20 KDDI Agile Development Center Corporation まとめと所感 • フルAWSでアプリケーションを構築出来るようになったので、閉域化しやすくなった • LangChainが直ぐに対応したので、既存のアプリケーションの置き換えも簡単 • PartyRockの登場により、誰でも⽣成AIアプリケーションを作成出来るようになった︕(敷居が低くなった) あったらいいな • Claude v2が東京リージョンに来てほしい ◦ セキュリティやレスポンスの速度など⾊々と課題がある • Add your data (Azure OpenAI) や Assistants API (OpenAI) のようにもっと気軽に独⾃データを使いたい ◦ re:Invent で発表されたばかりの Agents for Amazon Bedrock に期待︕︕

Slide 22

Slide 22 text

21 KDDI Agile Development Center Corporation まとめと所感 さあ、みんなも Bedrockしよう︕︕💪

Slide 23

Slide 23 text

22 KDDI Agile Development Center Corporation 最後に宣伝になります URL: https://qiita.com/advent-calendar/2023/kag 本⽇からKAG社のアドベントカレンダーが始まっています︕

Slide 24

Slide 24 text

Be a Change Leader. アジャイルに⼒を与え 共に成⻑し続ける社会を創る