柿崎透真 commited on
Commit
0f84a70
·
1 Parent(s): 58fc392

feat: use private repo

Browse files
Files changed (3) hide show
  1. .gitignore +1 -0
  2. README.md +1 -1
  3. app.py +32 -0
.gitignore ADDED
@@ -0,0 +1 @@
 
 
1
+ .env
README.md CHANGED
@@ -4,7 +4,7 @@ emoji: 🐨
4
  colorFrom: green
5
  colorTo: blue
6
  sdk: gradio
7
- sdk_version: 5.11.0
8
  app_file: app.py
9
  pinned: false
10
  license: apache-2.0
 
4
  colorFrom: green
5
  colorTo: blue
6
  sdk: gradio
7
+ sdk_version: 5.9.1
8
  app_file: app.py
9
  pinned: false
10
  license: apache-2.0
app.py ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ from huggingface_hub import HfApi
3
+ from tempfile import TemporaryDirectory
4
+ import importlib.util
5
+ import sys
6
+
7
+
8
+ # プライベートリポジトリからコードを取得
9
+ def load_private_code():
10
+ api = HfApi(token=os.environ["HF_TOKEN"])
11
+
12
+ with TemporaryDirectory() as tmp_dir:
13
+ api.snapshot_download(
14
+ repo_id=os.environ["PRIVATE_REPOSITORY_NAME"],
15
+ repo_type="space",
16
+ local_dir=tmp_dir
17
+ )
18
+
19
+ spec = importlib.util.spec_from_file_location(
20
+ "private_app",
21
+ os.path.join(tmp_dir, "app.py")
22
+ )
23
+ private_module = importlib.util.module_from_spec(spec)
24
+ sys.modules["private_app"] = private_module
25
+ spec.loader.exec_module(private_module)
26
+
27
+ return private_module
28
+
29
+
30
+ # プライベートコードを読み込んでGradioアプリを取得
31
+ private_app = load_private_code()
32
+ app = private_app.app # Gradioアプリのインスタンス