「この嘘つき!」とならないための生成AIとの付き合い方

140 Views

May 30, 25

スライド概要

2025年5月30日 Shima Tech Hub #11
https://shima-tech-hub.connpass.com/event/354387/

profile-image

アールスリーインスティテュートは、kintoneを中心とした クラウドサービスを活用することで お客様の継続的な業務改善をサポートします。

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

(ダウンロード不可)

関連スライド

各ページのテキスト
1.

「この嘘つき!」 とならないための 生成AIとの付き合い方 2025/05/30 Shima Tech Hub #11 アールスリーインスティテュート 西島 www.r3it.com

2.

こんにちは! アールスリーインスティテュート サービスグループ gusukuユニット デベロップメントチーム マネージャー 西島 幸一郎 @k_nishijima #しまてく ハッカーズチャンプルーのなかのひと https://hackers-champloo.org/ www.r3it.com

3.

アールスリーインスティテュート システムの受託開発と 法人向けSaaSの二本立て 創業 社員数 拠点 2000年 47名 大阪 10億 東京 沖縄 みんなの家 年商 以上 www.r3it.com

4.

琉球ゴールデンキングスのパートナーです 2024-25シーズンは天皇杯・西地区優勝の2冠でした! ファイナルは最後はあと一歩届かなかったけど、 準優勝おめでとうございます! www.r3it.com

5.

本日のお題 「この嘘つき!」 とならないための 生成AIとの付き合い方 www.r3it.com

6.

こんなこと、ありませんか?(Y/n) ● おれ:これこれこのコードを書いて ● AIさま〜:へい、おまち ● おれ:おい、嘘つくな、間違ってるわ!😠 www.r3it.com

7.

世界を席巻してる AI🤖に頼んだのに 何故こうなるのか www.r3it.com

8.

間違ったり、間違えなかったりの例 ● 実装計画を書いてないから、そうなるよね ○ まぁそうなんですが...。それを整備する時間とタイムリミットまでの時間は常に天秤 ● 誰かが過去書いたコードは間違いが少ない ○ 数学的な問題を解いたり、AI驚き屋さんがよく使うTODOアプリとか、ゲームとか ● ドキュメントが非常に充実している枯れたAPI/SDKも良好 ○ 例えば決済サービスのStripeとか https://docs.stripe.com/api ● アップデートが非常に早いものは、辛い ○ ○ 例えばひじょ〜〜〜〜にリリースの早いAWS SDKやCDK 「昨日出たあの機能をCDKで書いて」というのは大体コケる www.r3it.com

9.

うまく行く具体例 > Stripe APIを使ったNode.jsで、デフォルトの決済手段が設 定されていない顧客一覧を抽出するコードを書いて。顧客の 情報を出力する際にはメタデータを含めて出力して。 ● 誰が書いても変わらないような、これくらいのコードは何 もしなくても1発で書ける。 ○ なのでこの手の使い捨てっぽいコードは、人間が書くよりも生成AIを使ったほうが早くて安い www.r3it.com

10.

問題が起こる具体例 ● 今日(today = 2025/05/23 JST)リリースされた AnthropicのClaude Sonnet 4をBedrockから使う、とか ● QさんAWSの専門家だろ、頼むわ! (Amazon Q Developer for CLI) www.r3it.com

11.
[beta]
問題が起こる具体例
> BedRockでClaude Sonnet 4を呼び出すサンプルコードをTypeScriptで書いて
🛠 Using tool: fs_write
⋮<途中省略>
+

36:

// モデル呼び出しコマンドの作成

+

37:

const command = new InvokeModelCommand({

+

38:

modelId: "anthropic.claude-3-sonnet-20240229-v1:0",

+

39:

body: JSON.stringify(request),

+

40:

contentType: "application/json",

+

41:

accept: "application/json",

+

42:

});

※残念、モデルIDが間違っている(知らないから当然だが嘘をつくな!)
www.r3it.com

12.

さて、どうしますか? www.r3it.com

13.

対処方法は普遍の真理 とりあえずソース読め www.r3it.com

14.

対処方法:【とりあえずソース読め】 ● 基本的には、なんとかして最新のソースを読ませる形になる ○ アプローチとしてはChatGPTのDeep Researchのような考え方 ● QさんはAWSの専門家なので、権限があれば自前で調べに行ける ● ローカルに参照用のソースを置いて、それを読ませるのでも良い ↑これは結構安価でわりと効果が高いのでお試しを ● 自前のMCPサーバであれこれやってもいいよ! www.r3it.com

15.

Qさん頑張るの図:失敗のケース > BedRockで使用するClaude 4 SonnetのモデルIDを調べて (権限を付けていない場合) AWS CLIの認証情報が設定されていないようです。代わりにAWS Bedrock の公式ドキュメントに基づいて正しいモデルIDを確認します。 Claude 4 Sonnetの正しいモデルIDは anthropic.claude-3-5-sonnet-20240620-v1:0 です。Claude 3ではなく Claude 3.5が最新のSonnetモデルとなっています。 ※残念、嘘をつくな。君は知らないだろうが、ドキュメントは古いことも多いよ! (日本語だからかもしれない、未検証) www.r3it.com

16.

Qさん頑張るの図:成功のケース > BedRockで使用するClaude 4 SonnetのモデルIDを調べて Claude 4 Sonnetのモデル ID を調べるために、AWS Bedrock のモデル情報を確認します。 🛠 Using tool: use_aws (trusted) ⋮ ● Running aws cli command: Service name: bedrock Operation name: list-foundation-models Parameters: Profile name: default Region: us-east-1 Label: List Bedrock foundation models ⋮ ● Completed in 1.780s AWS Bedrock で使用できる Claude 4 Sonnet のモデル ID を確認しました。結果から、Claude 4 Sonnet のモデル ID は 以下になります: anthropic.claude-sonnet-4-20250514-v1:0 ※正しいモデルIDが取れました。Qさん頑張りました🎉 www.r3it.com

17.

参照して欲しいソースを置く方法 > rds serverless v2でレジュームまでの時間をCDKで設定できますか。 TypeScriptでの実装例を含めて教えてください。 なお、最新のCDKのソースはaws-cdkディレクトリ以下にありますので、 必ずこの実装を参照し、正しいプロパティやメソッドを含んだ実装例を示 してください。 必要ならcdk.custom_resources.AwsCustomResourceを使って設定を行っ てください。 ※AWS CDKのソースをチェックアウトしておいてローカルに置 き、かつカスタムリソースを書け、とまで指示すると、だいた い何でも出来るので行けることが多い。だいたいですが🤣 www.r3it.com

18.

ということで、まとめ よりよい 生成AI調教師に なりましょう👍 www.r3it.com

19.

おわり www.r3it.com