File size: 1,446 Bytes
8dfed13
 
 
 
f402b74
 
 
 
 
 
 
8dfed13
f402b74
 
 
 
8dfed13
f402b74
8dfed13
 
f402b74
 
 
 
8dfed13
f402b74
8dfed13
f402b74
 
 
8dfed13
f402b74
 
 
 
8dfed13
 
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
# app.py
import gradio as gr
from datasets import load_dataset

# Загружаем ТОЛЬКО метаданные, без изображений
dataset = load_dataset(
    "deepghs/sankaku_full",
    split="train[:2000]",        # первые 2000 записей
    streaming=False,
    use_auth_token=False
)

# Преобразуем в список один раз (иначе streaming будет мешать)
data_list = list(dataset)

def search_by_tag(tag):
    results = []
    for item in data_list:
        tags = item.get("tags", "")
        if tag.lower() in tags.lower():
            rating = item.get("rating", "?")
            # НЕ пытаемся показать image — его нет или он битый
            results.append(f"ID: {item.get('id', 'N/A')} | Rating: {rating}\nTags: {tags[:100]}...")
            if len(results) >= 10:
                break
    return "\n\n".join(results) if results else "Ничего не найдено."

with gr.Blocks() as demo:
    gr.Markdown("### 🔍 Sankaku Dataset — Metadata Viewer")
    gr.Markdown("⚠️ Изображения НЕ отображаются (недоступны). Только теги и ID.")
    
    tag = gr.Textbox(label="Поиск по тегу (например: wolf, furry, nsfw)")
    output = gr.Textbox(label="Результаты", lines=15)
    
    tag.change(fn=search_by_tag, inputs=tag, outputs=output)

demo.launch()