Vicuna: 90%* ChatGPT 品質で GPT-4 を印象づけるオープンソース チャットボット
概要
大規模言語モデル (LLM) の急速な進歩により、チャットボット システムに革命が起こり、前例のないレベルのチャットボットが実現しました。 OpenAI の ChatGPT に見られるインテリジェンスのレベル。しかし、その優れたパフォーマンスにもかかわらず、ChatGPT のトレーニングとアーキテクチャの詳細は依然として不明瞭であり、この分野における研究やオープンソースのイノベーションを妨げています。 Meta LLaMA と Stanford Alpaca プロジェクトからインスピレーションを得て、強化されたデータセットと使いやすくスケーラブルなインフラストラクチャを基盤とするオープンソース チャットボットである Vicuna-13B を紹介します。 ShareGPT.com から収集したユーザー共有会話に基づいて LLaMA ベース モデルを微調整することにより、Vicuna-13B は、Stanford Alpaca などの他のオープンソース モデルと比較して競争力のあるパフォーマンスを実証しました。このブログ投稿では、Vicuna-13B のパフォーマンスの予備評価を提供し、その訓練とサービスのインフラストラクチャについて説明します。また、このチャットボットの機能をテストするためにオンライン デモに参加するようコミュニティを招待します。
Vicuna はどのくらい優れていますか?
ユーザーが共有する 70,000 の ChatGPT 会話で Vicuna を微調整した結果、Vicuna が有効になることがわかりました。 Alpaca (下記の例を参照) と比較して、ChatGPT と同等の品質で、より詳細で適切に構造化された回答を生成できます。
オンライン デモ
ここで Vicuna-13B デモをお試しください。
トレーニング
Vicuna は、パブリック API を使用して ShareGPT.com から収集された約 70,000 のユーザー共有会話を使用して、LLaMA ベース モデルを微調整することによって作成されます。データの品質を確保するために、HTML をマークダウンに変換し、不適切なサンプルや低品質のサンプルを除外します。さらに、長い会話を、モデルのコンテキストの最大長に適合する小さなセグメントに分割します。
- マルチターン会話: マルチターン会話を考慮してトレーニング損失を調整し、のみに基づいて微調整損失を計算します。
- メモリの最適化: Vicuna が長いコンテキストを理解できるようにするために、コンテキストの最大長をアルパカの 512 から 2048 に拡張しました。これにより、GPU メモリ要件が大幅に増加します。私たちは、勾配チェックポイントとフラッシュ アテンションを利用してメモリ プレッシャーに取り組みます。
- スポット インスタンスによるコスト削減: トレーニング用の 40 倍のデータセットと 4 倍のシーケンス長により、トレーニング費用の面でかなりの課題が生じます。 SkyPilot マネージド スポットを採用し、プリエンプションの自動回復と自動ゾーン スイッチを備えた安価なスポット インスタンスを活用することでコストを削減します。このソリューションにより、7B モデルのトレーニング コストが約 140 から、13B モデルのトレーニング コストが約 300 から削減されます。
サービス提供
分散型モデルを使用して複数のモデルを提供できるサービス システムを構築します。労働者。オンプレミス クラスターとクラウドの両方からの GPU ワーカーの柔軟なプラグインをサポートします。 SkyPilot のフォールト トレラント コントローラーとマネージド スポット機能を利用することで、このサービス システムは複数のクラウドの安価なスポット インスタンスとうまく連携して、サービス コストを削減できます。これは現在軽量の実装であり、最新の研究をさらに統合することに取り組んでいます。
チャットボットを評価するにはどうすればよいですか?
AI チャットボットの評価は、言語の理解、推論、分析を調べる必要があるため、困難な作業です。そしてコンテキスト認識。 AI チャットボットがより高度になるにつれて、現在のオープン ベンチマークではもはや十分ではなくなる可能性があります。たとえば、スタンフォード大学の Alpaca で使用されている自己指導型の評価データセットは、SOTA チャットボットによって効果的に回答できるため、人間がパフォーマンスの違いを識別することが困難になります。さらに制限には、トレーニング/テスト データの汚染や、新しいベンチマークの作成にかかる潜在的な高コストなどが含まれます。これらの問題に取り組むために、チャットボットのパフォーマンス評価を自動化するための GPT-4 に基づく評価フレームワークを提案します。
制限
他の大規模な言語モデルと同様に、Vicuna にも特定の制限があることに気付きました。たとえば、推論や数学を含むタスクは苦手であり、自分自身を正確に識別したり、出力の事実の正確さを保証したりすることに限界がある可能性があります。さらに、安全性を保証したり、潜在的な毒性やバイアスを軽減したりするために十分に最適化されていません。安全性の懸念に対処するために、OpenAI モデレーション API を使用して、オンライン デモで不適切なユーザー入力を除外します。それにもかかわらず、私たちは Vicuna がこれらの制限に対処するための将来の研究のためのオープンな出発点として機能することを期待しています。
リリース
最初のリリースでは、トレーニング、サービス、評価のコードを GitHub リポジトリで共有します。 https://github.com/lm-sys/FastChat。 Vicuna-13Bモデルのウェイトもリリースしました。データセットを公開する予定はありません。 Discord サーバーに参加し、Twitter をフォローして最新情報を入手してください。
Vicuna はどの程度優れていますか?
70,000 人のユーザーが共有する ChatGPT 会話で Vicuna を微調整した結果、Vicuna は Alpaca と比較してより詳細でよく構造化された回答を生成できることがわかりました (以下の例を参照) )、ChatGPT と同等の品質です。
オンライン デモ
Vicuna-13B デモは、
こちらからお試しください< /a>!
概要
大規模言語モデル (LLM) の急速な進歩によりチャットボット システムに革命が起こり、OpenAI の ChatGPT に見られるような前例のないレベルのインテリジェンスが実現しました。しかし、その優れたパフォーマンスにもかかわらず、ChatGPT のトレーニングとアーキテクチャの詳細は依然として不明瞭であり、この分野における研究やオープンソースのイノベーションを妨げています。 Meta LLaMA と Stanford Alpaca プロジェクトからインスピレーションを得て、強化されたデータセットと使いやすくスケーラブルなインフラストラクチャを基盤とするオープンソース チャットボットである Vicuna-13B を紹介します。 ShareGPT.com から収集したユーザー共有会話に基づいて LLaMA ベース モデルを微調整することにより、Vicuna-13B は、Stanford Alpaca などの他のオープンソース モデルと比較して競争力のあるパフォーマンスを実証しました。このブログ投稿では、Vicuna-13B のパフォーマンスの予備評価を提供し、その訓練とサービスのインフラストラクチャについて説明します。また、このチャットボットの機能をテストするためにオンライン デモと対話するようコミュニティを招待します。
トレーニング
Vicuna は、約 70,000 人のユーザーを使用して LLaMA ベース モデルを微調整することによって作成されます。 ShareGPT.com からパブリック API を使用して収集された共有会話。データの品質を確保するために、HTML をマークダウンに変換し、不適切なサンプルや低品質のサンプルを除外します。さらに、長い会話をモデルのコンテキストの最大長に合わせて小さなセグメントに分割します。
サービス提供
分散ワーカーで複数のモデルにサービスを提供できるサービス システムを構築します。オンプレミス クラスターとクラウドの両方からの GPU ワーカーの柔軟なプラグインをサポートします。 SkyPilot のフォールト トレラント コントローラーとマネージド スポット機能を利用することで、このサービス システムは複数のクラウドの安価なスポット インスタンスとうまく連携して、サービス コストを削減できます。これは現在軽量の実装であり、最新の
研究をさらに統合することに取り組んでいます。
方法チャットボットを評価するには?
AI チャットボットの評価は、言語理解、推論、コンテキスト認識を調べる必要があるため、困難な作業です。 AI チャットボットがより高度になるにつれて、現在のオープン ベンチマークではもはや十分ではなくなる可能性があります。たとえば、スタンフォード大学の Alpaca で使用されている評価データセットである
self-instruct
は、次のように効果的に答えることができます。 SOTA チャットボットにより、人間がパフォーマンスの違いを認識することが困難になります。さらに制限には、トレーニング/テスト データの汚染や、新しいベンチマークの作成にかかる潜在的な高コストなどが含まれます。これらの問題に取り組むために、チャットボットのパフォーマンス評価を自動化するための GPT-4 に基づく評価フレームワークを提案します。
制限
他の大規模な言語モデルと同様に、Vicuna には次のような特徴があることに気付きました。特定の制限。たとえば、推論や数学を含むタスクは苦手であり、自分自身を正確に識別したり、出力の事実の正確さを保証したりすることに限界がある可能性があります。さらに、安全性を保証したり、潜在的な毒性やバイアスを軽減したりするために十分に最適化されていません。安全上の懸念に対処するため、OpenAI
モデレーション
API を使用して、オンライン デモで不適切なユーザー入力を除外します。 。それにもかかわらず、私たちはビクーニャがこれらの制限に対処するための将来の研究のためのオープンな出発点として機能することを期待しています。