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
Azure OpenAIを使用したChatGPTもどきを作るためのIaCとDevOps環境を作...
Search
SoftBank Tech Night
July 28, 2023
Technology
1
2.1k
Azure OpenAIを使用したChatGPTもどきを作るためのIaCとDevOps環境を作ってみた
SoftBank Tech Night
July 28, 2023
Tweet
Share
More Decks by SoftBank Tech Night
See All by SoftBank Tech Night
ソフトバンク流!プラットフォームエンジニアリング実現へのアプローチ
sbtechnight
1
230
"作る"から"使われる"へ:Backstage 活用の現在地
sbtechnight
0
230
AIファーストを前提とした開発スタイルの変化
sbtechnight
0
340
ソフトバンクのネットワーク基盤を支えるSRv6 のこれまでとこれから
sbtechnight
0
1.3k
生成AI と Microsoft Power Apps を活用したとにかく早く PoC を回す環境の検討
sbtechnight
1
1.5k
生成AI離れを防ぐ、組織定着化のヒント
sbtechnight
11
7.8k
Blockchain/Web3 Walletの技術動向について
sbtechnight
0
920
GPT3.5以降に性能がアップした理由に関する理論ほか
sbtechnight
3
2.1k
GPT 回答精度を上げるアプローチ
sbtechnight
5
8.5k
Other Decks in Technology
See All in Technology
AWS CDK「読めるけど書けない」を脱却するファーストステップ
smt7174
3
210
It’s “Time” to use Temporal
sajikix
3
240
生成AI活用でQAエンジニアにどのような仕事が生まれるか/Support Required of QA Engineers for Generative AI
goyoki
1
340
20260323_データ分析基盤でGeminiを使う話
1210yuichi0
0
130
スピンアウト講座05_実践活用事例
overflowinc
0
260
CyberAgentの生成AI戦略 〜変わるものと変わらないもの〜
katayan
0
280
会社紹介資料 / Sansan Company Profile
sansan33
PRO
16
410k
AgentCoreとLINEを使った飲食店おすすめアプリを作ってみた
yakumo
2
110
品質を経営にどう語るか #jassttokyo / Communicating the Strategic Value of Quality to Executive Leadership
kyonmm
PRO
2
920
【Λ(らむだ)】最近のアプデ情報 / RPALT20260318
lambda
0
130
Tebiki Engineering Team Deck
tebiki
0
27k
楽しく学ぼう!ネットワーク入門
shotashiratori
1
500
Featured
See All Featured
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
43k
Docker and Python
trallard
47
3.8k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
140
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
GraphQLの誤解/rethinking-graphql
sonatard
75
11k
Claude Code のすすめ
schroneko
67
220k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
Producing Creativity
orderedlist
PRO
348
40k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
130
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
Bash Introduction
62gerente
615
210k
Transcript
Azure OpenAIを使用した ChatGPTもどきを作るためのIaCとDevOps SoftBank テクノロジーユニット 共通プラットフォーム開発本部 宮田 銀河 1 2023年
7月29日
【経験】 • インフラのコード化・デプロイの自動化 • Webアプリ開発 (フロント・サーバ) • 2023 AWS Jr.
Champion & All Certifications Engineer 自己紹介: 宮田 銀河 2 合格した資格 (22コ) AWS12冠
今回の発表内容 ↑話しません 3 生成AIの詳しい 仕組み 【Azure】 生成AIアプリの デプロイ自動化 メイン
Azure OpenAIを使用した ChatGPTもどきを作るためのIaCとDevOps 4
Azure OpenAIを使用した ChatGPTもどき?を作るためのIaCとDevOps 5
ChatGPTもどきのデモ動画 (資料の構成案) 6
7 ChatGPTもどきのデモ動画 (車の画像)
「え? ChatGPTで良くない?」 と思った方へ 8
Azure OpenAI: GPT-3.5 (ChatGPTと同じ) がAzure上で使え、 可用性・セキュリテイ・監視が優れている ChatGPT と Azure OpenAIの比較
9 提供会社 ChatGPT Azure OpenAI 使えるモデル • GPT-4 • GPT-3.5 • DALL-E • GPT-4 • GPT-3.5 • DALL-E 可用性 • SLAなし • SLA99.9% セキュリティ • 閉域接続が不可 • 閉域接続が可能 監視 • 独自に監視設定が必要 • ログ・メトリックの監視 2023/07/21時点
提供会社 Azure OpenAI 可用性 • SLA99.9% セキュリティ • 閉域接続が可能 監視
• ログ・メトリックの監視 顧客 顧客 顧客 顧客 顧客 顧客 生成AIを • いつでも自由に使いたい • セキュアな環境で使いたい • どのくらい使われているかを知りたい 上記を満たす ChatGPTを使いたい Azure OpenAIを使いたい理由 10 →Azure OpenAIの活用が不可欠
Azure OpenAIを迅速に構築/検証できるサービス (SoftBankの法人サービス) 参考URL 11 本サービスの提供に、IaCとDevOpsが不可欠だった
Azure OpenAIを使用した ChatGPTもどきを作るためのIaCとDevOps 12
以下リソースが作成される IaC = Infrastructure as Code (インフラのコード化) 13 コマンド実行 Virtual
Network Azure OpenAI Service IaC (Terraform)のコード
数個のコマンドを実行するだけで、環境の構築が可能 →誰でも迅速にデプロイ可能 & 手作業のミスが減る IaCを導入するメリット 14 Azure環境 Terraform デプロイ Virtual
Network Azure OpenAI Service Network Security Group Network Security Group App Service Private Endpoin Private DNS 作業者
Azure OpenAIを使用した ChatGPTもどきを作るためのIaCとDevOps 15
DevOps: 開発(Dev)と運用(Ops)を支援する仕組み 開発者と運用者がスムーズに開発〜運用可能 →システムの価値を継続的に向上できる 16 DevOpsの要素である”デプロイの自動化”をメインで説明
今回作成した インフラの自動デプロイの仕組み 17
インフラの自動デプロイの流れ • 人の仕事はTFファイルの準備 & 承認だけ • インフラを迅速にデプロイ可能 18 作業者 GitHubにTFファイルをpush、PR作成
PRを承認し、マージする terraform plan terraform apply (約10分) 承認 TFファイル TFファイルを準備 自動 自動
デプロイ自動化 → 顧客にも素早く展開が可能 19 顧客B 顧客C 顧客A 作業者 TFファイル 検証環境
今回作成した Chatアプリの自動デプロイの仕組み 20
Chatアプリの自動デプロイの流れ • 人の仕事はコーディング&ブランチ作成だけ • 静的解析/E2Eテスト→コード品質を高く保てる • URLをクリックするだけで動作確認可能 21 GitHubに検証ブランチを作成する E2Eテストが実行される
静的解析が実行される 検証環境がデプロイされる App Service 検証環境 (デプロイスロット) 検証ブランチ 自動
この仕組みが”ない”と、PRレビューが遅くなる (参考) 22 開発者A 開発者B
この仕組みが”ある”と、PRレビューが速くなる 23 開発者A 開発者B
24 Azure OpenAIを使用した ChatGPTもどきを作るためのIaCとDevOps の作成過程で困ったこと
Azure OpenAIが最新サービスなので、サンプルコードが見つからない →ChatGPTに生成させたコードや試行錯誤で作ったコードでは、 Private Endpointの名前解決ができず... (ちなみに、手作業で作ると名前解決可能 ) IaC導入時の困りごと: サンプルコードがない 25
Azure環境 Virtual Network Azure OpenAI Service Network Security Group Network Security Group App Service Private Endpoin Private DNS
足りなかったコード 解決方法: terraform -generate-config-outを使う (2023年6月) terraformのv1.5から、既存リソースをコード化できるように → 手作業で作成した既存リソースから、コードを生成可能に。 26 generate-
config-out 既存リソース TFコード
Private Endpointの名前解決のフロー (例) Virtual Network linkがないと、③のアクセスができない。 →Clientから Private IPが取得できない (参考URL)
27
まとめ • IaCとDevOps導入により、Chatアプリを迅速にデプロイ可能に • IaC導入時の課題: 最新サービスのためにサンプルコードがない ◦ 手作業でリソースを作成して、-generate-config-outでコード作成が有効。 28 スターターパッケージ
は、 本資料で説明したIaCとDevOpsを利用しています