152334H / tortoise-tts-fast

Fast TorToiSe inference (5x or your money back!)
GNU Affero General Public License v3.0
759 stars 177 forks source link

Docs are out of date and examples are mostly broken #54

Open chrisbward opened 1 year ago

chrisbward commented 1 year ago

./script is now ./scripts

./script/tortoise-tts.py is now ./scripts/tortoise_tts.py (underscore)

bbecausereasonss commented 1 year ago

Yea, I'm having a hell of a time installing this. The instructions are incredibly unclear :/

absane commented 1 year ago

To be honest, unclear instructions were probably unintentional, but there likely was no motivating reason to improve them. Stuff changed really fast and anyone would get stuck in documentation hell. Plus, even if the instructions were "clear" this project is essentially a poor-man's implementation of bleeding-edge research. It's more complicated than "run this tool to clone a voice in 5 seconds." Over the last few weeks I have been building wrapper functions and helper scripts to stream-line this process. I can make really good voice clones now, like scary good, but it's still a pain in the butt no matter how much I have to rebuild everything.

The project isn't that difficult to install, but you really need a clean environment. You'll notice that it's very specific about library versions, some of which conflict with other things you probably have installed. Solve this by uninstalling all Python versions and all libraries. Start over. Install Poetry (this repo's method) or use Miniconda (my preferred way). Funny story: last night I broke my TorToiSe Miniconda environment, and couldn't seem to fix it, so for now the only way to run it is to run Poetry INSIDE of my new TorToiSe Miniconda environment. It's sort of like the movie Inception... IDK... it works for now and I'm afraid to touch it.

Anyway. isolate stuff. You can very easily make a very clean Miniconda environment for Python 3.10 whose sole purpose is to run TorToiSe-TTS-Fast and nothing else. But, you need to stop doing pip install whatever across your global packages if you do that. Otherwise, you're going to have a hard time. The one that gave me the most issues was librosa. They changed so much in that library between minor versions that half my ML stuff would break whenever I'd install something else. Lesson learned: use virtual environments.

bbecausereasonss commented 1 year ago

To be honest, unclear instructions were probably unintentional, but there likely was no motivating reason to improve them. Stuff changed really fast and anyone would get stuck in documentation hell. Plus, even if the instructions were "clear" this project is essentially a poor-man's implementation of bleeding-edge research. It's more complicated than "run this tool to clone a voice in 5 seconds." Over the last few weeks I have been building wrapper functions and helper scripts to stream-line this process. I can make really good voice clones now, like scary good, but it's still a pain in the butt no matter how much I have to rebuild everything.

The project isn't that difficult to install, but you really need a clean environment. You'll notice that it's very specific about library versions, some of which conflict with other things you probably have installed. Solve this by uninstalling all Python versions and all libraries. Start over. Install Poetry (this repo's method) or use Miniconda (my preferred way). Funny story: last night I broke my TorToiSe Miniconda environment, and couldn't seem to fix it, so for now the only way to run it is to run Poetry INSIDE of my new TorToiSe Miniconda environment. It's sort of like the movie Inception... IDK... it works for now and I'm afraid to touch it.

Anyway. isolate stuff. You can very easily make a very clean Miniconda environment for Python 3.10 whose sole purpose is to run TorToiSe-TTS-Fast and nothing else. But, you need to stop doing pip install whatever across your global packages if you do that. Otherwise, you're going to have a hard time. The one that gave me the most issues was librosa. They changed so much in that library between minor versions that half my ML stuff would break whenever I'd install something else. Lesson learned: use virtual environments.

I always create a new conda environment, however even when doing so a I had ton of conflicts and dependency issues.

chrisbward commented 1 year ago

To be honest, unclear instructions were probably unintentional, but there likely was no motivating reason to improve them. Stuff changed really fast and anyone would get stuck in documentation hell. Plus, even if the instructions were "clear" this project is essentially a poor-man's implementation of bleeding-edge research. It's more complicated than "run this tool to clone a voice in 5 seconds." Over the last few weeks I have been building wrapper functions and helper scripts to stream-line this process. I can make really good voice clones now, like scary good, but it's still a pain in the butt no matter how much I have to rebuild everything.

The project isn't that difficult to install, but you really need a clean environment. You'll notice that it's very specific about library versions, some of which conflict with other things you probably have installed. Solve this by uninstalling all Python versions and all libraries. Start over. Install Poetry (this repo's method) or use Miniconda (my preferred way). Funny story: last night I broke my TorToiSe Miniconda environment, and couldn't seem to fix it, so for now the only way to run it is to run Poetry INSIDE of my new TorToiSe Miniconda environment. It's sort of like the movie Inception... IDK... it works for now and I'm afraid to touch it.

Anyway. isolate stuff. You can very easily make a very clean Miniconda environment for Python 3.10 whose sole purpose is to run TorToiSe-TTS-Fast and nothing else. But, you need to stop doing pip install whatever across your global packages if you do that. Otherwise, you're going to have a hard time. The one that gave me the most issues was librosa. They changed so much in that library between minor versions that half my ML stuff would break whenever I'd install something else. Lesson learned: use virtual environments.

Been using python-venv for almost everything and got the repo working fine.

Rasied this issue because the paths in the examples are broken, along with a bunch of other things - also cannot set the voice like in the original repo?

bbecausereasonss commented 1 year ago

I dunno if you installed this way back when, but I for the love of me cannot get it installed without errors. I have tried like 10x now fresh. Venv, Conda env. You name it. Always some error during install. Then even though Pytorch /w Cuda enabled is installed and verified the streamlit GUI only ever uses the CPU.... and says CUDA says is not, but is not found :/

blahblahdrugs commented 1 year ago

To be honest, unclear instructions were probably unintentional, but there likely was no motivating reason to improve them. Stuff changed really fast and anyone would get stuck in documentation hell. Plus, even if the instructions were "clear" this project is essentially a poor-man's implementation of bleeding-edge research. It's more complicated than "run this tool to clone a voice in 5 seconds." Over the last few weeks I have been building wrapper functions and helper scripts to stream-line this process. I can make really good voice clones now, like scary good, but it's still a pain in the butt no matter how much I have to rebuild everything.

The project isn't that difficult to install, but you really need a clean environment. You'll notice that it's very specific about library versions, some of which conflict with other things you probably have installed. Solve this by uninstalling all Python versions and all libraries. Start over. Install Poetry (this repo's method) or use Miniconda (my preferred way). Funny story: last night I broke my TorToiSe Miniconda environment, and couldn't seem to fix it, so for now the only way to run it is to run Poetry INSIDE of my new TorToiSe Miniconda environment. It's sort of like the movie Inception... IDK... it works for now and I'm afraid to touch it.

Anyway. isolate stuff. You can very easily make a very clean Miniconda environment for Python 3.10 whose sole purpose is to run TorToiSe-TTS-Fast and nothing else. But, you need to stop doing pip install whatever across your global packages if you do that. Otherwise, you're going to have a hard time. The one that gave me the most issues was librosa. They changed so much in that library between minor versions that half my ML stuff would break whenever I'd install something else. Lesson learned: use virtual environments.

I am pretty new to all of this. I have already tried getting this repo and the original running on my default drive and messed with docker(which I don't know how to use) and whatever else. What is the best way to start fresh and isolate everything? Is there a guide.. do I need to reinstall windows or anything?

At this point I am pretty sure the scenario you described where I am using pip for stuff and then conda for other stuff is exactly my problem. I have like 3 kernals for python. I just want a clean slate.

I've also got this thing going where when I use conda it is using a different vocoder.py or whatever than the one in the repo.

And I can't seem to get streamlit to use the GPU. I am out of my depth which is fine and I don't mind mucking through it but I would appreciate some advice on starting fresh and best practices move forward. Also is there a Discord or something where people are discussing these kinds of things?

bbecausereasonss commented 1 year ago

To be honest, unclear instructions were probably unintentional, but there likely was no motivating reason to improve them. Stuff changed really fast and anyone would get stuck in documentation hell. Plus, even if the instructions were "clear" this project is essentially a poor-man's implementation of bleeding-edge research. It's more complicated than "run this tool to clone a voice in 5 seconds." Over the last few weeks I have been building wrapper functions and helper scripts to stream-line this process. I can make really good voice clones now, like scary good, but it's still a pain in the butt no matter how much I have to rebuild everything. The project isn't that difficult to install, but you really need a clean environment. You'll notice that it's very specific about library versions, some of which conflict with other things you probably have installed. Solve this by uninstalling all Python versions and all libraries. Start over. Install Poetry (this repo's method) or use Miniconda (my preferred way). Funny story: last night I broke my TorToiSe Miniconda environment, and couldn't seem to fix it, so for now the only way to run it is to run Poetry INSIDE of my new TorToiSe Miniconda environment. It's sort of like the movie Inception... IDK... it works for now and I'm afraid to touch it. Anyway. isolate stuff. You can very easily make a very clean Miniconda environment for Python 3.10 whose sole purpose is to run TorToiSe-TTS-Fast and nothing else. But, you need to stop doing pip install whatever across your global packages if you do that. Otherwise, you're going to have a hard time. The one that gave me the most issues was librosa. They changed so much in that library between minor versions that half my ML stuff would break whenever I'd install something else. Lesson learned: use virtual environments.

I am pretty new to all of this. I have already tried getting this repo and the original running on my default drive and messed with docker(which I don't know how to use) and whatever else. What is the best way to start fresh and isolate everything? Is there a guide.. do I need to reinstall windows or anything?

At this point I am pretty sure the scenario you described where I am using pip for stuff and then conda for other stuff is exactly my problem. I have like 3 kernals for python. I just want a clean slate.

I've also got this thing going where when I use conda it is using a different vocoder.py or whatever than the one in the repo.

And I can't seem to get streamlit to use the GPU. I am out of my depth which is fine and I don't mind mucking through it but I would appreciate some advice on starting fresh and best practices move forward. Also is there a Discord or something where people are discussing these kinds of things?

I finally managed to install it after 20x tries. I wrote instructions. ->

https://github.com/152334H/tortoise-tts-fast/issues/60#issuecomment-1486913090

blahblahdrugs commented 1 year ago

Nice! I'll give it a try in a few hours and report back. I was just using task manager to see if it was using my gpu. Is that what you're doing? Also any chance you're on discord so we can discuss things if I have trouble?

On Tue, Mar 28, 2023 at 12:41 PM becausereasons @.***> wrote:

To be honest, unclear instructions were probably unintentional, but there likely was no motivating reason to improve them. Stuff changed really fast and anyone would get stuck in documentation hell. Plus, even if the instructions were "clear" this project is essentially a poor-man's implementation of bleeding-edge research. It's more complicated than "run this tool to clone a voice in 5 seconds." Over the last few weeks I have been building wrapper functions and helper scripts to stream-line this process. I can make really good voice clones now, like scary good, but it's still a pain in the butt no matter how much I have to rebuild everything. The project isn't that difficult to install, but you really need a clean environment. You'll notice that it's very specific about library versions, some of which conflict with other things you probably have installed. Solve this by uninstalling all Python versions and all libraries. Start over. Install Poetry (this repo's method) or use Miniconda (my preferred way). Funny story: last night I broke my TorToiSe Miniconda environment, and couldn't seem to fix it, so for now the only way to run it is to run Poetry INSIDE of my new TorToiSe Miniconda environment. It's sort of like the movie Inception... IDK... it works for now and I'm afraid to touch it. Anyway. isolate stuff. You can very easily make a very clean Miniconda environment for Python 3.10 whose sole purpose is to run TorToiSe-TTS-Fast and nothing else. But, you need to stop doing pip install whatever across your global packages if you do that. Otherwise, you're going to have a hard time. The one that gave me the most issues was librosa. They changed so much in that library between minor versions that half my ML stuff would break whenever I'd install something else. Lesson learned: use virtual environments.

I am pretty new to all of this. I have already tried getting this repo and the original running on my default drive and messed with docker(which I don't know how to use) and whatever else. What is the best way to start fresh and isolate everything? Is there a guide.. do I need to reinstall windows or anything?

At this point I am pretty sure the scenario you described where I am using pip for stuff and then conda for other stuff is exactly my problem. I have like 3 kernals for python. I just want a clean slate.

I've also got this thing going where when I use conda it is using a different vocoder.py or whatever than the one in the repo.

And I can't seem to get streamlit to use the GPU. I am out of my depth which is fine and I don't mind mucking through it but I would appreciate some advice on starting fresh and best practices move forward. Also is there a Discord or something where people are discussing these kinds of things?

I finally managed to install it after 20x tries. I wrote instructions. ->

60 (comment)

https://github.com/152334H/tortoise-tts-fast/issues/60#issuecomment-1486913090

— Reply to this email directly, view it on GitHub https://github.com/152334H/tortoise-tts-fast/issues/54#issuecomment-1487263981, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGNT4JRRTWBQLIRIXATDRE3W6MIFDANCNFSM6AAAAAAV62CMZA . You are receiving this because you commented.Message ID: @.***>

bbecausereasonss commented 1 year ago

Nice! I'll give it a try in a few hours and report back. I was just using task manager to see if it was using my gpu. Is that what you're doing? Also any chance you're on discord so we can discuss things if I have trouble? On Tue, Mar 28, 2023 at 12:41 PM becausereasons @.> wrote: To be honest, unclear instructions were probably unintentional, but there likely was no motivating reason to improve them. Stuff changed really fast and anyone would get stuck in documentation hell. Plus, even if the instructions were "clear" this project is essentially a poor-man's implementation of bleeding-edge research. It's more complicated than "run this tool to clone a voice in 5 seconds." Over the last few weeks I have been building wrapper functions and helper scripts to stream-line this process. I can make really good voice clones now, like scary good, but it's still a pain in the butt no matter how much I have to rebuild everything. The project isn't that difficult to install, but you really need a clean environment. You'll notice that it's very specific about library versions, some of which conflict with other things you probably have installed. Solve this by uninstalling all Python versions and all libraries. Start over. Install Poetry (this repo's method) or use Miniconda (my preferred way). Funny story: last night I broke my TorToiSe Miniconda environment, and couldn't seem to fix it, so for now the only way to run it is to run Poetry INSIDE of my new TorToiSe Miniconda environment. It's sort of like the movie Inception... IDK... it works for now and I'm afraid to touch it. Anyway. isolate stuff. You can very easily make a very clean Miniconda environment for Python 3.10 whose sole purpose is to run TorToiSe-TTS-Fast and nothing else. But, you need to stop doing pip install whatever across your global packages if you do that. Otherwise, you're going to have a hard time. The one that gave me the most issues was librosa. They changed so much in that library between minor versions that half my ML stuff would break whenever I'd install something else. Lesson learned: use virtual environments. I am pretty new to all of this. I have already tried getting this repo and the original running on my default drive and messed with docker(which I don't know how to use) and whatever else. What is the best way to start fresh and isolate everything? Is there a guide.. do I need to reinstall windows or anything? At this point I am pretty sure the scenario you described where I am using pip for stuff and then conda for other stuff is exactly my problem. I have like 3 kernals for python. I just want a clean slate. I've also got this thing going where when I use conda it is using a different vocoder.py or whatever than the one in the repo. And I can't seem to get streamlit to use the GPU. I am out of my depth which is fine and I don't mind mucking through it but I would appreciate some advice on starting fresh and best practices move forward. Also is there a Discord or something where people are discussing these kinds of things? I finally managed to install it after 20x tries. I wrote instructions. -> #60 (comment) <#60 (comment)> — Reply to this email directly, view it on GitHub <#54 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGNT4JRRTWBQLIRIXATDRE3W6MIFDANCNFSM6AAAAAAV62CMZA . You are receiving this because you commented.Message ID: @.>

Yes, I have an AI community discord I've started > https://discord.gg/h9ueYpY5