用語解説 オープンソース

オープンソースとは

オープンソースとは、ソースコードを公開して誰でも利用・改変・再配布できるようにしたソフトウェアの形態です。ライセンスの種類、料金がかかるかどうか、誰が開発しているか、AI分野での最近の動きと、導入前に確認すべき点を解説します。

オープンソースとは、ソフトウェアの設計図にあたるソースコードを公開し、誰でも利用・改変・再配布できるようにした形態のことです。どこまで自由に使えるかは作者が付けた「ライセンス」で決まります。コードが公開されていても、ライセンスが付いていなければオープンソースとは呼びません。

オープンソースとは:定義とライセンス

定義を管理しているのは、米国の非営利団体 Open Source Initiative(OSI)です。OSI は「オープンソースの定義」を定め、その条件を満たすライセンスを承認しています。条件には、自由に再配布できること、ソースコードを入手できること、改変版の配布を認めること、特定の個人や用途を差別しないことなどがあります。

代表的なライセンスは MIT License、Apache License 2.0、GNU GPL の 3 つです。MIT と Apache は「許容型」と呼ばれ、改変したコードを公開しないまま自社製品に組み込めます。GPL は「コピーレフト型」で、改変版を配布するときは、そのソースコードも同じ条件で公開する義務があります。どちらを選ぶかで、製品にしたときの扱いが大きく変わります。

使い方:何ができるのか

エンジニアは、GitHub などのリポジトリやパッケージマネージャからコードを取り込み、自分のシステムの部品として使います。Linux、Python、PostgreSQL、Kubernetes などがよく知られた例です。中身が見えるので、動きを自分で確かめたり、自社向けに作り変えたりできます。不具合を直したら、その修正を本体に送る(コントリビュートする)こともできます。

企画・DX の担当者にとっての利点は、特定ベンダーへの依存(ロックイン)を減らせることと、中身を第三者が検証できることです。

料金:無料で使えるのか

オープンソースのソフトウェア自体には、原則としてライセンス料がかかりません。ただし、総費用がゼロになるわけではありません。サーバ代、運用・保守の人件費、セキュリティ更新への対応は利用者が負担します。商用サポートや、クラウド上で運用まで引き受けるマネージドサービスを有料で提供する企業もあります。価格は提供元ごとに違うので、個別に確認が必要です。

誰が作っているのか:AI分野の最近の動き

作り手は、個人のボランティア、企業の社員、Linux Foundation や Apache Software Foundation のような財団です。企業が自社の技術を公開する理由としては、利用者や開発者を集めて自社技術を業界標準にすることがよく挙げられます(これは一般的な動機で、個々の企業の意図はそれぞれ異なります)。

AI 分野では公開が相次いでいます。当サイトでは、樹林AI が国産のソブリンAI「JJ-1」をオープンソースで公開したこと、Meta が「Muse」の AI を使ったガジェットを自作できるコードを公開したことを報じました。どちらも、ライセンスの条件や公開の範囲は現時点で分かっていません。

AI モデルの場合、ソースコードだけでなく、学習済みの重みや学習データをどこまで公開するかが論点になります。「オープンソース」と名乗っていても、利用制限付きのライセンスで重みだけを公開しているものもあり、OSI の定義を満たすとは限りません。投資家の視点では、競合はクローズドな商用製品と、同じ分野のほかのオープンソースの両方になります。

導入前に確認すること

確認すべき点は 4 つです。ライセンスの種類と商用利用の可否、最終更新日や開発者の数から見た開発の継続性、脆弱性が見つかったときの対応体制、それに社内で保守できる人がいるかどうか、です。「無料だから」だけで決めず、運用まで含めて判断してください。

オープンソースに関する記事

2 件