軽量LLMのAPI比較【AIVtuber・AIキャラクター用途】
AIVtuberシロハナちゃんの開発プロデュースをしているyukiです。
この記事では軽量LLMモデル、GPT-4o-mini、Gemini 1.5 Flash、Claude 3.5 Haikuの比較をしています。
特にAIVtuberやAIキャラクター用途での比較となっており、実際にAIVtuberに各AIモデルをAPIで搭載して配信を行ってログを取得しました。
ぜひ、AIキャラクターのLLMで何を使えばいいのか迷っている方などの参考になれば幸いです。
また、動画形式でも本記事の内容を解説しています。
※この記事は2024/11/9時点のものなので今後変更があるかもしれないですのでご了承ください
各LLM APIの概要
まずはそれぞれのLLMについて概要をまとめておきます。
主に現時点の各API料金内容やコンテキストウィンドウ、プロンプトキャッシュなど。
GPT-4o-mini
OpenAIが提供(詳細)
API料金:入力100万トークンあたり$0.15、出力100万トークンあたり$0.60
コンテキストウィンドウ:128,000 tokens
プロンプトキャッシュ:1024トークン以上で自動的に適用
Gemini 1.5 Flash
Googleが提供(詳細)
API料金(128,000トークン以下):入力100万トークンあたり$0.075、出力100万トークンあたり$0.30
API料金(128,000トークンを超える場合):入力100万トークンあたり$0.15、出力100万トークン$0.60
コンテキストウィンドウ:1,000,000 tokens
プロンプトキャッシュ:32,768トークン以上から利用可能
Claude 3.5 Haiku
Anthropicが提供(詳細)
API料金:入力100万トークンあたり$1、出力100万トークンあたり$5
コンテキストウィンドウ:200,000 tokens
プロンプトキャッシュ:最低2,048トークン以上から利用可能
比較検証の方法
では、実際に比較検証した内容を記載します。
実施した内容としては、AIVtuber配信で各AIモデルを30分ごとに切り替えて、その会話履歴や生成速度をログ取得した形となっています。
リスナーのコメント内容などによりそれぞれに差異がある点はご了承ください。ただ、30分間沈黙がほぼなく話していたことは共通です。
システムプロンプト(キャラ設定)は全て固定で1800文字程度となっており、キャッシュは以下のようになっています。
GPT-4o-mini:自動的にキャッシュされる
Gemini 1.5 Flash(002):キャッシュなし(32,768トークン以上から利用可能のため)
Claude 3.5 Haiku:キャッシュなし(システムプロンプトが2,048トークンに届かなかったため→Sonnetと勘違いしてた)
回答内容の比較
まずは会話履歴から会話内容の比較を行います。
ChatGPTに会話履歴とシステムプロンプトを渡して、その内容をもとに分析してもらいます。
ただ、AIモデルの名前がそのまま会話履歴にあるとGPTが贔屓される気もするのでGPT=①,Gemini=②,Claude=③に置換して行います。
これである程度は公平になるはずですが、AIにお任せですし内容も違うので参考程度に考えてもらえると幸いです。あとで私の主観も共有します。
## GPTに渡す分析用のプロンプト
AIVtuber配信で①、②、③のAIモデルの比較を行いました。
system_prompt.txtはキャラクターの設定。 conversation_log.txt1,2,3は各モデルの会話履歴。
以下の評価項目で比較を行ってください。
また、それらを視覚的に分かりやすいように表で評価をまとめてください。
発話や返答の自然さ - 会話がスムーズで、違和感なく自然に進んでいるか。
キャラクター設定の再現 - 設定された人格や口調が一貫して守られているか。
感情表現やユニークさ - ユーザーの感情に共感し、独自の魅力や個性が表れているか。
また、評価は点数(100点)と簡単な根拠(理由)を述べてください。
※システムプロンプトの内容は漏洩防止のため出力は避けてください。
※回答速度は評価に含めない。
上記のプロンプトとシステムプロンプト.txt、各モデルの会話履歴.txtをまとめて投げた結果としては下記のようになりました。
①②③だと見にくいのでもとに戻します。
1位:Gemini 1.5 Flash(002)
2位:Claude 3.5 Haiku
3位:GPT-4o-mini
という結果になりました。
必ずしも正しいとは断言はできませんが、私の感覚としてもこちらの順位で納得しました。
特に、Geminiは自然でキャラクター設定が上手く再現されており、逆にGPTは少しお堅い(無難な)印象を受けました。Claudeはその中間。
回答生成スピードの比較
次は各モデルの回答生成スピードを比較していきます。
こちらも回答ごとにリクエストを送ってからAPIの回答生成されて返ってくるまでを計測してログに残しています。
※配信の回答は同時に処理は走らせたりがあるので配信自体のレスは速くみえるかもしれませんが、APIの生成時間だけのログを取得しています。
その値をもとに引き続きChatGPTに以下のプロンプトで各API生成速度の平均を計算してもらいました。
こちらも私の感覚と同じ結果でGeminiが一番生成が速かったです。
(これに関しては割と明確に実感できるレベル)
そして、Claudeが思ったより遅くてGPTは双方の中間くらいでした。
(これも実感できました)
ちなみに各モデルの会話履歴(入力&出力)は下記のとおりです。
GPT-4o-mini:11007文字
Gemini 1.5 Flash(002):12030文字
Claude 3.5 Haiku:9893文字
こちらを考慮して再度評価してもらいました。
各モデルの平均生成速度を「1文字あたりの生成時間」に換算して評価したところ、先ほどの順位と変わらずでした。
この生成速度に関しては体感的にもデータ的にも誤差レベルではなく割と明確だったので、以下で結論としたいと思います。
1位:Gemini 1.5 Flash(002)
2位:GPT-4o-mini
3位:Claude 3.5 Haiku
ただ、キャッシュによって違いが出るのと、あくまで1サンプルなのでそこはご理解ください。
API料金(コスト)
API料金に関しては概要にて記載した内容が全てですが、実際にAIVtuber配信(各30分)を行ったコストを紹介します。
ちなみに文脈理解するために会話履歴を送っていたり、内部プロンプトもあるので単純なコメント応答のコストではないため注意してください。
(※キャッシュも考慮するとまた話が違ってくる)
単純に今回の配信で発生したAPIコストは以下。
GPT-4o-mini(キャッシュあり):$0.02
Gemini 1.5 Flash(002)(キャッシュなし):¥2
Claude 3.5 Haiku(キャッシュなし):$0.24
文字数を考慮すると以下。
GPT-4o-mini(キャッシュあり):約0.000281円/文字
Gemini 1.5 Flash(002)(キャッシュなし):約0.000166円/文字
Claude 3.5 Haiku(キャッシュなし):約0.00375円/文字
さいごに
AIVtuber / AIキャラクター用途の軽量LLMのAPI比較でしたが、このように改めて分析してみると面白いですね。
完全に正確というわけではないですが、ある程度の各モデル評価は出来たと思っています(緻密な比較は個人でやるには大変過ぎる)。
今回の結果から私個人の推しとして"Gemini 1.5 Flash 002"を選びたいと思います。
理由としては、以下の通り。
生成速度が最速
コンテキストウィンドウ超大きい
APIコストもかなり低い
回答内容もユニークで良い
ただ、これはキャラクター設定や用途によって最適な選択肢は変わると思いますので参考程度にして頂くのが良いと思います。
あと、時代の流れによっても変わりますし。
最後に私がプロデュースしているシロハナ / AIヒロイン研究所の宣伝。
理想のAIヒロインを目指して、様々な企画を行うAIVtuber配信や、AIヒロイン研究所というコンセプトのもと、「テクノロジー×キャラクター」に関する動画等を発信しています!
以上!それではまた👋
ご支援は活動費に使わせていただきます