Spaces:
Sleeping
Sleeping
bug fix
Browse files- app.py +20 -3
- requirements.txt +2 -0
app.py
CHANGED
|
@@ -2,6 +2,7 @@ import math
|
|
| 2 |
import os
|
| 3 |
|
| 4 |
import gradio as gr
|
|
|
|
| 5 |
from datasets import load_dataset
|
| 6 |
|
| 7 |
REPO_ID = "teddyk251/self-imagine-sample" # change me
|
|
@@ -9,6 +10,15 @@ TOKEN = os.environ.get("HF_TOKEN")
|
|
| 9 |
|
| 10 |
ds = load_dataset(REPO_ID, split="train", token=TOKEN)
|
| 11 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 12 |
DATASETS = ["All"] + sorted(set(ds["dataset"]))
|
| 13 |
MODELS = ["All"] + sorted(set(ds["model"]))
|
| 14 |
|
|
@@ -30,8 +40,15 @@ def paginate(rows, page, page_size):
|
|
| 30 |
start = (page - 1) * page_size
|
| 31 |
end = min(start + page_size, total)
|
| 32 |
sub = rows.select(range(start, end))
|
| 33 |
-
gallery_items = [(sub[i]["image"], f'{sub[i]["dataset"]} / {sub[i]["model"]} — {sub[i]["filename"]}')
|
| 34 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 35 |
return gallery_items, total, total_pages, page
|
| 36 |
|
| 37 |
def refresh(dataset_sel, model_sel, query, page, page_size):
|
|
@@ -82,4 +99,4 @@ with gr.Blocks(title="Self‑Imagine — Sample Gallery") as demo:
|
|
| 82 |
next_btn.click(on_next, [dataset_dd, model_dd, query_tb, page_num, page_size], [gallery, page_info, page_num])
|
| 83 |
|
| 84 |
if __name__ == "__main__":
|
| 85 |
-
demo.launch()
|
|
|
|
| 2 |
import os
|
| 3 |
|
| 4 |
import gradio as gr
|
| 5 |
+
from datasets import Image as HFImage
|
| 6 |
from datasets import load_dataset
|
| 7 |
|
| 8 |
REPO_ID = "teddyk251/self-imagine-sample" # change me
|
|
|
|
| 10 |
|
| 11 |
ds = load_dataset(REPO_ID, split="train", token=TOKEN)
|
| 12 |
|
| 13 |
+
ds = ds.cast_column("image", HFImage(decode=False))
|
| 14 |
+
|
| 15 |
+
def img_src(img):
|
| 16 |
+
# HF Datasets gives either a dict with 'path' (local cache) or 'url'
|
| 17 |
+
if isinstance(img, dict):
|
| 18 |
+
return img.get("path") or img.get("url")
|
| 19 |
+
return img # already a string
|
| 20 |
+
|
| 21 |
+
|
| 22 |
DATASETS = ["All"] + sorted(set(ds["dataset"]))
|
| 23 |
MODELS = ["All"] + sorted(set(ds["model"]))
|
| 24 |
|
|
|
|
| 40 |
start = (page - 1) * page_size
|
| 41 |
end = min(start + page_size, total)
|
| 42 |
sub = rows.select(range(start, end))
|
| 43 |
+
# gallery_items = [(sub[i]["image"], f'{sub[i]["dataset"]} / {sub[i]["model"]} — {sub[i]["filename"]}')
|
| 44 |
+
# for i in range(len(sub))]\
|
| 45 |
+
gallery_items = []
|
| 46 |
+
for i in range(len(sub)):
|
| 47 |
+
src = img_src(sub[i]["image"])
|
| 48 |
+
if not src:
|
| 49 |
+
continue # skip records without a resolvable path/url
|
| 50 |
+
label = f'{sub[i]["dataset"]} / {sub[i]["model"]} — {sub[i].get("filename","")}'
|
| 51 |
+
gallery_items.append((src, label))
|
| 52 |
return gallery_items, total, total_pages, page
|
| 53 |
|
| 54 |
def refresh(dataset_sel, model_sel, query, page, page_size):
|
|
|
|
| 99 |
next_btn.click(on_next, [dataset_dd, model_dd, query_tb, page_num, page_size], [gallery, page_info, page_num])
|
| 100 |
|
| 101 |
if __name__ == "__main__":
|
| 102 |
+
demo.launch(ssr_mode=False)
|
requirements.txt
CHANGED
|
@@ -1,2 +1,4 @@
|
|
| 1 |
gradio>=4.30
|
| 2 |
datasets>=2.19
|
|
|
|
|
|
|
|
|
| 1 |
gradio>=4.30
|
| 2 |
datasets>=2.19
|
| 3 |
+
pillow
|
| 4 |
+
pandas
|