marimoの使い方
概要
- Jupyter notebookのオルタナティブ
.py
形式でノートブックを作成できるので jupyter よりシンプルでAIとの連携がしやすい- streamlitのようにコントロール要素を配置して簡易的なWebアプリケーションを作成できる
- 起動時、コードの変更時に自動で再実行される
autorun
をlazy
にすることで制御可能
インストール
$ uv add "marimo[recommended]"
起動
編集モード
$ uv run marimo edit --host 0.0.0.0 --port 3000 --no-token
実行モード(アプリ)
$ uv run marimo run file.py --host 0.0.0.0 --port 3001 --no-token
セル内の変数
- セル内で定義した変数は再定義不可(DAGのグラフで処理するため)
- セル内だけの変数を定義したい場合は変数名の前に
_
をつける
UI例
import marimo as mo
# 検索機能付き
genre_dropdown = mo.ui.dropdown(
options=['Adventure', 'Action', 'Puzzle', 'RPG', 'Strategy', 'Simulation'],
value="Adventure",
label="ゲームジャンルを選んでください",
searchable=True,
)
platform_multiselect = mo.ui.multiselect(
options=['PC', 'Console', 'Mobile', 'VR'],
value=["PC"],
label="プラットフォームを選んでください",
)
text_area = mo.ui.text_area(placeholder="自然言語で記してください...")
mo.vstack([genre_dropdown, platform_multiselect, text_area])