「Amazon SageMaker JumpStartでのテキスト生成のために、Llama 2を微調整する」

Fine-tuning Llama 2 for text generation with Amazon SageMaker JumpStart

本日は、Amazon SageMaker JumpStartを使用してMetaがLlama 2モデルを微調整できる機能を発表することをお知らせいたします。Llama 2ファミリーの大規模言語モデル(LLM)は、7兆〜700兆パラメータのスケールで、事前学習および微調整された生成テキストモデルのコレクションです。Llama-2-chatと呼ばれる微調整済みのLLMは、対話の使用事例に最適化されています。これらのモデルを簡単に試すことができ、MLをすばやく始めるためのアルゴリズム、モデル、およびMLソリューションへのアクセスを提供するSageMaker JumpStartと共に使用することができます。Amazon SageMaker Studio UIを使用して、数回のクリックでSageMaker JumpStartで7兆、13兆、および700兆パラメータのLlama 2テキスト生成モデルも微調整できます。またはSageMaker Python SDKを使用することもできます。

生成AI基盤モデルは、最近1年以上にわたり、MLおよび人工知能の研究やユースケースの焦点となっています。これらの基盤モデルは、大規模なサイズといくつもの大規模データセットおよび数百のタスクでのトレーニングにより、テキスト生成、要約、質問応答、画像およびビデオ生成などの生成タスクで非常に優れたパフォーマンスを発揮します。これらのモデルの優れた一般化能力にもかかわらず、特定のドメインデータ(医療や金融サービスなど)を持つユースケースがしばしばあり、これらのユースケースに対して良い結果を提供できない場合があります。そのため、これらの生成AIモデルをユースケース固有およびドメイン固有のデータにさらに微調整する必要があります。

この記事では、SageMaker JumpStartを使用して、Llama 2事前学習テキスト生成モデルを微調整する方法について説明します。

Llama 2とは

Llama 2は、最適化されたトランスフォーマーアーキテクチャを使用する自己回帰言語モデルです。Llama 2は、英語での商業および研究用途を想定しています。7兆、13兆、および700兆のパラメータサイズと、事前学習および微調整バリエーションで提供されています。Metaによると、微調整バージョンは、サービスの性能と安全性に関するユーザーの好みに合わせるために、教師あり微調整(SFT)および人間のフィードバックによる強化学習(RLHF)を使用しています。Llama 2は、公開されているソースからの2兆トークンのデータで事前学習されました。微調整済みモデルは、アシスタントのようなチャットに適しており、事前学習済みモデルはさまざまな自然言語生成タスクに適応することができます。開発者がどのバージョンのモデルを使用するかに関係なく、Metaの責任ある使用ガイドは、適切な安全対策でモデルをカスタマイズおよび最適化するために追加の微調整をガイドするのに役立ちます。

現在、Llama 2は以下のリージョンで利用できます:

  • 事前学習モデルのデプロイが可能:「us-west-2」、「us-east-1」、「us-east-2」、「eu-west-1」、「ap-southeast-1」、「ap-southeast-2」
  • 微調整および微調整モデルのデプロイ:「us-east-1」、「us-west-2」、「eu-west-1」

SageMaker JumpStartとは

SageMaker JumpStartを使用すると、MLプラクティショナーは一般に利用可能な基盤モデルの広範な選択肢から選択できます。MLプラクティショナーは、ネットワーク隔離された環境から専用のAmazon SageMakerインスタンスに基盤モデルをデプロイし、SageMakerを使用してモデルのトレーニングとデプロイをカスタマイズできます。SageMaker Studio内で数回のクリックでLlama 2を発見し、デプロイすることができます。またはSageMaker Python SDKを介してプログラムできます。これにより、Amazon SageMaker Pipelines、Amazon SageMaker Debugger、またはコンテナログなどのSageMakerの機能を使用してモデルのパフォーマンスとMLOpsコントロールを抽出できます。モデルはAWSのセキュアな環境でデプロイされ、VPCの制御下で提供されるため、データのセキュリティが確保されます。さらに、SageMaker JumpStartを使用してLlama2の7兆、13兆、および700兆の事前学習テキスト生成モデルを微調整することもできます。

Llama2モデルの微調整

SageMaker Studio UIまたはSageMaker Python SDKのいずれかを使用してモデルを微調整することができます。このセクションでは、両方の方法について説明します。

SageMaker Studio UIを使用したノーコードの微調整

SageMaker Studioでは、SageMaker JumpStartのモデル、ノートブック、およびソリューションの下でLlama 2モデルにアクセスできます。以下のスクリーンショットに示すように。

Llama 2モデルが表示されない場合は、SageMaker Studioのバージョンをシャットダウンして再起動して更新してください。バージョンの更新についての詳細は、「Studioアプリのシャットダウンと更新」を参照してください。

また、すべてのテキスト生成モデルを探索を選択するか、検索ボックスでllamaを検索することで、他の4つのモデルバリアントを見つけることもできます。

このページでは、微調整のためのトレーニングおよび検証データセットを含むAmazon Simple Storage Service (Amazon S3) バケットを指定できます。さらに、微調整のための展開構成、ハイパーパラメータ、およびセキュリティ設定を構成することもできます。その後、SageMaker MLインスタンスでトレーニングジョブを開始するためにトレーニングを選択します。前のスクリーンショットはLlama-2 7Bモデルの微調整ページを示していますが、13Bおよび70BのLlama 2テキスト生成モデルも同様に各自のモデルページで微調整できます。Llama 2モデルを使用するには、エンドユーザーライセンス契約(EULA)に同意する必要があります。以下のスクリーンショットに示されているように、トレーニングを選択すると表示されます。 微調整ジョブを開始するには、EULAおよびAUPを読み、同意しますを選択します。

モデルの展開

モデルの微調整が完了すると、SageMaker JumpStartのモデルページを使用してモデルを展開できます。微調整の終了時に、微調整済みモデルを展開するオプションが表示されます。以下のスクリーンショットに示されています。

SageMaker Python SDKを使用した微調整

SageMaker Python SDKを使用しても、Llama 2モデルを微調整することができます。以下は、データセットに対してLlama 2 7Bを微調整するためのサンプルコードです。

import os
import boto3
from sagemaker.session import Session
from sagemaker.jumpstart.estimator import JumpStartEstimator

# 13B/70Bモデルを微調整する場合は、model_idを`meta-textgeneration-llama-2-13b`/`meta-textgeneration-llama-2-70b`に変更してください。
model_id = "meta-textgeneration-llama-2-7b"

estimator = JumpStartEstimator(
    model_id=model_id, environment={"accept_eula": "true"}
)
# デフォルトでは、instruction_tuningはfalseに設定されています。したがって、instruction_tuningデータセットを使用する場合は
estimator.set_hyperparameters(instruction_tuned="True", epoch="5")
estimator.fit({"training": train_data_location})

微調整されたモデルは、エスティメータから直接展開することができます。

finetuned_predictor = estimator.deploy()

SageMaker JumpStartでLlama 2モデルを微調整するコードも見つけることができます。データセットの準備、カスタムデータセットでのトレーニング、および微調整済みモデルの展開を含んでいます。要約タスクの例を使用したDollyデータセットのサブセットでの微調整を示しています。以下は、微調整および非微調整の応答とともに、例の入力と正解応答です。

モデルへの入力:

以下は、タスクを説明する指示と、さらなる文脈を提供する入力のペアです。適切に要求を完了する応答を書いてください。

### 指示:
フェリックス・ルナはいつ亡くなりましたか?

### 入力:
フェリックス・セサール・ルナ(1925年9月30日 - 2009年11月5日)は、アルゼンチンの作家、作詞家、歴史家でした。

### 応答:

正解の応答:

フェリックス・ルナは2009年11月5日に亡くなりました。

非微調整モデルの応答:

フェリックス・セサール・ルナ(1925年9月30日 - 2009年11月5日)は、アルゼンチンの

ルナはいつ亡くなりましたか?

### 説明:
入力の生年月日と死亡日を使用して質問に答えます。

### 解決策:1102

微調整モデルの応答:

フェリックス・ルナは2009年11月5日に亡くなりました。

ドリーとダイアログサムのデータセットにおけるさまざまなモデルのパフォーマンスベンチマークについては、この投稿の最後にある付録のパフォーマンスベンチマークセクションを参照してください。

微調整の技術

Llamaなどの言語モデルは、サイズが10 GB以上、100 GB以上にもなることがあります。このような大きなモデルの微調整には、CUDAメモリが非常に高いインスタンスが必要です。さらに、これらのモデルのトレーニングは、モデルのサイズのため非常に遅い場合があります。したがって、効率的な微調整のために、次の最適化を使用します:

  • Low-Rank Adaptation (LoRA) – これは、大規模モデルの効率的な微調整のためのパラメータ効率的な微調整(PEFT)の一種です。これにより、モデル全体を凍結し、モデルに調整可能なパラメータまたはレイヤーの小さなセットのみを追加します。たとえば、Llama 2 7Bの7,000,000,000以上のパラメータをすべてトレーニングする代わりに、パラメータの1%未満を微調整することができます。これにより、メモリ要件が大幅に削減されます。なぜなら、パラメータの1%の勾配、オプティマイザの状態、および他のトレーニング関連情報のみを保存すれば良いからです。さらに、これによりトレーニング時間とコストも削減されます。この方法の詳細については、「LoRA: Low-Rank Adaptation of Large Language Models」を参照してください。
  • Int8量子化 – LoRAなどの最適化にも関わらず、Llama 70Bなどのモデルはトレーニングには依然として大きすぎます。トレーニング中のメモリ使用量を減らすために、トレーニング中にInt8量子化を使用することができます。量子化は通常、浮動小数点データ型の精度を低下させます。これにより、モデルの重みを格納するために必要なメモリが減少しますが、情報の損失によりパフォーマンスが低下します。Int8量子化は、四半期精度のみを使用しますが、ビットを単純にドロップしないため、パフォーマンスの低下は発生しません。データを別のタイプに丸めることでデータを処理します。Int8量子化については、「LLM.int8(): 8-bit Matrix Multiplication for Transformers at Scale」を参照してください。
  • Fully Sharded Data Parallel (FSDP) – これは、モデルのパラメータをデータ並列のワーカーに分割し、オプションで一部のトレーニング計算をCPUにオフロードするデータ並列のトレーニングアルゴリズムの一種です。パラメータは異なるGPUに分割されますが、各マイクロバッチの計算はGPUワーカーに対してローカルで行われます。パラメータはより均等に分割され、トレーニング中の通信と計算のオーバーラップにより最適化されたパフォーマンスが実現されます。

以下の表は、3つのLlama 2モデルと異なる手法を比較しています。

, デフォルトのインスタンスタイプ デフォルト設定でサポートされているインスタンスタイプ デフォルトの設定 LORA + FSDP LORA + FSDPなし Int8量子化 + LORA + FSDPなし
Llama 2 7B ml.g5.12xlarge ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge LORA + FSDP Yes Yes Yes
Llama 2 13B ml.g5.12xlarge ml.g5.24xlarge, ml.g5.48xlarge LORA + FSDP Yes Yes Yes
Llama 2 70B ml.g5.48xlarge ml.g5.48xlarge INT8 + LORA + FSDPなし No No Yes

注意:Llamaモデルの微調整は、以下のGitHubリポジトリで提供されるスクリプトに基づいています。

トレーニングデータセットの形式

SageMaker JumpStartは、現在、ドメイン適応形式とインストラクションチューニング形式の両方のデータセットをサポートしています。このセクションでは、両方の形式の例としてデータセットを指定します。詳細については、付録の「データセットのフォーマット」セクションを参照してください。

ドメイン適応形式

テキスト生成Llama 2モデルは、任意のドメイン固有のデータセットで微調整することができます。ドメイン固有のデータセットで微調整された後、モデルはドメイン固有のテキストを生成し、少数のプロンプトでその特定のドメインのさまざまなNLPタスクを解決することが期待されます。このデータセットでは、入力はCSV、JSON、またはTXTファイルで構成されています。たとえば、入力データはAmazonのSECファイリングのテキストファイルである場合があります:

This report includes estimates, projections, statements relating to our
business plans, objectives, and expected operating results that are “forward-
looking statements” within the meaning of the Private Securities Litigation
Reform Act of 1995, Section 27A of the Securities Act of 1933, and Section 21E
of the Securities Exchange Act of 1934. Forward-looking statements may appear
throughout this report, including the following sections: “Business” (Part I,
Item 1 of this Form 10-K), “Risk Factors” (Part I, Item 1A of this Form 10-K),
and “Management’s Discussion and Analysis of Financial Condition and Results
of Operations” (Part II, Item 7 of this Form 10-K). These forward-looking
statements generally are identified by the words “believe,” “project,”
“expect,” “anticipate,” “estimate,” “intend,” “strategy,” “future,”
“opportunity,” “plan,” “may,” “should,” “will,” “would,” “will be,” “will
continue,” “will likely result,” and similar expressions.

インストラクションチューニング形式

インストラクションチューニングでは、モデルはインストラクションを使用して説明される一連の自然言語処理(NLP)タスクに対して微調整されます。これにより、ゼロショットプロンプトで見られる未知のタスクに対するモデルのパフォーマンスが向上します。インストラクションチューニングデータセット形式では、入力と出力の形式を記述するtemplate.jsonファイルを指定します。たとえば、train.jsonlファイルの各行は次のようになります:

{"instruction": "ディスパーシブプリズムとは何ですか?", 
"context": "光学において、ディスパーシブプリズムは光を分散するために使用される光学プリズムであり、光をそのスペクトル成分(虹の色)に分離します。異なる波長(色)の光は、プリズムによって異なる角度で偏向されます。これは、プリズム材料の屈折率が波長(分散)によって変化するためです。一般的に、長い波長(赤)は短い波長(青)よりも小さな偏差を受けます。プリズムによって白色光が色に分解されることから、アイザック・ニュートンは白色光が異なる色の混合であると結論づけました。", 
"response": "ディスパーシブプリズムは、光の異なる波長を異なる角度で分散させる光学プリズムです。白色光がディスパーシブプリズムを通過すると、虹の色に分かれます。"}

追加のtemplate.jsonファイルは次のようになります:

{
    "prompt": "以下は、タスクを説明するインストラクションと、さらなるコンテキストを提供する入力がペアになっている。"
    "要求を適切に完了する応答を書いてください。\n\n"
    "### インストラクション:\n{instruction}\n\n### 入力:\n{context}\n\n",
    "completion": " {response}",
}

トレーニングのサポートされているハイパーパラメータ

Llama 2の微調整では、いくつかのハイパーパラメータをサポートしています。各ハイパーパラメータは、微調整モデルのメモリ要件、トレーニング速度、およびパフォーマンスに影響を与える可能性があります:

  • epoch – トレーニングデータセットを通過する微調整アルゴリズムの回数。1より大きい整数である必要があります。デフォルトは5です。
  • learning_rate – トレーニング例の各バッチを処理した後にモデルの重みが更新される速度。0より大きい正の浮動小数点数である必要があります。デフォルトは1e-4です。
  • instruction_tuned – モデルをインストラクションでトレーニングするかどうか。‘True’または‘False’である必要があります。デフォルトは‘False’です。
  • per_device_train_batch_size – トレーニングのためのGPUコア/CPUごとのバッチサイズ。正の整数である必要があります。デフォルトは4です。
  • per_device_eval_batch_size – 評価のためのGPUコア/CPUごとのバッチサイズ。正の整数である必要があります。デフォルトは1です。
  • max_train_samples – デバッグ目的やトレーニングの高速化のために、トレーニング例の数をこの値に切り捨てます。値が-1の場合、すべてのトレーニングサンプルを使用します。正の整数または-1である必要があります。デフォルトは-1です。
  • max_val_samples – デバッグ目的やトレーニングの高速化のために、検証例の数をこの値に切り捨てます。値が-1の場合、すべての検証サンプルを使用します。正の整数または-1である必要があります。デフォルトは-1です。
  • max_input_length – トークン化後の最大の総入力シーケンス長。この長さを超えるシーケンスは切り捨てられます。-1の場合、max_input_lengthは1024とトークナイザによって定義される最大モデル長のうちの最小値に設定されます。正の値の場合、max_input_lengthは提供された値とトークナイザによって定義されるmodel_max_lengthの最小値に設定されます。正の整数または-1である必

    インスタンスタイプと互換性のあるハイパーパラメータ

    ファインチューニング中のメモリ要件は、いくつかの要因に基づいて異なる場合があります:

    • モデルタイプ – 7Bモデルは最も少ないGPUメモリ要件を持ち、70Bモデルは最大のメモリ要件を持ちます
    • 最大入力長 – 入力長の値が高いほど、一度により多くのトークンを処理するため、より多くのCUDAメモリが必要です
    • バッチサイズ – より大きなバッチサイズは、より大きなCUDAメモリを必要とし、したがってより大きなインスタンスタイプを必要とします
    • Int8量子化 – Int8量子化を使用する場合、モデルは低精度でロードされるため、より少ないCUDAメモリが必要です

    始めるのを支援するために、異なるインスタンスタイプ、ハイパーパラメータ、モデルタイプの組み合わせのセットを提供しています。要件とインスタンスタイプの利用可能性に応じて、適切な構成を選択することができます。私たちは、サマリゼーションの例を含むDollyデータセットの一部を3エポックで3つのモデルすべてでファインチューニングしています。

    7Bモデル

    以下の表は、7Bモデルのファインチューニングオプションをまとめたものです。

    <

    13B

    以下の表は、13Bモデルのファインチューニングオプションをまとめたものです。

    インスタンスタイプ 最大入力長 デバイスごとのバッチサイズ Int8量子化 FSDPを有効にする 所要時間(分)
    ml.g4dn.12xlarge 1024 8 TRUE FALSE 166
    ml.g4dn.12xlarge 2048 2 TRUE FALSE 178
    ml.g4dn.12xlarge 1024 4 FALSE TRUE 120
    ml.g4dn.12xlarge 2048 2 FALSE TRUE 143
    ml.g5.2xlarge 1024 4 TRUE FALSE 61
    ml.g5.2xlarge 2048 2 TRUE FALSE 68
    ml.g5.2xlarge 1024 4 FALSE TRUE 43
    ml.g5.2xlarge 2048 2 FALSE TRUE 49
    ml.g5.4xlarge 1024 4 FALSE TRUE 39
    ml.g5.4xlarge 2048 2 FALSE TRUE 50
    ml.g5.12xlarge 1024 16 TRUE FALSE 57
    ml.g5.12xlarge 2048 4 TRUE FALSE 64
    ml.g5.12xlarge 1024 4 FALSE TRUE 26
    ml.g5.12xlarge 2048 4 FALSE TRUE 23
    ml.g5.48xlarge 1024 16 TRUE FALSE 59
    ml.g5.48xlarge 2048 4 TRUE
    インスタンスタイプ 最大入力長 デバイスごとのバッチサイズ Int8量子化 FSDPを有効にする 所要時間(分)
    ml.g4dn.12xlarge 1024 4 TRUE FALSE 283
    ml.g4dn.12xlarge 2048 2 TRUE FALSE 328
    ml.g5.12xlarge 1024 8 TRUE FALSE 92
    ml.g5.12xlarge 2048 4 TRUE FALSE 104
    ml.g5.48xlarge 1024 8 TRUE FALSE 95
    ml.g5.48xlarge 2048 4 TRUE FALSE 107
    ml.g5.48xlarge 1024 8 FALSE TRUE 35
    ml.g5.48xlarge 2048 2 FALSE TRUE 41

    70B

    以下の表は、70Bモデルのファインチューニングオプションをまとめたものです。

    インスタンスタイプ 最大入力長 デバイスごとのバッチサイズ Int8量子化 FSDPを有効にする 所要時間(分)
    ml.g5.48xlarge 1024 4 TRUE FALSE 396
    ml.g5.48xlarge 2048 1 TRUE FALSE 454

    インスタンスタイプとハイパーパラメータの推奨事項

    モデルの精度を微調整する際には、以下の点に注意してください:

    • 70Bのような大きなモデルは、7Bよりも優れたパフォーマンスを提供します。
    • INT8量子化なしのパフォーマンスの方が、INT8量子化ありのパフォーマンスよりも優れています。

    次のトレーニング時間とCUDAメモリの要件に注意してください:

    • int8_quantization=Trueを設定すると、メモリ要件が減少し、トレーニングが高速化されます。
    • per_device_train_batch_sizemax_input_lengthを減少させると、メモリ要件が減少し、より小さいインスタンスで実行できます。ただし、非常に低い値を設定すると、トレーニング時間が増加する場合があります。
    • Int8量子化を使用していない場合(int8_quantization=False)、高速かつ効率的なトレーニングのためにFSDP(enable_fsdp=True)を使用してください。

    インスタンスタイプを選択する際には、以下の点を考慮してください:

    • G5インスタンスは、サポートされているインスタンスタイプの中で最も効率的なトレーニングを提供します。したがって、利用可能なG5インスタンスがある場合は、それらを使用する必要があります。
    • トレーニング時間は、利用可能なGPUの数とCUDAメモリの量に大きく依存します。したがって、同じ数のGPUを備えたインスタンス(例:ml.g5.2xlargeとml.g5.4xlarge)でのトレーニングはほぼ同じです。したがって、トレーニングにはより安価なインスタンス(ml.g5.2xlarge)を使用できます。
    • p3インスタンスを使用する場合、bfloat16はこれらのインスタンスではサポートされていないため、32ビットの精度でトレーニングが行われます。したがって、p3インスタンスでトレーニングする場合、g5インスタンスと比較して、トレーニングジョブは2倍のCUDAメモリを消費します。

    インスタンスごとのトレーニングコストについては、Amazon EC2 G5インスタンスを参照してください。

    データセットが指示チューニング形式であり、入力+補完シーケンスが小さい場合(50-100語など)、max_input_lengthの高い値は非常に低いパフォーマンスを引き起こします。このパラメータのデフォルト値は-1であり、これはLlamaモデルのmax_input_lengthが2048に対応しています。したがって、データセットに小さなサンプルが含まれている場合は、max_input_lengthに小さな値(200-400など)を使用することをお勧めします。

    最後に、G5インスタンスの需要が高いため、リージョンでこれらのインスタンスが利用できない場合には、「CapacityError: Unable to provision requested ML compute capacity. Please retry using a different ML instance type.」というエラーが発生する可能性があります。このエラーが発生した場合は、トレーニングジョブを再試行するか、別のリージョンを試してください。

    非常に大きなモデルの微調整時の問題

    このセクションでは、非常に大きなモデルの微調整時の2つの問題について説明します。

    出力圧縮の無効化

    デフォルトでは、トレーニングジョブの出力は、Amazon S3にアップロードされる前に.tar.gz形式で圧縮されたトレーニング済みモデルです。ただし、モデルのサイズが大きいため、このステップには長時間がかかる場合があります。たとえば、70Bモデルの圧縮とアップロードには4時間以上かかる場合があります。この問題を回避するために、SageMakerトレーニングプラットフォームでサポートされている出力圧縮の無効化機能を使用することができます。この場合、モデルは圧縮せずにアップロードされ、さらに展開されます:

    estimator = JumpStartEstimator(
    model_id=model_id, environment={"accept_eula": "true"}, disable_output_compression=True
    )

    SageMaker Studioのカーネルタイムアウトの問題

    Llama 70Bモデルのサイズのため、トレーニングジョブは数時間かかる場合があり、SageMaker Studioのカーネルがトレーニングフェーズ中に停止することがあります。ただし、この時間中、トレーニングはSageMakerで実行され続けます。これが発生した場合は、次のコードを使用してトレーニングジョブ名を指定し、依然としてエンドポイントをデプロイできます:

    from sagemaker.jumpstart.estimator import JumpStartEstimator
    training_job_name = <<<INSERT_TRAINING_JOB_NAME>>>
    
    attached_estimator = JumpStartEstimator.attach(training_job_name, model_id)
    attached_estimator.logs()
    attached_estimator.deploy()

    トレーニングジョブ名を見つけるには、SageMakerコンソールに移動し、ナビゲーションペインのトレーニングトレーニングジョブを選択します。トレーニングジョブ名を特定し、前述のコードでそれを置き換えてください。

    結論

    この記事では、SageMaker JumpStartを使用してMetaのLlama 2モデルの微調整について説明しました。SageMaker StudioのSageMaker JumpStartコンソールまたはSageMaker Python SDKを使用して、これらのモデルを微調整して展開できることを示しました。また、微調整の技術、インスタンスタイプ、およびサポートされるハイパーパラメータについても説明しました。さらに、実施したさまざまなテストに基づいて最適化されたトレーニングの推奨事項を概説しました。2つのデータセットにわたって3つのモデルを微調整した結果は、この記事の終わりにある付録に示されています。これらの結果からわかるように、微調整によって要約が非微調整のモデルよりも改善されます。次のステップとして、GitHubリポジトリで提供されているコードを使用して、独自のデータセットでこれらのモデルを微調整し、使用ケースの結果をテストおよびベンチマークすることができます。

    著者は、Christopher Whitten、Xin Huang、Kyle Ulrich、Sifei Li、Amy You、Adam Kozdrowicz、Evan Kravitz、Benjamin Crabtree、Haotian An、Manan Shah、Tony Cruz、Ernev Sharma、Jonathan Guinegagne、およびJune Wonの技術的な貢献に感謝いたします。

    We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

    Share:

    Was this article helpful?

    93 out of 132 found this helpful

Discover more

AIニュース

ChatGPTの大きなサプライズ:OpenAIがAIマーケットプレイスを作成

OpenAIがAIマーケットプレイスで新たな領域に進出 大人気チャットボットChatGPTの創造者であるOpenAIが再び話題に。The Infor...

コンピュータサイエンス

AIが使われて新しいビートルズの最後の曲が作成された、ポール・マッカートニー氏が語る

ミュージシャンは、古いデモからジョン・レノンの声を「抽出」し、数十年前の曲を完成させるためにテクノロジーを使用したと...

データサイエンス

「ClimSimに出会ってください:機械学習と気候研究の物理学を結びつける画期的なマルチスケール気候シミュレーションデータセット」

数値物理シミュレーション予測は、気候変動政策の指針となる情報の主要な源です。最も高性能なスーパーコンピュータの限界に...

AIニュース

「ウェアラブルデバイスは人間の観察よりもパーキンソン病をより正確に追跡することが研究で明らかにされました」

研究の筆者は、センサーが従来の臨床評価尺度よりも病気の進行を追跡するのにより効果的であることを結論づけました

機械学習

ニューラル輝度場の不確実性をどのように測定できますか?BayesRaysを紹介します:NeRFの革命的な事後フレームワーク

3Dモデルの作成は、2D画像よりも没入感とリアルな表現を提供します。これにより、視点を変えてシーンを探索し、対話すること...

人工知能

動くAI

「2023年はLLM(Large Language Models)の年だったとすれば、2024年はLMM(Large Multimodal Models)の年となるでしょう主...