All Articles

micromambaの導入方法

目次

micromambaとは?

Pythonでデータ分析などを行う際にcondaをパッケージ管理システムとして使用している人はそこそこいると思います。

一方でcondaの弱点として、インストールが手間であることやパッケージの依存関係の解決が弱いことなどがあります。

mambaプロジェクトcondaの置き換えを目指しているプロジェクトで、売りはより速い依存関係の解決とパッケージの並列ダウンロード、そしてC++でより効率的に実装されていることです。

mambaのバリエーションがmicromambaでpure C++で書かれており、シングルバイナリとして配布されています。 シングルバイナリであるためインストールが簡単で、インストール時に問題も起こりずらいです。

micromambaのコマンド体系はcondaを踏襲しているため、condaを使ったことがある人は実行コマンドをmicromambaに置き換えるだけで違和感なく使い始めることができるはずです。

これまでcondaを使ったことがなかった人も、micromambaのほうが導入が簡単なので今から始めるならこちらがおすすめです。

インストール

インストール手順はここで説明されています。

Macを使用している場合はbrewで入れましょう。

$ brew install micromamba

Linuxを使っている場合はインストールスクリプトを実行します。

以下の例はUbuntu20.04にmicromabmaを導入しています。 いくつかオプションの設定をどうするか聞かれますが、基本的にデフォルトの設定で問題ないです。

$ "${SHELL}" <(curl -L micro.mamba.pm/install.sh)
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
100  3070  100  3070    0     0   1525      0  0:00:02  0:00:02 --:--:--  1525
Micromamba binary folder? [~/.local/bin]
Init shell (bash)? [Y/n]
Configure conda-forge? [Y/n]
Prefix location? [~/micromamba]
Modifying RC file "/home/ai/.bashrc"
Generating config for root prefix "/home/ai/micromamba"
Setting mamba executable to: "/home/ai/.local/bin/micromamba"
Adding (or replacing) the following in your "/home/ai/.bashrc" file

# >>> mamba initialize >>>
# !! Contents within this block are managed by 'mamba init' !!
export MAMBA_EXE='/home/ai/.local/bin/micromamba';
export MAMBA_ROOT_PREFIX='/home/ai/micromamba';
__mamba_setup="$("$MAMBA_EXE" shell hook --shell bash --root-prefix "$MAMBA_ROOT_PREFIX" 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__mamba_setup"
else
    alias micromamba="$MAMBA_EXE"  # Fallback on help from mamba activate
fi
unset __mamba_setup
# <<< mamba initialize <<<

Please restart your shell to activate micromamba or run the following:\n
  source ~/.bashrc (or ~/.zshrc, ~/.xonshrc, ~/.config/fish/config.fish, ...)

インストールが完了したのち、新しいTerminalを開くとmicromambaが使えるようになっています。

$ micromamba --version
1.5.8

使い方

まずは仮想環境を作ります。

$ micromamba create -n myenv

今回はmyenvという名前の仮想環境を作りましたが、好きな名前を使ってください。

$ micromamba env list
  Name   Active  Path
─────────────────────────────────────────────────
  base           /home/ai/micromamba
  myenv          /home/ai/micromamba/envs/myenv

すると、micromambaの仮想環境にmyenvが追加されていることが分かります。

仮想環境を使うには micromamba activateを実行します。

ai@DESKTOP:~$ micromamba activate myenv
(myenv) ai@DESKTOP:~$

するとプロンプトが変わり仮想環境に入ります。

パッケージのインストールは

$ micromamba install numpy

のように行います。

例ではnumpyを入れたのでPythonのインタプリンターを起動するとnumpyをimportできるようになっていることが確認できます。

$ python
Python 3.12.3 | packaged by conda-forge | (main, Apr 15 2024, 18:38:13) [GCC 12.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy as np
>>>

仮想環境を抜けたいときは

$ micromamba deactivate

を実行してください。

ほかの使い方についてはオフィシャルのドキュメントを参照してください。

Published May 17, 2024

スタートアップで働くデータエンジニア兼データサイエンティスト。興味の範囲はデータパイプラインの構築、データ分析、機械学習、クラウドなどなど。