「[[.NET 開発基盤部会 Wiki>http://dotnetdevelopmentinfrastructure.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -[[戻る>Python#la989816]] --WSL2 Ubuntu 24.04 LTS 2025/1/21 --[[Ubuntu 24.04 on Azure via Bastion 2025/2/27]] *目次 [#m78a48a6] #contents *概要 [#j044485b] -クリーン・インストール環境にPython環境を再構築 -[[Jupiter>Jupyter Notebook]]利用環境と、[[LangFlow>LangChain#k3130395]]評価環境を仮想分離 *詳細 [#k883c376] **Ubuntu再インストール [#a7f09862] [[Ubuntu 24.04 LTS の再インストール>https://techinfoofmicrosofttech.osscons.jp/index.php?WSL%20%E2%86%92%20WSL2#i6dd4c37]] **Ubuntu ユーザの変更 [#k4fb026d] -何故か通常ユーザでなく、rootユーザだったので、再度、[[WSL2から再インストール>#a7f09862]] -この手順も良く解らん:https://zenn.dev/ohno/articles/48ed2935c5094f -初期化時に、Installing, this may take a few minutes...をスキップせず上手く設定すると良い。 **環境変数設定 [#w5d92061] ***環境変数などを設定する。 [#sc378326] export XXXX="XXXX" ***OPENAI_API_KEYを設定する。 [#f9e34134] export OPENAI_API_KEY=sk-proj-... **プロキシ対応 [#x6d03a24] ***環境変数にプロキシ設定を追加する。 [#m81a63c0] export HTTP_PROXY="http://UID:PWD@proxy fqdn&port" export HTTPS_PROXY="http://UID:PWD@proxy fqdn&port" ***その他、必要に応じて設定する。 [#g22c45d3] -独自 root CA 証明書のインストール方法 (Ubuntu) #ca-certificates - Qiita~ https://qiita.com/matarillo/items/c04d8afd09eada27a2b2 -apt のプロキシ対応 #Ubuntu - Qiita~ https://qiita.com/m-tmatma/items/e3d9de76be50763ac01c > sudo nano /etc/apt/apt.conf で Acquire::http::Proxy, Acquire::https::Proxy を設定するのが楽。 **以降の手順 [#ta4510d7] ***[[Python環境>#jd2b3138]] [#n534a2b3] ***[[LangFlow環境>#v0be1306]] [#le4b142a] ***[[エクスポート・インポート>#a2fbd3e0]] [#ab816b66] *Python環境 [#jd2b3138] **準備 [#gbaf355a] ***確認 [#h3dfc3f7] pip NG、Python NG、Python3 OK ***設定 [#a65dfb7d] エイリアスのPythonを設定し、pipをインストールする。 -シンボリックリンクを作成(全OS共通) sudo ln -sf /usr/bin/python3 /usr/bin/python -pipをインストールする。 sudo apt update sudo apt install python3-pip **仮想環境(venv) [#m8a520c5] -【私用】ubuntu24.04でpipしてもライブラリインストールできずPEP668になる件 #Python - Qiita~ https://qiita.com/AzukiImo/items/5c6dd7e870c9965e41f3 ***インストール [#q9b47095] venvをインストールする。 sudo apt install python3-venv ***仮想環境作成 [#see9c1a0] 仮想環境(python3-venv)作成のおまじない。 python3 -m venv .python3_venv ***アクティブ化 [#i6929993] (環境外から実行) source .python3_venv/bin/activate ***非アクティブ化 [#da86d231] 環境内から実行 deactivate ***クリア・削除 [#w2fff464] 環境外から実行 -クリア sudo python -m venv --clear python3_venv -削除(実体はただのフォルダらいし) sudo rm -rf .python3_venv ***一覧 [#m0459246] -確認するコマンドがないので以下で代替 sudo find / -path "/mnt" -prune -o -name "*_venv" -print ※ "/mnt"は、除外されるパス。サフィックスが、"_venv"である必要がある。 -一覧ではないが、activate後なら以下で確認できる。 which python /home/[ユーザー名]/.python3_venv/bin/python ***実体 [#x50b1003] -binまでディレクトリ cd /home/[ユーザー名]/.python3_venv/bin -pythonはファイル ls -l /home/[ユーザー名]/.python3_venv/bin lrwxrwxrwx 1 [ユーザー名] [ユーザー名] 7 May 14 09:38 /home/[ユーザー名]/.python3_venv/bin/python -> python3 -ナニが入っている? dir /home/[ユーザー名]/.python3_venv/bin Activate.ps1 activate activate.csh activate.fish python python3 python3.12 pip pip3 pip3.12 ... **[[Jupiter>Jupyter Notebook]]環境 [#k0a073ba] 仮想環境(python3-venv)内から実行 ※ [[参考>Jupyter Notebook#ie578dbb]] ***準備 [#s23746c4] -初回は不要だが、2回目以降、XXXX-venvを作成した場合、以下の手順が必要。 -sudoでの解決はNGっぽい(仮想環境のpipでsudoを使うと意図しない結果になる) 初回は不要だが、2回目以降、XXXX-venvを作成した場合、以下の手順が必要。 -EC2のvenvでpip installしたらPermission deniedと言われた件 #Python - Qiita~ https://qiita.com/lefirea/items/84553abf9e948d5506fa -Permission denied (os error 13)対応~ sudo chmod -R 777 /home/[ユーザー名]/.XXXX-venv/ -sudoでの解決はNGっぽい(仮想環境のpipでsudoを使うと意図しない結果になる) ***インストール [#b06bd259] pip install Jupyter pip install jupyterlab pip install numpy pip install pandas ***起動 [#pdb3ede8] -パス? $ export PATH="$HOME/.local/bin:$PATH" -起動 $ jupyter-lab *LangFlow環境 [#v0be1306] **pip → uv [#ofc5386b] -[[LangFlowのインストール>#i24270b5]]で推奨されているパッケージ・マネージャー。 -uv(pythonパッケージ・マネージャー)の使い方 詳細版~ https://zenn.dev/tabayashi/articles/52389e0d6c353a -【Python】uvで始めるPythonプロジェクト #初心者 - Qiita~ https://qiita.com/kissy24/items/0c091bb5f12d697131ae ***インストール [#n617ae51] 環境外から実行 # macOS/Linux curl -LsSf https://astral.sh/uv/install.sh | sh ***設定 [#m6199486] -指示されたコマンドを実行 source $HOME/.local/bin/env -Shell の補完スクリプトを入れる echo 'eval "$(uv generate-shell-completion bash)"' >> ~/.bashrc -自身のアップデート uv self update **[[LangFlow>LangChain#k3130395]]評価環境 [#i24270b5] ***仮想環境準備 [#xd8132e3] -仮想環境(langflow)作成のおまじない。~ (コチラは何故か?「sudo」が必要だった) sudo python3 -m venv .langflow_venv -仮想環境(langflow)のアクティブ化 source .langflow_venv/bin/activate ※ どデカい(設計 / 依存性が過剰な)ので仮想環境を切っておいて正解。 ***インストール [#t65c0b95] uvが推奨というダケあって、pipダケだとマトモにインストールできない。 ※ 依存関係の解決でインストールが停止する (e2b-code-interpreter) #5794~ https://github.com/langflow-ai/langflow/issues/5794 -%%sudo で command not found を回避し、環境変数も引き継ぐ方法 #Ubuntu - Qiita%%~ %% https://qiita.com/noraworld/items/88f56975cdfc69bbf30b %% -%%sudo で(uvの)command not found を回避...%% sudo visudo ... -Permission denied (os error 13)対応~ sudo chmod -R 777 /home/[ユーザー名]/.langflow_venv/ -uv pip install~ uv pip install langflow ***起動 [#g17e5f0c] uv run langflow run ※ 表示されたURLにブラウザからアクセスする。 ***[[操作>LangChain#qdc47b14]] [#p8a6b7f3] *Ollama環境 [#ob449d3e] **Ollamaのインストール [#y0b5e354] -OllamaはPython関係ないので仮想環境は不要 -以下でインストール(2025/3情報) curl -fsSL https://ollama.com/install.sh | sh **Ollamaの実行と試行 [#hadce4cd] -実行 ollama run phi3:mini -試行 curl -X POST http://localhost:11434/api/generate -d '{ "model": "phi3:mini", "prompt": "こんにちは、Ollama!日本語で返答してください。" }' *WSLのエクスポート・インポート [#a2fbd3e0] **エクスポート [#o21a6aba] ファイルサイズは4GBほどだった。 wsl --export Ubuntu-XXX d:\ubuntu-XXX.tar **インポート [#va9cac03] XXX=LangFlowの場合(仮想環境(venv)を使えばこの限りではない) -格納先を指定してインポート mkdir $home\AppData\Local\wslDistroStorage\LangFlow wsl --import Ubuntu-LangFlow $home\AppData\Local\wslDistroStorage\LangFlow $home\Downloads\ubuntu-XXX.tar -既存の格納先は以下のコマンドで確認できる。 Get-ItemProperty -Path Registry::HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Lxss\* -インポート後に、WSL2のディストリビューションを起動するとrootでの起動になったのでコレを修正する。 --Ubuntu-LangFlow側で以下を実行 cat << EOF > /etc/wsl.conf [user] default=user-name EOF --Windows側で以下を実行 wsl -t Ubuntu-LangFlow --Ubuntu-LangFlowを起動 *参考 [#mbfd2103]