nikkie-ftnextの日記

イベントレポートや読書メモを発信

ollamaはHugging Faceほど、オープンモデルのライセンスをユーザに意識させないんだなあ

はじめに

ルールを守って楽しく決闘! nikkieです。

最近ollamaをもふもふしているのですが、ちょっと思うところがあり、アウトプットネタに選びました。

※自分用のメモの意味合いが強いです。ライセンスの解釈について専門知識は皆無ですので、記載は鵜呑みにせず、ライセンスの原文(一次情報)をご確認ください

目次

ollamaは便利

Run Llama 3, Phi 3, Mistral, Gemma, and other models.

以前にPhi-3を動かしました。

M1 Mac(メモリ32GB)でCPUのみでもサクサク動いて、これはすごいなと思いました。
ローカルにLLMのAPIを立てられ、OpenAI互換のエンドポイントも備えています1

ollamaの便利さは、量子化という技術の賜物と理解しています。
Phi-3を試した時、Hugging Faceにあるそのもの(mini-4k-instruct)ではなくて、mini-instruct-4k-q4_K_Mという量子化したモデルを動かしていました2
量子化では、モデルを動かすことを優先して重み(小数)を丸めることにした)

サイトから引用した記載のように、GemmaやLlama 3も動かせます

落とし穴:ollamaのユーザは、モデルのライセンスを意識せずに済んでしまう

でもちょっと待ってください。
GemmaやLlama 3には、独自のライセンスがあります。

Gemma Terms of Use

ai.google.dev

さらにProhibited Use Policy(使ってはいけない用途のポリシー)もあります

ai.google.dev

Terms of Useは、ollamaのサイトに掲載されています。
https://ollama.com/library/gemma:7b

でもこれ、真っ先に目が行くところじゃないですよね

Hugging FaceにあるGemmaを使うには、「ライセンス同意契約に署名」が必要です。
ref: https://cloud.google.com/kubernetes-engine/docs/tutorials/serve-gemma-gpu-vllm?hl=ja#model-access
Hugging Faceにある多くのモデルはアカウントを作らずに使えますが、Gemma(やLlama 3)はアカウントで署名していないとダウンロードができません(実装ではトークンを指定します)
google/gemma-7b · Hugging Face

幸いにも、Gemmaのライセンスは緩めのようです

Gemmaの利用規約では、規模に関係なくすべての組織に対して商業利用と配布が許可されています。

META LLAMA 3 COMMUNITY LICENSE AGREEMENT

llama.meta.com

Acceptable Use Policyもあります

llama.meta.com

こちらもollamaのサイトに掲載されています。
https://ollama.com/library/llama3:8b

llama 3は利用に制限があるようです。
該当するケースはかなり限られると思いますが、制限があることは認識したいですね。

研究目的のほか、月間アクティブユーザーが7億人以下の場合は無償で商用利用が可能となっています。

原文

2.Additional Commercial Terms. If, on the Meta Llama 3 version release date, the monthly active users of the products or services made available by or for Licensee, or Licensee’s affiliates, is greater than 700 million monthly active users in the preceding calendar month, you must request a license from Meta, which Meta may grant to you in its sole discretion, (略)

ollamaからダウンロードできちゃうので使っていて、後々になってライセンスに引っかかっていたことに気づくというのは、悲劇です...

Hugging Faceは厳格すぎるかもだが、私的には秀逸

個人的にはollamaもHugging Face(のGated model)のように、アカウントでモデルのライセンスに同意するまではモデルにアクセスできないようにしてほしいですね。
利便性は損なわれるのは承知していますが、手順に則るべきでは(モデルごとの独自ライセンスはおろそかにしてはいけないのでは)という考えです。

現状、Hugging Faceに対してollamaが抜け道になってしまっている感があります。
この記事を読んでいる方、ollamaで使っているモデルがあったら、ぜひライセンスを確認・把握しましょう。

終わりに

ollamaは量子化モデルの恩恵にあずかれてとっても便利なのですが、Hugging Faceと比べると動かしているモデルのライセンスを意識しないのが私としては気になるところです。
利用の制限の可能性や、何に使ってもいいものではないということを踏まえて使っていきたいですね。

そういえばAndrew Ngセンセも、LLM利用者の責任について言ってました(スパムを作る目的でも使えてしまうので)
DeepLearning.AIの「ChatGPT Prompt Engineering for Developers」を視聴し終えました。LLM時代の見取り図 得たり!勝ったなガハハ! - nikkie-ftnextの日記

元ネタはこちら。
ollamaのサイトにモデルごとにライセンスが掲載されている以上、同意したものとみなされるんですかね?