Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
第132回 雲勉【オンライン】春の生成AI祭り
Search
iret.kumoben
April 11, 2024
Technology
1
180
第132回 雲勉【オンライン】春の生成AI祭り
下記、勉強会での資料です。
https://youtu.be/Ok0-qoNmBWQ
iret.kumoben
April 11, 2024
Tweet
Share
More Decks by iret.kumoben
See All by iret.kumoben
第182回 雲勉 【Gemini 3.0 Pro】AI ベンチマーク徹底比較!他モデルに比べ優れている点まとめ
iret
0
26
第181回 雲勉 WEB制作者のちょっとした面倒をAWSで解決!Amazon S3とAWS Lambda活用術
iret
0
38
第180回 雲勉 Abuse report の調査・確認方法について
iret
0
60
第179回 雲勉 AI を活用したサポートデスク業務の改善
iret
0
94
第178回 雲勉 Amazon EKSをオンプレで! Amazon EKS Anywhere 実践構築ガイド
iret
1
64
第177回 雲勉 IdP 移行を楽に!Amazon Cognito でアプリへの影響をゼロにするアイデア
iret
0
72
第176回 雲勉 VPC 間サービス接続を考える!Private Service Connect 入門
iret
0
55
第175回 雲勉 Amazon ECS入門:コンテナ実行の基本を学ぶ
iret
0
85
第174回 雲勉 Google Agentspace × ADK Vertex AI Agent Engineにデプロイしたエージェントを呼び出す
iret
0
130
Other Decks in Technology
See All in Technology
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.5k
「駆動」って言葉、なんかカッコイイ_Mitz
comucal
PRO
0
140
Oracle Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
2
870
善意の活動は、なぜ続かなくなるのか ーふりかえりが"構造を変える判断"になった半年間ー
matsukurou
0
490
あの夜、私たちは「人間」に戻った。 ── 災害ユートピア、贈与、そしてアジャイルの再構築 / 20260108 Hiromitsu Akiba
shift_evolve
PRO
0
640
サラリーマンソフトウェアエンジニアのキャリア
yuheinakasaka
40
19k
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
3
360
First-Principles-of-Scrum
hiranabe
4
2.1k
2026/01/16_実体験から学ぶ 2025年の失敗と対策_Progate Bar
teba_eleven
1
170
産業的変化も組織的変化も乗り越えられるチームへの成長 〜チームの変化から見出す明るい未来〜
kakehashi
PRO
1
690
みんなでAI上手ピーポーになろう! / Let’s All Get AI-Savvy!
kaminashi
0
110
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
62k
Featured
See All Featured
The Limits of Empathy - UXLibs8
cassininazir
1
200
Chasing Engaging Ingredients in Design
codingconduct
0
97
Deep Space Network (abreviated)
tonyrice
0
34
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
2
80
Docker and Python
trallard
47
3.7k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
51k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Abbi's Birthday
coloredviolet
0
4.3k
Between Models and Reality
mayunak
1
170
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
290
KATA
mclloyd
PRO
33
15k
Transcript
第132回 雲勉【オンライン】 春の⽣成AI祭り
話すこと 2 • 自己紹介 • PR • 生成AIを活用すると何ができるか ◦ プロンプトとは
◦ プロンプトの具体例 ◦ プロンプトエンジニアリング • AIが知っていること知らないこと ◦ 自分専用!独自の知見をAIに教えるにはどうしたら良いか ◦ プロンプトへ回答に必要な情報を含める ◦ RAG(Retrieval-Augmented Generation) • さまざまな生成AIモデル(一部紹介) ◦ PaLM2 ◦ Gemini ▪ 読み方について ◦ Claude ▪ Claudeの種類 • AIを検証する方法(一部) ◦ Vertex AI Studio ◦ Vertex AI Workbench + Vertex AI SDK for Python ◦ BigQuery ML • AIを実装する方法(一部) ◦ Vertex AI SDK for Python ◦ LangChain ◦ Semantic Kernel • Slack botを使った具体例 ◦ 具体例1 シンプルにAIと対話する ▪ 構成図 ◦ 具体例2 iret.mediaを検索する ▪ 構成図 ◦ 具体例3 cloudpackの事例ページを検索する ▪ 構成図 ◦ 具体例4 画像に含まれている文字列を検査する ▪ 構成図 • LINE botを使った具体例 ◦ デモ • 実装する上で必要な用語 ◦ チャンクとオーバーラップ ◦ エンべディング • 生成AI利用時の注意点 • まとめ
経歴 • 2022年10月~現在 アイレット株式会社 MSP開発セクション • (2016年~2022年9月)某通信キャリアの子会社 ITスペシャリスト 直近の実績 •
2024年3月 LAPRAS OUTPUT AWARD • 2024年2月 Google Cloud Partner Tech Blog Challenge 2023 Cloud AI/ML部門 github,zenn,Qiita,X(旧Twitter),Facebook@ymd65536 経歴含め自己紹介 3
LAPRAS OUTPUT AWARD 4 LAPRAS株式会社 様からいただいた表彰! 執筆を続けたことが書籍出版や転職のチャンスを引き寄せた Kento.Yamadaさんのアウトプット戦略【LAPRAS OUTPUT AWARD
202401】 受賞インタビュー「Kento.Yamadaさん」
Google Cloud Partner Tech Blog Challenge 2023 Cloud AI/ML部門 5
Google Cloudの魅力を伝える年に一度のブログチャレンジ! 「Google Cloud」と「LINE bot」の2つをテーマにして受賞! 引用:Google Cloud Partner Tech Blog Challenge の 2023 年度受賞者発表
PR 6 コンピュータ・IT部門で1位 アプリケーション部門で1位 Amazon ベストセラー獲得 2023/9/2 発売 AWS認定 高度なネットワーキングー専門知識
(ANS-C01)完全対応テキスト 2024/03/25 発売
7 本編
生成AIを活用すると何ができるか 8 指示(プロンプト)とナレッジを元に新たな情報を生成する! ナレッジ ナレッジ ナレッジ ナレッジ ナレッジ ナレッジ ナレッジ
指示(プロンプト) 回答 たとえば、質問回答やアイデアの壁打ちなどの用途がある。
プロンプトとは 9 生成AIにおいてはAIに対する指示書 命令 コンテキスト 入力データ 出力形式 モデルに実行して欲しいタスク タスクに関する追加の情報、追加の文脈 タスクを実行するための入力データ
どのような種類や形式で出力するか ※タスクの種類によって、プロンプトに含める要素を変更する
プロンプトの具体例 10 より具体的に書くことで良い結果を得られるようになる! 命令 コンテキスト 入力データ 出力形式 Hello Worldのコードを生成してください あなたはPythonのエンジニアです
POSTメソッドのエンドポイント Flaskとして動作可能な形式で あなたはPythonのエンジニアです。Flaskとして動作可能な形式で POSTメソッドのエンドポイントで動作するHello Worldのサンプルコードを書いてください。
プロンプトエンジニアリングとは 11 • 最適な結果を得るために、プロンプト(指示)を設計すること • 最適な結果を効率的に得ることでLLMをより効果的に活用できる 曖昧なプロンプト より適切な回答が得られるプロンプト かしこまりました。 以下は、C言語のサンプルコードです。
Hello Worldのサンプルコードを書いてください あなたはPythonが扱えるエンジニアです。 Pythonで実行できるHello Worldのサンプルコード を書いてください。 かしこまりました。 以下はPythonで動作するサンプルコードです。
AIが知っていること知らないこと 12 学習している範囲でしか回答ができないのでもちろん知らないこともある! ナレッジ ナレッジ ナレッジ ナレッジ ナレッジ ナレッジ ナレッジ
アイレットの資格制度について教えてください。
AIが知っていること知らないこと 13 学習している範囲でしか回答ができないのでもちろん知らないこともある! ナレッジ ナレッジ ナレッジ ナレッジ ナレッジ ナレッジ 学習内容
アイレットの資格制度について教えてください 。 「わかりません!」 資格制度に関する情報がない
AIが知っていること知らないこと 14 知らないことは学習させるか情報を提供してあげる必要がある! ナレッジ ナレッジ ナレッジ ナレッジ ナレッジ ナレッジ 学習内容
アイレットの資格制度について教えてください 。 はい。AWSとGoogle Cloudで制度に関する 記載があります。 (以下略) AWSとGoogle Cloudで いくつか用意があります。
自分専用!独自の知見をAIに教えるにはどうしたら良いか 15 簡易的なやり方:プロンプトに回答に必要な情報を含める より本格的なやり方:RAG
プロンプトへ回答に必要な情報を含める 16 回答に必要な情報を指示(プロンプト)に含めて回答を得る方法 アイレットの資格制度にはAWSとGoogle Cloudで いくつか用意があります。 〜〜〜〜 上記の文脈を踏まえて以下の質問に回答してください。 アイレットの資格制度について教えてください。 AWSとGoogle
Cloud で制度に関する記載が あります。 (以下略)
RAG(Retrieval-Augmented Generation)とは 17 AI専用のナレッジベースをデータベースに持たせて回答を得る方法 アイレットの資格制度について教えてください 。 AWSとGoogle Cloud で制度に関する記載が あります。
(以下略) AWSとGoogle Cloudで いくつか用意があります 。 データベース データベースにアイレットの資格制度を記録しておく。
さまざまな生成AIモデル(一部紹介) 18 今回は3つほど紹介 • PaLM • Gemini • Claude
PaLM2とは 19 • Google が開発したLLMであり、PaLMの後継 • 4種類のモデル:Gecko、Otter、Bison、Unicorn • 25 を超える
Google の製品と機能に搭載 引用元:PaLM 2 のご紹介 https://japan.googleblog.com/2023/05/palm-2.html
Geminiとは 20 • Google DeepMindによって開発されたマルチモーダル大規模言語モデルのファミリー • Ultra、Pro、nanoの3つがある • Duet AIやBardはGeminiという名前に統一されている
• Gemini の由来は Core Contributors 6 人の頭文字 画像引用元: 創造力や生産性を高めましょう https://gemini.google.com/?hl=ja 引用元: Gemini: A Family of Highly Capable Multimodal Models https://storage.googleapis.com/deepmind-media/gemini/gemini_1_report.pdf
「Gemini」の読み方 21 Googleの公式見解では「ジェミニ」 英語圏では「ジェミナイ」と呼ぶ人が多いようです。※ なお、本編では「ジェミニ」という呼び方で統一しております。 ※英語圏に住む知人に聞きました。
Claudeとは 22 • Anthropic社によって開発された大規模な言語モデルのファミリー • Amazon BedrockやVertex AIで提供 主な特徴 •
長文の扱いに長けている • 種類が豊富(次スライドで時系列とともに紹介) Claude ¥ Anthropic:https://www.anthropic.com/claude
Claudeの種類 23 Claude 1.3 Claude Instant Claude 2 Claude 3
Opus Haiku Sonnet 2023年3月14日 2023年7月11日 2024年3月4日 ※Claude Instant:比較的軽量かつ安価に利用できるようにしたClaude ※2024年3月7日:Google Cloud Vertex AI に Anthropic の Claude 3 モデルが登場
AIを検証する方法(一部) 24 生成AIアプリケーションを作る前に役立つサービスを紹介! • Vertex AI Studio • Vertex AI
Workbench • BigQuery ML
Vertex AI Studioとは 25 旧称 Generative AI Studio、Google Cloudで手軽にAIを体験できるサービス 主な特徴
• AIがまとめられているサービス • さまざまなAIモデルのプレイグラウンド • AIを調整しながらプロンプトを試せる • コードを書かなくてもよい
Vertex AI Workbench 26 Google Cloud上でJupyterLabを利用できるサービス 主な特徴 • Google Cloudの認証/認可を使ってGoogle
Cloudのサービスに対して手軽に接続できる • Google Cloud StorageやBigQueryと連携できる • Git連携 ※JupyterLab:ノートブックという単位でスクリプトおよびプログラムを実行できる環境
BigQuery ML 27 BigQueryからSQLを実行してVertex AIのAIモデルを呼び出す! 最大の特徴 • BigQueryにあるデータセットを使いつつ、AIモデルを呼び出せる! • SQLで完結するため、SDKを使わなくてもRAGの検証ができる!
※Vertex AIへのリモートエンドポイント(コネクション)を構築する必要があります。
AIを実装する方法(一部) 28 Google CloudとSlack BoltまたはLINE botを使って具体例を紹介します! 紹介するフレームワーク・SDK • Vertex AI
SDK for Python • LangChain • 補足:Semantic Kernel
Vertex AI SDK for Python 29 Google Cloudで提供されているVertex AI用の開発キット 主な特徴
• Google Cloud公式が提供するSDK • 公式ドキュメントが詳細に書かれている • 数行記述するだけでVertex AIのAPIを利用できる ※なお、パッケージ名にpreviewとあるものはプレビュー版の機能であるため 利用には注意が必要です。
LangChain 30 LLMモデルを提供している複数のサービスで利用可能なフレームワーク! 主な特徴 • Azure、AWS、Google Cloudなどで提供しているLLMを手軽に呼び出せる ◦ 呼び出すモデル名などを少し変えるだけで他のクラウドサービスにも対応できる •
「Chain」という仕組みを使うことでLLMに対し、さまざまな呼び出しができる • RAGも容易に表現できる
Semantic Kernel 31 Microsoftが提供するLLMアプケーションを開発するためのフレームワーク 主な特徴 • Azure Open AIやOpen AIを操作するためのフレームワーク
• .NETアプリケーションとの強力なコラボレーション 触ってみたい方はzennでブログを書いていますので試していただけますと幸いです。 https://zenn.dev/ymd65536/articles/semantic_kernel_v101_handson
Slack botを使った具体例 32 実際に作成したものをいくつか紹介します!(Geminiを利用) • 具体例1:シンプルにAIと対話する • 具体例2:iret.mediaを検索する • 具体例3:cloudpackの事例ページを検索する
• 具体例4:画像に含まれている文字列を検査する
具体例1 シンプルにAIと対話する 33
具体例1 シンプルにAIと対話する 34 回答に必要な情報を与えない 右のように「山田顕人」を知らない。 また、わからないことを「わからない」と言うように 指示を受けていないので間違えた情報を返します。
具体例1 シンプルにAIと対話する 35 回答に必要な情報を与える 👈左のように質問をすると 上記のような回答を返します。
具体例1 シンプルにAIと対話する(構成図) 36
具体例2 iret.mediaを検索する 37 iret.mediaの内容を元に応答を取得する。 参照したリンク:アイレット広報通信2月号 👈左のように質問をすると 上記のような回答を返します。
具体例2 iret.mediaを検索する(構成図) 38
具体例3 cloudpackの事例ページを検索する 39 特定のサービスで事例を検索して要約する。 上記のように質問すると 右のような回答を返します。
具体例3 cloudpackの事例ページを検索する(構成図) 40
具体例4 画像に含まれている文字列を検査する 41 画像をチェックして秘匿情報が含まれていないかチェックする 上記のように画像を添付すると右のような回答を返します。 ※iret.mediaで紹介しています:https://iret.media/94023
具体例4 画像に含まれている文字列を検査する(構成図) 42
LINE botのデモ 43
LINE botを使った具体例(構成図) 44
補足:LINE botの作り方 45 zenn に作り方を載せているので興味のある方は覗いてみてください! [RAG]最近読んだ本を教えてくれるLINE botをGemini Proを使って作成してみた https://zenn.dev/ymd65536/articles/recently_read_books_bot
実装する上で必要な知識 46 おさえておくと実装が捗る用語 • チャンク • オーバーラップ • エンべディング
チャンクとオーバーラップ 47 文字列の分割する:チャンク、分割した文字列のつなぎ目を作る:オーバーラップ 文章を分割(チャンク)するだけだと、分割した文章同士の文脈を補完できない。 チャンクした文章毎に文章の一部を足して文脈を補完(オーバーラップ)する必要がある。 文章A 文章B 文章C 文章A 文章Bの冒
頭 文章Aの冒 頭文章B 文章Bの冒 頭 文章C 文 章 チャンク オーバラップ
エンべディング 48 入力した文章をAIが理解できるようにするための変換処理 文章A 文章B 文章C 文章A 文章Bの冒 頭 文章Aの冒
頭文章B 文章Bの冒 頭 文章C チャンク オーバラップ 文 章 ベクトル エンべディング 原則としてAIは人間の書いた文字列を数値でしか認識できない。 よって文字列を読み取れる数値、ベクトル値として変換する必要がある。
生成AI利用時の注意点 49 コストやセキュリティは大事だけども、ここではもう少し視野を広げて。。。 生成AIを扱ううえではクラウドネイティブ特有の問題だけでなく、さまざまな問題に直面します。 具体的には以下の問題です。 • 著作権の問題 ◦ 例)許可なく他人の著作物をAIに学習させて、類似の作品などを生成して販売するなどの行為 ▪
※AIと著作権(文化庁): https://www.bunka.go.jp/seisaku/chosakuken/pdf/93903601_01.pdf ◦ ※詳しくは法律の専門家に聞くようにしてください • 道徳や倫理に反するものを生成してしまう問題 ◦ 例)暴力的、性差別的、人種差別的などの表現をするという危険性 • 事実無根の回答を生成してしまう問題 ◦ 例)山田顕人はどんな人物か 回答:山田顕人は1990年9月13日生まれ、端正な顔立ちと高い演技力で知られる有名な俳優である 。
まとめ 50 今回は春の生成AI祭り • AIを使えば、指示(プロンプト)と多くのナレッジを元に新たな情報を生成できる ◦ ただし、わからないことは「わからない」と返すようにお願いしないとデタラメな内容を回答するよ! ◦ 指示(プロンプト)をしっかり書かないといけないよ! •
知らない情報について質問する ◦ プロンプトに質問に関連する情報を渡すかもしくはRAGを構成すると回答してくれるようになるよ! • AIアプリケーションを構築する際に便利なフレームワークが複数存在する ◦ LangChainやVertex AI SDK for Pythonを使った具体例をいくつか見たよ! • 実装に必要な用語がある ◦ チャンクやオーバーラップ、エンべディングがあるよ! • 生成AIの利用には注意点がある ◦ 法律や倫理に気をつけつつ、根拠のある回答を得られるように工夫する必要があるよ!
51 おわり