オープンソースAIとは何か? – Open Source AI Definition策定経緯とドラフト版概説

オープンソースAI(Open Source AI)とは、オープンソースの状態にあるAIシステムのことである。これはある意味で自明なのではあるが、「オープンソースの定義」(OSD)を管理している米国の非営利団体Open Source Initiative(OSI)では、2023年からわざわざ新たに「オープンソースAIの定義」(OSAID: Open Source AI Definition)の策定を開始している。2024年の8月頃には定義のRC版が公開される見込みであるが、本稿ではこの新たな定義が何故必要になり、その定義がどのような機能するものであるかということに対し、主に佐渡が視点から時系列的に簡単に紹介していく。これによって日本国内においてOSAIDが認知され、AI開発コミュニティにおいて自由かつ透明性が確保されたシステムの必要性への理解が深まる一助となることを期待する。

注:2024年10月にオープンソースAIの定義 v1.0 がOSIによってリリースされている。本稿はドラフト0.0.8に沿った解説であり、概念的にはv1.0を理解する上で役に立つとは考えられるもののv1.0では多くの部分で議論を踏まえた修正があり、正しい理解をするためには、オープンソースAIとは何か? –「オープンソースAIの定義 v1.0」詳細解説 を参照して頂きたい。

  1. OSIにおけるAIへの問題意識の高まり
  2. 定義策定方針に至った理由
  3. 定義の策定プロセス
  4. ドラフト版定義解説
    1. 前文解説
    2. OSAID定義の本体の解説
      1. 4つの自由を採用した理由
      2. AIシステムという用語を採用する理由
      3. 4つの自由を必要とするAIシステムを構成するコンポーネント
    3. チェックリストの解説
      1. 必須となるコード
      2. 必須となるモデル
      3. 必須となるデータ情報
  5. チェックリスト適用の現状
  6. 今後と懸念点
  7. 参考

OSIにおけるAIへの問題意識の高まり

2022年は画像生成AIモデルStable DiffusionやOpenAIのChatGPTが公開され、広く世間に現在の生成AIが認知され、その可能性が盛んに議論され始めた年である。同時に当時は既に策定作業中であったEU AI規則案に代表されるように、俄に高まったAIのリスクにどのように対処していくべきかという議論も世界各地で行われ出した年でもあるのだろう。

AI関連領域の技術が急速に発展し、それが一般社会に対して未曾有の影響を与える可能性を見せ始めたことを踏まえ、OSIは「Deep Dive: AI」という調査プログラムをこの年に開始した。これはAI関連のビジネス、社会、法律、学術の観点から専門家を集め、インタビューやパネルディスカッションを実施するものであった。そこでは、現在でもよく言われているようにAIのアルゴリズムやモデルがどのように機能するかを理解することが根本的に困難であるブラックボックス的な性質、またそこから起因するプライバシー侵害やバイアスといった不正使用がもたらすリスクへの対応の必要性が論じられた。そして、これらの課題への対処には、データのオープン化の促進と従来のオープンソース・コミュニティにおける協働作業のような透明性のある技術の民主化が必要であるとの結論が出された。

ただし、この時点ではOSIにてオープンソースAIのための定義を作るという動きは表面的には存在しなかった(当時からOSIの上層部は定義策定を考えていたと私は推測している)。OSIの最大の使命は「オープンソースの定義」(OSD)を維持していくことであり、世間で喧伝されていた生成AIのモデルも結局は計算機システム上に存在するソフトウェアの一種でもある。であれば、従来からのOSDとその定義による審査をパスしたOSI承認済みオープンソース・ライセンスで実用的には十分にカバーされるという考え方に辿り着くのが普通であるだろう。一般に学習済みのモデルのパラメータ部分には著作権が発生しないとされていることで、ライセンスが依拠する著作権で保護される部分が少ないという問題があっても、それは従来のソフトウェアでも多少なりとも存在していた話であり、また改変が複雑かつ困難であり再現性がないという問題もライセンスの問題とは考えなければ良いことである。AI技術の分野にてオープンソースが大きな役割を果たさなければならないことは明らかであったが、まだこの頃はOSIがAIのためにわざわざ定義を策定するという方向性はあまり現実味がなかったように思う。

定義策定方針に至った理由

OSIがオープンソースAIの定義の策定の方針を明確に打ち出したのは、2023年の6月だったように思う。前項で示したようにDeep Diveの取り組みから自由で透明性のあるAIへの要求が高まってきており、オープンソースのAIと言える要件を明確化する必要性はコミュニティ内でも存在していたが、この漠然とした欲求に加えて二つの理由が積み重なった結果であると思う。

一つは最近よく指摘されるようになってきているOpen Washing(オープン・ウォッシング)への対処である。近年はSSPL等のような事業推進のために外形的にオープンソースに見せかけながらも何らかの制限や罠をライセンスに入れ込む欺瞞に満ちた取り組みが増えており、自由なコミュニティへの脅威の一つとなっているが、MetaによるLlama等の一部のAI企業によるモデルは明らかにオープンソースではない条件で頒布されているシステムに対してオープンソースという冠を被せており、25年以上の年月に渡ってコミュニティが積み重ねてきたオープンソース・エコシステムの価値を毀損させている。この状況に対応するためには、AIがオープンソースであるための明確な定義が必要であるという論を強化している。

もう一つはEU AI規則のような世界各地で議論され始めたAI法制への対処である。特にEU AI規則においては、AIによるイノベーションの創出と高いレベルのAIの安全性と信頼性を両立するために透明性とオープン性が確保されることが必要であるとし、自由に実行、複製、頒布、研究、改変が可能なオープンソースの重要性を認め、そのためオープンソースであるAIシステムに対して様々な規則の例外を定めている。しかし、それだけオープンソースであるAIシステムの重要性を認めながらも、肝心のオープンソースAIが何であるか?という明確な定義はないわけである。

この二つの理由は実は相関性があり、そもそも後者のようにAIがオープンソースAIと見做されることには事業推進上で大きなメリットが生じると考えられ、このメリットの存在によって前者のようなOpen Washing的行動が促されるという側面もあるのだろう。いずれにせよ、こうしてオープンソースAIの定義(OSAID)の策定の機が熟していったのである。

定義の策定プロセス

OSAIDの前に1998年のOSD策定時について触れておくが、よく知られているようにOSDはDebianプロジェクトのリーダーであったBruce Perensによって書かれている。とはいっても彼が一人で全て書いたというわけでなく、OSDの元となったDebianフリーソフトウェア・ガイドラインはDebian Project内での一ヶ月あまりの激論の中で生まれたDebian社会契約の副産物として生まれたと考えた方が妥当だろう。そして、その中で書かれている理念や規則はフリーソフトウェアの運動が始まってから十数年の間にコミュニティが蓄えてきた経験則を簡潔に再構成したと考えて良い。つまり、既に生きた手本があり、それを定式化していったわけである。

この先例に倣ったかどうかは知らないが、2023年6月前後にDeep Diveの枠組みでの専門家集団やOSIのボード周辺等で様々な議論がなされていたと思う(佐渡自身は当時のOSI内の議論は知らない)が、おそらく頭を抱えていたのではないかと思う。先にAIが「計算機システム上に存在するソフトウェアの一種」であると書いたが、そのソフトウェアの一種であるAIを一つのライセンスでカバーできるかと考えるとそうはならない。現在の一般的な生成AIにおいてもAIのシステム全体は非常に多くのコンポーネント(各種のデータ、コード、モデル)が存在し、またそれらはオープンソースが主に扱うプログラムとは異なる何かである。それらが複雑に絡み合うものがAIシステムなのであり、それらのコンポーネントのための法的な利用条件も様々である。

このような特性から、例えばオープンソースに触発されたオープンデータやオープンコンテンツのようにオープンソースAIというものを定義し、その定義に適合するライセンスをオープンソースAIライセンスと呼ぶといったやり方は難しい。例えばAIシステムの何らかのコードがオープンソースであったとしてもモデルの一部が自由に利用ができなければ、それはやはりオープンソースとは言えない。従来のソフトウェアであればソースコードとバイナリコードは対になっており、例えばGPLであるソースコードからはGPLである実行コードが生まれたわけであり、ライセンスさえチェックしていれば十分であった。しかし、AIの場合はシステムの一部のコードがオープンソースであるからといって、システム全体がオープンソースであるとみなすのは難しいわけである。

このため、
(1) 最初にAIシステム全体がオープンソースと呼ぶために必要な要件となる理念を定め、
(2) その後、AIシステム全体の中でそれらの要件をクリアする必要があるコンポーネントが何であるかを突き止め、
(3) それらのコンポーネントの(ライセンス等の)利用条件がクリアすべき(OSD等の)法的な枠組みを規定する

という順序のプロセスが採用され、AIシステムを構成する様々なコンポーネント一つ一つをOSD等の枠組みで検証し、(2)で規定されたコンポーネント全てでオープンソースと呼ぶために必要な枠組みに適合した場合にオープンソースAIと認められるという複雑なものとなった。OSDは十箇条のテキストの条文であるが、OSAIDはこの(1)、(2)、(3)の全てが入れ込まれた複雑なチェックリストのようなものとなっている。

この文章を書いている2024年6月末の段階ではこの「オープンソースAIの定義」(OSAID)のバージョンは0.0.8であり、夏にはRC版が公開され、秋になる前には正式に1.0版がリリースされる計画となっており、今のところはそのスケジュール通りになると思う。

なお、OSAIDドラフトバージョン0.0.2以降はOSIメンバー全員が策定作業に関与できるようになっており、そこから数えても既に9ヶ月ほど議論が続いている。佐渡自身もその頃からOSIでの議論に参加しているのだが、まだ前述の(1)しか見えていない頃はそもそもOSAIDの必要性が中々掴めず、既存のOSDの存在の意味を毀損しないことばかりに注力していたが、別のワーキンググループが(2)に該当するコンポーネントを規定してからは非常にスムーズにプロセスが進み、OSAIDが機能する可能性を着実に高めているように手応えを感じている。特に最近はLinux Foundation、AWS、Googleからの意見も出てくるようになり、良い方向へ進んでいると思う。これはOSAIDの議論のために世界を飛び回っているOSIのExecutive DirectorであるStefano Maffulliの手腕に依るところが大きいだろう。

何となく区切りのために置いたDALL-E出力

ドラフト版定義解説

オープンソースAIの定義 0.0.8 日本語参考訳https://github.com/opensource-jp/Open-Source-AI/blob/main/osaid-0-0-8-ja.md
Open Source AI Definition draft 0.0.8https://opensource.org/deepdive/drafts/the-open-source-ai-definition-draft-v-0-0-8

現在のOSAIDのドラフト版は上記にて公開されている。日本語参考訳は佐渡によるものである。

定義全体を見渡すと、ぱっと見でもOSDとは随分と趣が異なることが分かるだろう。OSAIDは策定の意図を述べた前文、オープンソースAIの定義そのもの、ライセンス等の法的文書を評価するためのチェックリストという三つの部分で構成される。以降は、それらの解説を行う。

前文解説

OSAIDの前文ではオープンソースであるAIが必要な理由が述べられている。オープンソースのライセンスが適用された従来のソフトウェア・システムによる恩恵が、自律性、透明性、軋轢が生じない再利用、共同改善に集約されることを述べ、AIシステムにおいてはユーザーが信頼性と透明性のあるAIシステムを構築するためにオープンソースによる自由が必要だと先ず宣言している。つまり、信頼性、安全性、透明性の確保されたAIシステムのためにはオープンソースが必要だと言っているわけである。

前文は今のところこれだけである。信頼性と透明性の下りが重要な部分であるが、これはOSAID策定の決定に影響を与えたEU AI規則や米国の大統領令等を意識しており、それらの法的文書におけるオープン性の部分はOSAIDが担うという宣言でもあるように佐渡個人としては考えている。

なお、元々前文はもう少し長かったのだが、倫理だとか責任だとかそういった言葉があって冗長だったために次第に削除されていった。長い前文で想いを語るような方向性もあったのだと思うが、私のようなOSD原理主義者がOSDの感覚にはない表現に対してネガティブな意見を出していった結果、現状ではこうなっている。前文で倫理や責任あるAIといったフレーズを削除する方向に力学が働いたのは結局OSDがそれらを全く定義していないからである。OSDはあくまでソフトウェアが自由であるための条件を示しているのであり、倫理といったことは規定しない。AIの倫理のために自由が必要であるかもしれないが、それらとは別の議論であるということである。また、倫理というものは結局の所、人と場所が違えば違う考え方になるものでもある。オープンソースは世界のどこにいても自由であるためのルールであるわけであり、従ってオープンソースのAIシステムを定義するための定義でも倫理が規定されるべきではないのである。

OSAID定義の本体の解説

次のOSAID 0.0.8の定義本体部分では、オープンソースAIとは下記のような自由を与える条件の下で利用できるAIシステムのことであると定義している。下記の条件はおそらくOSAID 1.0リリースまで細部においても維持されるだろう。それだけ条文が安定していると考えて良い。

使用:どのような目的であれ、許可を得ることなくシステムを使用すること。
研究:システムがどのように動作するかを研究し、そのコンポーネントを検査すること。
改変:出力を変更することを含め、どのような目的であれシステムを改変すること。
共有:どのような目的であれ、改変の有無に関わらず、他者が使用できるようにシステムを共有すること。

https://github.com/opensource-jp/Open-Source-AI/blob/main/osaid-0-0-8-ja.md

OSDの十箇条とは随分違うと思われる方もいるだろうし、勘の良い人であればFree Software Foundation(FSF)の「4つの自由」(4 Freedoms)との類似性に気が付くかもしれない。そう、ここではFSFの4つの自由に着想を得た要件が書かれているのである。

FSFの4つの自由は、実行、研究、改変、再頒布の自由であり、OSAIDの自由は使用、研究、改変、共有である。大きな違いは頒布が共有となったことだが、これは現在では従来の頒布という行為に収まらない行為も含ませるためだろう。また、実行が使用になっているのも「データの使用」等の行為も含まれるように拡張する意図がある。なお、私は使用という用語が曖昧なのでまだ実行のほうがいいと当初は主張していたのだが、その点は賛同者はあまりいなかった。この点はデータの使用という観点も含まれるので仕方がない。

4つの自由を採用した理由

さて、ここでOSDの十箇条ではなくFSFの4つの自由を採用しているのは奇妙であると思われる方がいるかもしれない。しかし、ここにOSDが書かれていないのは、そもそもOSDはソフトウェアそのものではなくライセンスのための定義であることを思い出さなければならない。

拙作のOpen Source Definition逐条解説書にも書かれていることであるが、OSDの十箇条は第一条から第三条までと第四条から第十条までの二つの部分に大別することができる。第三条までは著作権における各支分権の利用許諾に焦点を置いており、第四条以降はライセンスの条文が満たすべき技術面を含む要件が記述されているのだが、これは第三条までが何が自由であるべきかという理念を示し、第四条以降はライセンス審査のための要件、すなわち現在のOSAIDで言う所のチェックリストを指し示すと解釈することも可能である。つまり、OSDでは10箇条で定義とライセンス審査のためのチェックリストを兼ねていたものをOSAIDでは明確に分離したとも言える。よって、OSAIDの定義部分はOSDの最初の三条までにあたる理念を表現しているとも言える。

また、OSDの最初の三箇条で明示的に自由が書かれている権利は改変と頒布のみであり、使用、研究に関しては明示的ではない。これは著作権の利用許諾としてのライセンスの審査のためには特に必要ではないし、全十箇条で暗黙的に自由が規定されているとみなされるのであるが、OSAIDのようにAIシステムの審査要件部分を切り離すと、定義部分での自由が何の自由を指すかが不明瞭になってしまう。そこで、FSFの4つの自由に依拠した使用、研究、改変、共有の自由を明示的に定義することにした、というのは私の勝手な理解であるがさほど間違ってはいないだろう。

AIシステムという用語を採用する理由

ここに至るまで既に何度か「AIシステム」という用語を使用しているにも留意してほしいが、OSAIDはそのAIシステムの自由のための定義である。OSDはライセンス審査のための定義であるが、OSAIDはそうではないのである。さらに言えば、OSAIDは様々なトレーニングデータや学習から推論までのプログラム、そしてモデル等の様々なコンポーネントから構成される一連のシステムのための定義なのである。

よく考えれば分かることであるが、一つのライセンスや一つのソフトウェアのためであれば既にOSDが存在する。AIシステムの一部を構成する単一のソフトウェア・コンポーネントがオープンソースであるかどうかという識別にはOSDで十分に機能するが、AIシステム全体をオープンソースと呼ぶためにはOSDによる一回の判定でカバーできない部分が生じるため、OSAIDがそれを補うことになるのである。

なお、OSAIDにおけるAIシステムという用語の定義は経済協力開発機構(OECD)が採用した下記のAIシステムの定義に従っている。

「AIシステムとは、明示的または暗黙的な目的のために、受け取った入力から物理的または仮想的な環境に影響を与えることができる予測、コンテンツ、推奨、または決定などの出力を生成する方法を推論する機械ベースのシステムである。AIシステムによって、自律性や導入後の適応性のレベルは異なる。」

https://github.com/opensource-jp/Open-Source-AI/blob/main/osaid-0-0-8-ja.md

このOECDによる定義を採用することに対しては主に佐渡から異論があった。極論すればこの定義はソフトウェアやデータだけでなくハードウェアの領域を含むように解釈できるということで、私としてはAIシステムとされる領域が広過ぎるのではないかと懸念していたのであるが、後述のAIシステムを構成するコンポーネント単位による記述で調整できると理解してからは現状ではこの定義を使うことが妥当なのだろうと思い至っている。このOECDの定義を使用することで、OSAIDは現在の生成AIブームを牽引する大規模言語モデルだけでなく、機械学習、ディープラーニング、コンピュータービジョン、その他の幅広い分野への適用性を残している。

4つの自由を必要とするAIシステムを構成するコンポーネント

定義本体の後半部分ではオープンソースAIと呼ぶために4つの自由が満たされるべきコンポーネントが書かれているが、現時点ではデータの情報、コード、モデルで大別されている。これは下記の0.0.8の定義をそのまま参照する方が理解が早いだろう。ようは、これらのコンポーネントが全て使用、研究、改変、共有の自由が満たされて初めてオープンソースAIを名乗れるということである。一部のコードやモデルがオープンソースであるからと言って、それ以外のコンポーネントがクローズドであればオープンソースAIとは限らないということでもある。

データの情報:熟練者が同一または類似のデータを使用して実質的に同等のシステムを再作成できるように、システムの学習に使用したデータに関する十分に詳細な情報。例えば、使用されている場合、学習方法方法および技術、使用された学習用データセット、それらのデータセットの出所および範囲と特徴、データの取得方法と選択方法、ラベリングの手順とデータクリーニング方法に関する情報が含まれる。
コード:システムのトレーニングおよび実行に使用されたソースコード
例えば、使用されている場合、データの前処理に使用されたコード、学習と検証およびテストに使用されたコード、トークナイザーやハイパーパラメーター検索コード等のサポートライブラリ、推論コード、モデルアーキテクチャなどが含まれる。
モデル:モデル・パラメータ
例えば、最終的なオプティマイザの状態だけでなく、学習の主要な中間段階からのチェックポイントも含まれる。

https://github.com/opensource-jp/Open-Source-AI/blob/main/osaid-0-0-8-ja.md

なお、データの情報における説明で「熟練者が同一または類似のデータを使用して実質的に同等のシステム」という不思議な文言が出てくる。特に熟練者、類似のデータ、実質的に同等という三つの用語の曖昧性が気になる方もいると思うが、ここは意図的に曖昧性を残し、解釈の幅を持たせていると現時点で考えてもらえれば良いだろう。

チェックリストの解説

AIシステムを審査するために前項で大別したコンポーネントをLF AI+Dataのメンバーらが公表した論文「The Model Openness Framework」に従って細分化したリストを使用し、下記のようにデータの情報、コード、モデルを分類し、それらが満たすべき法的枠組みを個別に指定している。このチェックリストは現状のドラフト0.0.8では定義に含まれている形式の文書となっているが、今後の議論次第でこのチェックリストは定義とは分離される可能性があると私は見ている。AI周辺の技術の進展によってこのような形式の分類が不適当となる将来はそんなに遠くないと思われ、この部分は今後逐次改編される可能性があるからである。

必須コンポーネント 法的枠組み
データの情報
– 学習の方法論と技術OSD準拠のライセンスで利用可能
– 学習データの範囲と特徴OSD準拠のライセンスで利用可能
– 学習データの出所(データの入手方法、選択方法等)OSD準拠のライセンスで利用可能
– 学習データのラベリング手順(使用する場合)OSD準拠のライセンスで利用可能
– 学習データのクリーニング技法OSD準拠のライセンスで利用可能
コード
– データ前処理OSI承認のライセンスで利用可能
– 学習、検証、テストOSI承認のライセンスで利用可能
– 推論OSI承認のライセンスで利用可能
– サポート用のライブラリとツールOSI承認のライセンスで利用可能
モデル
– モデル・アーキテクチャOSI承認のライセンスで利用可能
– モデル・パラメータOSDに適合した条件で利用可能

https://github.com/opensource-jp/Open-Source-AI/blob/main/osaid-0-0-8-ja.md

現時点のOSAIDでは、最低限上記のコンポーネントがOSDに従うことをオープンソースAIと呼ぶために要求することになる。ここで注意深く見て欲しいのは法的枠組みが微妙に文面が異なり、「OSD準拠のライセンス」、「OSI承認のライセンス」、「OSDに適合した条件」という三種類の文言を使い分けているということである。

AIシステム開発に使用されたコード類が全てOSI承認ライセンスというのは自明的であるが、学習データ関連がOSD準拠となっているのはどういう意味だろうか?これはOSI承認ライセンスが基本的にプログラムのコードのためのライセンスであり、データやコンテンツのためのライセンスではないからである。オープンデータやオープンコンテンツ、もしくはクリエイティブコモンズの一部のライセンスについてはOSD準拠と通常は見做されており、データやコンテンツのための利用されているライセンスであるが、これらのライセンスを含めた考え方を指していると現状で考えて良いだろう。

また、モデル・パラメータでの「OSDに適合した条件」という表現は、そもそもパラメータでは通常の著作権を前提とするライセンスが多くの法域で無効の可能性が否定できず、約款方式を含む契約等の法的枠組みに頼らざるを得ないという懸念があることで曖昧な表現が使用されている。とは言っても結局はOSDへの適合を求めているわけであり、パラメータにおいても4つの自由が保証されていることがオープンソースAIの前提となるのである。

必須となるコード

OSAIDへの適合のために必須となるコンポーネントの中で最も理解がしやすいのは当然ながらコードの部分であるだろう。現状では、データの前処理、学習、検証、テスト、推論、サポート用のライブラリとツールがOSAIDへの適合のために必須とされ、それぞれがOSI承認のライセンスで利用可能であることを求められる。これはAIシステムの実行のために必要となる推論コードだけでなく、システムの構築のためにトレーニングの課程で必要となったコードまでを含めてオープンソースであることを求めていることになる。結局の所、日本流に言えばAIの学習課程で使用されたコードもオープンソースでなければ、AIシステムの透明性は確保されず、再現も不可能であるということである。この辺りは異論はほとんどないのではないかと思う。

必須となるモデル

モデルの部分に関しては、モデルアーキテクチャおよびモデルパラメータを必須コンポーネントとしている。モデルアーキテクチャは、機械学習アルゴリズムやニューラルネットワークのアーキテクチャ要素が含まれ、これらには完全に記述されたソースコード等の形式で共有され、OSI承認のライセンスで利用可能であることが求められる。

また、モデルパラメータはモデルの重み(ウェイト)や単にパラメータとも呼ばれる学習済みモデルのデータ部分のことであるが、このモデルパラメータは「OSDに適合した条件で利用可能」というやや難解な表現で規定している。OSAIDの理念としてはOSDに適合した条件を求めるのは当然のことと言えるが、オープンソースのライセンスは結局の所は著作権というグローバルに通用する知的財産権に依拠している。つまり、OSI承認のライセンスは著作権が有効ではない領域に適用することには不向きであり、従って他の枠組みのほうがよりベターであるとも言えるだろう。幸いにもデータ向けのライセンスとしてはOpen Knowledge Foundationが推進するオープンデータ系のライセンスやクリエイティブ・コモンズが存在するし、またライセンス以外の方法として何らかの契約的手法が法域によっては有効かもしれない。これらの考え方としてはOSDに合致する枠組みを包括した法的条件を「OSDに適合した条件」としているのである。ようは何らかの法的条件で使用、研究、改変、共有の自由が保証されれば良いのであるが、このあたりは今後様々な試行が続くのではないかと思っている。

必須となるデータ情報

データの情報に関しては「熟練者が同一または類似のデータを使用して実質的に同等のAIシステムを再作成できるように、システムのトレーニングに使用したデータに関する十分に詳細な情報」とOSAIDの中で定義され、その情報にはトレーニング方法および技術、使用されたトレーニング用データセット、それらのデータセットの出所および範囲と特徴、データの取得方法と選択方法、ラベリングの手順とデータクリーニング方法に関する情報が含まれる。これらの情報がOSD準拠のライセンスで利用できる状態にすることが求められるのである。モデル・パラメータのように契約等のライセンス以外の法的行為を含むわけではないが、OSD準拠とみなせるようなライセンスであれば良い。データの情報ということはある意味で文書コンテンツが大半となる可能性が高いわけであり、クリエイティブ・コモンズの一部のライセンス等のOSI承認以外のOSD準拠とみなせるライセンスを含ませる必要があるということである。なお、当然ながらクリエイティブ・コモンズではCC-BY-4.0やCC0等の余計な制限のないライセンスが念頭に置かれている。

ここで注意が必要なのは、トレーニングで使用されたデータそのものはここに含まれていないということである。あくまでそのデータに関する情報のみを必須としているのである。

現時点でOSIがこのように判断しているのは今年の冬に行われた専門家で構成された作業部会での検討結果によるものである。佐渡はそれには参加していないが、作業部会ではAIシステムの使用、研究、改変、共有の自由のために必要であるコンポーネントは何であるかを突き止めるために幾つかのAIモデルを使って調査検討がなされた。そして、トレーニングデータの領域に関してはデータの内容そのものよりもその出所やラベル付け、重複排除、フィルタリングした方法等を知ることが重要であるという結論が出されたのである。AIシステムにおいて4つの自由を実現するためには、単なるデータセットよりもどこのデータをどのように処理したのか分かるような情報の方が重要ということである。

また、データそのものを含むデータセットを共有することは法域によっては違法または技術的に不可能となる状況も発生することが報告された。

例えば、PileというMITライセンスで頒布されているデータセットが存在するが、海賊版サイトから違法に収集された著作権の発生するコンテンツが含まれていることが発覚し、それを除いた上で再公開されるという事案が過去にあった。しかし、既に以前の海賊版コンテンツを含むデータセットで学習したモデルというものは数多く存在する。日本法ではこのような状況に対しての法的な判断の整理はある程度済んでいるが、他の法域ではモデルそのものの正当性に関して判断がつかないこともあるだろう。OSIはその領域における法的判断に踏み込むわけではないが、オープンソースAIである要件にデータの完全な入手まで含まれるとすれば、オープンソースAIと判定されたAIシステムが後から学習したデータセットの公開が禁止された場合にその場でオープンソースAIである資格を失うという考え方もできることになる。その場合、モデルとして十分に4つの自由が実現できているのに学習データが時間経過によって欠けたことでオープンソースAIと呼べなくなる。さすがにそれは理不尽だろうというのが現在の判断である。

なお、データセットそのものをOSAIDで完全に無視しているというわけではなく、学習に用いた完全なデータセットはオプションとして公開リリースされている方が望ましいという位置付けになっている。データセットの位置付けに関してはおそらく継続的に議論され、場合によって判断が変更されることもあるだろう。

チェックリスト適用の現状

現在、OSIでは現在のOSAIDドラフトでのチェックリストを用いた各AIシステムの検証作業も並行して実施されている。Arctic、BLOOM、Falcon、Grok、Llama 2、LLM360、Mistral、OLMo、OpenCV、Phi-2、Poro、Pythia、T5の13システムにおける検証結果が既に報告されているが、現時点ではArctic、LLM360、OLMo、Pythia、T5の5つのシステムのみがOSAIDに適合する可能性が高いとみなされている。

公開されている部分のみにおいても検証するまでもなく4つの自由を満たさないLlamaのようなシステムもあるが、多くのケースでは公開されているコンポーネントが足りていないAIシステムが多い。システムとして再現性があり、使用、研究、改変、共有の自由を満たすには欠けているコンポーネントがあるということである。よって、システムの一部のコードがオープンソースであっても、それがシステムとしてオープンソースAIではないという現象が生じている。なお、これらは現時点のドラフト版を使ってのテスト的な検証に過ぎないが、定義および審査がより厳格になることはあっても緩められることはないだろう。つまり、現状で審査をパスしないシステムがオープンソースAIとみなされることはないだろう。

今後と懸念点

OSAIDの現時点のバージョンは0.0.8であるが、夏にはRC版となり年内にはバージョン1.0として正式にリリースされることになる。現時点では10月にRed Hatの本拠地であるRaleighで開催のAll Things Openにて発表される見込みであるが、そこから若干遅らせる可能性はあるだろう。とは言え、定義全体としては現在の0.0.8でほぼ完成しており、ここから大幅に内容が変更される可能性は低い。しかし、現時点で残されている議論や課題は中々妥協点を探ることは難しく、議論をどのように収束させていくか私から見ても容易ではなさそうなのは懸念される。

残されている議論の中で最大のものは、オープンソースAIのために必須とするコンポーネントにトレーニングデータそのものを含めるか否かという点である。前述のように必ず必要とは限らないという専門の作業部会からの報告やデータに違法性があった場合等に一般に共有することが困難になることへの懸念から現在のドラフトでは完全なトレーニングデータを求めていない。データに関する十分な情報がOSD準拠のライセンスで入手できれば良いという整理をしているわけであるが、これには当然ながら異論もある。完全なモデルの再現性のためには完全なトレーニングデータの入手が必要であるという論である。完全なデータが入手できることは再現性、透明性にとってプラスであることは議論への参加者には否定する者はいないし、私としてもある程度は同意するのだが、それが必須と言えるかは何とも微妙なところである。ただ、OSIとしてはこの点に明確な結論を出しているわけではなく、特にAWS等の大手企業側からこのような完全なデータを必要とする意見を出されているので慎重な議論が継続している。この点は大きくひっくり返るとは思わないが、何らかの微修正はあってもおかしくないとは思う。

また、定義策定以降の審査体制も徐々に問題視されるようになっている。OSDが事実上ライセンスのための定義であるとは前述しているが、そのためOSIは1998年以降ずっとライセンスの審査だけを遂行する組織として成り立ってきた。承認されたライセンスで頒布されるソフトウェアは自動的にオープンソースとみなせるので、ライセンスだけを審査するだけで事足りたわけである。しかし、OSAIDはその構造上から否応なくAIシステムそのもののオープンソースAIへの適合性を審査する必要がある。これをどのような体制、組織、フローで行うかという議論は今のところ具体的なものはない。その必要性は議論されているのでいずれOSIの中で体制を作ることになるとは思うが、その一方でソフトウェアのライセンスの審査は25年以上単なるメーリングリストでのボランティアによる議論での審査というラフな体制で行われてきたわけである。複雑なAIシステムをコンポーネント単位で判定していく作業は既存のライセンス審査とは異質の作業となることは明らかであるし、次々に公開されるAIシステムを逐次審査するだけの人的リソースをOSIが確保し続けるのは今のところは難しい。ただ、このあたりはやると決めれば何とかなるのだろう。

他には、モデル・パラメータに対してグローバルで共通する共有のための法的利用条件としてライセンスという手法が有効であるかどうかという問題もあるだろう。日本法では単なるウェイトは解析結果のデータと整理され、基本的には著作権等の知的財産権が発生しないことが前提となっているが、世界各国の法域においてもモデル・パラメータに対して有効な知的財産権が存在し得るかどうかは微妙な議論が続いている。既に機械学習コミュニティにおいてはオープンソースのライセンスがある程度浸透しているものの、基本的にオープンソースのライセンスは著作権に依拠しているわけであり、その有効性に関しては今後も議論が続くことになるだろう。

この法的な有効性の観点にも関連するのだが、OSAIDに適合するような法的条件をもってAIシステムを共有する行為がこのまま機械学習コミュニティに受け入れられ続けるだろうかという疑問もある。法的有効性に加え、オープンなAIシステムを法的に禁止する動きもあるからである。EU AI規則ではAIの安全性と信頼性を担保するための透明性とオープン性の実現のためにオープンソースが有効であるという論に立って法が作られているが、その一方で特に米国では安全保障上の観点から他国への技術流出を防ぐ目的でオープン性を否定し、根幹から自由な利用を禁止する方向の意見が根強くある。さらに、AIシステム側に一定の倫理制限を求める動きというものは世界共通に見られる傾向でもある。

大昔の暗号領域での米国の輸出規制の経過を見れば分かるように、オープンソースのコミュニティは共有の禁止が安全保障に寄与するとは考えてはいないし、また倫理的な観点での制限が必要であればAIシステムの法的利用条件ではなく各国の倫理の基準に合わせた法令等の領域で制限すべきことだろうということになる。しかし、機械学習コミュニティがこのような判断をするとは限らず、やがてオープンソースであるAIへの熱意が消え去る危険性というものはあるだろう。そもそも、1998年のオープンソース運動というものは自由なソフトウェアを信じる在野のコミュニティの間で成功していた慣習を取りまとめ、それを一般化した運動であったように思うが、一方で現在のAI関連の業界というものは基本的に大資本の資金の投入合戦のようでもあり、元々の機械学習コミュニティにおいて自由な成果の共有という慣習はあるものの大規模で自由なAIシステムの成功例というものはこれからのことであるように思う。今の状況下でオープンソースAIというムーブメントを継続し続けるのは1998年のオープンソース運動より難易度は高いのだろう。

このように課題はまだ山積しているのではあるが、おそらく年内にAIシステムがあるオープンソースAIとみなされる基準となる「オープンソースAIの定義」を我々は公表することになる。公表後もAIと機械学習の技術の進展に合わせて逐次見直しを図ることになるし、定義の運用を開始することにもなるだろう。AIが今後どのように社会に浸透していくのかという観点には我々は回答を持ち合わせていないが、社会で一般的にAIシステムが利用されるようになるのであればそのAIの技術はオープンであり透明性が確保されるべきだと我々は信じている。そのような世界の実現のためにオープンソースAIが存在すると言える世界が訪れることを私は願っている。

参考

Deep Dive: AIレポート: https://deepdive.opensource.org/wp-content/uploads/2023/02/Deep-Dive-AI-final-report.pdf
Now is the time to define Open Source AI: https://opensource.org/blog/now-is-the-time-to-define-open-source-ai
SSPLのライセンス条文とその適格性に関するメモ: https://shujisado.com/2023/12/12/notes_on_sspl/
EU Artificial Intelligence Act: https://artificialintelligenceact.eu/
Open Source AI Definition – draft : https://opensource.org/deepdive/drafts
オープンソースAIの定義 日本語参考訳: https://github.com/opensource-jp/Open-Source-AI
オープンソースとは何か? Open Source Definition逐条解説書: https://shujisado.com/open-source-definition-commentary/
The Model Openness Framework : https://arxiv.org/abs/2403.13784
Recommendation of the Council on Artificial Intelligence: https://legalinstruments.oecd.org/en/instruments/OECD-LEGAL-0449

Copyright 2024 Shuji Sado
本文書はクリエイティブ・コモンズ 表示-継承ライセンスのもとで利用できる。挿絵は単純プロンプトによるAI生成物であり、パブリックドメインである。