Transformers
Inference Endpoints
File size: 2,480 Bytes
0f9fac8
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# -*- coding: utf-8 -*-
"""a.ipynb

Automatically generated by Colab.

Original file is located at
    https://colab.research.google.com/drive/1Y6IofzwyAJq64pL9FXFK_3nARPIN6l7C
"""

flag_file = f"{root_path}/libraries_installed.txt"

if not os.path.exists(flag_file):
    print("💿 Installing the libraries, it's going to take a while:\n")

    install_lib = {
        "gdown": "pip install -U gdown",
        "aria2": "apt-get update && apt -y install aria2",
        "localtunnel": "npm install -g localtunnel &> /dev/null",
        "insightface": "pip install insightface",
    }

    # Dictionary of additional libraries specific to certain environments
    additional_libs = {
        "Google Colab": {
            "xformers": "pip install xformers==0.0.25 --no-deps",
            "gradio": "pip install gradio_client==0.2.7"
        },
        "Kaggle": {
            "xformers": "pip install -q xformers==0.0.23.post1 triton==2.1.0",
            "torch": "pip install -q torch==2.1.2+cu121 torchvision==0.16.2+cu121 torchaudio==2.1.2 --extra-index-url https://download.pytorch.org/whl/cu121"
        }
    }

    # If the current environment has additional libraries, update the install_lib dictionary
    if env in additional_libs:
        install_lib.update(additional_libs[env])

    # Loop through libraries and execute install commands
    for index, (package, install_cmd) in enumerate(install_lib.items(), start=1):
        print(f"\r[{index}/{len(install_lib)}] \033[32m>>\033[0m Installing \033[33m{package}\033[0m..." + " "*35, end='')
        subprocess.run(install_cmd, shell=True, capture_output=True)

    # Additional manual installation steps for specific packages
    with capture.capture_output() as cap:
        get_ipython().system('curl -s -OL https://github.com/DEX-1101/sd-webui-notebook/raw/main/res/new_tunnel --output-dir {root_path}')
        get_ipython().system('curl -s -Lo /usr/bin/cl https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64 && chmod +x /usr/bin/cl')
        get_ipython().system('curl -sLO https://github.com/openziti/zrok/releases/download/v0.4.23/zrok_0.4.23_linux_amd64.tar.gz && tar -xzf zrok_0.4.23_linux_amd64.tar.gz -C /usr/bin && rm -f zrok_0.4.23_linux_amd64.tar.gz')

    del cap

    clear_output()

    # Save file install lib
    with open(flag_file, "w") as f:
        f.write(">W<'")

    print("🍪 Libraries are installed!" + " "*35)
    time.sleep(2)
    clear_output()