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
Chat Completions APIにおける実行時間の検証
Search
natsuume
July 28, 2023
Technology
0
280
Chat Completions APIにおける実行時間の検証
第2回 AI/ML Tech Night発表資料
https://opt.connpass.com/event/287568/
natsuume
July 28, 2023
Tweet
Share
More Decks by natsuume
See All by natsuume
5W1H ~LLM活用プロジェクトを推進するうえで考えるべきこと~
natsuume
0
130
LLM API活用における業務要件の検討
natsuume
0
120
自然言語処理基礎の基礎
natsuume
0
72
5分ですこしわかった気になる Deep Learning概要
natsuume
0
28
ChatGPT / OpenAI API実用入門
natsuume
0
130
Other Decks in Technology
See All in Technology
経営視点から捉えた開発生産性 / Development productivity from a management perspective
kyuns
10
4.9k
工場IoTを実現するClassmethod PLC Data to Cloudのご紹介 | DevelopersIO 2024 福岡
cmakky
0
210
[Breizh Camp 2024] L’open-source n’est pas (déjà) mort
abrianceau
0
160
「開発生産性を上げる改善」って儲かるの?に答えられるようにする / Is development productivity profitable?
i35_267
22
11k
[ABC2024Summer]Flutter UX Improvements + α
korodroid
0
320
Oracle Base Database Service:サービス概要のご紹介
oracle4engineer
PRO
0
11k
RAGだけじゃない! 古くて新しいベクトル検索の世界 | DevelopersIO 2024 福岡
quiver
3
700
”AWS CDKを選定しなかった理由”から見るCDKの現在地
watany
0
590
はてなのチーム開発一巡り / Hatena Engineer Seminar 30
daiksy
0
320
20240626_PLATEAU_AWARD説明会
nokonoko1203
0
210
AWSアーキテクチャ図をスマートに描く方法をいろいろ試してみた
kiku3
0
190
全社的な生成AI活用プラットフォームとしての Difyの導入事例紹介
tokita_kakaku
13
11k
Featured
See All Featured
Writing Fast Ruby
sferik
623
60k
4 Signs Your Business is Dying
shpigford
177
21k
Large-scale JavaScript Application Architecture
addyosmani
506
110k
Docker and Python
trallard
36
2.8k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
Creatively Recalculating Your Daily Design Routine
revolveconf
213
11k
Automating Front-end Workflow
addyosmani
1361
200k
Happy Clients
brianwarren
94
6.5k
How To Stay Up To Date on Web Technology
chriscoyier
784
250k
VelocityConf: Rendering Performance Case Studies
addyosmani
321
23k
Scaling GitHub
holman
457
140k
What the flash - Photography Introduction
edds
64
11k
Transcript
Chat Completions API における実行時間の検証 2023/07/28 第2回 AI/ML Tech Night
自己紹介 natsuume (Twitter: @_natsuume) 所属:株式会社オプト - NLPer → LLM・アプリケーションエンジニア -
最近やっていること: https://tech-magazine.opt.ne.jp/entry/2023/06/23/144625
Function Calling - GPT-3.5-turbo-0613, GPT-4-0613モデルから利用可能になった機能 - 事前に定義したJSONスキーマの形式で返答が返ってくる機能 - 従来よりも簡単に出力の制御が可能になった -
色々な検証にも使える Function Callingを使って実行時間の検証してみる
検証方法 例(入力トークン数と実行時間の検証) - 右のようなFunctionを用いて、入力テキストに 関わらず出力内容を固定 - 他の実験でも同様
入力トークン数と実行時間 - 実験トークン数 - 50 - 100 - 500 -
1000 - 実験回数 - 各100回 - 中央値
出力トークン数と実行時間 - 実験トークン数 - 10 - 50 - 100 -
実験回数 - 各50回 - 中央値
出力数nと実行時間 - 出力トークン数を固定し、nを変化させたときの実行時間の変化 - 例:出力トークン数: 100 - n=1(100×1) - n=2(50×2)
- n=10(10×10) - n=1における単位出力トークンは先程の実験と同様に10, 50, 100の3パターン - 合計の出力トークン数は次の4パターン - 50(10×5, 50×1) - 100(10×10, 50×2, 100×1) - 500(10×50, 50×10, 100×5) - 1000(10×100, 50×20, 100×10) - 試行回数はn=1の場合は前述の実験データを利用、それ以外は各10回
合計出力トークンあたりの生成数nに対する実行時間 - 合計出力トークン数が 同じでもn=1で出力す る場合のほうが実行 時間が長い - 中央値 - GPT-3.5-Turbo
- GPT-4でも傾向は同じ
nに対する実行時間の推移 - nを増やしても実行時 間は変化なし~微増 - 中央値 - GPT-3.5-Turbo - GPT-4でも傾向は同じ
検証を通して気づいたFunction Callingの所感 - Function Callingとはいえ、本質的にはGPTアーキテクチャのモデル - 100%完全に出力を制御できるわけではない - 心なしかGPT-3.5-TurboよりもGPT-4のほうがFunction Callingの結果壊れやすい
感じがある - 定型文を返すfunction定義などGPT-3.5-Turboは愚直に定義した内容を返してくれることが多い が、GPT-4はdescriptionをよろしく解釈してしまうので壊れることがある印象 - プロンプトインジェクションの余地がある - Function Callingだから、と油断して出力をチェックせずに DB等に流すのは危険
まとめ - 入力トークン - 実行時間への影響はなさそう - 出力トークン - トークン数に応じて(おおよそ)線形に実行時間が増加する -
トークン数あたりの増加量は GPT-3.5-Turboに対してGPT-4は2~2.5倍程度 - 生成数N - 出力トークン数の合計が同じでも単位生成あたりのトークン数が少ない方が高速 - 例:実行時間は 1000 × 1 > 100 × 10 > 10 × 100 の関係 - 複数候補を生成するような用途の場合、生成数 nパラメータの利用を積極的に検討する価値があり そう