Anaconda パッケージリポジトリが「大規模な」組織では有償となっていた

::: note warn
2024年3月末に[ライセンス](https://legal.anaconda.com/policies/en?name=terms-of-service#terms-of-service)が全面的に改訂されました。
[以前](https://web.archive.org/web/20230323110415/https://legal.anaconda.com/policies/en/?name=terms-of-service)とは異なり、教育機関はカリキュラムベースのコースの使用のみに限定される場合には免除されるという条件が明記されました（`Educational Entities will be exempt from the paid license requirement, provided that the use of the Anaconda Offering(s) is solely limited to being used for a curriculum-based course.`）。
つまり、教育機関で研究目的の利用時は200人以上の組織であれば有償ということがはっきりしたことになります。
以前も「教育活動に関連して使用する場合（`use by a student or employee of an educational institution in connection with educational activities`）」とは[記載されていました](https://web.archive.org/web/20230323110415/https://legal.anaconda.com/policies/en/?name=terms-of-service)が、今回カリキュラムベースでの利用に限定して免除されることが明記されたことになります。
:::

# 概要

- Pythonを利用した機械学習の環境構築に有用な[Anaconda](https://www.anaconda.com/)というソフトがあります。このソフトは[リポジトリに含まれるバイナリが高速（環境によっては2倍以上）](https://tech.morikatron.ai/entry/2020/03/27/100000)、[インタプリタの切り替え、パッケージ管理が楽](https://ikatakos.com/pot/programming/python/install)などの利点を持っています。
    
- このソフトについて[2020年4月30日に発表](https://www.anaconda.com/blog/sustaining-our-stewardship-of-the-open-source-data-science-community)があり、リポジトリ商用利用時の費用の条件が変更され、環境によっては有償となっていましたので内容をまとめます。
  - 正確な情報は公式サイト（[利用規約](https://www.anaconda.com/terms-of-service)、[2020年4月30日の発表](https://www.anaconda.com/blog/sustaining-our-stewardship-of-the-open-source-data-science-community)）参照
  - [Miniconda + conda forge の運用であれば公式リポジトリに関する商用利用規約変更の影響は受けない](https://www.reddit.com/r/Python/comments/iqsk3y/anaconda_is_not_free_for_commercial_use_anymore/gjb056j?utm_source=share&utm_medium=web2x&context=3)ようです（公式記事ではなくRedditでのAnaconda CEO によるコメント）。
  - conda-forge が既定の [miniforge](https://github.com/conda-forge/miniforge) というパッケージが作成中のようです（安定性等は不明）。

- 記載間違いなどご指摘いただけると幸いです。

# 履歴

- **(2020年10月29日)** Anaconda **パッケージリポジトリ**の利用規約変更の旨明記
- **(2020年10月30日)** [Commercial Edition FAQ](#anaconda-commercial-edition-faq)リンクを追加
- **(2020年12月12日)** まとめ記載変更（利用規約の引用、entitiesに関する説明）
- **(2020年12月31日)** Anaconda以外の環境構築手順記載
- **(2021年1月21日)** @tsugar さんの[記事](https://qiita.com/tsugar/items/af716954e8e1b94e9965#_reference-8c874f6f1ced9b61b309)を踏まえ、公式リポジトリ以外の方法を追記
- **(2021年2月10日)** [conda-forge](https://conda-forge.org/)、[miniforge](https://github.com/conda-forge/miniforge)関連の情報を追記
- **(2021年3月14日)** Redditコメントについて追記
- **(2023年11月15日)** 構築手順追加
- **(2024年6月25日)** ライセンス改定（2024年3月末）を反映

# まとめ

**Anaconda パッケージリポジトリ（repo.anaconda.com）の利用規約の変更**となります。

::: note warn
2024年3月末に[ライセンス](https://legal.anaconda.com/policies/en?name=terms-of-service#terms-of-service)が全面的に改訂されました。
:::

|区分|条件|
|---|---|
|有償|・組織での利用。200人以上の従業員または請負業者を擁する組織（`an organization that has two hundred (200) or more employees or contractors`）<br>・200人以上の従業員または請負業者を擁する政府機関および非営利団体による使用は、組織的使用と見なされる。<br>・教育機関は、Anaconda オファリングの使用がカリキュラムベースのコースの使用のみに限定されることを条件に、有償ライセンス要件が免除されます。|

**原文引用。引用元を確認すること**

> 2.1 Organizational Use.  Your registration, download, use, installation, access, or enjoyment of all Anaconda Offerings on behalf of an organization that has two hundred (200) or more employees or contractors (“Organizational Use”) requires a paid license of Anaconda Business or Anaconda Enterprise. For sake of clarity, use by government entities and nonprofit entities with over 200 employees or contractors is considered Organizational Use.  Purchasing Starter tier license(s) does not satisfy the Organizational Use paid license requirement set forth in this Section 2.1. Educational Entities will be exempt from the paid license requirement, provided that the use of the Anaconda Offering(s) is solely limited to being used for a curriculum-based course. Anaconda reserves the right to monitor the registration, download, use, installation, access, or enjoyment of the Anaconda Offerings to ensure it is part of a curriculum.  Utilizing Miniconda to pull package updates from the Anaconda Public Repository without a commercial license (if required by the conditions set forth in Section 2 of this Terms of Service) is considered a violation of the Terms of Service.

引用元： https://legal.anaconda.com/policies/en?name=terms-of-service#terms-of-service

:::note
有償のライセンスが必要となる規模の企業であれば、利点（[リポジトリに含まれるバイナリが高速（環境によっては2倍以上）](https://tech.morikatron.ai/entry/2020/03/27/100000)、[インタプリタの切り替え、パッケージ管理が楽](https://ikatakos.com/pot/programming/python/install)）を考慮すれば、従業員の生産性を高めるために、商用版を購入して Anaconda を使用するという選択も当然あることと思います。
:::

---

**(2021年3月14日)** 別リポジトリを利用する形（Miniconda + conda forge）ならば、公式リポジトリ（repo.anaconda.com）に関する商用利用規約変更の影響は受けないようです。

最終的には、下記の関連スレッドにて**議論の経緯も含めてご一読の上判断**いただければと思います。

- Reddit での Anaconda CEO(pwang99si氏)の質疑（Miniconda + Conda-forge）
  https://www.reddit.com/r/Python/comments/iqsk3y/anaconda_is_not_free_for_commercial_use_anymore/gqdqrk9/?context=3
  > pwang99, 4 days ago
  > You can download Miniconda, and change your conda config to use conda forge, and the Terms of Service do not apply to that. The ToS only applies to commercial usage of the package repository of packages we build, at repo.anaconda.com; it does not apply to community-built and uploaded packages at anaconda.org.

  引用：2021年3月14日時点


- Reddit での Anaconda CEO(pwang99si氏)の質疑（商用の条件）
  https://www.reddit.com/r/Python/comments/lvr85n/i_want_to_use_python_commercially_for_free_is/gpdjigy/

---

## 影響を受ける場合の対応

### 1. Anacondaの有償ライセンスを利用する

:::note info

(2021年8月30日) XLSOFTでAnacondaのコマーシャルライセンスの取り扱いを開始していました。

:::

https://www.xlsoft.com/jp/products/anaconda/index.html

### 2. 商用無料ライセンス

### 2.1 まとめ

https://qiita.com/c60evaporator/items/b6a7394231d1e768ce64

### 2.2 Miniconda + conda forgeを利用する

※RedditのAnaconda CEOの投稿では言及あり

|構成|参考リンク|
|---|---|
|Miniconda + conda-forge|手順:<br>[Anacondaの有償化に伴いminiconda+conda-forgeでの運用を考えてみた](https://qiita.com/kimisyo/items/986802ea52974b92df27)<br>手順 (Batchファイルあり):<br>[Anaconda有償化に伴いMiniconda+conda-forgeに引越しをした](https://qiita.com/AnnnPsinan414/items/7782a753347ff8ba448d#_reference-08470b82a5f9c6021b96)<br>Intel MKL版ライブラリ:<br>[Python: Intel MKL版numpyをanaconda有償化の影響を回避しながら手軽にインストールする](https://blog.neko-ni-naritai.com/entry/installing-intel-channel-numpy)|
|Windows + WSL 2(Linux) + JupyterLab | + **Miniconda**、WSL2構築後の手順:<br>[WSL 2 環境で miniconda を使って JupyterLab を簡単に起動できるようにした話](https://qiita.com/ShuntaIto/items/bb6793c0bbf2ed4e53de)|


### 2.3. Anaconda以外を利用する

|構成|参考リンク|
|---|---|
|Windows上に直接構築|Python:<br>[Anacondaが有償化されて困っている人に贈る、Pythonのパッケージ管理](https://qiita.com/c60evaporator/items/ba41cef4b37465c39948)<br>[Anacondaを利用しないでWindoswPC(社用PC)にPython環境を構築してもらう手順書](https://qiita.com/yu_to02x12/items/2ded9ae338b5680f56b1) ※JupyterLabの構築手順も記載<br>CUDA(GPU):<br>[Windows版TensorFlow 1.13～1.15でGPUを使う (CUDAのインストール)](https://qiita.com/rhene/items/31bf4713b9dbda28bcc1)|
|Windows + WSL 2(Linux)|[Windows 10 WSL 2（Linux 用 Windows サブシステム） + LinuxでのPython環境作成手順](https://qiita.com/tfukumori/items/c2997988acacd0da17d0)|
|Windows + WSL 2(Linux) + JupyterLab | + **miniforge**、WSL2構築後の手順:<br>[WSL 2 環境で miniforge を使って JupyterLab を簡単に起動できるようにした話](https://qiita.com/ShuntaIto/items/330cb5ad7930b746fc6d)|
|Windows + WSL 2(Linux) + Docker|[VSCodeでWSL2上のDockerコンテナ内コードをデバッグ](https://qiita.com/c60evaporator/items/fd019f5ac6eb4d612cd4)|
|Windows + WSL 2(Linux) + NVIDIA Docker on Linux|手順:<br/>[CUDA on WSL2 ＆ VSCode Remote Containersによる開発環境構築・検証](https://qiita.com/y-na-biz/items/8f0c0941887e4c779dff)<br/>最新情報:<br/>[待ってました CUDA on WSL 2](https://qiita.com/ksasaki/items/ee864abd74f95fea1efa)|
|Windows + WSL2(Linux) + Docker(Ubuntu上に構築)|[Docker Desktopに依存しない、WindowsでのDocker環境](https://qiita.com/ohtsuka1317/items/617a865b8a9d4fb67989)|


## 経緯

[2020年4月30日の発表](https://www.anaconda.com/blog/sustaining-our-stewardship-of-the-open-source-data-science-community)にて、利用規約を改定しAnaconda パッケージリポジトリの商用利用の条件が変わったことが説明されています。

Anacondaがメンテしているリポジトリに対して「多量の商用利用」のトラフィックがあり、リポジトリを大規模に商業的に使用する場合、またはその周りに商用ソフトウェア／サービスを構築する場合などの商用利用には、Anacondaがサービスを持続するための商用リポジトリの購入を依頼する必要が出てきた、とのことです。

:::note info

実際のところ、トラフィックコストの増加への対応とリポジトリを維持して継続したサービスを行うためには必要なコストだと思います。

:::

## 有償、無償の条件

### [2020年4月30日の発表](https://www.anaconda.com/blog/sustaining-our-stewardship-of-the-open-source-data-science-community)

### [利用規約](https://www.anaconda.com/terms-of-service)

### [はじめに - コマーシャルエディション](https://www.anaconda.com/products/individual/get-started-commercial-edition-1)

※ Anaconda Individual Editionをダウンロードした際に表示されたページ

### [Anaconda Commercial Edition FAQ](https://www.anaconda.com/blog/anaconda-commercial-edition-faq) 

※ 2020年10月30日時点で以下の質問に対する回答が記載されていました。
※ 回答など詳細は原文をご参照ください。

> - Why did you change your Terms of Service?
> - How do you define commercial usage?
> - How do I know if I’m not in compliance?
> - Today the biggest differences are that Commercial Edition:
> - How can I buy Commercial Edition?
> - What do I get with Commercial Edition?
> - How is Anaconda sustaining the open-source community?
> - I access Anaconda Individual Edition via another program (JFrog Artifactory, AWS Sagemaker, Sonatype, Nexus, Cloudera ML, etc.), do I need a paid license?
> - What happens if I continue to use Anaconda Individual Edition in a commercial setting without a paid license?

https://www.DeepL.com/Translator で翻訳:

> - 利用規約を変更した理由は？
> - 商用利用をどのように定義していますか？
> - コンプライアンスに違反しているかどうかを知るにはどうすればいいですか？
> - 現在の最大の違いは、Commercial Editionです。
> - 商用版を購入するにはどうすればいいですか？
> - 商用版では何が得られるのか？
> - Anaconda はどのようにしてオープンソースコミュニティを維持していますか？
> - 別のプログラム（Jfrog Artifactory、AWS Sagemaker、Sonatype、Nexus、Cloudera ML など）を介して Anaconda Individual Edition にアクセスした場合、有料のライセンスが必要ですか？
> - 有料ライセンスなしで、商業的な設定でAnaconda Individual Editionを使用し続けるとどうなりますか？


## Redditなどでの議論

AnacondaのCEO（pwang99氏）も交えて議論が行われています。

https://www.reddit.com/r/Python/comments/iqsk3y/anaconda_is_not_free_for_commercial_use_anymore/

https://www.reddit.com/r/Python/comments/lvr85n/i_want_to_use_python_commercially_for_free_is/

https://www.reddit.com/user/pwang99/


# 参考資料

**公式**

- [Anaconda | Sustaining our stewardship of the open-source data science…](https://www.anaconda.com/blog/sustaining-our-stewardship-of-the-open-source-data-science-community)
- [Anaconda | Terms of Service](https://www.anaconda.com/terms-of-service)

**ブログ、掲示板等**

- [Anaconda is not free for commercial use (anymore) - alternatives ? : Python](https://www.reddit.com/r/Python/comments/iqsk3y/anaconda_is_not_free_for_commercial_use_anymore/g4tyxmv/)
- [Anaconda の NumPy が高速みたいなので試してみた - Morikatron Engineer Blog](https://tech.morikatron.ai/entry/2020/03/27/100000)
- [Pythonインストール(Anaconda) [いかたこのたこつぼ]](https://ikatakos.com/pot/programming/python/install)

**conda-forge 関連**

- [conda-forge | community driven packaging for conda](https://conda-forge.org/)
- [Package Distribution and the anaconda.com Terms of Service — the conda-forge blog](https://conda-forge.org/blog/posts/2020-11-20-anaconda-tos/)