{ "nbformat": 4, "nbformat_minor": 0, "metadata": { "colab": { "provenance": [] }, "kernelspec": { "name": "python3", "display_name": "Python 3" }, "accelerator": "GPU" }, "cells": [ { "cell_type": "markdown", "source": [ "# Credits for bubarino giving me the huggingface import code (感谢 bubarino 给了我 huggingface 导入代码)" ], "metadata": { "id": "himHYZmra7ix" } }, { "cell_type": "code", "metadata": { "id": "e9b7iFV3dm1f" }, "source": [ "!git clone https://github.com/RVC-Boss/GPT-SoVITS.git\n", "%cd GPT-SoVITS\n", "!apt-get update && apt-get install -y --no-install-recommends tzdata ffmpeg libsox-dev parallel aria2 git git-lfs && git lfs install\n", "!pip install -r requirements.txt" ], "execution_count": null, "outputs": [] }, { "cell_type": "code", "source": [ "# @title Download pretrained models 下载预训练模型\n", "!mkdir -p /content/GPT-SoVITS/GPT_SoVITS/pretrained_models\n", "!mkdir -p /content/GPT-SoVITS/tools/damo_asr/models\n", "!mkdir -p /content/GPT-SoVITS/tools/uvr5\n", "%cd /content/GPT-SoVITS/GPT_SoVITS/pretrained_models\n", "!git clone https://huggingface.co/lj1995/GPT-SoVITS\n", "%cd /content/GPT-SoVITS/tools/damo_asr/models\n", "!git clone https://www.modelscope.cn/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch.git\n", "!git clone https://www.modelscope.cn/damo/speech_fsmn_vad_zh-cn-16k-common-pytorch.git\n", "!git clone https://www.modelscope.cn/damo/punc_ct-transformer_zh-cn-common-vocab272727-pytorch.git\n", "# @title UVR5 pretrains 安装uvr5模型\n", "%cd /content/GPT-SoVITS/tools/uvr5\n", "!git clone https://huggingface.co/Delik/uvr5_weights\n", "!git config core.sparseCheckout true\n", "!mv /content/GPT-SoVITS/GPT_SoVITS/pretrained_models/GPT-SoVITS/* /content/GPT-SoVITS/GPT_SoVITS/pretrained_models/" ], "metadata": { "id": "0NgxXg5sjv7z", "cellView": "form" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "source": [ "#@title Create folder models 创建文件夹模型\n", "import os\n", "base_directory = \"/content/GPT-SoVITS\"\n", "folder_names = [\"SoVITS_weights\", \"GPT_weights\"]\n", "\n", "for folder_name in folder_names:\n", " if os.path.exists(os.path.join(base_directory, folder_name)):\n", " print(f\"The folder '{folder_name}' already exists. (文件夹'{folder_name}'已经存在。)\")\n", " else:\n", " os.makedirs(os.path.join(base_directory, folder_name))\n", " print(f\"The folder '{folder_name}' was created successfully! (文件夹'{folder_name}'已成功创建!)\")\n", "\n", "print(\"All folders have been created. (所有文件夹均已创建。)\")" ], "metadata": { "cellView": "form", "id": "cPDEH-9czOJF" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "source": [ "import requests\n", "import zipfile\n", "import shutil\n", "import os\n", "\n", "#@title Import model 导入模型 (HuggingFace)\n", "hf_link = 'https://huggingface.co/modelloosrvcc/Nagisa_Shingetsu_GPT-SoVITS/resolve/main/Nagisa.zip' #@param {type: \"string\"}\n", "\n", "output_path = '/content/'\n", "\n", "response = requests.get(hf_link)\n", "with open(output_path + 'file.zip', 'wb') as file:\n", " file.write(response.content)\n", "\n", "with zipfile.ZipFile(output_path + 'file.zip', 'r') as zip_ref:\n", " zip_ref.extractall(output_path)\n", "\n", "os.remove(output_path + \"file.zip\")\n", "\n", "source_directory = output_path\n", "SoVITS_destination_directory = '/content/GPT-SoVITS/SoVITS_weights'\n", "GPT_destination_directory = '/content/GPT-SoVITS/GPT_weights'\n", "\n", "for filename in os.listdir(source_directory):\n", " if filename.endswith(\".pth\"):\n", " source_path = os.path.join(source_directory, filename)\n", " destination_path = os.path.join(SoVITS_destination_directory, filename)\n", " shutil.move(source_path, destination_path)\n", "\n", "for filename in os.listdir(source_directory):\n", " if filename.endswith(\".ckpt\"):\n", " source_path = os.path.join(source_directory, filename)\n", " destination_path = os.path.join(GPT_destination_directory, filename)\n", " shutil.move(source_path, destination_path)\n", "\n", "print(f'Model downloaded. (模型已下载。)')" ], "metadata": { "cellView": "form", "id": "vbZY-LnM0tzq" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "source": [ "# @title launch WebUI 启动WebUI\n", "!/usr/local/bin/pip install ipykernel\n", "!sed -i '10s/False/True/' /content/GPT-SoVITS/config.py\n", "%cd /content/GPT-SoVITS/\n", "!/usr/local/bin/python webui.py" ], "metadata": { "id": "4oRGUzkrk8C7", "cellView": "form" }, "execution_count": null, "outputs": [] } ] }