Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enabling multi engine manager in Docker #545

Open
wants to merge 1 commit into
base: alltalkbeta
Choose a base branch
from

Conversation

Paladinium
Copy link
Collaborator

Adding multi engine manager (MEM) to Docker.

Please check the comments to be sure this PR is in-line with what you are aiming for.

@Paladinium Paladinium requested a review from erew123 March 1, 2025 13:43
@@ -28,6 +31,10 @@ RUN <<EOR
mkdir ${ALLTALK_DIR}/pip_cache
pip install --no-cache-dir --cache-dir=${ALLTALK_DIR}/pip_cache -r system/requirements/requirements_standalone.txt
pip install --no-cache-dir --cache-dir=${ALLTALK_DIR}/pip_cache --upgrade gradio==4.32.2

# By default, version 1.9.10 is used causing this warning on startup: 'FutureWarning: `torch.cuda.amp.autocast(args...)` is deprecated'
pip install --no-cache-dir --cache-dir=${ALLTALK_DIR}/pip_cache local-attention==1.11.1
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did not want to add this dependency to requirements_standalone.txt since I was not sure whether it has a negative impact on the non-Docker setup.

__this_dir = Path(__file__).parent.resolve()

def __init__(self, config_path: Path | str = os.path.join(__this_dir, "mem_config.json")):
super().__init__(config_path, 0)
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2nd argument is zero, which means that the config file is not watched for modifications for now.

RVC_VOICES="$2"
shift
;;
--no_ui)
--no-ui)
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I allowed myself to change the arguments, hoping that the script is not yet very much in use. v2 is still beta, so I hope this is fine.

@@ -0,0 +1,18 @@
{
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added the JSON for MEM to the repo like it is done for confignew.json.

@@ -1,5 +1,7 @@
coqui-tts==0.24.3
filelock>=3.13.4
flask[async]==3.1.0
flask-cors==5.0.1
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

MEM dynamically installed flask dependencies. I assumed it is fine to add those dependencies to requirements_standalone.txt. Let me know if this is a problem for you.

@@ -115,52 +76,14 @@ def ensure_flask_dependencies():
# Global variable to hold the monitor thread
stop_monitor = threading.Event()
monitor = None
WITH_UI = os.getenv("WITH_UI", True).lower() == 'true'
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reading from an env variable whether the UI is needed. Defaults to true.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant