質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

PowerShell

Windows PowerShellはコマンドラインインターフェースであり、システム管理を含むWindowsタスク自動化のためのスクリプト言語です。

Q&A

解決済

1回答

2375閲覧

python仮想環境をアクティベートしようとするとエラーも出ず、仮想環境に入れない状態を解決したいです。

yanassaQ0

総合スコア1

Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

PowerShell

Windows PowerShellはコマンドラインインターフェースであり、システム管理を含むWindowsタスク自動化のためのスクリプト言語です。

0グッド

0クリップ

投稿2022/11/14 03:15

前提

画像生成環境をローカルPCに作ろうとしています。

・automatic1111(https://github.com/AUTOMATIC1111/stable-diffusion-webui)
・rembg(https://github.com/danielgatis/rembg)
・talking-head-anime-3-demo(https://github.com/pkhungurn/talking-head-anime-3-demo)

この3つのプログラムを同じPCで、powershellで動作させたいです。
そのためにpython3.10とanacondaを同時に使う必要があります。

それぞれ仮想環境を作成し、automatic1111とrembgはpython(ver.3.10)で実行し、talking anime headはanaconda(python ver.3.8)で実行します。
何故なら、該当バージョンでないとプログラムの動作がサポートされていないからです。

しかし、anacondaをインストール後、python仮想環境のアクティベートが実行できず、エラーも表示されなくなってしまいました。
因みにanacondaインストール時にパスの変更やpowershellで使えるようにする等チェックははずしてインストールしました。

automatic1111のwebui-user.batにはset PYTHONという変数がありましたので、python3.10のフルパスを指定したらautomatic1111に関しては動きました。
しかし、これから他プログラムを動かす度に別途指定するのは自分にとって難しく、大変なので、それぞれでpythonディレクトリを指定しなくても動くようにしたいです。

また、アクティベートはできないのに何故か仮想環境作成ができて、フォルダ等作成できています。

powershell

1PS A:\venv_list\RemoveBG>python -m venv --system-site-packages RB

RBという名前で、「A:\venv_list\RemoveBG」ディレクトリに作成しました。
イメージ説明

実現したいこと

  • [ 最終目標 ] 上記3点をローカルPCの仮想環境で問題なくスムーズに実行できるようになる。また、 今後別プログラムを実行する場合でも問題なく動くようにしたい。
  • [ 中間目標 ] python3.10とanacondaが問題なく共存し、python3.10での仮想環境実行が、その場で細かい指定することなく通常通り動くようにしたい。
  • [ 手段 ] rembgのpython仮想環境をアクティベートしようとしてコマンドを打ってもエラーも出ず、何も起こらない状態を脱したい。

発生している問題・エラーメッセージ ・該当のソースコード

powershell

1PS A:\venv_list\RemoveBG>RB\Scripts\activate.bat

これを実行した次の瞬間、

powershell

1PS A:\venv_list\RemoveBG>

となり、エラーメッセージも出ず、仮想環境がアクティベートされません。

なので試しにactivate.batの@echo off を削除し、最後行にpauseを追加して出たメッセージがこちらです。

powershell

1A:\venv_list\RemoveBG>set VIRTUAL_ENV=A:\venv_list\RemoveBG\RB 2 3A:\venv_list\RemoveBG>if not defined PROMPT set PROMPT=$P$G 4 5A:\venv_list\RemoveBG>if defined _OLD_VIRTUAL_PROMPT set PROMPT= 6 7A:\venv_list\RemoveBG>if defined _OLD_VIRTUAL_PYTHONHOME set PYTHONHOME= 8 9A:\venv_list\RemoveBG>set _OLD_VIRTUAL_PROMPT=$P$G 10 11A:\venv_list\RemoveBG>set PROMPT=(RB) $P$G 12 13(RB) A:\venv_list\RemoveBG>if defined PYTHONHOME set _OLD_VIRTUAL_PYTHONHOME= 14 15(RB) A:\venv_list\RemoveBG>set PYTHONHOME= 16 17(RB) A:\venv_list\RemoveBG>pause 18続行するには何かキーを押してください . . .

一瞬仮想環境アクティベートされているようですが、キーを押すと仮想環境が終了してしまいます。
pythonhomeが空なのが問題なのでしょうか?
もしその場合はどこをどう設定すれば問題なく仮想環境アクティベートができるのでしょうか。

試したこと

・まず、anacondaが悪さをしたのだと思い環境変数をチェックしたのですがユーザー環境変数に問題は見当たりませんでした。
イメージ説明

・python -Vやpip -Vを実行すると問題なく実行されバージョン情報が表示されます。

powershell

1PS A:\venv_list\RemoveBG> python -V 2Python 3.10.8 3PS A:\venv_list\RemoveBG> pip -V 4pip 22.2.2 from C:\Users\username\AppData\Local\Programs\Python\Python310\lib\site-packages\pip (python 3.10)

・また、作業ディレクトリでメッセージウィンドウを表示するテストプログラムを実行した結果、問題なく実行されました。

・pythonの再インストール
状態変わらず

・上記のようにactivate.batの@echo off を削除し、最後行にpauseを追加書き換えてみましたが、原因が分かりませんでした。pythonhomeが空なのが原因?なのか、それならどこをどう直せば見当がつかない状態です。

補足情報(FW/ツールのバージョンなど)

システム情報 OS windows11
python 3.10.8
anaconda (version 1.11.0)
実行ツール powershell

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

meg_

2022/11/14 03:28

よく分からないのですが、venv環境とconda環境を連携させたい?ということなのでしょうか?
yanassaQ0

2022/11/14 09:07

質問ありがとうございます。 現段階では、プログラム同士の連携はせず、 同じPCで3つのプログラムがそれぞれ独立して動くようにしたい、と思っています。 (もしできるようなシステム構築の技術があればよかったのですが) 説明が分かりにくくてすみません。 使う人間が画像生成させる→人間が画像生成の結果を見ていいものを選ぶ→選んだ画像の背景を削除する→顔表情差分等を作成する と手動で人間が連携させる予定です。
guest

回答1

0

ベストアンサー

実現したいことの方が伝わってないですが、PowerShellを使ってるなら起動するのはバッチファイルじゃなくて Activate.ps1 でしょう。

投稿2022/11/14 04:29

quickquip

総合スコア11038

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yanassaQ0

2022/11/14 09:20 編集

回答ありがとうございます。 RB\Scripts\Activate.ps1にしたら動きました! 仮想環境内でrembgをインストール・実行してみたところ問題なく動作しました。 ありがとうございます。 それにしてもanacondaをインストールする前はbatの方でアクティベートできていたのが不思議です。 コピペ実行したので打ち間違いはないはずなのですが、原因が不明なのがちょっとモヤモヤします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問