GPT-3がMLOpsの将来に与える意味とは?デビッド・ハーシーと共に
GPT-3とMLOpsの将来の意味は?デビッド・ハーシーと共に
この記事は元々MLOps Liveというエピソードであり、ML実践者同士が質問に答えるインタラクティブなQ&Aセッションです。
各エピソードは特定のMLトピックに焦点を当てており、このエピソードではDavid HersheyとGPT-3およびMLOpsの機能について話しました。
YouTubeで視聴できます:
またはポッドキャストで聴くこともできます:
- Spotify
- Apple Podcasts
ただし、書面のバージョンを希望する場合は以下をご覧ください。
このエピソードでは以下のことについて学びます:
-
1
GPT-3とは何ですか? -
2
GPT-3はMLOpsの分野にどのような影響を与え、MLをどのように変えているのですか? -
3
言語モデルはMLOpsを補完することができますか? -
4
このようなMLOpsのシステムを構築する際の懸念事項は何ですか? -
5
スタートアップや企業は既にLLMを活用して製品を迅速に提供していますか?
Stephen:この通話では、コミュニティのお気に入りの一人であるDavid Hersheyがいます。OpenAIのGPT-3がMLOpsの世界に与える影響について話し合います。Davidは現在、Unusual Venturesの副社長であり、創業者がベンチャー投資家から期待すべきことのレベルを引き上げています。Unusual Venturesの前には、Tectonのシニアソリューションアーキテクトとして、Determined AIのソリューションエンジニアとして、Ford Motor CompaniesのMLプラットフォームのプロダクトマネージャーとして働いていました。
David:ありがとうございます。ここにいられて嬉しいですし、お話しできることも楽しみです。
Stephen:ただ疑問なんですが、バックグラウンドを教えていただけますか?Unusual Venturesでの役割は具体的には何ですか?
David:Unusual Venturesはベンチャーファンドであり、私の現在の焦点は機械学習とデータインフラストラクチャへの投資です。機械学習インフラストラクチャとデータインフラストラクチャの将来について考えるために行うすべての作業をリードしています。また、DevToolsについても少し考えています。私はこれまで5、6年間、MLインフラストラクチャについて考えてきましたが、今回は次の波を見つけ出そうとしています。
Stephen:すごいですね。次世代のMLインフラストラクチャについていくつかのブログ記事を書かれていましたよね。それについてもう少し詳しく教えていただけますか?
David:はい、長いMLOpsの旅でしたね。上下がありました。私たちは驚くほど多くの成果を上げました。私がこの分野に入った当初はほとんどツールがありませんでしたが、今では非常に多くのツールと可能性があります。それは一部が良いものであり、一部が悪いものだと思います。
今回の会話のテーマは、GPT-3と言語モデルに少し深入りすることです。最近のChatGPTやGPT-3などの言語モデルの進歩により、様々なMLアプリケーションを構築できる人々の範囲を広げる素晴らしい機会があります。
MLOpsに関しては、考えるべき新しいツールや参加できる新しい人々、新しい機能を持つ既存のツールもあります。したがって、多くの機会があります。
GPT-3とは何ですか?
Stephen:はい、もちろん、それについて詳しく掘り下げます。Generative AIの領域について話をするなら、今回のエピソードの中心的な焦点はGPT-3ですが、GPT-3についてもう少し詳しく教えていただけますか?
David:もちろんです。GPT-3はChatGPTに関連しており、おそらく世界中の誰もが聞いたことのあるものです。
一般的には、これまで見てきた自然言語処理のタスクを行う言語機械学習モデルとそれほど変わらない大規模な言語モデルです。
それは、2017年にGoogleによってリリースされたtransformerアーキテクチャの上に構築されていますが、GPT-3とChatGPTはOpenAIによるそのような独占的な具現化です。
これらは大規模な言語モデルと呼ばれていますが、過去6年ほど、私たちが主に行ってきたことは、より多くのデータを与えてモデルを大きくすることです。 GPT-3と他の言語モデルを訓練した人々を通じて、これらの言語モデルには、感情分析のような言語処理に関連付けられてきた古典的なもの以上の驚くべき能力が現れています。
これらの言語モデルは、より複雑な推論を行い、多くの言語タスクを効率的に解決することができます。その中でも最も人気のあるものの1つはChatGPTであり、これは人間と対話ができるチャットボットです。
GPT-3がMLOpsに与える影響
Stephen: すごいですね。それを共有してくれてありがとう… GPT-3がMLOps分野に与える影響についてどう考えていますか?そして、機械学習の変化をどのように見ていますか?
David: 私は言語モデルがMLOpsの世界に対して何を意味するのかについて、いくつかの興味深い点があると考えています。おそらく2つのことに分けて考えたいと思います。
1. 言語モデル
言語モデルは、私が言ったように、驚くほど多くの能力を持っています。追加の作業なしで驚くほど多くのタスクを解決することができます。つまり、トレーニングや調整する必要はありません – 良いプロンプトを書くだけです。
言語モデルを使うことができるメリットの1つは、モデルをトレーニングする必要がなくなることです。MLOpsの作業をモデルを構築している人々にオフロードすることができ、下流で楽しい作業を行うことができます。
推論やバージョン管理、データについてあまり心配する必要はありません。これにより、機械学習のアクセシビリティが大幅に広がると思います。
ただし、すべてのユースケースがすぐに解決されるわけではありません。言語モデルは優れていますが、まだ完璧ではありません。
考えるべきカテゴリーの1つは、一部の事柄についてはもはやモデルをトレーニングする必要がない場合、
- 私たちはどのような活動に参加していますか?
- 私たちは何をしていて、どのようなツールが必要ですか?
- 言語モデルの上に機械学習システムを構築するために必要な才能やスキルは何ですか?
2. 言語モデルがMLOpsを補完する方法
私たちはまだモデルをトレーニングしています。それを行うケースはまだたくさんあり、言語モデルの影響について少なくともコメントする価値があると思います。
MLOpsの最も難しいことの1つは、多くのデータサイエンティストがネイティブのソフトウェアエンジニアではないことですが、ソフトウェアエンジニアリングのハードルを下げることができるかもしれません。
たとえば、自然言語をSQLのようなものに翻訳するということについては、データの発見などを行いやすくするための話題になっています。そして、それらは会話の一部や他の補完的な要素かもしれません。
ただし、言語モデルを使用して誰が従来のMLOpsに参加できるかのハードルを下げる方法、ソフトウェアの側面をよりアクセス可能にする方法、データの側面をよりアクセス可能にする方法などを考えると、それはまだ影響力があると思います。
大規模な言語モデルのアクセシビリティ
Stephen: GPT-3とLarge Language Models(LLMS)について話すと、一部の人々はこれらがMicrosoft、OpenAI、Googleなどの大企業向けのツールだと思っています。
これらのシステムをより小規模な組織、早期のスタートアップ、または小さなチームにもアクセスしやすくするトレンドはどのように見えていますか?私はこれらのものを活用して、消費者に提供したいと思っています。
David: ええ、実際には、これが言語モデルから出てきたもので最も興奮していると思います。私はいくつかの方法でフレーム化します。
他の誰かがLarge Language ModelsのためのMLOpsを解決してくれました。
ある程度の範囲では、彼らはそれらを提供し、バージョン管理し、反復作業を行い、すべての微調整を行っています。そして、私が働いて話をする多くの企業にとって、この形式の機械学習はこれまでに比べてはるかにアクセスしやすくなっています- 彼らは機械学習を行うために人を雇う必要もなく、PyTorchを学び、すべてのMLOpsを理解する必要もありません。
言語モデルの素晴らしいことは、OpenAIプレイグラウンドなどで良いプロンプトを書くだけでMVPを作成できることです。
それらの多くはまだデモですが、まだ製品ではありません。しかし、メッセージは同じです:アイデアから実際に動作するものに簡単に移行できるようになりました。
非常に表面的には、誰でもかなりクールなものを作ることができます。それほど難しくはありませんが、それは素晴らしいことです- 難しくないことは素晴らしいことです。
私たちは長い間、シンプルな機械学習モデルを作成するために非常に困難な作業をしてきましたが、これは本当に素晴らしいものです。
もう1つ触れることはこれです:私がフォードで働いていたとき、私たちが考えていた主要なテーマの1つは、データの民主化でした。
どのようにして会社全体がデータとやり取りできるようにすることができるのでしょうか?
民主化は大部分が話だけであり、言語モデルは一部の点で世界全体のデータの民主化を行ってきました。
それを少し具体的に説明するために、これらのモデルがどのようなものか考えると、GPT-3や他の類似の言語モデルのトレーニングは、Common Crawlと呼ばれるデータコーパスで行われます。それは本質的にはインターネット全体ですね。つまり、彼らはインターネット上のすべてのテキストをダウンロードし、そのテキストを予測するために言語モデルをトレーニングします。
私たちが今までになじみのある機械学習を行うためには、データの収集が必要でした。
フォードにいたとき、私たちは車にものを接続し、テレメトリを行い、データをどこかにダウンロードし、データレイクを作成し、そのデータを整理して利用可能にするためのチームを雇う必要がありました。車を変えてデータレイクを構築することが機械学習を行うための障害でした。
言語モデルの最も興奮する点の1つは、多くのものを接続する必要がないことです。テキストを補完してくださいと言うだけで、それができます。
過去の多くのスタートアップが抱えていた問題の1つは、冷たいスタートの問題でした。データがない場合、どのようにして機械学習を構築するのでしょうか?そして今、初日にそれができます、誰でもできます。
それは本当に素晴らしいことです。
もしMLOpsが解決されたら、スタートアップは何を心配するのでしょうか?
Stephen: それは非常に興味深いですね、なぜなら、これらのことを心配していないのであれば、スタートアップとして何を心配しているのでしょうか?
David: まあ、良いことと悪いことを教えましょう…
良いケースは、人々が考えることを心配することです。顧客中心です。
MLOpsの専門家やデータエンジニアを見つける方法、それが見つからないために非常に困難ですが、顧客が望むものを構築し、顧客の意見を聞き、クールな機能を構築することに心配を集中できます。そして、おそらく、より迅速に反復することもできるでしょう。
この世界のすべてのベンチャーキャピタリストが話題にするもう1つの側面は、守備範囲です- それについては触れません。しかし、LLMsで何かを構築するのが非常に簡単であれば、それはテーブルステークスとなります- それはあなたを競争相手から差別化するクールなものではなくなります。
信じられないほどのクレジットスコアリングモデルを構築することができれば、より良い保険プロバイダーになるか、より良いローンプロバイダーになるかもしれません。
テキスト補完は現在、ある程度の当然のことです。多くの人々が、競合他社が明日簡単に真似できないものを構築する方法について心配していますが、それは悪い問題ではありません。
先ほど言ったことに戻ると、人々が望んでいること、人々がそれとどのように対話しているかに焦点を当てることができ、少し異なる視点でフレームを組むことができます。
たとえば、このMLOpsツールの中には、モニタリングというものがあります。考えてみると、モデルを配信して、最後に行うのはモニタリングです。そうすることで、継続的に更新したり、改善したりできます。
しかし、私が協力しているMLOpsチームの多くにとって、モニタリングはまだ二の次になっています。なぜなら、まずモニタリングするものを持つ段階に至るまで取り組んでいるからです。しかし、モニタリングこそが実際にクールな部分です。システムを使用している人々のフィードバックを受け、改善するためにイテレーションを行っていくのです。
私が知っているほとんどの言語モデルの開発者は、既にモニタリングを行っています。なぜなら、彼らは5日で何かを配信しているからです。彼らは頭を悩ませるのではなく、既に顧客と協力して改善していくことに取り組んでいます。
私たちは、ユーザーのニーズを考慮しながらこれらのシステムをイテレーションすることに重点を置くことができます。つまり、PyTorchのような難しい部分やその他のことに比べて、ユーザーを考慮したシステムの改善に集中することができます。
大規模な言語モデルの登場後、データ中心の機械学習アプローチは変わったのでしょうか?
Stephen: LLMsの登場前は、システムの構築においてデータ中心のAIアプローチに関して熱狂がありました。このようなアプローチと、既に膨大なデータでトレーニングされた大規模な言語モデルとの関連性はどのようなものでしょうか?
David: そうですね、私が指摘したいと思うのは、
言語モデルによる置換の可能性が最も低い機械学習は、データ中心のものです。
Tectonにいたとき、彼らはフィーチャーストアを構築しました。私たちが取り組んでいた問題の多くは、詐欺検知、レコメンデーションシステム、クレジットスコアリングなどでした。それらのシステムの難しい部分は、機械学習ではなくデータの部分であることがわかりました。
世界中のユーザーについて多くの小さな事実を短時間で知る必要があります。このデータを使って解答を合成します。
その意味では、データはまだ問題の難しい部分です。誰かがクリックしたものや最後の5つの購入履歴を知る必要があるからです。これらの問題は解決されていません。それらの情報を全て知る必要があります。データを理解し、データと共に作業することに焦点を当てる必要があります。言語モデルがそれにほぼ影響を与えないとしたら、私は驚きます。
データを収集し、フィーチャーに変換し、予測に使用するために必要なデータについて質問をすることが重要です。言語モデルの側面では、データの問いには興味深い点があります。スタートするためにデータに対する焦点が少し緩和されるかもしれません。すべてをカリキュレートしたり考えたりする必要はありませんが、実際に人々がこれをどのように使用しているかについての質問をする必要があります。そして、私たちが話したモニタリングについての質問もあります。
Chatbotのようなものを構築する場合、製品の分析のように構築する必要があります。ユーザーの反応を追跡するために、この生成物に対するユーザーの応答などをトラッキングしなければなりません。そのため、データは非常に重要です。
それについて詳しく説明することもできますが、大規模な言語モデルを使用して特徴を構築する際にデータがブロックすることは、以前ほど頻繁にはありません。改善を続けるためには重要な要素かもしれませんが、以前のようにスタートするのにはブロックする要素ではありません。
企業はどのようにLLMsを使用して製品を迅速に出荷していますか?
Stephen: すごいですね。他のMLOpsコンポーネントについての私の考えを忘れないようにしようとしていますが、もう少し文脈を提供したいと思います…
あなたの経験から、企業はこれらのLLMsを使用してどのように迅速に製品を出荷しているのでしょうか?彼らと一緒に過ごした時間に基づいて共有したいユースケースはありますか?
David: ほとんどすべてです。驚くべきことですが、そこにはたくさんの事例があります。
明白な言語モデルの使用例が数多くあり、それに加えて迅速な出荷についても話し合います。
ライティングアシスタント
たくさんのツールがあります。たとえば、マーケティングやブログなどのコピーを作成するためのツールです。Jasper.AIやCopy.AIなどのツールがあります。これらは最も長い間存在しています。これはおそらく言語モデルを使用して実装するのが最も簡単なことでしょう。
エージェント
アクションを実行するのに役立つユースケースがあります。これは現在進行中の最もクールなことの一つです。アイデアは、自然言語でタスクを受け取り、それを実行するエージェントを構築することです。たとえば、メールを送信したり、APIを呼び出したり、新興のことを行ったりすることができます。まだ作業が進んでいますが、それは素晴らしいものです。
検索と意味的な検索
多くの人々が検索や意味的な検索などに取り組んでいます… たとえば、ノートを探したい場合、大量の情報を検索する方法を豊富に理解することができます。言語モデルは情報を消化し理解するのに優れているため、知識管理や情報の検索はクールなユースケースです。
私は広範な回答をします。ほとんどの業界製品には、言語モデルを使用して機能を組み込んだり改善したりする機会があります。やるべきことがたくさんあり、1日の時間が足りません。
Stephen: いいですね。これらは、DevToolに関連するユースケース、DevToolingなどですか?
David: 多くのことがありますが、DevToolの側面について考えると、コードをより速く書くのに役立つCopilotがあります。また、プルリクエストを作成するのを効率化するツールやドキュメントの作成を自動化するツールも見ました。ソフトウェア開発の全体的なユニバースも変化する準備ができていると思います。そのようなことです。
製品の本番でLLMを効率的に監視する
Stephen: 通常、MLプラットフォームまたはMLOpsについて話すとき、これらはさまざまなコンポーネントを緊密に結びつけるものです。以下があります:
- 特徴ストア
- モデルレジストリ
- データレイクからのデータ
データはこのワークフローを移動し、モデリングされ、展開されます。
しかし、今の場合、LLMがほぼ開発側を排除しているので…
これまでのように、他のモデルやシステムと置き換えるために、これらのシステムを効率的に本番で監視する方法をどのように見てきましたか?
David: そうですね、面白いですね。言語モデルの監視は、今では最も難しい課題の一つだと思います。開発が排除されているため、これが最も重要な課題になります。
過去に行ったほとんどの機械学習では、出力は構造化されていました(つまり、これは猫ですか?)。この監視はかなり簡単でした。猫かどうかを予測する頻度を見ることができ、時間の経過による変化を評価することができます。
言語モデルでは、出力は文であり、数値ではありません。文の良さを測ることは難しいです。以下のようなことを考える必要があります:
-
1
この数値は0.95以上ですか? -
2
この文は信頼性があり、魅力的ですか? -
3
フレンドリーであり、トキシックでなく、偏見を持たないですか?
これらの質問は、評価や追跡、測定が非常に困難です。人々は何をしているのでしょうか?多くの人々にとっては、最初の対応策は製品分析などのツールに行くことです。
これは、単に何かを生成してそれが好きかどうかを見る古典的なツールではなく、Amplitudeのようなツールに近いものです。クリックされるかどうか、ページから離れるかどうか、そこに滞在するかどうか、この生成を受け入れるかどうかなどを見ることができます。しかし、それは本当に全体像を与えるメトリックではありません。
これは、モデルの内部を理解するための詳細をほとんど提供してくれません。しかし、人々が取り組んでいる方法です。
まだそれに対する素晴らしい答えはありません。これらのものをどのように監視するのでしょうか?ユーザーがそれとどのようにやり取りしているかを見る以外に、モデルの良さをどのように追跡するのでしょうか?多くの人々にとって、これは開かれた課題です。
私たちはたくさんのMLモニタリングツールを知っています… 私たちのお気に入りのいくつかが、これらの質問にもっと直接的に役立てるように改善されることを願っています。しかし、私はまた、文の良さを評価し、モデルを出荷する前後にそれを測定するのを助ける新しいツールが出現する機会もあると考えています。これにより、時間の経過とともに自信を持つことができるでしょう。
現在、モデルの新しいバージョンを出荷する最も一般的な方法は、5〜6つのプロンプトでテストし、出力が良好に見えるかどうかを目視で確認してから出荷するという方法です。
Stephen:それは殺せますね。皮肉で驚くべきことです。
David:それは永遠に続かないと思います。
人々が目で5つの例を楽しんで、エラーボタンのプロダクション側に出荷しているという状況が幸せなのは、しばらくは続かないでしょう。
それは大胆ですが、現在はハイプが非常に大きいので、人々は何でも出荷するでしょうが、それが変わるのには時間がかかりません。
アクティブラーニングループのクローズ
Stephen:はい、まさにそのように進んでいることが興味深いです。それでは、コミュニティのいくつかの質問に入ります。
コミュニティからの最初の質問:GPT-3はMLOpsプラクティショナーにとって機会またはリスクですか?
David:機会とリスクは、ある意味では同じコインの2つの側面です。両方だと思います。
リスクから始めます。もはやモデルトレーニングに頼る必要があるワークロードの多くが、MLOpsサイクル全体を実行する必要があるとは思えません。今はまだ言語モデルがすべてをできるわけではありませんが、多くのことができますし、時間が経つにつれてさらに多くのことができると考える理由はありません。
もし私たちに汎用的なモデルがあれば、なぜMLOpsが必要なのでしょう?モデルをトレーニングしていなければ、たくさんのMLOpsがなくなります。したがって、それに注意を払っていないと、行うべき作業量が減少するリスクがあります。
今、良いニュースは、現在はMLOpsの実践者が十分にいないことです。ほとんど近くにもいませんね。そして、世界で行う必要のあるMLOpsの量に比べて、現在のMLOpsの実践者数が多すぎるということにはならないと思います。だから、あまり心配しないでください、それが私が言いたいことだと思います。
しかし、もう一方には、言語モデルのアプリケーションを構築する際の課題はたくさんあります。たくさんの新しいツールもあります。そして、コミュニティの質問に進むにつれて、私たちはそれについて議論していくと思います。しかし、私はそれを理解し、さらに推進することができる人にとって、本当の機会があると思います。
MLOpsの人でありながらデータサイエンティストではない場合、言語モデルを使用することができます。もしあなたがモデルを本番環境にビルドしてプッシュするエンジニアであるならば、もしかしたらデータサイエンティストはもう必要ないかもしれません。データサイエンティストが心配する必要があるかもしれません。MLOpsの人、あなたが全体を構築することができるかもしれません。あなたは言語モデルの上に構築することで、フルスタックエンジニアとして突然出現することになります。インフラストラクチャやソフトウェアを構築します。
私は、言語モデルを活用したアプリケーションのフルスタック実践者になるための本当の機会があると思います。あなたはMLシステムの動作原理を理解しており、それを実現できる位置にいます。だから、それは機会だと思います。
LLMの時代において、MLOpsの実践者は何を学ぶべきですか?
Stephen: それは本当にいいポイントですね。チャットに質問がありますが…
大規模言語モデルの時代に、MLOpsの実践者は実際に何を学ぶべきであり、初心者としてどのスキルを重視すべきでしょうか。
David: そうですね、いい質問ですね…
あまり過激なことを言いたくはありません。言語モデルによって大きく影響を受けない機械学習のユースケースもたくさんあります。フラウド検出などはまだ行われます。これらは、誰かが独自のデータを用いてモデルをトレーニングすることになるでしょう。
MLOpsや機械学習の開発やトレーニング、そしてフルライフサイクルに情熱を持っているならば、以前と同じMLOpsのカリキュラムを学ぶことです。ソフトウェアエンジニアリングのベストプラクティスを学び、MLシステムがどのように構築され、本番化されるのかを理解することです。
それに加えて、GPT-3のPlaygroundに行ってモデルを試してみるというのもいいと思います。いくつかのユースケースを構築してみてください。デモもたくさんあります。何かを構築してみてください。簡単ですよ。
個人的には、私はVCです… もうほとんど技術的ではないのですが、自分の余暇に使うために自分自身で4、5つのアプリを作って遊んでいます。どれだけ簡単か信じられないくらいです。
言語モデルで何かを構築してみてください。それは簡単で、たくさん学ぶことができるでしょう。おそらく、その簡単さに驚くことでしょう。
私は、自分の通話の要約を作成するために通話のテキストを取得するものや、研究論文に対して質問をすることができるものなどを持っています。これらはシンプルなアプリケーションですが、何かを学ぶことができます。
私は、現在の状況でこれらを構築して反復する感覚にある程度慣れていることが良いアイデアだと思います。それは楽しいことでもあります。だから、MLOpsの分野にいる人ならば、ぜひ試してみてください。自由な時間ですが、楽しんでください。
大規模言語モデルを適切なスケールでホストするための最適なオプションは何ですか?
Stephen: 素晴らしいですね。それでは提案に感謝します。
では、次の質問に移りましょう。コミュニティからの質問です。大規模言語モデルを適切なスケールでホストするための最適なオプションは何ですか?
David: これは難しい質問ですね…
言語モデルの最大の課題の一つは、パラメータが300億を超えるあたりです。GPT-3は1750億のパラメータを持っています。
現在の最大のGPUでも、パラメータが300億を超えるあたりでモデルがフィットし始めます…。
現在市場で最も大きなメモリを持つGPUは、80GBのメモリを搭載したA100です。GPT-3はそれには収まりません。
単一のGPU上でGPT-3を推論することはできません。それは非常に複雑になります。単一のGPUに収まらないモデルの推論を行うには、モデルの並列性を考慮する必要があり、非常に困難な作業です。
私の短いアドバイスは、必要がない限り試さないことです。より良い選択肢があります。
良いニュースは、多くの人々がこれらのモデルを単一のGPUに収まる形に変えるために取り組んでいるということです。例えば、[2月28日に録音中]、FacebookのLLaMA論文が公開されたばかりで、それは単一のGPUに収まり、GPT-3と同様の機能を持っています。
他にも、50億パラメータモデルから30までのモデルなど、類似のものがあります。
私たちが持っている最も有望なアプローチは、単一のGPUに収まるGPUまたはモデルを見つけ、過去のモデル展開に使用したツールを使用してホストすることです。お気に入りのものを選ぶことができます。たくさんの選択肢がありますが、BentoMLのチームのサービング製品は優れています。
他の人々も、それを置くために非常に大きくてパワフルなGPUを手に入れなければなりません。しかし、少なくとも1台のマシンに収まるものを選ぶ限り、それほど異なることではないと思います。
LLMs for MLOpsは主流になるのでしょうか?
Stephen: ああ、それを共有してくれてありがとう。
次の質問は、LLMs for MLOpsが主流になるかどうか、そして従来のNLP用途のMLOpsよりもどのような新たな課題に対応できるのか、というものです。
David: うーん、どう答えても誰かを怒らせてしまう気がします。でも、これはいい質問ですね。これには簡単なバージョンがあります。多くのMLモデルやアプリケーションを構築するために、言語モデルの上に構築することに関しては、もはやモデルをトレーニングする必要はありませんし、自分自身のモデルをホストする必要もありません。そのようなことはすべてなくなります。つまり、簡単なのです。
言語モデルを構築するためには、必要なことがたくさんあります。新しい質問を自分自身に投げかけるべきです。
-
1
必要なものは何ですか? -
2
新しい質問は何ですか? -
3
トレーニングやホスト、サービングやテストなどではない新しいワークフローは何ですか?
Promptingは新しいワークフロー言語モデルです…。良いプロンプトを作ることは、良いモデルを作ることの非常に簡単なバージョンです。まだ実験的です。
プロンプトを試してみてうまくいくかどうかを確認します。それがうまくいかない場合は、調整してみます。ハイパーパラメータの調整のようなものです。
試行錯誤し、試してみて、構築してみて、好きなプロンプトを作り出して、それを押し出すなどをします。したがって、一部の人々はプロンプトの実験に集中しています。そして、それは妥当なアプローチだと思います。ウェイトとバイアスについて考える方法はモデルの実験です。
プロンプトの実験については、バージョン管理やうまくいったものなどを追跡します。これは独自のツールカテゴリーであり、Prompt Engineeringが機械学習の劣った形態であるかどうかは別として、それは独自のツールセットを持ち、これまでのMLOpsとはまったく異なるものです。このワークフローを考えて改善するための多くの機会があると思います。
評価とモニタリング、言語モデルの出力の品質を評価するための新しい課題について触れました。
これは、過去のMLモデルのモニタリングとの類似点もありますが、独自の違いがあります。私たちが問いかけている質問は異なります。私が言ったように、これは製品分析の一部です。これが好きですか、嫌いですか?キャプチャする目標は、少し異なる方法でモデルを微調整するかもしれません。
モニタリングとMLOpsについては知っていると言えますが、言語モデルのモニタリング方法については少なくともいくつかの新しい問題に答える必要があると思います。
たとえば、何が似ているのか?それは実験的で確率的です。
なぜDevOpsではなくMLOpsなのでしょうか?これはまず最初に尋ねるべき質問です。それは、MLが伝統的なソフトウェアとは異なる確率と分布の奇妙なセットを持っており、それは今も同じです。
ある意味では、類似性には大きな重なりがあります。私たちがやっていることの多くは、確率的なソフトウェアと一緒に作業する方法を見つけることです。違いは、もはやモデルをトレーニングする必要がないことです。代わりにプロンプトを書きます。
ホスティングやインタラクションの課題は異なる…新しい略語が必要かどうかは疑問ですが、それが面倒であることは、最初からそれを試みるべきではないという意味ではありません。
略語に関係なく、解決する必要がある新しい課題と、あまり対処する必要のない古い課題が確かにあります。
Stephen: 私はただ、既に開発者たちがメモを取っている実験の部分に触れたかっただけです。プロンプトエンジニアリングの多くが行われています。それ自体は信じられないことです。
David: MLの人になるよりもプロンプトエンジニアになる方が簡単です。もしかしたら。私は機械学習の学位を持っているけど、プロンプトの学位は持っていないからそう言っているだけです。でもそれは確かにスキルセットであり、管理や作業に関わるのは良いスキルであり、明らかに価値のあるものです。だから、なぜやらないのでしょうか?
GPT-3には何らかのオーケストレーションが必要ですか?
Stephen: 絶対に。では、もう一つの質問をチェックしましょう。
GPT-3はオーケストレーションまたはパイプライン化が必要ですか?彼らの理解では、MLOpsは他の何よりもオーケストレーションのタイプのプロセスだと感じているようです。
David: そうですね、それについては2つの考え方があります。
バッチで発生する可能性のある言語モデルのユースケースがあります。たとえば、私のアプリのすべてのレビューを取り出し、関連するユーザーフィードバックを抽出して報告するなどです。
新しいデータを取得し、App Storeからの新しいレビューを全て取り出し、言語モデルを並列または順次に通過させ、その情報を収集し、必要な場所に送信するためのオーケストレーションの課題は変わりません。以前はモデルを内部のエンドポイントにホストしていた場合、現在はOpen.AIのエンドポイントにホストされているだけです。どうでもいいです。同じことで、課題も同じです。
推論時には、チェーニングや言語モデルでのそのようなことについて多くの人々が話しています。その中心的な洞察は、私たちが実際に行っているユースケースの多くが、モデルとの反復的なやり取りを含んでいることです。私がプロンプトを書き、言語モデルがそれに基づいて何かを言い返し、さらに明確にするために別のプロンプトを送信する。それはオーケストレーションの問題です。
基本的に、モデルと何度かデータをやり取りすることはオーケストレーションの問題です。だから、言語モデルには確かにオーケストレーションの課題があります。それらのいくつかは以前と同じように見えます。いくつかは新しいものです。オーケストレーションを行うためのツールは、引き続き使用すべきツールです。Airflowを使用しているなら、それは合理的な選択だと思います。Kubeflowパイプラインを使用しているなら、それも合理的な選択だと思います。ライブなものを行っている場合は、現在LangChainを使用しているような少し新しいツールが必要かもしれません。
それは、オーケストレーションやワークフローを支援するTemporalや他のツールのような、多くのオーケストレーションの要素と似ています。だから、それは良い洞察だと思います。これらのシステムを適切に連携させて必要なタイミングに動作するようにするためには、まだ多くの類似の作業が必要です。それはソフトウェアエンジニアリングであり、常に必要な一連のタスクを実行し、それを頼りにできるものを構築することです。MLOpsであろうとDevOpsであろうと、信頼できる計算フローを構築することです。
それは良いソフトウェアエンジニアリングです。
LLMから最大限の効果を得るために必要なMLOpsの原則は何ですか?
Stephen: MLOpsには独自の原則がありますよね。再現性について話し、コラボレーションについても話していますね。システム内にいるチームがこれらの大規模言語モデルの潜在能力を適切に活用するためには、どのようなMLOpsの原則に従う必要がありますか?
David: 良い質問ですね。実際にはまだ分かっていませんが、いくつか似たような質問があると思います…
MLOpsとDevOpsから学んだことの多くは、これを実現するための原則を示しているだけです。そして、結局のところ、私がMLOpsとDevOpsの両方について考えるとき、それはある種のソフトウェアエンジニアリングだと思います。保守性と信頼性、再現性、スケーラビリティを持つものを構築できるかどうかです。
言語モデルOpsに特化した製品を構築したい場合、おそらくプロンプトのバージョン管理が必要です。同じバージョンのプロンプトとモデルのゼロ温度を持っていれば、再現性があります。
また、問題の範囲は比較的小さいです。ですので、新たに学ぶ必要があることはあまりないと思います。ただ、もう少し考える必要があると思います。言語モデルに関しては、これから進むにつれて従うべきすべてのことをまとめたガイドラインが出てくるでしょう。ただ、まだ誰も書いていないと思うので、私たちのうちの一人が書いてみるべきかもしれません。
生成AIアプリケーションの規制
Stephen: そうですね、チャンスですね。それを共有してくれてありがとう、David。
コミュニティからの次の質問です。ユーザー向けのサービスに生成AIモデルを埋め込む際に、小規模なDevToolチームが意識すべき規制やコンプライアンスの要件はありますか?
David: いい質問ですね…
考慮に値することがいくつかあります。ただし、私は法律家ではないので、私のアドバイスを鵜呑みにしないでください。私はすべてを知っているわけではありません。
いくつかの課題があります:
- OpenAIと外部サービス:現在、言語モデルをホストしている多くの人々は外部サービスです。データを送っています。ChatGPTに対して行われている積極的な変更のため、AmazonエンジニアがChatGPTにコードを送信し、それが微調整され、現在は逆戻りできるようになりました。
外部サービスを使用するときは、自分のデータを他の誰かに送信していることを忘れないようにする必要があります。そして、法的または会社の影響によって、それが適切でないかもしれないということを考慮する必要があります。
- 欧州連合(EU):EUのAI法が今年成立する予定であり、モデルへのバイアスの導入やバイアスの測定などに関してかなり厳しい規定があります。モデルを所有していない場合、バイアスまたは有害なコンテンツを生成する長い歴史があることを認識しておく価値があります。これに対してテストや認識を行わない場合、コンプライアンスの影響があるかもしれません。
そして、コンテンツを生成する際に有害なコンテンツやバイアスのあるコンテンツを生成していないことを確認する方法をどのように確保するか、という新たな課題があると思います。私たちはこれらのモデルのトレーニングに使用されるデータを所有している世界に慣れているため、バイアスのある要素を取り除くために反復し、スクラブしようとすることができます。それが事実でない場合、法制度の進化に準拠した方法でこれらのシステムを使用することが可能なのか、という新たな質問が生じます。
一般的に、AIに関する法規制はまだ比較的新しいです。EUのAI法が成立した後は、多くの人々が多くのことを解決しなければならないと思います。
LLMのテスト
Stephen: そして、LLMのモデルテストについて興味深いことを言いましたね。誰かがそれを解決したことはありますか?
デイビッド:たくさんの人々が試行しています。興味深いことを試している人々がいることは知っています。学問界では有害性を測定するための指標が作られています。テキストの出力を評価するための手法や指標が存在します。ジェンダーバイアスなどについても同様のテストが行われてきました。つまり、既にそういった手法が存在します。
モデルをテストするためにモデルを使用している人々もいます。例えば、言語モデルを使用して他の言語モデルの出力を確認し、それが「憎悪的または差別的」であるかどうかを判断することができます。そして、それらはかなり優れています。
要するに、まだ初期段階であり、評価とテストのための一つのツールを指し示すことはできませんが、少なくとも現時点では原始的な形でこの問題に取り組むための構築要素は存在しています。ただし、現在は困難です。
「私はこれが現在の人々にとって最も重要なチャレンジの一つだと思います。」
資源制約のある生成型AI
スティーブン:モデルが他のモデルを評価するという話をすると、私は最新のプラットフォームでモデルが評価を行っているチームを思い浮かべます。これらのツールに関しては、ビジネスにおいて非常に有望な領域であるでしょう。
次の質問に移りますが、それはすべて最適化の一部だと思います…
私たちはそれらをLLMと呼ぶ理由がありますし、いくつかのツールについて話されましたが、最新のものはFacebookのLLaMAです。
時間の経過と共に、資源制約のある開発向けにより多くの生成型AIモデルが最適化されるようになるでしょう。資源は限られていますが、それをプラットフォーム上でホスティングしたいと考えています。
デイビッド:はい、これは非常に重要だと思います。おそらく、私たちが見るであろう最も重要なトレンドの一つかもしれません。まだ初期段階ではありますが、この問題に関心を持つ理由はたくさんあります。
- コスト – これを行うために数千のGPUを運用するのは非常に高価です。
- レイテンシ – ユーザーとやり取りする製品を作成している場合、ページの読み込みにかかるミリ秒ごとにユーザーの体験に影響を与えます。
- GPUを利用できない環境 – 集団を携帯電話やその他の場所に持ち歩くことはできません。
画像生成においては多くの開発が進んでいます。短期間で性能が向上しました。私のMacBookでも画像を素早く生成できます。
言語モデルは現在もっと大きく、より困難です。まだまだ改善が必要ですが、約束された技術もたくさんあります。例えば、OpenAIの最大のモデルが特定のタスクに優れているが最小のモデルがそうではない場合、最大のモデルをそのタスクを10,000回行わせ、最小のモデルを調整することで改善することができます。
要素は存在していますが、この問題を解決するために必要なツールがまだ揃っていない分野でもあります。私が最も興奮している分野でもあります。これらの非常に大きなインパクトを持つモデルの能力を、コストやレイテンシの制約や環境の制約に合わせて縮小することを、どのように簡単かつ容易にすることができるのでしょうか。
LLMを利用できるのはどの産業で、どのように統合できるのでしょうか?
スティーブン:そうですね、実際にはアクティブラーニングや他の技術に対する考え方も時間と共に変わっているようです。大規模な言語モデルがより小さなモデルを微調整したり、訓練したりできるのであれば、それは素晴らしい連鎖的な事態です。
それを共有してくれてありがとう、デイビッド。
次のコミュニティの質問に移ります。GPT-3の言語生成能力を最も活用できる産業はどのようなものであり、それをどのように統合できるのでしょうか?
デイビッド:まずは明らかな部分から始めて、それから少し明らかではない部分に入っていきます。それは簡単だと思います。
今や、言語モデルによるコンテンツ生成が必要不可欠です。
それは明らかです。
例えば、コピーライティングやマーケティングは、以前とは根本的に異なる産業になりました。その理由は明らかです。品質の高いコンテンツを製造するのは、以前に比べて格段に安くなっています。ほぼ無限のスケールでカスタマイズされた品質の高いコンテンツを短時間で作成することができます。
その産業のほとんどの側面が多少変わり、多少迅速に言語モデルを取り入れるべきであると信じるのは難しいことではありません。これまでほとんど見てきたとおりです。
製品の説明や製品の写真、マーケティングコンテンツやコピーなどを生成する人々が存在します。それが最も大きく明らかなブレイクスルーであるのは間違いありません。それは大きな明らかなフィットです。
次に進むと、少し答えが悪くなると思います。おそらく誰もが言語モデルを使用する方法を考えるべきですが、ユースケースはおそらく明らかではありません。例えば、誰もがチャットボットが必要だとは限りませんし、誰もがテキストのオートコンプリートが必要だとは限りません。
ただし、それはソフトウェアエンジニアがCopilotを使用してより効率的になることを意味するのか、自社のドキュメンテーションや製品のドキュメンテーションが言語モデルでインデックス化されることにより、より優れた内部検索機能を持つことになるのか、それはおそらくほとんどの人に当てはまるでしょう。そして、もっと複雑になると、アクションの自動化や他の自動化の機会があり、ほぼすべての形態に入り込むことになります。
言語モデルによって完全に変革される明らかなものがあり、コンテンツが生成される場所など、ある意味で完全に変革的でなければならないものがあります。そして、ほぼすべての産業に適用される可能性のある潜在的な変更があります。
LLMの展開を支援するツール
スティーブン:わかりました、それを共有してくれてありがとう。セッションをまとめる前に最後の2つの質問だけあります。
今、特にこれらのモデルの展開を容易にする本当に変化を感じるツールはありますか?
デイビッド:LLMOpsについて文句を言っています。その領域で活動しているいくつかの企業を紹介します。プロンプトやプロンプトの指示などをサポートするための最大のツールはLangChainです。非常に人気があります。
彼らにはPythonのライブラリとJavaScriptのライブラリがあります。現在、彼らは驚異的な速度でイテレーションを行っています。そのコミュニティは本当に素晴らしく活気があります。始めようとしているなら、それが最高のスタート地点だと思います。
他のツールとして、DustやGPT Indexなどもあります。これらは、言語モデルと実際に対話するためのプロトタイプを作成するのに役立ちます。
他にもいくつかのツールがあります。評価とモニタリングについてたくさん話しましたが、Humanloopという会社やHoneyHiveという会社、そして現在のYCバッチには4〜5社の会社があります。個別に挙げないことで怒られるかもしれませんが、彼らはみんなそこで本当に素晴らしいものを作っています。
評価やプロンプトの管理、コストの管理などに関連する多くの新しいものが出てきています。だから、それらのツールを見て、どのような新しい支援が必要なのかを知っておくことをおすすめします。
GPT、GPT-3、およびGPT-4とのMLOpsの未来
スティーブン:素晴らしい。ありがとうございます、デイビッド。後でリリースされるポッドキャストエピソードのショーノートにもそれらを残してください。
デイビッド、GPT-3やGPT-4を含めたMLOpsの未来について最後に何か言葉はありますか?
デイビッド:私は何年もMLOpsに取り組んできましたが、これが今までで最も興奮している時です。なぜなら、これが私たちが比較的にニッチな分野から、誰もが影響を受け、すべての製品に影響を与える機会になるからです。それによって多くのことが変わります。
しかし、初めてのことですが、私はMLが本当にML Opsによって世界中の誰もが自分の製品を変えるためにMLを使用できるようになると期待してきました。そして、これは一番近いと感じます。私たちは、門戸を下げることによって、誰もがそれを行うことができます。だから私は、今、私たちはMLを大衆にもたらすという大きなチャンスがあると思います。そして、私たちが共同体としてそれを実現できることを願っています。
まとめ
Stephen: 素晴らしいですね。私もその景色自体に興奮しているので、本当にありがとうございます。Davidさん、どこでオンラインで見つけたり、連絡を取ったりできますか?
David: はい、LinkedInとTwitterの両方が素晴らしいです。
Twitterでは@DavidSHershey、LinkedInではDavid Hersheyとなっています。どうぞお気軽にメッセージを送ってください。言語モデル、MLOps、その他何でもお話できます。そして、船を沈めることもできます。
Stephen: 素晴らしいですね。ここでMLOps Liveでは、2週間後にまた戻ってきます。2週間後には、Leanneさんと話をする予定で、MLOpsによって組織の障壁をどのように乗り越えるかについて話し合います。まだまだMLOpsの話題がありますので、ぜひお見逃しなく。Davidさん、セッションへの参加ありがとうございました。お時間いただき、お仕事も感謝しています。本当に素晴らしかったです。
David: お招きいただき、本当に楽しかったです。
Stephen: 素晴らしいですね。では、さようなら、お気をつけて。
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles