{ "cells": [ { "cell_type": "code", "execution_count": null, "metadata": { "id": "YyaHcAkaOt7b" }, "outputs": [], "source": [ "%cd /content\n", "!pip install -q torch==2.0.0+cu118 torchvision==0.15.1+cu118 torchaudio==2.0.1+cu118 torchtext==0.15.1 torchdata==0.6.0 --extra-index-url https://download.pytorch.org/whl/cu118 -U\n", "!pip install -q xformers==0.0.18 triton==2.0.0 -U\n", "\n", "!apt-get -y install -qq aria2\n", "!aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/camenduru/ovseg/resolve/main/sam_vit_h_4b8939.pth -d /content -o sam_vit_h_4b8939.pth\n", "\n", "!git clone -b dev https://github.com/camenduru/Grounded-Segment-Anything\n", "%cd /content/Grounded-Segment-Anything\n", "!pip install -q -r requirements.txt\n", "%cd /content/Grounded-Segment-Anything/GroundingDINO\n", "!pip install -q .\n", "%cd /content/Grounded-Segment-Anything/segment_anything\n", "!pip install -q .\n", "\n", "import os\n", "import shlex\n", "import subprocess\n", "from pathlib import Path\n", "from typing import Union\n", "\n", "id_rsa_file = \"/content/Grounded-Segment-Anything/id_rsa\"\n", "id_rsa_pub_file = \"/content/Grounded-Segment-Anything/id_rsa.pub\"\n", "if os.path.exists(id_rsa_file):\n", " os.remove(id_rsa_file)\n", "if os.path.exists(id_rsa_pub_file):\n", " os.remove(id_rsa_pub_file)\n", "\n", "def gen_key(path: Union[str, Path]) -> None:\n", " path = Path(path)\n", " arg_string = f'ssh-keygen -t rsa -b 4096 -N \"\" -q -f {path.as_posix()}'\n", " args = shlex.split(arg_string)\n", " subprocess.run(args, check=True)\n", " path.chmod(0o600)\n", "\n", "ssh_name = \"id_rsa\"\n", "ssh_path = Path(os.path.dirname(os.getcwd())) / ssh_name\n", "gen_key(ssh_path)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "MoW8GUIFFs-x" }, "outputs": [], "source": [ "%cd /content/Grounded-Segment-Anything\n", "\n", "import threading\n", "def tunnel():\n", " !ssh -R 80:127.0.0.1:7860 -o StrictHostKeyChecking=no -i /content/Grounded-Segment-Anything/id_rsa remote.moe\n", "threading.Thread(target=tunnel, daemon=True).start()\n", "\n", "print(\"Please wait until you see the 'Running on local URL' message.\")\n", "\n", "!python gradio_app.py --debug --share" ] } ], "metadata": { "accelerator": "GPU", "colab": { "provenance": [] }, "gpuClass": "standard", "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "name": "python" } }, "nbformat": 4, "nbformat_minor": 0 }