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
会話を分析するAIアシスタントの実装 (Unity × OpenAI API × AWS)
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Dara / Shidara Kota
July 05, 2023
Technology
160
0
Share
会話を分析するAIアシスタントの実装 (Unity × OpenAI API × AWS)
「XRでこんなのつくったよ選手権 + MeetUp」
https://flamers.connpass.com/event/287120/
で発表した内容です。
Dara / Shidara Kota
July 05, 2023
More Decks by Dara / Shidara Kota
See All by Dara / Shidara Kota
CA.unity#7 Windows/Macの証明書の取得と、署名済みインストーラーを作成するビルドプロセスの紹介
dara_dara
0
2k
Zip配布の卒業 インストーラーはいいぞ!
dara_dara
0
54
ビジネスサイドでもわかる ドメイン駆動設計とは?
dara_dara
0
150
素早いリリースと自身のCTO化を実現した爆速成長サイクルを振り返る
dara_dara
0
270
初心者必見!Unityを用いた、cluster worldと自作VRアプリの作り方
dara_dara
0
79
日常と照らし合わせて理解するSOLID原則
dara_dara
0
200
VRMアバターのキャリブレーションや表情設定とマルチプレイ同期
dara_dara
0
260
Other Decks in Technology
See All in Technology
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.5k
論文紹介:Pixal3D (SIGGRAPH 2026)
tenten0727
0
690
続 運用改善、不都合な真実 〜 物理制約のない運用改善はほとんど無価値 / 20260518-ssmjp-kaizen-no-value-without-physical-constraints
opelab
3
330
権限管理設計を完全に理解した
rsugi
1
180
AI時代に改めて考える、ドメイン駆動設計 - モデリングが「AIへの共通言語」になる
littlehands
6
1.2k
エムスリーテクノロジーズ株式会社 エンジニア向け紹介資料 / M3 Technologies Company Deck
m3_engineering
0
220
「使われるデータ基盤」を目指してデータアナリストとワークショップをやった話
jackojacko_
2
710
Python開発環境にハーネス適用を検討する
yuuka51
1
430
データ分析基盤の信頼を支える視点と設計
yuki_saito
1
580
社内RAGの導入で気を付けたポイント
yakumo
2
150
インプロセスQAのための要因から捉えるプロジェクトリスクマネジメントnano #1 開発リソース効率状態への対処 #jasstnano
barus_qa
0
230
Copilot CLI・IDE・Web・スマホで途切れない開発フローを目指して / One Copilot flow - CLI IDE Web Mobile
aeonpeople
1
540
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.4k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
530
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.6k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
Technical Leadership for Architectural Decision Making
baasie
3
370
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Typedesign – Prime Four
hannesfritz
42
3k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
280
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
Designing for Performance
lara
611
70k
Transcript
会話を分析するAIアシスタント の実装 (Unity × OpenAI API × AWS) Flamers, Inc.
/ CTO だーら(設楽広太)
自己紹介 だーら / 設楽広太 @3tdara Flamers共同創業者CTO Unity / C# /
Rails / AWSなど 恋愛メタバース Memoria 最近曲を出しました、3曲目
作った(りたい)もの そうですね、僕の好きな食べ物はグミになります。 グミの中 でも特にハード系のグミが好きで、 例えば忍者飯であった り、あとはシュギキックスですね。 両方とも結構硬くて、... この人が理想とする恋愛相手の条件は以下のとおりです。 1. 酸っぱいものが好きな人
この人は、ブドウジュースやザクロジュースやアセロラジュ ースなど、甘いだけでなく酸っぱみもあるジュースが好きだ と言っています。そのため、恋愛相手も同じように酸っぱい ものが好きであることが望まれます。 2. 頑張っている人 この人は、保育園の頃からグミ好きだと話していま../ 文字起こし 分析
メタバースで過ごすだけで、 ・自分によりマッチした人が紹介さ れる(アルゴリズム) ・自分のことが分かる(診断)
最初に思いついた設計 Whisper API 文字起こし ChatGPT API 分析 ① ② ③
④
最初に思いついた設計 Whisper API 文字起こし ChatGPT API 分析 ① ② ③
④ aws_access_key aws_secret_key ↑これらをクライアントに渡したくない!
サーバーのみが 認証情報を持つようにしたい
公式ドキュメント
サーバーからクライアントに対して、 ・一時的に署名されたURLを渡す ・有効期限が切れると使用不可能になる
① aws_access_key aws_secret_key 認証を考えた設計 ② ③ あとは同じ
↓実装はこれだけ!(Ruby) まあ多少は認証部分などはコード書 くけど、簡単! (gem使います) gem 'aws-sdk-s3', '~> 1'
有効期限が切れたら UnityWebRequestException: HTTP/1.1 403 Forbidden <?xml version="1.0" encoding="UTF-8"?> <Error><Code>AccessDenied</Code> <Message>Request
has expired</Message>... ちゃんとアクセスできません!
ちなみにUnityの実装
録音開始 AudioClip型のインスタンス変数に格納 _recordedClip = Microphone.Start(デバイス名、時間、周波数) 録音終了 Microphone.End() wavに変換 wav変換用クラスはライブラリ利用 byte[]
recordWavData = WavConverter.ToWav(_recordedClip); tmpストレージに保存 S3アップロード UnityWebRequestで普通に上げる(aws用の独自SDKなどは不要だった) tmpを削除 OnDestroyなどのタイミングでtmpに保存したオーディオデータを削除
メモリについて tmpファイルとして書き込むまで、メモリに記憶している 30分の録音で38MBほど サンプリング周波数が大きく影響する。 今回は11025、デフォルトは44100 書き起こしできれば良いので音質は気にしない ↓Profiler (Memory)のScene Memoryの部分
メタバースならではの体験づくりを