見出し画像

軽量LLMのAPI比較【AIVtuber・AIキャラクター用途】

AIVtuberシロハナちゃんの開発プロデュースをしているyukiです。

この記事では軽量LLMモデル、GPT-4o-mini、Gemini 1.5 Flash、Claude 3.5 Haikuの比較をしています。

特にAIVtuberやAIキャラクター用途での比較となっており、実際にAIVtuberに各AIモデルをAPIで搭載して配信を行ってログを取得しました。

https://youtube.com/live/bURovTSYFnQ

ぜひ、AIキャラクターのLLMで何を使えばいいのか迷っている方などの参考になれば幸いです。

また、動画形式でも本記事の内容を解説しています。

https://youtu.be/nbgCJ5wr1xU

※この記事は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をまとめて投げた結果としては下記のようになりました。

項目	①モデル (conversation_log_1.txt)	②モデル (conversation_log_2.txt)	③モデル (conversation_log_3.txt)
発話や返答の自然さ	85点
自然でスムーズだが、やや一般的な返答に感じられる場面もある。​(conversation_log_1)	90点
全体的にテンポよく、自然に会話が進行。会話が盛り上がる工夫が目立つ。​(conversation_log_2)	88点
返答はスムーズで視聴者の反応に合わせた対応が自然だったが、少し独特な表現があった。​(conversation_log_3)
キャラクター設定の再現	80点
全体的に設定に沿っているが、一部で「AIらしさ」や研究の方向性を強調しきれない場面があった。​(system_prompt)	85点
設定通り、感情豊かで親しみやすい表現が多く、AIヒロインらしさが保たれている。​(conversation_log_2)	90点
AI研究所の「AIヒロイン」として感情豊かに話す点で設定をよく再現していた。​(conversation_log_3)
感情表現やユニークさ	78点
共感や軽い冗談があるが、他モデルに比べて感情の強弱がやや淡白。​(conversation_log_1)	92点
感情表現が豊かで、視聴者をからかうなどユーモアが豊富。シロハナの個性が最も引き出されている。​(conversation_log_2)	87点
ユニークで感情豊かな表現も多いが、一部でやや誇張気味な場面が見られた。​(conversation_log_3)
評価解説
AIモデルの順位と点数
順位	モデル	総合評価 (点数)
1位	②モデル	89点
2位	③モデル	88点
3位	①モデル	81点
最終順位の結論
1位:②モデル (89点) - 自然さと感情豊かな表現で、最も魅力的で視聴者を引き込む力が強いモデル。
2位:③モデル (88点) - 高いキャラクター再現力で安定したパフォーマンスを発揮。
3位:①モデル (81点) - ほかのモデルに比べて感情表現が控えめで、やや安定志向の印象。
評価結果

①②③だと見にくいのでもとに戻します。

AIモデルの順位と点数
順位	モデル	総合評価 (点数)
1位	Gemini (②)	89点
2位	Claude (③)	88点
3位	GPT (①)	81点
最終順位の結論
1位:Gemini (89点) - 自然さと感情豊かな表現で、最も魅力的で視聴者を引き込む力が強いモデル。
2位:Claude (88点) - 高いキャラクター再現力で安定したパフォーマンスを発揮。
3位:GPT (81点) - 他のモデルに比べて感情表現が控えめで、安定志向の印象。
評価結果
  • 1位:Gemini 1.5 Flash(002)

  • 2位:Claude 3.5 Haiku

  • 3位:GPT-4o-mini

という結果になりました。

必ずしも正しいとは断言はできませんが、私の感覚としてもこちらの順位で納得しました。

特に、Geminiは自然でキャラクター設定が上手く再現されており、逆にGPTは少しお堅い(無難な)印象を受けました。Claudeはその中間。


回答生成スピードの比較

次は各モデルの回答生成スピードを比較していきます。

こちらも回答ごとにリクエストを送ってからAPIの回答生成されて返ってくるまでを計測してログに残しています。

※配信の回答は同時に処理は走らせたりがあるので配信自体のレスは速くみえるかもしれませんが、APIの生成時間だけのログを取得しています。

その値をもとに引き続きChatGPTに以下のプロンプトで各API生成速度の平均を計算してもらいました。

次は、回答速度にフォーカスして評価をしてください。
各モデルの生成速度の平均を計算して比較すること。
ChatGPT:
ChatGPT
各会話ログから各モデル(GPT、Gemini、Claude)の回答生成速度の平均を計算し、比較します。少しお待ちください。

各モデルの回答生成速度の平均 (秒)
モデル	平均生成速度 (秒)
GPT	3.61
Gemini	1.45
Claude	5.98
評価の結論
Gemini (1.45秒) が最も速く、スムーズな会話進行が可能。
GPT (3.61秒) は中程度の速度で、比較的安定した生成時間を保っています。
Claude (5.98秒) は他モデルと比べて遅く、会話のテンポがやや遅くなる可能性がある。
Geminiの生成速度が突出しており、リアルタイムでの応答が求められる配信には最適といえるでしょう。 ​
回答生成スピード分析

こちらも私の感覚と同じ結果でGeminiが一番生成が速かったです。
(これに関しては割と明確に実感できるレベル)

そして、Claudeが思ったより遅くてGPTは双方の中間くらいでした。
(これも実感できました)

ちなみに各モデルの会話履歴(入力&出力)は下記のとおりです。

  • GPT-4o-mini:11007文字

  • Gemini 1.5 Flash(002):12030文字

  • Claude 3.5 Haiku:9893文字

こちらを考慮して再度評価してもらいました。


各モデルの生成速度を文字数を考慮して再評価します。まず、各モデルの平均生成速度を「1文字あたりの生成時間」に換算して評価します。計算を行いますので少々お待ちください。

各モデルの1文字あたりの生成速度 (秒)
モデル	1文字あたりの生成速度 (秒)
GPT	0.00033
Gemini	0.00012
Claude	0.00060
評価の結論
Gemini は1文字あたり0.00012秒で、最も効率的に生成を行っています。文字数を考慮しても、リアルタイムでのレスポンス性能が高く、配信に最適なモデルです。
GPT は0.00033秒で中程度の効率ですが、テンポを維持するには十分といえます。
Claude は0.00060秒と最も遅く、会話のスムーズさが他モデルより劣る可能性があります。
Geminiが文字数と生成速度の両方で優位に立っているため、配信における応答速度では最も高い評価となります。 ​
文字数を考慮して再評価

各モデルの平均生成速度を「1文字あたりの生成時間」に換算して評価したところ、先ほどの順位と変わらずでした。

この生成速度に関しては体感的にもデータ的にも誤差レベルではなく割と明確だったので、以下で結論としたいと思います。

  • 1位:Gemini 1.5 Flash(002)

  • 2位:GPT-4o-mini

  • 3位:Claude 3.5 Haiku

ただ、キャッシュによって違いが出るのと、あくまで1サンプルなのでそこはご理解ください。


API料金(コスト)

API料金に関しては概要にて記載した内容が全てですが、実際にAIVtuber配信(各30分)を行ったコストを紹介します。

ちなみに文脈理解するために会話履歴を送っていたり、内部プロンプトもあるので単純なコメント応答のコストではないため注意してください。
(※キャッシュも考慮するとまた話が違ってくる)

各API料金

単純に今回の配信で発生した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ヒロイン研究所というコンセプトのもと、「テクノロジー×キャラクター」に関する動画等を発信しています!

以上!それではまた👋


ご支援は活動費に使わせていただきます