2022-08-31 09:21:16 +03:00
|
|
|
|
{
|
|
|
|
|
"nbformat": 4,
|
|
|
|
|
"nbformat_minor": 0,
|
|
|
|
|
"metadata": {
|
|
|
|
|
"colab": {
|
|
|
|
|
"name": "VoiceChangerDemo",
|
|
|
|
|
"provenance": [],
|
|
|
|
|
"collapsed_sections": [],
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"authorship_tag": "ABX9TyMnmljx6Vcud0r/IwjCrzBW",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"include_colab_link": true
|
|
|
|
|
},
|
|
|
|
|
"kernelspec": {
|
|
|
|
|
"name": "python3",
|
|
|
|
|
"display_name": "Python 3"
|
|
|
|
|
},
|
|
|
|
|
"language_info": {
|
|
|
|
|
"name": "python"
|
|
|
|
|
},
|
|
|
|
|
"accelerator": "GPU",
|
|
|
|
|
"gpuClass": "standard"
|
|
|
|
|
},
|
|
|
|
|
"cells": [
|
|
|
|
|
{
|
|
|
|
|
"cell_type": "markdown",
|
|
|
|
|
"metadata": {
|
|
|
|
|
"id": "view-in-github",
|
|
|
|
|
"colab_type": "text"
|
|
|
|
|
},
|
|
|
|
|
"source": [
|
|
|
|
|
"<a href=\"https://colab.research.google.com/github/w-okada/voice-changer/blob/dev/VoiceChangerDemo.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
|
|
|
|
|
]
|
|
|
|
|
},
|
2022-08-31 09:27:34 +03:00
|
|
|
|
{
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"cell_type": "markdown",
|
2022-08-31 09:27:34 +03:00
|
|
|
|
"source": [
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"Voice Changer (デモ版)\n",
|
|
|
|
|
"---\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"このノートはVoice ChangerをColab上で動かすデモ版です。\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"正式版はローカルPCのDocker上で動かすアプリケーションです。\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"正式版は、多くの場合より少ないタイムラグで滑らかに音声を変換できます。\n",
|
|
|
|
|
"\n",
|
2022-08-31 13:55:50 +03:00
|
|
|
|
"詳細な使用方法はこちらの[リポジトリ](https://github.com/w-okada/voice-changer)からご確認ください。\n"
|
2022-08-31 09:27:34 +03:00
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"id": "Lbbmx_Vjl0zo"
|
|
|
|
|
}
|
2022-08-31 09:27:34 +03:00
|
|
|
|
},
|
2022-08-31 09:21:16 +03:00
|
|
|
|
{
|
|
|
|
|
"cell_type": "markdown",
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"source": [
|
|
|
|
|
"# GPUを確認\n",
|
|
|
|
|
"GPUを用いたほうが高速に処理が行えます。\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"下記のコマンドでGPUが確認できない場合は、上のメニューから\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"「ランタイム」→「ランタイムの変更」→「ハードウェア アクセラレータ」\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"でGPUを選択してください。"
|
|
|
|
|
],
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"metadata": {
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"id": "oUKi1NYMmXrr"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"cell_type": "code",
|
|
|
|
|
"source": [
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"# (1) GPUの確認\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"!nvidia-smi"
|
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"colab": {
|
|
|
|
|
"base_uri": "https://localhost:8080/"
|
|
|
|
|
},
|
|
|
|
|
"id": "vV1t7PBRm-o6",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"outputId": "033cdd79-1aa3-436c-a99d-a01ca35d8757"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
},
|
2022-09-02 06:11:05 +03:00
|
|
|
|
"execution_count": 1,
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"outputs": [
|
|
|
|
|
{
|
|
|
|
|
"output_type": "stream",
|
|
|
|
|
"name": "stdout",
|
|
|
|
|
"text": [
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"Sun Sep 18 21:11:39 2022 \n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"+-----------------------------------------------------------------------------+\n",
|
|
|
|
|
"| NVIDIA-SMI 460.32.03 Driver Version: 460.32.03 CUDA Version: 11.2 |\n",
|
|
|
|
|
"|-------------------------------+----------------------+----------------------+\n",
|
|
|
|
|
"| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |\n",
|
|
|
|
|
"| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |\n",
|
|
|
|
|
"| | | MIG M. |\n",
|
|
|
|
|
"|===============================+======================+======================|\n",
|
|
|
|
|
"| 0 Tesla T4 Off | 00000000:00:04.0 Off | 0 |\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"| N/A 42C P8 9W / 70W | 0MiB / 15109MiB | 0% Default |\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"| | | N/A |\n",
|
|
|
|
|
"+-------------------------------+----------------------+----------------------+\n",
|
|
|
|
|
" \n",
|
|
|
|
|
"+-----------------------------------------------------------------------------+\n",
|
|
|
|
|
"| Processes: |\n",
|
|
|
|
|
"| GPU GI CI PID Type Process name GPU Memory |\n",
|
|
|
|
|
"| ID ID Usage |\n",
|
|
|
|
|
"|=============================================================================|\n",
|
|
|
|
|
"| No running processes found |\n",
|
|
|
|
|
"+-----------------------------------------------------------------------------+\n"
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
},
|
2022-08-31 09:59:55 +03:00
|
|
|
|
{
|
|
|
|
|
"cell_type": "markdown",
|
|
|
|
|
"source": [
|
|
|
|
|
"# 使用するモデルとコンフィグファイルの指定\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"使用するトレーニング済みのモデルと、トレーニングで使用したコンフィグファイルのパスを指定してください。\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"多くの場合はGoogle Driveに格納されているファイルを使用すると思います。その場合は、下の(2-2)のセルを実行してドライブをマウントしてください"
|
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"id": "mHvGrgaWnIPA"
|
|
|
|
|
}
|
|
|
|
|
},
|
2022-08-31 09:21:16 +03:00
|
|
|
|
{
|
|
|
|
|
"cell_type": "code",
|
|
|
|
|
"source": [
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"# (2-1) 使用するモデルとコンフィグファイルの指定\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"CONFIG=\"/content/drive/MyDrive/VoiceChanger/config.json\"\n",
|
|
|
|
|
"MODEL=\"/content/drive/MyDrive/VoiceChanger/G_326000.pth\""
|
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"id": "nSXATMWYb4Ik"
|
|
|
|
|
},
|
2022-09-02 06:11:05 +03:00
|
|
|
|
"execution_count": 2,
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"outputs": []
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"cell_type": "code",
|
2022-09-02 06:11:05 +03:00
|
|
|
|
"execution_count": 3,
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"metadata": {
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"colab": {
|
|
|
|
|
"base_uri": "https://localhost:8080/"
|
|
|
|
|
},
|
|
|
|
|
"id": "2wxD-gRSMU5R",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"outputId": "d0f2beee-9d62-4832-d2a5-565b38718731"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
},
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"outputs": [
|
|
|
|
|
{
|
|
|
|
|
"output_type": "stream",
|
|
|
|
|
"name": "stdout",
|
|
|
|
|
"text": [
|
|
|
|
|
"Mounted at /content/drive\n"
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
],
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"source": [
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"# (2-2) Google Driveのマウント\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"from google.colab import drive\n",
|
|
|
|
|
"drive.mount('/content/drive')"
|
|
|
|
|
]
|
|
|
|
|
},
|
2022-08-31 09:59:55 +03:00
|
|
|
|
{
|
|
|
|
|
"cell_type": "markdown",
|
|
|
|
|
"source": [
|
|
|
|
|
"# リポジトリのクローン\n",
|
|
|
|
|
"リポジトリをクローンします"
|
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"id": "sLBfykjBnjWc"
|
|
|
|
|
}
|
|
|
|
|
},
|
2022-08-31 09:21:16 +03:00
|
|
|
|
{
|
|
|
|
|
"cell_type": "code",
|
|
|
|
|
"source": [
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"# (3) リポジトリのクローン\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"!git clone --depth 1 https://github.com/w-okada/voice-changer.git\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"%cd voice-changer/demo/\n"
|
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"colab": {
|
|
|
|
|
"base_uri": "https://localhost:8080/"
|
|
|
|
|
},
|
|
|
|
|
"id": "86wTFmqsNMnD",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"outputId": "22a1773c-6642-4412-e292-f753c5000bc2"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
},
|
2022-09-02 06:11:05 +03:00
|
|
|
|
"execution_count": 4,
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"outputs": [
|
|
|
|
|
{
|
|
|
|
|
"output_type": "stream",
|
|
|
|
|
"name": "stdout",
|
|
|
|
|
"text": [
|
|
|
|
|
"Cloning into 'voice-changer'...\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"remote: Enumerating objects: 591, done.\u001b[K\n",
|
|
|
|
|
"remote: Counting objects: 100% (175/175), done.\u001b[K\n",
|
|
|
|
|
"remote: Compressing objects: 100% (138/138), done.\u001b[K\n",
|
|
|
|
|
"remote: Total 591 (delta 70), reused 71 (delta 35), pack-reused 416\u001b[K\n",
|
|
|
|
|
"Receiving objects: 100% (591/591), 23.57 MiB | 9.38 MiB/s, done.\n",
|
|
|
|
|
"Resolving deltas: 100% (297/297), done.\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"/content/voice-changer/demo\n"
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
},
|
|
|
|
|
{
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"cell_type": "markdown",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"source": [
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"# ファイルの配置\n",
|
2022-09-05 21:23:02 +03:00
|
|
|
|
"アプリケーションの挙動を記した設定ファイルをコピーします(4-1)。(4-2)はコピーした設定ファイルを表示しています。もしかしたらうまく動かないときに役立つかもしれません。"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"id": "jmDY8W_fnuSi"
|
|
|
|
|
}
|
2022-08-31 09:21:16 +03:00
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"cell_type": "code",
|
|
|
|
|
"source": [
|
2022-09-05 21:23:02 +03:00
|
|
|
|
"# (4-1) 設定ファイルの配置\n",
|
2022-09-19 00:01:50 +03:00
|
|
|
|
"!cp ../template/setting_mmvc_colab.json ../frontend/dist/assets/setting.json\n"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"id": "Bn4kV8TgXp8i"
|
|
|
|
|
},
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"execution_count": 5,
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"outputs": []
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"cell_type": "code",
|
|
|
|
|
"source": [
|
2022-09-05 21:23:02 +03:00
|
|
|
|
"# (4-2) 設定ファイルの確認\n",
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"!cat ../frontend/dist/assets/setting.json\n"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"colab": {
|
|
|
|
|
"base_uri": "https://localhost:8080/"
|
|
|
|
|
},
|
|
|
|
|
"id": "pjxPsOOaXXTj",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"outputId": "62d019ab-921d-4c1c-f6dd-2e7c354bb453"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
},
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"execution_count": 6,
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"outputs": [
|
|
|
|
|
{
|
|
|
|
|
"output_type": "stream",
|
|
|
|
|
"name": "stdout",
|
|
|
|
|
"text": [
|
|
|
|
|
"{\n",
|
|
|
|
|
" \"app_title\": \"voice-changer\",\n",
|
|
|
|
|
" \"majar_mode\": \"colab\",\n",
|
2022-09-19 00:01:50 +03:00
|
|
|
|
" \"voice_changer_server_url\": \"/test\",\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
" \"sample_rate\": 48000,\n",
|
|
|
|
|
" \"buffer_size\": 1024,\n",
|
|
|
|
|
" \"prefix_chunk_size\": 24,\n",
|
|
|
|
|
" \"chunk_size\": 24,\n",
|
|
|
|
|
" \"speaker_ids\": [100, 107, 101, 102, 103],\n",
|
2022-09-02 06:11:05 +03:00
|
|
|
|
" \"speaker_names\": [\"ずんだもん\", \"user\", \"そら\", \"めたん\", \"つむぎ\"],\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
" \"src_id\": 107,\n",
|
|
|
|
|
" \"dst_id\": 100,\n",
|
|
|
|
|
" \"vf_enable\": true,\n",
|
|
|
|
|
" \"voice_changer_mode\": \"realtime\",\n",
|
|
|
|
|
" \"gpu\": 0,\n",
|
|
|
|
|
" \"available_gpus\": [-1, 0, 1, 2, 3, 4],\n",
|
|
|
|
|
" \"avatar\": {\n",
|
2022-09-02 06:11:05 +03:00
|
|
|
|
" \"enable_avatar\": true, \n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
" \"motion_capture_face\": true,\n",
|
|
|
|
|
" \"motion_capture_upperbody\": true,\n",
|
|
|
|
|
" \"lip_overwrite_with_voice\": true,\n",
|
|
|
|
|
" \"avatar_url\": \"./assets/vrm/zundamon/zundamon.vrm\",\n",
|
|
|
|
|
" \"backgournd_image_url\": \"./assets/images/bg_natural_sougen.jpg\",\n",
|
|
|
|
|
" \"background_color\": \"#0000dd\",\n",
|
|
|
|
|
" \"chroma_key\": \"#0000dd\",\n",
|
|
|
|
|
" \"avatar_canvas_size\": [1280, 720],\n",
|
|
|
|
|
" \"screen_canvas_size\": [1280, 720]\n",
|
|
|
|
|
" },\n",
|
|
|
|
|
" \"advance\": {\n",
|
|
|
|
|
" \"avatar_draw_skip_rate\": 3,\n",
|
|
|
|
|
" \"screen_draw_skip_rate\": 3,\n",
|
|
|
|
|
" \"visualizer_draw_skip_rate\": 3,\n",
|
|
|
|
|
" \"cross_fade_lower_value\": 0.1,\n",
|
2022-09-02 06:11:05 +03:00
|
|
|
|
" \"cross_fade_offset_rate\": 0.3,\n",
|
2022-09-05 21:23:02 +03:00
|
|
|
|
" \"cross_fade_end_rate\": 0.6,\n",
|
|
|
|
|
" \"cross_fade_type\": 2\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
" }\n",
|
|
|
|
|
"}\n"
|
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"cell_type": "markdown",
|
|
|
|
|
"source": [
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"# モジュールのインストール\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"\n",
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"必要なモジュールをインストールします。"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"id": "8Na2PbLZSWgZ"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"cell_type": "code",
|
|
|
|
|
"source": [
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"# (5) 設定ファイルの確認\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"!apt-get install -y espeak libsndfile1-dev\n",
|
|
|
|
|
"!pip install unidecode\n",
|
|
|
|
|
"!pip install phonemizer\n",
|
|
|
|
|
"!pip install retry\n",
|
2022-09-19 00:01:50 +03:00
|
|
|
|
"!pip install fastapi\n",
|
|
|
|
|
"!pip install uvicorn"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"colab": {
|
|
|
|
|
"base_uri": "https://localhost:8080/"
|
|
|
|
|
},
|
|
|
|
|
"id": "LwZAAuqxX7yY",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"outputId": "5a4091f0-7301-4ad4-e6da-5e16fdcaf67a"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
},
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"execution_count": 7,
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"outputs": [
|
|
|
|
|
{
|
|
|
|
|
"output_type": "stream",
|
|
|
|
|
"name": "stdout",
|
|
|
|
|
"text": [
|
|
|
|
|
"Reading package lists... Done\n",
|
|
|
|
|
"Building dependency tree \n",
|
|
|
|
|
"Reading state information... Done\n",
|
|
|
|
|
"libsndfile1-dev is already the newest version (1.0.28-4ubuntu0.18.04.2).\n",
|
|
|
|
|
"The following package was automatically installed and is no longer required:\n",
|
|
|
|
|
" libnvidia-common-460\n",
|
|
|
|
|
"Use 'apt autoremove' to remove it.\n",
|
|
|
|
|
"The following additional packages will be installed:\n",
|
|
|
|
|
" espeak-data libespeak1 libportaudio2 libsonic0\n",
|
|
|
|
|
"The following NEW packages will be installed:\n",
|
|
|
|
|
" espeak espeak-data libespeak1 libportaudio2 libsonic0\n",
|
|
|
|
|
"0 upgraded, 5 newly installed, 0 to remove and 20 not upgraded.\n",
|
|
|
|
|
"Need to get 1,219 kB of archives.\n",
|
|
|
|
|
"After this operation, 3,031 kB of additional disk space will be used.\n",
|
|
|
|
|
"Get:1 http://archive.ubuntu.com/ubuntu bionic/universe amd64 libportaudio2 amd64 19.6.0-1 [64.6 kB]\n",
|
|
|
|
|
"Get:2 http://archive.ubuntu.com/ubuntu bionic/main amd64 libsonic0 amd64 0.2.0-6 [13.4 kB]\n",
|
|
|
|
|
"Get:3 http://archive.ubuntu.com/ubuntu bionic/universe amd64 espeak-data amd64 1.48.04+dfsg-5 [934 kB]\n",
|
|
|
|
|
"Get:4 http://archive.ubuntu.com/ubuntu bionic/universe amd64 libespeak1 amd64 1.48.04+dfsg-5 [145 kB]\n",
|
|
|
|
|
"Get:5 http://archive.ubuntu.com/ubuntu bionic/universe amd64 espeak amd64 1.48.04+dfsg-5 [61.6 kB]\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"Fetched 1,219 kB in 2s (696 kB/s)\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"Selecting previously unselected package libportaudio2:amd64.\n",
|
2022-09-19 00:01:50 +03:00
|
|
|
|
"(Reading database ... 155569 files and directories currently installed.)\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"Preparing to unpack .../libportaudio2_19.6.0-1_amd64.deb ...\n",
|
|
|
|
|
"Unpacking libportaudio2:amd64 (19.6.0-1) ...\n",
|
|
|
|
|
"Selecting previously unselected package libsonic0:amd64.\n",
|
|
|
|
|
"Preparing to unpack .../libsonic0_0.2.0-6_amd64.deb ...\n",
|
|
|
|
|
"Unpacking libsonic0:amd64 (0.2.0-6) ...\n",
|
|
|
|
|
"Selecting previously unselected package espeak-data:amd64.\n",
|
|
|
|
|
"Preparing to unpack .../espeak-data_1.48.04+dfsg-5_amd64.deb ...\n",
|
|
|
|
|
"Unpacking espeak-data:amd64 (1.48.04+dfsg-5) ...\n",
|
|
|
|
|
"Selecting previously unselected package libespeak1:amd64.\n",
|
|
|
|
|
"Preparing to unpack .../libespeak1_1.48.04+dfsg-5_amd64.deb ...\n",
|
|
|
|
|
"Unpacking libespeak1:amd64 (1.48.04+dfsg-5) ...\n",
|
|
|
|
|
"Selecting previously unselected package espeak.\n",
|
|
|
|
|
"Preparing to unpack .../espeak_1.48.04+dfsg-5_amd64.deb ...\n",
|
|
|
|
|
"Unpacking espeak (1.48.04+dfsg-5) ...\n",
|
|
|
|
|
"Setting up libportaudio2:amd64 (19.6.0-1) ...\n",
|
|
|
|
|
"Setting up espeak-data:amd64 (1.48.04+dfsg-5) ...\n",
|
|
|
|
|
"Setting up libsonic0:amd64 (0.2.0-6) ...\n",
|
|
|
|
|
"Setting up libespeak1:amd64 (1.48.04+dfsg-5) ...\n",
|
|
|
|
|
"Setting up espeak (1.48.04+dfsg-5) ...\n",
|
|
|
|
|
"Processing triggers for man-db (2.8.3-2ubuntu0.1) ...\n",
|
|
|
|
|
"Processing triggers for libc-bin (2.27-3ubuntu1.5) ...\n",
|
|
|
|
|
"Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/\n",
|
|
|
|
|
"Collecting unidecode\n",
|
|
|
|
|
" Downloading Unidecode-1.3.4-py3-none-any.whl (235 kB)\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"\u001b[K |████████████████████████████████| 235 kB 29.4 MB/s \n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"\u001b[?25hInstalling collected packages: unidecode\n",
|
|
|
|
|
"Successfully installed unidecode-1.3.4\n",
|
|
|
|
|
"Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/\n",
|
|
|
|
|
"Collecting phonemizer\n",
|
|
|
|
|
" Downloading phonemizer-3.2.1-py3-none-any.whl (90 kB)\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"\u001b[K |████████████████████████████████| 90 kB 8.6 MB/s \n",
|
|
|
|
|
"\u001b[?25hRequirement already satisfied: typing-extensions in /usr/local/lib/python3.7/dist-packages (from phonemizer) (4.1.1)\n",
|
|
|
|
|
"Requirement already satisfied: attrs>=18.1 in /usr/local/lib/python3.7/dist-packages (from phonemizer) (22.1.0)\n",
|
2022-09-05 21:23:02 +03:00
|
|
|
|
"Collecting segments\n",
|
2022-08-31 09:59:55 +03:00
|
|
|
|
" Downloading segments-2.2.1-py2.py3-none-any.whl (15 kB)\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"Requirement already satisfied: joblib in /usr/local/lib/python3.7/dist-packages (from phonemizer) (1.1.0)\n",
|
|
|
|
|
"Collecting dlinfo\n",
|
|
|
|
|
" Downloading dlinfo-1.2.1-py3-none-any.whl (3.6 kB)\n",
|
2022-09-19 00:01:50 +03:00
|
|
|
|
"Collecting clldutils>=1.7.3\n",
|
|
|
|
|
" Downloading clldutils-3.12.0-py2.py3-none-any.whl (197 kB)\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"\u001b[K |████████████████████████████████| 197 kB 64.1 MB/s \n",
|
2022-09-19 00:01:50 +03:00
|
|
|
|
"\u001b[?25hRequirement already satisfied: regex in /usr/local/lib/python3.7/dist-packages (from segments->phonemizer) (2022.6.2)\n",
|
2022-09-02 06:11:05 +03:00
|
|
|
|
"Collecting csvw>=1.5.6\n",
|
2022-08-31 09:59:55 +03:00
|
|
|
|
" Downloading csvw-3.1.1-py2.py3-none-any.whl (56 kB)\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"\u001b[K |████████████████████████████████| 56 kB 4.7 MB/s \n",
|
2022-09-05 21:23:02 +03:00
|
|
|
|
"\u001b[?25hRequirement already satisfied: tabulate>=0.7.7 in /usr/local/lib/python3.7/dist-packages (from clldutils>=1.7.3->segments->phonemizer) (0.8.10)\n",
|
|
|
|
|
"Requirement already satisfied: python-dateutil in /usr/local/lib/python3.7/dist-packages (from clldutils>=1.7.3->segments->phonemizer) (2.8.2)\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"Collecting colorlog\n",
|
|
|
|
|
" Downloading colorlog-6.7.0-py2.py3-none-any.whl (11 kB)\n",
|
2022-09-02 06:11:05 +03:00
|
|
|
|
"Collecting colorama\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
" Downloading colorama-0.4.5-py2.py3-none-any.whl (16 kB)\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"Collecting rdflib\n",
|
|
|
|
|
" Downloading rdflib-6.2.0-py3-none-any.whl (500 kB)\n",
|
|
|
|
|
"\u001b[K |████████████████████████████████| 500 kB 62.0 MB/s \n",
|
|
|
|
|
"\u001b[?25hRequirement already satisfied: babel in /usr/local/lib/python3.7/dist-packages (from csvw>=1.5.6->segments->phonemizer) (2.10.3)\n",
|
|
|
|
|
"Requirement already satisfied: uritemplate>=3.0.0 in /usr/local/lib/python3.7/dist-packages (from csvw>=1.5.6->segments->phonemizer) (3.0.1)\n",
|
2022-09-19 00:01:50 +03:00
|
|
|
|
"Collecting language-tags\n",
|
|
|
|
|
" Downloading language_tags-1.1.0-py2.py3-none-any.whl (210 kB)\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"\u001b[K |████████████████████████████████| 210 kB 71.3 MB/s \n",
|
|
|
|
|
"\u001b[?25hCollecting isodate\n",
|
|
|
|
|
" Downloading isodate-0.6.1-py2.py3-none-any.whl (41 kB)\n",
|
|
|
|
|
"\u001b[K |████████████████████████████████| 41 kB 682 kB/s \n",
|
2022-09-19 00:01:50 +03:00
|
|
|
|
"\u001b[?25hRequirement already satisfied: requests in /usr/local/lib/python3.7/dist-packages (from csvw>=1.5.6->segments->phonemizer) (2.23.0)\n",
|
2022-09-05 21:23:02 +03:00
|
|
|
|
"Collecting rfc3986<2\n",
|
|
|
|
|
" Downloading rfc3986-1.5.0-py2.py3-none-any.whl (31 kB)\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"Requirement already satisfied: jsonschema in /usr/local/lib/python3.7/dist-packages (from csvw>=1.5.6->segments->phonemizer) (4.3.3)\n",
|
2022-09-19 00:01:50 +03:00
|
|
|
|
"Requirement already satisfied: pytz>=2015.7 in /usr/local/lib/python3.7/dist-packages (from babel->csvw>=1.5.6->segments->phonemizer) (2022.2.1)\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"Requirement already satisfied: six in /usr/local/lib/python3.7/dist-packages (from isodate->csvw>=1.5.6->segments->phonemizer) (1.15.0)\n",
|
2022-09-05 21:23:02 +03:00
|
|
|
|
"Requirement already satisfied: pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0 in /usr/local/lib/python3.7/dist-packages (from jsonschema->csvw>=1.5.6->segments->phonemizer) (0.18.1)\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"Requirement already satisfied: importlib-metadata in /usr/local/lib/python3.7/dist-packages (from jsonschema->csvw>=1.5.6->segments->phonemizer) (4.12.0)\n",
|
|
|
|
|
"Requirement already satisfied: importlib-resources>=1.4.0 in /usr/local/lib/python3.7/dist-packages (from jsonschema->csvw>=1.5.6->segments->phonemizer) (5.9.0)\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"Requirement already satisfied: zipp>=3.1.0 in /usr/local/lib/python3.7/dist-packages (from importlib-resources>=1.4.0->jsonschema->csvw>=1.5.6->segments->phonemizer) (3.8.1)\n",
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"Requirement already satisfied: setuptools in /usr/local/lib/python3.7/dist-packages (from rdflib->csvw>=1.5.6->segments->phonemizer) (57.4.0)\n",
|
2022-09-19 00:01:50 +03:00
|
|
|
|
"Requirement already satisfied: pyparsing in /usr/local/lib/python3.7/dist-packages (from rdflib->csvw>=1.5.6->segments->phonemizer) (3.0.9)\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"Requirement already satisfied: idna<3,>=2.5 in /usr/local/lib/python3.7/dist-packages (from requests->csvw>=1.5.6->segments->phonemizer) (2.10)\n",
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.7/dist-packages (from requests->csvw>=1.5.6->segments->phonemizer) (2022.6.15)\n",
|
2022-09-19 00:01:50 +03:00
|
|
|
|
"Requirement already satisfied: chardet<4,>=3.0.2 in /usr/local/lib/python3.7/dist-packages (from requests->csvw>=1.5.6->segments->phonemizer) (3.0.4)\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /usr/local/lib/python3.7/dist-packages (from requests->csvw>=1.5.6->segments->phonemizer) (1.24.3)\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"Installing collected packages: isodate, rfc3986, rdflib, language-tags, colorama, csvw, colorlog, clldutils, segments, dlinfo, phonemizer\n",
|
|
|
|
|
"Successfully installed clldutils-3.12.0 colorama-0.4.5 colorlog-6.7.0 csvw-3.1.1 dlinfo-1.2.1 isodate-0.6.1 language-tags-1.1.0 phonemizer-3.2.1 rdflib-6.2.0 rfc3986-1.5.0 segments-2.2.1\n",
|
|
|
|
|
"Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/\n",
|
|
|
|
|
"Collecting retry\n",
|
|
|
|
|
" Downloading retry-0.9.2-py2.py3-none-any.whl (8.0 kB)\n",
|
2022-09-02 06:11:05 +03:00
|
|
|
|
"Requirement already satisfied: decorator>=3.4.2 in /usr/local/lib/python3.7/dist-packages (from retry) (4.4.2)\n",
|
2022-09-19 00:01:50 +03:00
|
|
|
|
"Requirement already satisfied: py<2.0.0,>=1.4.26 in /usr/local/lib/python3.7/dist-packages (from retry) (1.11.0)\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"Installing collected packages: retry\n",
|
|
|
|
|
"Successfully installed retry-0.9.2\n",
|
|
|
|
|
"Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"Collecting fastapi\n",
|
|
|
|
|
" Downloading fastapi-0.85.0-py3-none-any.whl (55 kB)\n",
|
|
|
|
|
"\u001b[K |████████████████████████████████| 55 kB 3.8 MB/s \n",
|
|
|
|
|
"\u001b[?25hCollecting starlette==0.20.4\n",
|
|
|
|
|
" Downloading starlette-0.20.4-py3-none-any.whl (63 kB)\n",
|
|
|
|
|
"\u001b[K |████████████████████████████████| 63 kB 2.5 MB/s \n",
|
|
|
|
|
"\u001b[?25hRequirement already satisfied: pydantic!=1.7,!=1.7.1,!=1.7.2,!=1.7.3,!=1.8,!=1.8.1,<2.0.0,>=1.6.2 in /usr/local/lib/python3.7/dist-packages (from fastapi) (1.9.2)\n",
|
|
|
|
|
"Requirement already satisfied: typing-extensions>=3.10.0 in /usr/local/lib/python3.7/dist-packages (from starlette==0.20.4->fastapi) (4.1.1)\n",
|
|
|
|
|
"Collecting anyio<5,>=3.4.0\n",
|
|
|
|
|
" Downloading anyio-3.6.1-py3-none-any.whl (80 kB)\n",
|
|
|
|
|
"\u001b[K |████████████████████████████████| 80 kB 11.3 MB/s \n",
|
|
|
|
|
"\u001b[?25hRequirement already satisfied: idna>=2.8 in /usr/local/lib/python3.7/dist-packages (from anyio<5,>=3.4.0->starlette==0.20.4->fastapi) (2.10)\n",
|
|
|
|
|
"Collecting sniffio>=1.1\n",
|
|
|
|
|
" Downloading sniffio-1.3.0-py3-none-any.whl (10 kB)\n",
|
|
|
|
|
"Installing collected packages: sniffio, anyio, starlette, fastapi\n",
|
|
|
|
|
"Successfully installed anyio-3.6.1 fastapi-0.85.0 sniffio-1.3.0 starlette-0.20.4\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"Collecting uvicorn\n",
|
|
|
|
|
" Downloading uvicorn-0.18.3-py3-none-any.whl (57 kB)\n",
|
|
|
|
|
"\u001b[K |████████████████████████████████| 57 kB 5.4 MB/s \n",
|
|
|
|
|
"\u001b[?25hCollecting h11>=0.8\n",
|
|
|
|
|
" Downloading h11-0.13.0-py3-none-any.whl (58 kB)\n",
|
|
|
|
|
"\u001b[K |████████████████████████████████| 58 kB 6.6 MB/s \n",
|
|
|
|
|
"\u001b[?25hRequirement already satisfied: typing-extensions in /usr/local/lib/python3.7/dist-packages (from uvicorn) (4.1.1)\n",
|
|
|
|
|
"Requirement already satisfied: click>=7.0 in /usr/local/lib/python3.7/dist-packages (from uvicorn) (7.1.2)\n",
|
|
|
|
|
"Installing collected packages: h11, uvicorn\n",
|
|
|
|
|
"Successfully installed h11-0.13.0 uvicorn-0.18.3\n"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
},
|
2022-08-31 09:59:55 +03:00
|
|
|
|
{
|
|
|
|
|
"cell_type": "markdown",
|
|
|
|
|
"source": [
|
|
|
|
|
"# サーバの起動\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"サーバを起動します。(6-1)\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"サーバの起動状況を確認します。(6-2) \n",
|
|
|
|
|
"\n",
|
|
|
|
|
"このセルは繰り返し実行することになるのでCtrl+Retでセルを実行してください。\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"アクセスできるようになるまで、1~2分かかるようです。コーヒーでも飲みに行きましょう。\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"下記のようなテキストが表示されたら起動完了です。\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"```\n",
|
|
|
|
|
"[2022-08-31 06:48:38,064] INFO in serverFlask: INITIALIZE MODEL\n",
|
|
|
|
|
"[2022-08-31 06:48:45,660] INFO in utils: Loaded checkpoint '/content/drive/MyDrive/VoiceChanger/G_326000.pth' (iteration 1136)\n",
|
|
|
|
|
"[2022-08-31 06:48:57,329] INFO in serverFlask: START APP\n",
|
|
|
|
|
"GPU_NUM: 1\n",
|
|
|
|
|
" * Serving Flask app \"serverFlask\" (lazy loading)\n",
|
|
|
|
|
" * Environment: production\n",
|
|
|
|
|
" WARNING: This is a development server. Do not use it in a production deployment.\n",
|
|
|
|
|
" Use a production WSGI server instead.\n",
|
|
|
|
|
" * Debug mode: on\n",
|
|
|
|
|
"[2022-08-31 06:48:57,336] INFO in _internal: * Running on http://0.0.0.0:8082/ (Press CTRL+C to quit)\n",
|
|
|
|
|
"[2022-08-31 06:48:57,337] INFO in _internal: * Restarting with stat\n",
|
|
|
|
|
"[2022-08-31 06:48:59,283] INFO in serverFlask: INITIALIZE MODEL\n",
|
|
|
|
|
"[2022-08-31 06:49:01,125] INFO in utils: Loaded checkpoint '/content/drive/MyDrive/VoiceChanger/G_326000.pth' (iteration 1136)\n",
|
|
|
|
|
"[2022-08-31 06:49:04,996] INFO in serverFlask: START APP\n",
|
|
|
|
|
"[2022-08-31 06:49:05,002] WARNING in _internal: * Debugger is active!\n",
|
|
|
|
|
"[2022-08-31 06:49:05,074] INFO in _internal: * Debugger PIN: 879-442-767\n",
|
|
|
|
|
"```\n",
|
|
|
|
|
"\n"
|
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"id": "-_2OcN9Borke"
|
|
|
|
|
}
|
|
|
|
|
},
|
2022-08-31 09:21:16 +03:00
|
|
|
|
{
|
|
|
|
|
"cell_type": "code",
|
|
|
|
|
"source": [
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"# (6-1) サーバの起動\n",
|
2022-09-19 00:01:50 +03:00
|
|
|
|
"PORT=8088\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"get_ipython().system_raw(f'python3 serverFastAPI.py {PORT} {CONFIG} {MODEL} >foo 2>&1 &')"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"id": "iNOAB7zISI6J"
|
|
|
|
|
},
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"execution_count": 10,
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"outputs": []
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"cell_type": "code",
|
|
|
|
|
"source": [
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"# (6-2) サーバの起動確認 (Ctrl+Retで実行)\n",
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"!cat foo"
|
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"colab": {
|
|
|
|
|
"base_uri": "https://localhost:8080/"
|
|
|
|
|
},
|
|
|
|
|
"id": "chu06KpAjEK6",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"outputId": "ed8791b6-d2fa-42c5-bb3b-177973b8b835"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
},
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"execution_count": 19,
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"outputs": [
|
|
|
|
|
{
|
|
|
|
|
"output_type": "stream",
|
|
|
|
|
"name": "stdout",
|
|
|
|
|
"text": [
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"INFO:uvicorn:INITIALIZE MODEL\n",
|
|
|
|
|
"GPU_NUM: 1\n",
|
|
|
|
|
"INFO:root:Loaded checkpoint '/content/drive/MyDrive/VoiceChanger/G_326000.pth' (iteration 1136)\n",
|
|
|
|
|
"INFO:uvicorn:START APP\n",
|
|
|
|
|
"INFO: Will watch for changes in these directories: ['/content/voice-changer/demo']\n",
|
|
|
|
|
"INFO:uvicorn.error:Will watch for changes in these directories: ['/content/voice-changer/demo']\n",
|
|
|
|
|
"INFO: Uvicorn running on http://0.0.0.0:8088 (Press CTRL+C to quit)\n",
|
|
|
|
|
"INFO:uvicorn.error:Uvicorn running on http://0.0.0.0:8088 (Press CTRL+C to quit)\n",
|
|
|
|
|
"INFO: Started reloader process [646] using StatReload\n",
|
|
|
|
|
"INFO:uvicorn.error:Started reloader process [646] using StatReload\n",
|
|
|
|
|
"INFO:uvicorn:INITIALIZE MODEL\n",
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"GPU_NUM: 1\n",
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"INFO:root:Loaded checkpoint '/content/drive/MyDrive/VoiceChanger/G_326000.pth' (iteration 1136)\n",
|
|
|
|
|
"DEBUG:asyncio:Using selector: EpollSelector\n",
|
|
|
|
|
"INFO: INITIALIZE MODEL\n",
|
|
|
|
|
"INFO:uvicorn:INITIALIZE MODEL\n",
|
|
|
|
|
"GPU_NUM: 1\n",
|
|
|
|
|
"INFO:root:Loaded checkpoint '/content/drive/MyDrive/VoiceChanger/G_326000.pth' (iteration 1136)\n",
|
|
|
|
|
"INFO: Started server process [666]\n",
|
|
|
|
|
"INFO:uvicorn.error:Started server process [666]\n",
|
|
|
|
|
"INFO: Waiting for application startup.\n",
|
|
|
|
|
"INFO:uvicorn.error:Waiting for application startup.\n",
|
|
|
|
|
"INFO: Application startup complete.\n",
|
|
|
|
|
"INFO:uvicorn.error:Application startup complete.\n"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
]
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
},
|
2022-08-31 09:59:55 +03:00
|
|
|
|
{
|
|
|
|
|
"cell_type": "markdown",
|
|
|
|
|
"source": [
|
|
|
|
|
"# プロキシを起動\n",
|
|
|
|
|
"ウェブサーバへのアクセスをするためのプロキシを起動します。\n",
|
|
|
|
|
"\n",
|
2022-09-02 06:11:05 +03:00
|
|
|
|
"表示されたURLをクリックして開くと別タブでアプリが開きます。\n",
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"\n",
|
2022-09-02 06:11:05 +03:00
|
|
|
|
"Colabなので、ロードにある程度時間がかかります(30秒くらい)。"
|
2022-08-31 09:59:55 +03:00
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"id": "WhxcFLQEpctq"
|
|
|
|
|
}
|
|
|
|
|
},
|
2022-08-31 09:21:16 +03:00
|
|
|
|
{
|
|
|
|
|
"cell_type": "code",
|
|
|
|
|
"source": [
|
2022-08-31 09:59:55 +03:00
|
|
|
|
"# (7) プロキシを起動\n",
|
2022-09-19 00:01:50 +03:00
|
|
|
|
"from google.colab.output import eval_js\n",
|
|
|
|
|
"proxy = eval_js( \"google.colab.kernel.proxyPort(\" + str(PORT) + \")\" )\n",
|
|
|
|
|
"print(f\"{proxy}front/\")"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"id": "nkRjZm95l87C",
|
|
|
|
|
"colab": {
|
|
|
|
|
"base_uri": "https://localhost:8080/",
|
|
|
|
|
"height": 34
|
|
|
|
|
},
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"outputId": "02961b25-a5fc-4e46-bca2-c834b4f00f59"
|
2022-08-31 09:21:16 +03:00
|
|
|
|
},
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"execution_count": 20,
|
2022-08-31 09:21:16 +03:00
|
|
|
|
"outputs": [
|
|
|
|
|
{
|
2022-09-19 00:16:08 +03:00
|
|
|
|
"output_type": "stream",
|
|
|
|
|
"name": "stdout",
|
|
|
|
|
"text": [
|
|
|
|
|
"https://efftd8s2tmd-496ff2e9c6d22116-8088-colab.googleusercontent.com/front/\n"
|
|
|
|
|
]
|
2022-08-31 09:21:16 +03:00
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"cell_type": "code",
|
|
|
|
|
"source": [],
|
|
|
|
|
"metadata": {
|
|
|
|
|
"id": "3hwJmseXZhJY"
|
|
|
|
|
},
|
|
|
|
|
"execution_count": null,
|
|
|
|
|
"outputs": []
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}
|