Dover Castle
© Copyright Colin Smith and licensed for reuse under this Creative Commons Licence.
前回は、ChatGPTとDALL-E3のコンテンツポリシーを確認しました。
本日は、2023年7月18日にMeta(旧Facebook)が公開したオープンソースの大規模言語モデルである、Llama-2について調べてみました。
Llama-2について、もちろん関心はあったのですが、AzureのOpenAIサービスおよびPrompt Flow(これは、厳密にはAzure OpenAIサービスの一環ではなく、Azure Machine Learningの機能になりますが)、ChatGPTのCode Interpreter(後のChatGPT Advanced Data Analysis)、GPT-4V、DALL-E3と、どんどんいろいろな機能がリリースされてくるので、そこまでとても手が回りませんでした。
絵心があれば、DALL-E3を使いこなすことにもっと時間を割くのですが、努力しても他の方がDALL-E3を使って作り上げ発表しているような作品はできそうにないので、「次、何をしてみようか?」と考えたとき、「そうだ!Llama-2が残っていた!」ということで、今回はLlama-2を取り上げることにした次第です。
まず、Llama-2とは何か、GPT-4と何がどのように違うのかを、ChatGPT(WebPilotおよびLinkReaderプラグイン使用)に尋ねてみました。
なお、以下では、生成系AIの入出力と、私自身のコメントを区別するため、私のコメントは文字色を緑にしています。
私#1:
OpenAIのGPT-4とMetaのLlama-2の違いについて教えてください。
ChatGPT#1:
LLaMa 2はMetaが設計したLLMで、GPT-4と同じような自然言語処理(NLP)のニューラルネットワークを使用しています。
MetaはOpenAIのB2Cビジネスモデルとは異なり、オープンソースのモデルアプローチを採用しています。Metaは、他の企業が自分たちのアプリケーションで使用するための業界でのリーディングモデルになることを目指しています。
LLaMa 2は優れたプレーヤーであり、パラメータサイズが7B、13B、または70Bとなっています。しかし、OpenAIのChatGPTは、1.76兆のパラメータで圧倒的にリードしています。GPT-4の前身であるGPT-3でさえ、一部のタスクでLLaMa 2を上回ることができます。
考察ポイント
1.ビジネスモデルの違い: MetaはOpenAIのB2Cアプローチとは異なり、B2Bに焦点を当てています。これはどのように業界に影響を与えるでしょうか?
2.データのアドバンテージ: MetaはFacebookとInstagramという広範なデータソースにアクセスできる能力を持っています。これはAIモデルの訓練にどれだけ有利でしょうか?
3.技術的なギャップ: 現時点でGPT-4はLLaMa 2よりもはるかに強力ですが、これが今後どのように変わる可能性があるでしょうか?
私#2:
考察ポイント1について詳しく解説してください。
ChatGPT#2:
考察ポイント1: ビジネスモデルの違い
OpenAIとMeta(旧Facebook)は、大規模言語モデル(LLM)に対する異なるビジネスモデルを採用しています。OpenAIはB2C(ビジネス・トゥ・カスタマー)モデルに焦点を当て、一般のエンドユーザーに向けた公開されたチャットボットツールを提供しています。一方で、MetaはB2B(ビジネス・トゥ・ビジネス)モデルに焦点を当て、他の企業が自分たちのアプリケーションで使用するAIモデルを開発しています。
業界への影響
- アクセシビリティ: OpenAIのB2Cモデルは、一般の人々が容易にAIの恩恵を受けられるように設計されています。一方、MetaのB2Bモデルは、企業が特定のニーズに対応するカスタマイズされたソリューションを開発することを可能にします。
- 収益源: B2Cモデルは、多くの個々のユーザから少額の収益を上げることが多いです。一方、B2Bモデルは、少数の大企業から大きな収益を上げる可能性があります。
- イノベーション: B2Bモデルは、特定の業界やニッチな用途に特化したイノベーションを促進する可能性があります。一方、B2Cモデルは、広範な用途と一般的なニーズに対応するイノベーションを促す可能性があります。
- データプライバシー: B2Cモデルでは、エンドユーザーのデータプライバシーがより重要な課題となる可能性があります。B2Bモデルでは、企業間でのデータ共有とセキュリティが主な焦点となるでしょう。
- 競争力: MetaがB2Bに特化することで、OpenAIがまだ手を出していない市場やアプリケーションで競争優位を築く可能性があります。
このように、ビジネスモデルの違いはそれぞれの企業がどのように市場に参入し、どのように収益を上げ、どのようにイノベーションを推進するかに大きな影響を与える可能性があります。
私#3:
考察ポイント2について詳しく解説してください。
ChatGPT#3:
考察ポイント2: データのアドバンテージ
データの重要性
大規模言語モデル(LLM)の訓練と効果的な運用には、大量のデータが必要です。データは、モデルが言語のパターンを理解し、より正確な予測と解釈を行うための基盤となります。
Meta(旧Facebook)のアドバンテージ
- 広範なデータソース: Metaは、Facebook、Instagram、WhatsAppなど、多くのプラットフォームを所有しています。これにより、多様なデータにアクセスできるわけです。
- ユーザ行動の洞察: 社会的なインタラクション、ユーザの興味、行動パターンなど、多角的なデータを収集できます。これは、モデルが「理解」するコンテキストを豊かにする可能性があります。
- リアルタイムデータ: Metaのプラットフォームは、リアルタイムで大量のデータを生成します。これは、時系列データやトレンドの予測に有用です。
業界への影響
- カスタマイズ: Metaは、特定の業界や用途に合わせてデータをフィルタリングし、カスタマイズされたモデルを提供する能力があります。
- 信頼性と精度: 広範で多様なデータセットは、モデルの信頼性と精度を高める可能性があります。
- データの倫理的な問題: 一方で、Metaが所有する広範なデータにはプライバシーと倫理的な問題が伴います。どのデータがどのように使用されるかについての透明性が求められます。
- 競争力: 豊富なデータアクセスは、Metaが特定のニーズに対応する独自のソリューションを開発し、市場で競争優位を築く可能性を高めます。
データは新しい「石油」とも言われており、そのアクセスと利用は企業が競争力を維持する上で非常に重要です。Metaがこれらのデータをどのように活用し、どのようにそれがLLMの開発と展開に影響を与えるかが注目されます。
私#4:
考察ポイント3について詳しく解説してください。
ChatGPT#4:
考察ポイント3: 技術的なギャップ
大規模言語モデル(LLM)の領域において、OpenAIとMeta(旧Facebook)はそれぞれ異なる技術的な強みと弱点を持っています。これらのギャップは、各企業がどのように市場で競争し、どのようにイノベーションを推進するかに影響を与えます。
OpenAIの技術的なギャップ
- 汎用性: OpenAIのGPT-4は、多くの自然言語処理(NLP)タスクに対応する汎用モデルです。しかし、特定の業界や用途に特化したモデルは少ない。
- スケーラビリティ: GPT-4は非常に大規模なモデルであり、そのスケーラビリティは高い。しかし、そのサイズが大きいため、運用コストも高くなる可能性があります。
- データ依存: OpenAIは、主に公開されているデータを使用してモデルを訓練しています。これにより、特定の業界の内部データに基づいたカスタマイズが限られる可能性があります。
Meta(旧Facebook)の技術的なギャップ
- 特化モデル: Metaは、特定の業界や用途に特化したモデルを開発する能力があります。しかし、これが汎用性を犠牲にする可能性があります。
- データアクセス: Metaは、自社プラットフォームから得られる広範なデータにアクセスできます。しかし、このデータの使用はプライバシーと倫理的な問題に直面する可能性があります。
- リアルタイム処理: Metaのプラットフォームはリアルタイムデータを生成するため、リアルタイムの分析と反応が可能です。しかし、これには大量の計算リソースが必要であり、コストがかかる可能性があります。
業界への影響
- 競争力: これらの技術的ギャップは、各企業がどのような市場ニッチに焦点を当てるかを決定します。
- イノベーション: 技術的なギャップを埋めるための努力は、新しい技術やアプローチの開発を促進します。
- コラボレーションとパートナーシップ: 一方の企業が持っていないものを補完するために、他の企業や研究機関との協力が促進される可能性があります。
技術的なギャップは、各企業がどのように市場で競争し、どのように価値を提供するかに影響を与えます。これらのギャップを理解することは、未来の技術的な進展と市場動向を予測する上で重要です。
私#5:
要するに、GPT-4もLLama-2も同じような自然言語処理のニューラルネットワークを用いた生成系AIだけれども、ビジネスモデルが違い、すみわけ可能という結論でよいですか?
ChatGPT#5:
はい、その通りです。GPT-4(OpenAI)とLLama-2(Meta)は、どちらも自然言語処理(NLP)の分野で高度な生成系AIモデルを提供していますが、ビジネスモデル、データアクセス、特化領域などで異なる強みと弱点があります。
OpenAIは、汎用的なNLPタスクに強く、一般的な用途で広く使用されるモデルを提供しています。一方で、Metaは特定の業界や用途に特化したモデルを開発する能力があり、自社プラットフォームから得られる広範なデータを活用できる点が強みです。
これらの違いにより、両社は異なる市場ニッチや用途に焦点を当てることができ、市場でのすみわけが可能です。それぞれが提供する価値と、その価値がどのように市場や業界に適用されるかが、競争力とイノベーションに影響を与えます。
私#6:
OpenAIのChatGPTはどちらかというとFoundation modeとしてOpenAIでトレーニングされたモデルをas isで使うのに対してLlama-2は、ユーザが大量にFine tuningすることを前提にしている気がするのですが、どうでしょうか?
ChatGPT#6:
その観察は非常に洞察に富んでいます。OpenAIのChatGPTは、一般的な用途に対応するように設計されており、多くの場合、特別な調整(Fine-tuning)なしでそのまま使用されます。これは「Foundation mode」とも呼ばれ、基本的なNLPタスクに対して高い性能を発揮します。
一方で、Llama-2(Meta)は、特定の業界や用途に特化したモデルを開発する能力があります。これは、ユーザが特定のニーズに合わせてモデルをFine-tuningすることを前提としている可能性が高いです。Metaが持つ広範なデータと、そのデータを活用したカスタマイズの自由度は、Fine-tuningを容易にし、特定の用途に適した高度なモデルを生成する可能性があります。
このような違いは、確かにビジネスモデルとも関連しています。OpenAIは、多くの人々がAIの恩恵を受けられるように一般的なモデルを提供する方針であるのに対し、Metaはよりカスタマイズと特化を重視している可能性があります。この違いにより、両者は異なる市場ニッチで競争し、それぞれが持つ技術的なギャップを埋める方向でイノベーションを推進していくでしょう。
次にMicrosoft EdgeのCopilot(with Bing Chat)に、AzureでのLlama-2サポートについて尋ねてみました。
私#7:
Microsoft AzureでのLlama-2のサポートについて教えてください。
Copilot#1:
マイクロソフトとMetaは、AzureとWindowsで大規模言語モデル(LLM)のLlama 2ファミリーのサポートを発表しました。Llama 2は、開発者や組織が生成AIベースのツールやエクスペリエンスを構築できるよう設計されています。
Azureのお客様は、フロンティアモデルやオープンモデルのプラットフォームとして最も幅広く採用されているAzure上で、7B、13B、70BパラメータのLlama 2モデルをより簡単かつより安全に微調整しデプロイできるようになります。また、LlamaはWindows上でローカルに実行できるよう最適化される予定で、Windows開発者はONNX RuntimeにてDirectML実行プロバイダーを指定することでLlamaが利用できるようになります。
Llama 2は現在パブリックプレビュー段階にあるAzure AIモデルカタログに追加された最新のモデルです。このカタログにより、ユーザはLlama 2を運用する際にすべてのインフラの依存関係を管理する必要がなくなります。また、DeepSpeedやONNX Runtimeといった強力な最適化技術などによってモデルの微調整や評価がすぐにできるようになっており、モデル微調整の速度を大幅に向上させることが可能です。
以上がMicrosoft AzureでのLLAMA2サポートの詳細です。他に何かご質問がありましたらお知らせください。
私#8:
AzureでLlama2を利用する場合の最小構成のリソース条件と、その費用について教えてください。
Copilot#2:
AzureでLlama2を利用するための最小リソース要件は以下の通りです:
- GPU: Llama2モデルの微調整、評価、デプロイには、V100 / A100 SKUのGPUコンピューティングが必要です。
- RAM:
7Bモデルには少なくとも8GBのRAMが必要です。
13Bモデルには少なくとも16GBのRAMが必要です。
70Bモデルには少なくとも32GBのRAMが必要です。
- ストレージ: LLaMAの最小ストレージ要件は1TB NVMe SSDで、高速な読み書き速度でモデルファイルとデータファイルを保存できます。
費用については、Llama2インスタンスをAzureでデプロイしようとすると、最小VMは「Standard_NC12s_v3」(12コア、224GB RAM、672GBストレージ)で、これは時間あたり6.5ドル、月あたり4K+ドルかかると表示されます。ただし、Llama2はAzureプラットフォームを使用する開発者に対して追加費用なしで提供されることが発表されています。具体的な費用はAzureの料金体系や利用するリソースによりますので、詳細はAzureの公式ウェブサイトやサポートにご確認ください。他に何かご質問がありましたらお知らせください。よろしくお願いいたします。
私#9:
「ただし、Llama2はAzureプラットフォームを使用する開発者に対して追加費用なしで提供されることが発表されています」という説明は、Azure OpenAIサービスのように、Llama2のモデルを使うことに関しては、(もともとオープンソースなので)追加費用を請求しないということで、必要なコンピューティングリソースのコストはかかるということですね?
Copilot#3:
その通りです。Llama2はオープンソースのモデルであり、Azureプラットフォームを使用する開発者に対して追加費用なしで提供されることが発表されています。しかし、その利用にはAzureのコンピューティングリソースが必要となり、その利用料金は発生します。
私#10:
「最小VMでも月あたり4K+ドルかかる」という説明だったので、毎月、4K+ドル=60万円以上、コンピューティングリソースのコストはかかるということですね。
Copilot#4:
その通りです。AzureでLlama2を利用するためには、コンピューティングリソースが必要となり、その利用料金は発生します。最小のVM「Standard_NC12s_v3」(12コア、224GB RAM、672GBストレージ)の場合、時間あたり6.5ドル、月あたり4K+ドル(約60万円以上)のコストがかかるとされています。ただし、具体的な費用はAzureの料金体系や利用するリソースによりますので、詳細はAzureの公式ウェブサイトやサポートにご確認ください。他に何かご質問がありましたらお知らせください。よろしくお願いいたします。
私#11:
最小構成でも4K+ドル/月のコストがかかるのでは、ちょっと試してみるという気になりませんが、どこかでLlama2を体験できるでしょうか?
Copilot#5:
はい、Llama2を試すためのデモがいくつか提供されています。以下にその一部をご紹介します:
1.Hugging Face:Hugging FaceはLlama2の全面的なサポートを発表しており、その一環としてLlama2のデモを提供しています。具体的には、Hugging Faceの「Space」や埋め込み型の「Playground」で大規模なLlama2モデル(700億パラメータ)を試すことができます。
2.llama2.ai:Andreessen Horowitzがホストするチャットボットモデルのデモサイトで、ChatGPTと同じようにチャット形式でLlama2の能力を試すことができます。
これらのデモを利用することで、Azure上でLlama2をデプロイする前にその機能を体験することが可能です。他に何かご質問がありましたらお知らせください。
という情報が手に入りましたので、llama2.aiを使ってみました。
まず、私#12として、日本語が使えるか尋ねてみました。
※プロンプトは人間の顔のアイコン、Llama-2の回答にはラマのアイコンが使われています。
Llama-2 #1として「日本語が利用可能」との回答だったので、私#13としてLlama-2にも、自分自身とChatGPTの違いを尋ねたところ、以下の通り、英語で回答が返されました。
Llama-2#2:
Llama2 is a chatbot developed by Meta AI, which is a subsidiary of Facebook. It is designed to generate human-like text based on the input it receives, similar to OpenAI’s ChatGPT and other language generation models.
However, there are some differences between Llama2 and other language generation models like ChatGPT. One key difference is that Llama2 is trained specifically for conversational dialogue, whereas ChatGPT is trained for a wide range of text generation tasks, such as writing articles, stories, and conversations.
Additionally, Llama2 uses a different training dataset than ChatGPT. Llama2 was trained on a dataset of text from the internet, while ChatGPT was trained on a dataset of books, articles, and websites. This means that Llama2 may be better suited for generating conversational text, while ChatGPT may be better suited for generating written text.
Overall, both Llama2 and ChatGPT are powerful language generation models that have their own strengths and weaknesses. While they share some similarities, they also have some key differences that make them suitable for different use cases.
私#14:として「日本語でお願いします。」と入力したところ、Llama-2#3:として以下の回答がありました。
※日本語処理は、まだあまり得意ではないようですので、その前の英語での回答をGoogle翻訳したものを以下に示します。
Llama-2#2:(Google翻訳版)
Llama2はFacebookの子会社であるMeta AIが開発したチャットボットだ。OpenAIのChatGPTや他の言語生成モデルと同様に、受け取った入力に基づいて人間のようなテキストを生成するように設計されている。
しかし、Llama2とChatGPTのような他の言語生成モデルにはいくつかの違いがある。一つの重要な違いは、Llama2が会話ダイアログに特化して訓練されているのに対し、ChatGPTは記事、ストーリー、会話などの幅広いテキスト生成タスク用に訓練されていることです。
さらに、Llama2はChatGPTとは異なる学習データセットを使っています。Llama2はインターネットからのテキストのデータセットで訓練されたのに対し、ChatGPTは本、記事、ウェブサイトのデータセットで訓練された。つまり、Llama2は会話テキストを生成するのに適しており、ChatGPTは文章テキストを生成するのに適している可能性がある。
全体として、Llama2とChatGPTは、それぞれ長所と短所を持つ強力な言語生成モデルです。両者には共通点もありますが、異なるユースケースに適した重要な違いもあります。
ということで、Llama-2は、ChatGPTとの違いについて、「Llama2は会話テキストを生成するのに適しており、ChatGPTは文章テキストを生成するのに適している可能性がある」と指摘しているので、以下では、どの程度自然な会話テキストが生成できるのか(日本語は不得意そうなので英語で)試してみました。
私#15:
You use animal llama icons in your answers, why?
Llama-2#3:
The use of animal icons, specifically llamas, in my responses is a design choice made by the Meta AI team. The idea behind it is to create a friendly and approachable atmosphere in our interactions with users. Llamas are known for their calm and gentle nature, which aligns well with the tone we aim to convey in our responses. Additionally, using animal icons can help to break up the text and make the conversation more visually engaging. Overall, it’s a way to add some personality and whimsy to our interactions with you!
私#16:
I see, I thought it was an abbreviation for Meta’s generative AI model name “Large language xxxx”.
Llama-2#4:
My apologies for the confusion earlier. I understand that you were referring to the Meta AI team’s generative AI model, LLaMA (Large Language Model, Meta AI). It’s an impressive model that has been trained on a large dataset of text to generate human-like language outputs. The use of llama icons in my responses was indeed a playful nod to the name of the model. Thank you for pointing this out, and please let me know if there’s anything else I can assist you with!
Llama-2#3で、ラマのアイコンを使った理由について、「我々の作った生成系AIモデル名をラマのスペルになるようにしたからです」というような、いかにもコンピュータが返しそうなベタな返事をしないところが、人間との自然な会話のテキストの生成を目指した結果なのでしょうか?
よくわからないので、続けて、使い方についても確認してみました。
私#17:
Could you tell me how to use?
Llama-2#5:
Sure! The `LLAMA` model is a powerful tool for generating human-like text based on the input it receives. Here are some ways you can use it:
- Chatbots: You can use the LLAMA model to create chatbots that can engage in conversation with users in a natural and human-like way. This can be useful for customer service, tech support, or even creating virtual assistants.
- Content generation: The LLAMA model can be used to generate content such as articles, blog posts, and social media updates. This can save time and effort for writers and content creators, allowing them to focus on other tasks.
- Language translation: The LLAMA model can be fine-tuned for language translation tasks, allowing it to generate translations that are more accurate and natural-sounding than those produced by traditional rule-based translation systems.
- Text summarization: The LLAMA model can be used to summarize long pieces of text into shorter, more digestible versions. This can be useful for quickly getting the gist of an article or document without having to read the entire thing.
- Creative writing: The LLAMA model can be used as a tool for creative writing, helping writers to generate ideas, develop characters, and write dialogue. It can also be used to generate poetry and short stories.
These are just a few examples of how the LLAMA model can be used. Its versatility and ability to generate human-like text make it a powerful tool for a wide range of applications.
この回答を見る限りLlama-2は、ChatGPTと同じような用途で使えそうです。
次にプロンプト欄の前にある「Upload」ボタンの使い方に関しても確認してみました。
私#18:
How to use “Upload” button in front of Chat data field?
Llama-2#6:
The “Upload” button in front of the Chat data field allows you to upload a file or copy and paste text into the chat window. This feature is useful for sharing information, images, or documents with me, and I can then respond accordingly.
When you click the “Upload” button, a file selection dialog box appears, allowing you to choose a file from your device or drag and drop a file into the chat window. Alternatively, you can copy and paste text into the chat window by clicking the “Paste” button next to the Upload button.
Once you’ve selected a file or pasted the text, it will appear in the chat window, and I can analyze the content to provide relevant responses. For example, if you upload an image, I can use computer vision algorithms to identify objects, people, or text within the image and respond accordingly. Similarly, if you paste text, I can analyze the content to understand the context and provide appropriate answers or suggestions.
The “Upload” button is a helpful feature that enables us to communicate more effectively and efficiently, allowing us to share information quickly and easily.
私#19:
I cannot find “Paste” button next to the Upload button in your explanation of how to use Upload button.
Llama-2#7:
My apologies for the confusion. It seems that I made a mistake in my previous response. There is no “Paste” button next to the Upload button. Instead, you can simply copy and paste the text into the chat window using the keyboard shortcuts (Ctrl+C on Windows or Command+C on Mac) and then click the “Send” button to send the message.
To summarize, here are the steps to share text with me:
- Highlight the text you want to share.
- Right-click on the highlighted text and select “Copy” (or press Ctrl+C on Windows or Command+C on Mac).
- Click the “Send” button in the bottom right corner of the chat window.
- Paste the text into the chat window by right-clicking inside the window and selecting “Paste” (or pressing Ctrl+V on Windows or Command+V on Mac).
Alternatively, you can also type the text directly into the chat window, and I’ll be happy to assist you with any questions or concerns you may have.
私#20:
There is neither “Send” Button but is “Chat” button.
Llama-2#8:
My apologies for the confusion. You are correct, there is no “Send” button in the chat window. Instead, you can click the “Chat” button to send your message.
Here are the updated steps to share text with me:
- Highlight the text you want to share.
- Right-click on the highlighted text and select “Copy” (or press Ctrl+C on Windows or Command+C on Mac).
- Click the “Chat” button in the bottom right corner of the chat window.
- Paste the text into the chat window by right-clicking inside the window and selecting “Paste” (or pressing Ctrl+V on Windows or Command+V on Mac).
I hope this clears up any confusion. Please feel free to ask me any questions or share your thoughts, and I’ll do my best to assist you.
ということで、わざと人間っぽく間違えた回答をしているわけでもなさそうなので、今回Llama-2.aiを使ってみた限りでは、Llama-2の方がChatGPTより会話テキストを生成するのに適しているという感じは受けませんでした。
なお、レスポンスは、ChatGPTよりもかなり遅い感じを受けました。
以上、本日はLlama-2について調べた内容をお伝えしました。
終わり
- 投稿タグ
- Llama-2
Pingback: メタの大規模言語モデル Llama2についてーその3 / LM Studio – インターテックリサーチ株式会社