openfree commited on
Commit
c13e2be
·
verified ·
1 Parent(s): 859ab6d

Delete app.py

Browse files
Files changed (1) hide show
  1. app.py +0 -1022
app.py DELETED
@@ -1,1022 +0,0 @@
1
- import gradio as gr
2
- import requests
3
- import pandas as pd
4
- import plotly.graph_objects as go
5
- from datetime import datetime
6
- import os
7
-
8
- HF_TOKEN = os.getenv("HF_TOKEN")
9
-
10
- target_models = {
11
- "openfree/flux-lora-korea-palace": "https://huggingface.co/openfree/flux-lora-korea-palace",
12
- "seawolf2357/hanbok": "https://huggingface.co/seawolf2357/hanbok",
13
- "LGAI-EXAONE/EXAONE-3.5-32B-Instruct": "https://huggingface.co/LGAI-EXAONE/EXAONE-3.5-32B-Instruct",
14
- "LGAI-EXAONE/EXAONE-3.5-2.4B-Instruct": "https://huggingface.co/LGAI-EXAONE/EXAONE-3.5-2.4B-Instruct",
15
- "LGAI-EXAONE/EXAONE-3.5-7.8B-Instruct": "https://huggingface.co/LGAI-EXAONE/EXAONE-3.5-7.8B-Instruct",
16
- "ginipick/flux-lora-eric-cat": "https://huggingface.co/ginipick/flux-lora-eric-cat",
17
- "seawolf2357/flux-lora-car-rolls-royce": "https://huggingface.co/seawolf2357/flux-lora-car-rolls-royce",
18
- "moreh/Llama-3-Motif-102B-Instruct": "https://huggingface.co/moreh/Llama-3-Motif-102B-Instruct",
19
-
20
-
21
- "NCSOFT/VARCO-VISION-14B": "https://huggingface.co/NCSOFT/VARCO-VISION-14B",
22
- "NCSOFT/Llama-VARCO-8B-Instruct": "https://huggingface.co/NCSOFT/Llama-VARCO-8B-Instruct",
23
- "NCSOFT/VARCO-VISION-14B-HF": "https://huggingface.co/NCSOFT/VARCO-VISION-14B-HF",
24
-
25
- "Saxo/Linkbricks-Horizon-AI-Korean-Gemma-2-sft-dpo-27B": "https://huggingface.co/Saxo/Linkbricks-Horizon-AI-Korean-Gemma-2-sft-dpo-27B",
26
- "AALF/gemma-2-27b-it-SimPO-37K": "https://huggingface.co/AALF/gemma-2-27b-it-SimPO-37K",
27
- "nbeerbower/mistral-nemo-wissenschaft-12B": "https://huggingface.co/nbeerbower/mistral-nemo-wissenschaft-12B",
28
- "Saxo/Linkbricks-Horizon-AI-Korean-Mistral-Nemo-sft-dpo-12B": "https://huggingface.co/Saxo/Linkbricks-Horizon-AI-Korean-Mistral-Nemo-sft-dpo-12B",
29
- "princeton-nlp/gemma-2-9b-it-SimPO": "https://huggingface.co/princeton-nlp/gemma-2-9b-it-SimPO",
30
- "migtissera/Tess-v2.5-Gemma-2-27B-alpha": "https://huggingface.co/migtissera/Tess-v2.5-Gemma-2-27B-alpha",
31
- "DeepMount00/Llama-3.1-8b-Ita": "https://huggingface.co/DeepMount00/Llama-3.1-8b-Ita",
32
- "cognitivecomputations/dolphin-2.9.3-mistral-nemo-12b": "https://huggingface.co/cognitivecomputations/dolphin-2.9.3-mistral-nemo-12b",
33
- "ai-human-lab/EEVE-Korean_Instruct-10.8B-expo": "https://huggingface.co/ai-human-lab/EEVE-Korean_Instruct-10.8B-expo",
34
- "VAGOsolutions/Llama-3.1-SauerkrautLM-8b-Instruct": "https://huggingface.co/VAGOsolutions/Llama-3.1-SauerkrautLM-8b-Instruct",
35
- "Saxo/Linkbricks-Horizon-AI-Korean-llama-3.1-sft-dpo-8B": "https://huggingface.co/Saxo/Linkbricks-Horizon-AI-Korean-llama-3.1-sft-dpo-8B",
36
- "AIDX-ktds/ktdsbaseLM-v0.12-based-on-openchat3.5": "https://huggingface.co/AIDX-ktds/ktdsbaseLM-v0.12-based-on-openchat3.5",
37
- "mlabonne/Daredevil-8B-abliterated": "https://huggingface.co/mlabonne/Daredevil-8B-abliterated",
38
- "ENERGY-DRINK-LOVE/eeve_dpo-v3": "https://huggingface.co/ENERGY-DRINK-LOVE/eeve_dpo-v3",
39
- "migtissera/Trinity-2-Codestral-22B": "https://huggingface.co/migtissera/Trinity-2-Codestral-22B",
40
- "Saxo/Linkbricks-Horizon-AI-Korean-llama3.1-sft-rlhf-dpo-8B": "https://huggingface.co/Saxo/Linkbricks-Horizon-AI-Korean-llama3.1-sft-rlhf-dpo-8B",
41
- "mlabonne/Daredevil-8B-abliterated-dpomix": "https://huggingface.co/mlabonne/Daredevil-8B-abliterated-dpomix",
42
- "yanolja/EEVE-Korean-Instruct-10.8B-v1.0": "https://huggingface.co/yanolja/EEVE-Korean-Instruct-10.8B-v1.0",
43
- "vicgalle/Configurable-Llama-3.1-8B-Instruct": "https://huggingface.co/vicgalle/Configurable-Llama-3.1-8B-Instruct",
44
- "T3Q-LLM/T3Q-LLM1-sft1.0-dpo1.0": "https://huggingface.co/T3Q-LLM/T3Q-LLM1-sft1.0-dpo1.0",
45
- "Eurdem/Defne-llama3.1-8B": "https://huggingface.co/Eurdem/Defne-llama3.1-8B",
46
- "BAAI/Infinity-Instruct-7M-Gen-Llama3_1-8B": "https://huggingface.co/BAAI/Infinity-Instruct-7M-Gen-Llama3_1-8B",
47
- "BAAI/Infinity-Instruct-3M-0625-Llama3-8B": "https://huggingface.co/BAAI/Infinity-Instruct-3M-0625-Llama3-8B",
48
- "T3Q-LLM/T3Q-LLM-sft1.0-dpo1.0": "https://huggingface.co/T3Q-LLM/T3Q-LLM-sft1.0-dpo1.0",
49
- "BAAI/Infinity-Instruct-7M-0729-Llama3_1-8B": "https://huggingface.co/BAAI/Infinity-Instruct-7M-0729-Llama3_1-8B",
50
- "mightbe/EEVE-10.8B-Multiturn": "https://huggingface.co/mightbe/EEVE-10.8B-Multiturn",
51
- "hyemijo/omed-llama3.1-8b": "https://huggingface.co/hyemijo/omed-llama3.1-8b",
52
- "yanolja/Bookworm-10.7B-v0.4-DPO": "https://huggingface.co/yanolja/Bookworm-10.7B-v0.4-DPO",
53
- "algograp-Inc/algograpV4": "https://huggingface.co/algograp-Inc/algograpV4",
54
- "lightblue/suzume-llama-3-8B-multilingual-orpo-borda-top75": "https://huggingface.co/lightblue/suzume-llama-3-8B-multilingual-orpo-borda-top75",
55
- "chihoonlee10/T3Q-LLM-MG-DPO-v1.0": "https://huggingface.co/chihoonlee10/T3Q-LLM-MG-DPO-v1.0",
56
- "vicgalle/Configurable-Hermes-2-Pro-Llama-3-8B": "https://huggingface.co/vicgalle/Configurable-Hermes-2-Pro-Llama-3-8B",
57
- "RLHFlow/LLaMA3-iterative-DPO-final": "https://huggingface.co/RLHFlow/LLaMA3-iterative-DPO-final",
58
- "SEOKDONG/llama3.1_korean_v0.1_sft_by_aidx": "https://huggingface.co/SEOKDONG/llama3.1_korean_v0.1_sft_by_aidx",
59
- "spow12/Ko-Qwen2-7B-Instruct": "https://huggingface.co/spow12/Ko-Qwen2-7B-Instruct",
60
- "BAAI/Infinity-Instruct-3M-0625-Qwen2-7B": "https://huggingface.co/BAAI/Infinity-Instruct-3M-0625-Qwen2-7B",
61
- "lightblue/suzume-llama-3-8B-multilingual-orpo-borda-half": "https://huggingface.co/lightblue/suzume-llama-3-8B-multilingual-orpo-borda-half",
62
- "T3Q-LLM/T3Q-LLM1-CV-v2.0": "https://huggingface.co/T3Q-LLM/T3Q-LLM1-CV-v2.0",
63
- "migtissera/Trinity-2-Codestral-22B-v0.2": "https://huggingface.co/migtissera/Trinity-2-Codestral-22B-v0.2",
64
- "sinjy1203/EEVE-Korean-Instruct-10.8B-v1.0-Grade-Retrieval": "https://huggingface.co/sinjy1203/EEVE-Korean-Instruct-10.8B-v1.0-Grade-Retrieval",
65
- "MaziyarPanahi/Llama-3-8B-Instruct-v0.10": "https://huggingface.co/MaziyarPanahi/Llama-3-8B-Instruct-v0.10",
66
- "MaziyarPanahi/Llama-3-8B-Instruct-v0.9": "https://huggingface.co/MaziyarPanahi/Llama-3-8B-Instruct-v0.9",
67
- "zhengr/MixTAO-7Bx2-MoE-v8.1": "https://huggingface.co/zhengr/MixTAO-7Bx2-MoE-v8.1",
68
- "TIGER-Lab/MAmmoTH2-8B-Plus": "https://huggingface.co/TIGER-Lab/MAmmoTH2-8B-Plus",
69
- "OpenBuddy/openbuddy-qwen1.5-14b-v21.1-32k": "https://huggingface.co/OpenBuddy/openbuddy-qwen1.5-14b-v21.1-32k",
70
- "haoranxu/Llama-3-Instruct-8B-CPO-SimPO": "https://huggingface.co/haoranxu/Llama-3-Instruct-8B-CPO-SimPO",
71
- "Weyaxi/Einstein-v7-Qwen2-7B": "https://huggingface.co/Weyaxi/Einstein-v7-Qwen2-7B",
72
- "DKYoon/kosolar-hermes-test": "https://huggingface.co/DKYoon/kosolar-hermes-test",
73
- "vilm/Quyen-Pro-v0.1": "https://huggingface.co/vilm/Quyen-Pro-v0.1",
74
- "chihoonlee10/T3Q-LLM-MG-v1.0": "https://huggingface.co/chihoonlee10/T3Q-LLM-MG-v1.0",
75
- "lightblue/suzume-llama-3-8B-multilingual-orpo-borda-top25": "https://huggingface.co/lightblue/suzume-llama-3-8B-multilingual-orpo-borda-top25",
76
- "ai-human-lab/EEVE-Korean-10.8B-RAFT": "https://huggingface.co/ai-human-lab/EEVE-Korean-10.8B-RAFT",
77
- "princeton-nlp/Llama-3-Base-8B-SFT-RDPO": "https://huggingface.co/princeton-nlp/Llama-3-Base-8B-SFT-RDPO",
78
- "MaziyarPanahi/Llama-3-8B-Instruct-v0.8": "https://huggingface.co/MaziyarPanahi/Llama-3-8B-Instruct-v0.8",
79
- "chihoonlee10/T3Q-ko-solar-dpo-v7.0": "https://huggingface.co/chihoonlee10/T3Q-ko-solar-dpo-v7.0",
80
- "jondurbin/bagel-8b-v1.0": "https://huggingface.co/jondurbin/bagel-8b-v1.0",
81
- "DeepMount00/Llama-3-8b-Ita": "https://huggingface.co/DeepMount00/Llama-3-8b-Ita",
82
- "VAGOsolutions/Llama-3-SauerkrautLM-8b-Instruct": "https://huggingface.co/VAGOsolutions/Llama-3-SauerkrautLM-8b-Instruct",
83
- "princeton-nlp/Llama-3-Instruct-8B-ORPO-v0.2": "https://huggingface.co/princeton-nlp/Llama-3-Instruct-8B-ORPO-v0.2",
84
- "AIDX-ktds/ktdsbaseLM-v0.11-based-on-openchat3.5": "https://huggingface.co/AIDX-ktds/ktdsbaseLM-v0.11-based-on-openchat3.5",
85
- "princeton-nlp/Llama-3-Base-8B-SFT-KTO": "https://huggingface.co/princeton-nlp/Llama-3-Base-8B-SFT-KTO",
86
- "maywell/Mini_Synatra_SFT": "https://huggingface.co/maywell/Mini_Synatra_SFT",
87
- "princeton-nlp/Llama-3-Base-8B-SFT-ORPO": "https://huggingface.co/princeton-nlp/Llama-3-Base-8B-SFT-ORPO",
88
- "princeton-nlp/Llama-3-Instruct-8B-CPO-v0.2": "https://huggingface.co/princeton-nlp/Llama-3-Instruct-8B-CPO-v0.2",
89
- "spow12/Qwen2-7B-ko-Instruct-orpo-ver_2.0_wo_chat": "https://huggingface.co/spow12/Qwen2-7B-ko-Instruct-orpo-ver_2.0_wo_chat",
90
- "princeton-nlp/Llama-3-Base-8B-SFT-DPO": "https://huggingface.co/princeton-nlp/Llama-3-Base-8B-SFT-DPO",
91
- "princeton-nlp/Llama-3-Instruct-8B-ORPO": "https://huggingface.co/princeton-nlp/Llama-3-Instruct-8B-ORPO",
92
- "lcw99/llama-3-10b-it-kor-extented-chang": "https://huggingface.co/lcw99/llama-3-10b-it-kor-extented-chang",
93
- "migtissera/Llama-3-8B-Synthia-v3.5": "https://huggingface.co/migtissera/Llama-3-8B-Synthia-v3.5",
94
- "megastudyedu/M-SOLAR-10.7B-v1.4-dpo": "https://huggingface.co/megastudyedu/M-SOLAR-10.7B-v1.4-dpo",
95
- "T3Q-LLM/T3Q-LLM-solar10.8-sft-v1.0": "https://huggingface.co/T3Q-LLM/T3Q-LLM-solar10.8-sft-v1.0",
96
- "maywell/Synatra-10.7B-v0.4": "https://huggingface.co/maywell/Synatra-10.7B-v0.4",
97
- "nlpai-lab/KULLM3": "https://huggingface.co/nlpai-lab/KULLM3",
98
- "abacusai/Llama-3-Smaug-8B": "https://huggingface.co/abacusai/Llama-3-Smaug-8B",
99
- "gwonny/nox-solar-10.7b-v4-kolon-ITD-5-v2.1": "https://huggingface.co/gwonny/nox-solar-10.7b-v4-kolon-ITD-5-v2.1",
100
- "BAAI/Infinity-Instruct-3M-0625-Mistral-7B": "https://huggingface.co/BAAI/Infinity-Instruct-3M-0625-Mistral-7B",
101
- "openchat/openchat_3.5": "https://huggingface.co/openchat/openchat_3.5",
102
- "T3Q-LLM/T3Q-LLM1-v2.0": "https://huggingface.co/T3Q-LLM/T3Q-LLM1-v2.0",
103
- "T3Q-LLM/T3Q-LLM1-CV-v1.0": "https://huggingface.co/T3Q-LLM/T3Q-LLM1-CV-v1.0",
104
- "ONS-AI-RESEARCH/ONS-SOLAR-10.7B-v1.1": "https://huggingface.co/ONS-AI-RESEARCH/ONS-SOLAR-10.7B-v1.1",
105
- "macadeliccc/Samantha-Qwen-2-7B": "https://huggingface.co/macadeliccc/Samantha-Qwen-2-7B",
106
- "openchat/openchat-3.5-0106": "https://huggingface.co/openchat/openchat-3.5-0106",
107
- "NousResearch/Nous-Hermes-2-SOLAR-10.7B": "https://huggingface.co/NousResearch/Nous-Hermes-2-SOLAR-10.7B",
108
- "UCLA-AGI/Llama-3-Instruct-8B-SPPO-Iter1": "https://huggingface.co/UCLA-AGI/Llama-3-Instruct-8B-SPPO-Iter1",
109
- "MTSAIR/multi_verse_model": "https://huggingface.co/MTSAIR/multi_verse_model",
110
- "gwonny/nox-solar-10.7b-v4-kolon-ITD-5-v2.0": "https://huggingface.co/gwonny/nox-solar-10.7b-v4-kolon-ITD-5-v2.0",
111
- "VIRNECT/llama-3-Korean-8B": "https://huggingface.co/VIRNECT/llama-3-Korean-8B",
112
- "ENERGY-DRINK-LOVE/SOLAR_merge_DPOv3": "https://huggingface.co/ENERGY-DRINK-LOVE/SOLAR_merge_DPOv3",
113
- "SeaLLMs/SeaLLMs-v3-7B-Chat": "https://huggingface.co/SeaLLMs/SeaLLMs-v3-7B-Chat",
114
- "VIRNECT/llama-3-Korean-8B-V2": "https://huggingface.co/VIRNECT/llama-3-Korean-8B-V2",
115
- "MLP-KTLim/llama-3-Korean-Bllossom-8B": "https://huggingface.co/MLP-KTLim/llama-3-Korean-Bllossom-8B",
116
- "Magpie-Align/Llama-3-8B-Magpie-Align-v0.3": "https://huggingface.co/Magpie-Align/Llama-3-8B-Magpie-Align-v0.3",
117
- "cognitivecomputations/Llama-3-8B-Instruct-abliterated-v2": "https://huggingface.co/cognitivecomputations/Llama-3-8B-Instruct-abliterated-v2",
118
- "SkyOrbis/SKY-Ko-Llama3-8B-lora": "https://huggingface.co/SkyOrbis/SKY-Ko-Llama3-8B-lora",
119
- "4yo1/llama3-eng-ko-8b-sl5": "https://huggingface.co/4yo1/llama3-eng-ko-8b-sl5",
120
- "kimwooglae/WebSquareAI-Instruct-llama-3-8B-v0.5.39": "https://huggingface.co/kimwooglae/WebSquareAI-Instruct-llama-3-8B-v0.5.39",
121
- "ONS-AI-RESEARCH/ONS-SOLAR-10.7B-v1.2": "https://huggingface.co/ONS-AI-RESEARCH/ONS-SOLAR-10.7B-v1.2",
122
- "lcw99/llama-3-10b-it-kor-extented-chang-pro8": "https://huggingface.co/lcw99/llama-3-10b-it-kor-extented-chang-pro8",
123
- "BAAI/Infinity-Instruct-3M-0625-Yi-1.5-9B": "https://huggingface.co/BAAI/Infinity-Instruct-3M-0625-Yi-1.5-9B",
124
- "migtissera/Tess-2.0-Llama-3-8B": "https://huggingface.co/migtissera/Tess-2.0-Llama-3-8B",
125
- "BAAI/Infinity-Instruct-3M-0613-Mistral-7B": "https://huggingface.co/BAAI/Infinity-Instruct-3M-0613-Mistral-7B",
126
- "yeonwoo780/cydinfo-llama3-8b-lora-v01": "https://huggingface.co/yeonwoo780/cydinfo-llama3-8b-lora-v01",
127
- "vicgalle/ConfigurableSOLAR-10.7B": "https://huggingface.co/vicgalle/ConfigurableSOLAR-10.7B",
128
- "chihoonlee10/T3Q-ko-solar-jo-v1.0": "https://huggingface.co/chihoonlee10/T3Q-ko-solar-jo-v1.0",
129
- "Kukedlc/NeuralLLaMa-3-8b-ORPO-v0.4": "https://huggingface.co/Kukedlc/NeuralLLaMa-3-8b-ORPO-v0.4",
130
- "Edentns/DataVortexS-10.7B-dpo-v1.0": "https://huggingface.co/Edentns/DataVortexS-10.7B-dpo-v1.0",
131
- "SJ-Donald/SJ-SOLAR-10.7b-DPO": "https://huggingface.co/SJ-Donald/SJ-SOLAR-10.7b-DPO",
132
- "lemon-mint/gemma-ko-7b-it-v0.40": "https://huggingface.co/lemon-mint/gemma-ko-7b-it-v0.40",
133
- "GyuHyeonWkdWkdMan/naps-llama-3.1-8b-instruct-v0.3": "https://huggingface.co/GyuHyeonWkdWkdMan/naps-llama-3.1-8b-instruct-v0.3",
134
- "hyeogi/SOLAR-10.7B-v1.5": "https://huggingface.co/hyeogi/SOLAR-10.7B-v1.5",
135
- "etri-xainlp/llama3-8b-dpo_v1": "https://huggingface.co/etri-xainlp/llama3-8b-dpo_v1",
136
- "LDCC/LDCC-SOLAR-10.7B": "https://huggingface.co/LDCC/LDCC-SOLAR-10.7B",
137
- "chlee10/T3Q-Llama3-8B-Inst-sft1.0": "https://huggingface.co/chlee10/T3Q-Llama3-8B-Inst-sft1.0",
138
- "lemon-mint/gemma-ko-7b-it-v0.41": "https://huggingface.co/lemon-mint/gemma-ko-7b-it-v0.41",
139
- "chlee10/T3Q-Llama3-8B-sft1.0-dpo1.0": "https://huggingface.co/chlee10/T3Q-Llama3-8B-sft1.0-dpo1.0",
140
- "maywell/Synatra-7B-Instruct-v0.3-pre": "https://huggingface.co/maywell/Synatra-7B-Instruct-v0.3-pre",
141
- "UCLA-AGI/Llama-3-Instruct-8B-SPPO-Iter2": "https://huggingface.co/UCLA-AGI/Llama-3-Instruct-8B-SPPO-Iter2",
142
- "hwkwon/S-SOLAR-10.7B-v1.4": "https://huggingface.co/hwkwon/S-SOLAR-10.7B-v1.4",
143
- "12thD/ko-Llama-3-8B-sft-v0.3": "https://huggingface.co/12thD/ko-Llama-3-8B-sft-v0.3",
144
- "hkss/hk-SOLAR-10.7B-v1.4": "https://huggingface.co/hkss/hk-SOLAR-10.7B-v1.4",
145
- "lookuss/test-llilu": "https://huggingface.co/lookuss/test-llilu",
146
- "chihoonlee10/T3Q-ko-solar-dpo-v3.0": "https://huggingface.co/chihoonlee10/T3Q-ko-solar-dpo-v3.0",
147
- "chihoonlee10/T3Q-ko-solar-dpo-v1.0": "https://huggingface.co/chihoonlee10/T3Q-ko-solar-dpo-v1.0",
148
- "lcw99/llama-3-10b-wiki-240709-f": "https://huggingface.co/lcw99/llama-3-10b-wiki-240709-f",
149
- "Edentns/DataVortexS-10.7B-v0.4": "https://huggingface.co/Edentns/DataVortexS-10.7B-v0.4",
150
- "princeton-nlp/Llama-3-Instruct-8B-KTO": "https://huggingface.co/princeton-nlp/Llama-3-Instruct-8B-KTO",
151
- "spow12/kosolar_4.1_sft": "https://huggingface.co/spow12/kosolar_4.1_sft",
152
- "natong19/Qwen2-7B-Instruct-abliterated": "https://huggingface.co/natong19/Qwen2-7B-Instruct-abliterated",
153
- "megastudyedu/ME-dpo-7B-v1.1": "https://huggingface.co/megastudyedu/ME-dpo-7B-v1.1",
154
- "01-ai/Yi-1.5-9B-Chat-16K": "https://huggingface.co/01-ai/Yi-1.5-9B-Chat-16K",
155
- "Edentns/DataVortexS-10.7B-dpo-v0.1": "https://huggingface.co/Edentns/DataVortexS-10.7B-dpo-v0.1",
156
- "Alphacode-AI/AlphaMist7B-slr-v4-slow": "https://huggingface.co/Alphacode-AI/AlphaMist7B-slr-v4-slow",
157
- "chihoonlee10/T3Q-ko-solar-sft-dpo-v1.0": "https://huggingface.co/chihoonlee10/T3Q-ko-solar-sft-dpo-v1.0",
158
- "hwkwon/S-SOLAR-10.7B-v1.1": "https://huggingface.co/hwkwon/S-SOLAR-10.7B-v1.1",
159
- "DopeorNope/Dear_My_best_Friends-13B": "https://huggingface.co/DopeorNope/Dear_My_best_Friends-13B",
160
- "GyuHyeonWkdWkdMan/NAPS-llama-3.1-8b-instruct-v0.3.2": "https://huggingface.co/GyuHyeonWkdWkdMan/NAPS-llama-3.1-8b-instruct-v0.3.2",
161
- "PathFinderKR/Waktaverse-Llama-3-KO-8B-Instruct": "https://huggingface.co/PathFinderKR/Waktaverse-Llama-3-KO-8B-Instruct",
162
- "vicgalle/ConfigurableHermes-7B": "https://huggingface.co/vicgalle/ConfigurableHermes-7B",
163
- "maywell/PiVoT-10.7B-Mistral-v0.2": "https://huggingface.co/maywell/PiVoT-10.7B-Mistral-v0.2",
164
- "failspy/Meta-Llama-3-8B-Instruct-abliterated-v3": "https://huggingface.co/failspy/Meta-Llama-3-8B-Instruct-abliterated-v3",
165
- "lemon-mint/gemma-ko-7b-instruct-v0.50": "https://huggingface.co/lemon-mint/gemma-ko-7b-instruct-v0.50",
166
- "ENERGY-DRINK-LOVE/leaderboard_inst_v1.3_Open-Hermes_LDCC-SOLAR-10.7B_SFT": "https://huggingface.co/ENERGY-DRINK-LOVE/leaderboard_inst_v1.3_Open-Hermes_LDCC-SOLAR-10.7B_SFT",
167
- "maywell/PiVoT-0.1-early": "https://huggingface.co/maywell/PiVoT-0.1-early",
168
- "hwkwon/S-SOLAR-10.7B-v1.3": "https://huggingface.co/hwkwon/S-SOLAR-10.7B-v1.3",
169
- "werty1248/Llama-3-Ko-8B-Instruct-AOG": "https://huggingface.co/werty1248/Llama-3-Ko-8B-Instruct-AOG",
170
- "Alphacode-AI/AlphaMist7B-slr-v2": "https://huggingface.co/Alphacode-AI/AlphaMist7B-slr-v2",
171
- "maywell/koOpenChat-sft": "https://huggingface.co/maywell/koOpenChat-sft",
172
- "lemon-mint/gemma-7b-openhermes-v0.80": "https://huggingface.co/lemon-mint/gemma-7b-openhermes-v0.80",
173
- "VIRNECT/llama-3-Korean-8B-r-v1": "https://huggingface.co/VIRNECT/llama-3-Korean-8B-r-v1",
174
- "Alphacode-AI/AlphaMist7B-slr-v1": "https://huggingface.co/Alphacode-AI/AlphaMist7B-slr-v1",
175
- "Loyola/Mistral-7b-ITmodel": "https://huggingface.co/Loyola/Mistral-7b-ITmodel",
176
- "VIRNECT/llama-3-Korean-8B-r-v2": "https://huggingface.co/VIRNECT/llama-3-Korean-8B-r-v2",
177
- "NLPark/AnFeng_v3.1-Avocet": "https://huggingface.co/NLPark/AnFeng_v3.1-Avocet",
178
- "maywell/Synatra_TbST11B_EP01": "https://huggingface.co/maywell/Synatra_TbST11B_EP01",
179
- "GritLM/GritLM-7B-KTO": "https://huggingface.co/GritLM/GritLM-7B-KTO",
180
- "01-ai/Yi-34B-Chat": "https://huggingface.co/01-ai/Yi-34B-Chat",
181
- "ValiantLabs/Llama3.1-8B-ShiningValiant2": "https://huggingface.co/ValiantLabs/Llama3.1-8B-ShiningValiant2",
182
- "princeton-nlp/Llama-3-Base-8B-SFT-CPO": "https://huggingface.co/princeton-nlp/Llama-3-Base-8B-SFT-CPO",
183
- "hyokwan/hkcode_llama3_8b": "https://huggingface.co/hyokwan/hkcode_llama3_8b",
184
- "UCLA-AGI/Llama-3-Instruct-8B-SPPO-Iter3": "https://huggingface.co/UCLA-AGI/Llama-3-Instruct-8B-SPPO-Iter3",
185
- "yuntaeyang/SOLAR-10.7B-Instructlora_sftt-v1.0": "https://huggingface.co/yuntaeyang/SOLAR-10.7B-Instructlora_sftt-v1.0",
186
- "juungwon/Llama-3-cs-LoRA": "https://huggingface.co/juungwon/Llama-3-cs-LoRA",
187
- "gangyeolkim/llama-3-chat": "https://huggingface.co/gangyeolkim/llama-3-chat",
188
- "mncai/llama2-13b-dpo-v3": "https://huggingface.co/mncai/llama2-13b-dpo-v3",
189
- "maywell/Synatra-Zephyr-7B-v0.01": "https://huggingface.co/maywell/Synatra-Zephyr-7B-v0.01",
190
- "ENERGY-DRINK-LOVE/leaderboard_inst_v1.3_deup_LDCC-SOLAR-10.7B_SFT": "https://huggingface.co/ENERGY-DRINK-LOVE/leaderboard_inst_v1.3_deup_LDCC-SOLAR-10.7B_SFT",
191
- "juungwon/Llama-3-constructionsafety-LoRA": "https://huggingface.co/juungwon/Llama-3-constructionsafety-LoRA",
192
- "princeton-nlp/Mistral-7B-Base-SFT-SimPO": "https://huggingface.co/princeton-nlp/Mistral-7B-Base-SFT-SimPO",
193
- "moondriller/solar10B-eugeneparkthebestv2": "https://huggingface.co/moondriller/solar10B-eugeneparkthebestv2",
194
- "chlee10/T3Q-LLM3-Llama3-sft1.0-dpo1.0": "https://huggingface.co/chlee10/T3Q-LLM3-Llama3-sft1.0-dpo1.0",
195
- "Edentns/DataVortexS-10.7B-dpo-v1.7": "https://huggingface.co/Edentns/DataVortexS-10.7B-dpo-v1.7",
196
- "gamzadole/llama3_instruct_tuning_without_pretraing": "https://huggingface.co/gamzadole/llama3_instruct_tuning_without_pretraing",
197
- "saltlux/Ko-Llama3-Luxia-8B": "https://huggingface.co/saltlux/Ko-Llama3-Luxia-8B",
198
- "kimdeokgi/ko-pt-model-test1": "https://huggingface.co/kimdeokgi/ko-pt-model-test1",
199
- "maywell/Synatra-11B-Testbench-2": "https://huggingface.co/maywell/Synatra-11B-Testbench-2",
200
- "Danielbrdz/Barcenas-14b-Phi-3-medium-ORPO": "https://huggingface.co/Danielbrdz/Barcenas-14b-Phi-3-medium-ORPO",
201
- "vicgalle/Configurable-Mistral-7B": "https://huggingface.co/vicgalle/Configurable-Mistral-7B",
202
- "ENERGY-DRINK-LOVE/leaderboard_inst_v1.5_LDCC-SOLAR-10.7B_SFT": "https://huggingface.co/ENERGY-DRINK-LOVE/leaderboard_inst_v1.5_LDCC-SOLAR-10.7B_SFT",
203
- "beomi/Llama-3-Open-Ko-8B-Instruct-preview": "https://huggingface.co/beomi/Llama-3-Open-Ko-8B-Instruct-preview",
204
- "Edentns/DataVortexS-10.7B-dpo-v1.3": "https://huggingface.co/Edentns/DataVortexS-10.7B-dpo-v1.3",
205
- "spow12/Llama3_ko_4.2_sft": "https://huggingface.co/spow12/Llama3_ko_4.2_sft",
206
- "maywell/Llama-3-Ko-8B-Instruct": "https://huggingface.co/maywell/Llama-3-Ko-8B-Instruct",
207
- "T3Q-LLM/T3Q-LLM3-NC-v1.0": "https://huggingface.co/T3Q-LLM/T3Q-LLM3-NC-v1.0",
208
- "ehartford/dolphin-2.2.1-mistral-7b": "https://huggingface.co/ehartford/dolphin-2.2.1-mistral-7b",
209
- "hwkwon/S-SOLAR-10.7B-SFT-v1.3": "https://huggingface.co/hwkwon/S-SOLAR-10.7B-SFT-v1.3",
210
- "sel303/llama3-instruct-diverce-v2.0": "https://huggingface.co/sel303/llama3-instruct-diverce-v2.0",
211
- "4yo1/llama3-eng-ko-8b-sl3": "https://huggingface.co/4yo1/llama3-eng-ko-8b-sl3",
212
- "hkss/hk-SOLAR-10.7B-v1.1": "https://huggingface.co/hkss/hk-SOLAR-10.7B-v1.1",
213
- "Open-Orca/Mistral-7B-OpenOrca": "https://huggingface.co/Open-Orca/Mistral-7B-OpenOrca",
214
- "hyokwan/familidata": "https://huggingface.co/hyokwan/familidata",
215
- "uukuguy/zephyr-7b-alpha-dare-0.85": "https://huggingface.co/uukuguy/zephyr-7b-alpha-dare-0.85",
216
- "gwonny/nox-solar-10.7b-v4-kolon-all-5": "https://huggingface.co/gwonny/nox-solar-10.7b-v4-kolon-all-5",
217
- "shleeeee/mistral-ko-tech-science-v1": "https://huggingface.co/shleeeee/mistral-ko-tech-science-v1",
218
- "Deepnoid/deep-solar-eeve-KorSTS": "https://huggingface.co/Deepnoid/deep-solar-eeve-KorSTS",
219
- "AIdenU/Mistral-7B-v0.2-ko-Y24_v1.0": "https://huggingface.co/AIdenU/Mistral-7B-v0.2-ko-Y24_v1.0",
220
- "tlphams/gollm-tendency-45": "https://huggingface.co/tlphams/gollm-tendency-45",
221
- "realPCH/ko_solra_merge": "https://huggingface.co/realPCH/ko_solra_merge",
222
- "Cartinoe5930/original-KoRAE-13b": "https://huggingface.co/Cartinoe5930/original-KoRAE-13b",
223
- "GAI-LLM/Yi-Ko-6B-dpo-v5": "https://huggingface.co/GAI-LLM/Yi-Ko-6B-dpo-v5",
224
- "Minirecord/Mini_DPO_test02": "https://huggingface.co/Minirecord/Mini_DPO_test02",
225
- "AIJUUD/juud-Mistral-7B-dpo": "https://huggingface.co/AIJUUD/juud-Mistral-7B-dpo",
226
- "gwonny/nox-solar-10.7b-v4-kolon-all-10": "https://huggingface.co/gwonny/nox-solar-10.7b-v4-kolon-all-10",
227
- "jieunhan/TEST_MODEL": "https://huggingface.co/jieunhan/TEST_MODEL",
228
- "etri-xainlp/kor-llama2-13b-dpo": "https://huggingface.co/etri-xainlp/kor-llama2-13b-dpo",
229
- "ifuseok/yi-ko-playtus-instruct-v0.2": "https://huggingface.co/ifuseok/yi-ko-playtus-instruct-v0.2",
230
- "Cartinoe5930/original-KoRAE-13b-3ep": "https://huggingface.co/Cartinoe5930/original-KoRAE-13b-3ep",
231
- "Trofish/KULLM-RLHF": "https://huggingface.co/Trofish/KULLM-RLHF",
232
- "wkshin89/Yi-Ko-6B-Instruct-v1.0": "https://huggingface.co/wkshin89/Yi-Ko-6B-Instruct-v1.0",
233
- "momo/polyglot-ko-12.8b-Chat-QLoRA-Merge": "https://huggingface.co/momo/polyglot-ko-12.8b-Chat-QLoRA-Merge",
234
- "PracticeLLM/Custom-KoLLM-13B-v5": "https://huggingface.co/PracticeLLM/Custom-KoLLM-13B-v5",
235
- "BAAI/Infinity-Instruct-3M-0625-Yi-1.5-9B": "https://huggingface.co/BAAI/Infinity-Instruct-3M-0625-Yi-1.5-9B",
236
- "MRAIRR/minillama3_8b_all": "https://huggingface.co/MRAIRR/minillama3_8b_all",
237
- "failspy/Phi-3-medium-4k-instruct-abliterated-v3": "https://huggingface.co/failspy/Phi-3-medium-4k-instruct-abliterated-v3",
238
- "DILAB-HYU/koquality-polyglot-12.8b": "https://huggingface.co/DILAB-HYU/koquality-polyglot-12.8b",
239
- "kyujinpy/Korean-OpenOrca-v3": "https://huggingface.co/kyujinpy/Korean-OpenOrca-v3",
240
- "4yo1/llama3-eng-ko-8b": "https://huggingface.co/4yo1/llama3-eng-ko-8b",
241
- "4yo1/llama3-eng-ko-8": "https://huggingface.co/4yo1/llama3-eng-ko-8",
242
- "4yo1/llama3-eng-ko-8-llama": "https://huggingface.co/4yo1/llama3-eng-ko-8-llama",
243
- "PracticeLLM/Custom-KoLLM-13B-v2": "https://huggingface.co/PracticeLLM/Custom-KoLLM-13B-v2",
244
- "kyujinpy/KOR-Orca-Platypus-13B-v2": "https://huggingface.co/kyujinpy/KOR-Orca-Platypus-13B-v2",
245
- "ghost-x/ghost-7b-alpha": "https://huggingface.co/ghost-x/ghost-7b-alpha",
246
- "HumanF-MarkrAI/pub-llama-13B-v6": "https://huggingface.co/HumanF-MarkrAI/pub-llama-13B-v6",
247
- "nlpai-lab/kullm-polyglot-5.8b-v2": "https://huggingface.co/nlpai-lab/kullm-polyglot-5.8b-v2",
248
- "maywell/Synatra-42dot-1.3B": "https://huggingface.co/maywell/Synatra-42dot-1.3B",
249
- "yhkim9362/gemma-en-ko-7b-v0.1": "https://huggingface.co/yhkim9362/gemma-en-ko-7b-v0.1",
250
- "yhkim9362/gemma-en-ko-7b-v0.2": "https://huggingface.co/yhkim9362/gemma-en-ko-7b-v0.2",
251
- "daekeun-ml/Llama-2-ko-OpenOrca-gugugo-13B": "https://huggingface.co/daekeun-ml/Llama-2-ko-OpenOrca-gugugo-13B",
252
- "beomi/Yi-Ko-6B": "https://huggingface.co/beomi/Yi-Ko-6B",
253
- "jojo0217/ChatSKKU5.8B": "https://huggingface.co/jojo0217/ChatSKKU5.8B",
254
- "Deepnoid/deep-solar-v2.0.7": "https://huggingface.co/Deepnoid/deep-solar-v2.0.7",
255
- "01-ai/Yi-1.5-9B": "https://huggingface.co/01-ai/Yi-1.5-9B",
256
- "PracticeLLM/Custom-KoLLM-13B-v4": "https://huggingface.co/PracticeLLM/Custom-KoLLM-13B-v4",
257
- "nuebaek/komt_mistral_mss_user_0_max_steps_80": "https://huggingface.co/nuebaek/komt_mistral_mss_user_0_max_steps_80",
258
- "dltjdgh0928/lsh_finetune_v0.11": "https://huggingface.co/dltjdgh0928/lsh_finetune_v0.11",
259
- "shleeeee/mistral-7b-wiki": "https://huggingface.co/shleeeee/mistral-7b-wiki",
260
- "nayohan/polyglot-ko-5.8b-Inst": "https://huggingface.co/nayohan/polyglot-ko-5.8b-Inst",
261
- "ifuseok/sft-solar-10.7b-v1.1": "https://huggingface.co/ifuseok/sft-solar-10.7b-v1.1",
262
- "Junmai/KIT-5.8b": "https://huggingface.co/Junmai/KIT-5.8b",
263
- "heegyu/polyglot-ko-3.8b-chat": "https://huggingface.co/heegyu/polyglot-ko-3.8b-chat",
264
- "etri-xainlp/polyglot-ko-12.8b-instruct": "https://huggingface.co/etri-xainlp/polyglot-ko-12.8b-instruct",
265
- "OpenBuddy/openbuddy-mistral2-7b-v20.3-32k": "https://huggingface.co/OpenBuddy/openbuddy-mistral2-7b-v20.3-32k",
266
- "sh2orc/Llama-3-Korean-8B": "https://huggingface.co/sh2orc/Llama-3-Korean-8B",
267
- "Deepnoid/deep-solar-eeve-v2.0.0": "https://huggingface.co/Deepnoid/deep-solar-eeve-v2.0.0",
268
- "Herry443/Mistral-7B-KNUT-ref": "https://huggingface.co/Herry443/Mistral-7B-KNUT-ref",
269
- "heegyu/polyglot-ko-5.8b-chat": "https://huggingface.co/heegyu/polyglot-ko-5.8b-chat",
270
- "jungyuko/DAVinCI-42dot_LLM-PLM-1.3B-v1.5.3": "https://huggingface.co/jungyuko/DAVinCI-42dot_LLM-PLM-1.3B-v1.5.3",
271
- "DILAB-HYU/KoQuality-Polyglot-5.8b": "https://huggingface.co/DILAB-HYU/KoQuality-Polyglot-5.8b",
272
- "Byungchae/k2s3_test_0000": "https://huggingface.co/Byungchae/k2s3_test_0000",
273
- "migtissera/Tess-v2.5-Phi-3-medium-128k-14B": "https://huggingface.co/migtissera/Tess-v2.5-Phi-3-medium-128k-14B",
274
- "kyujinpy/Korean-OpenOrca-13B": "https://huggingface.co/kyujinpy/Korean-OpenOrca-13B",
275
- "kyujinpy/KO-Platypus2-13B": "https://huggingface.co/kyujinpy/KO-Platypus2-13B",
276
- "jin05102518/Astral-7B-Instruct-v0.01": "https://huggingface.co/jin05102518/Astral-7B-Instruct-v0.01",
277
- "Byungchae/k2s3_test_0002": "https://huggingface.co/Byungchae/k2s3_test_0002",
278
- "NousResearch/Nous-Hermes-llama-2-7b": "https://huggingface.co/NousResearch/Nous-Hermes-llama-2-7b",
279
- "kaist-ai/prometheus-13b-v1.0": "https://huggingface.co/kaist-ai/prometheus-13b-v1.0",
280
- "sel303/llama3-diverce-ver1.0": "https://huggingface.co/sel303/llama3-diverce-ver1.0",
281
- "NousResearch/Nous-Capybara-7B": "https://huggingface.co/NousResearch/Nous-Capybara-7B",
282
- "rrw-x2/KoSOLAR-10.7B-DPO-v1.0": "https://huggingface.co/rrw-x2/KoSOLAR-10.7B-DPO-v1.0",
283
- "Edentns/DataVortexS-10.7B-v0.2": "https://huggingface.co/Edentns/DataVortexS-10.7B-v0.2",
284
- "Jsoo/Llama3-beomi-Open-Ko-8B-Instruct-preview-test6": "https://huggingface.co/Jsoo/Llama3-beomi-Open-Ko-8B-Instruct-preview-test6",
285
- "tlphams/gollm-instruct-all-in-one-v1": "https://huggingface.co/tlphams/gollm-instruct-all-in-one-v1",
286
- "Edentns/DataVortexTL-1.1B-v0.1": "https://huggingface.co/Edentns/DataVortexTL-1.1B-v0.1",
287
- "richard-park/llama3-pre1-ds": "https://huggingface.co/richard-park/llama3-pre1-ds",
288
- "ehartford/samantha-1.1-llama-33b": "https://huggingface.co/ehartford/samantha-1.1-llama-33b",
289
- "heegyu/LIMA-13b-hf": "https://huggingface.co/heegyu/LIMA-13b-hf",
290
- "heegyu/42dot_LLM-PLM-1.3B-mt": "https://huggingface.co/heegyu/42dot_LLM-PLM-1.3B-mt",
291
- "shleeeee/mistral-ko-7b-wiki-neft": "https://huggingface.co/shleeeee/mistral-ko-7b-wiki-neft",
292
- "EleutherAI/polyglot-ko-1.3b": "https://huggingface.co/EleutherAI/polyglot-ko-1.3b",
293
- "kyujinpy/Ko-PlatYi-6B-gu": "https://huggingface.co/kyujinpy/Ko-PlatYi-6B-gu",
294
- "sel303/llama3-diverce-ver1.6": "https://huggingface.co/sel303/llama3-diverce-ver1.6"
295
- }
296
-
297
- def get_korea_models():
298
- """Korea 관련 모델 검색"""
299
- params = {
300
- "search": "korea",
301
- "full": "True",
302
- "config": "True",
303
- "limit": 1000
304
- }
305
-
306
- try:
307
- response = requests.get(
308
- "https://huggingface.co/api/models",
309
- headers={'Accept': 'application/json'},
310
- params=params
311
- )
312
-
313
- if response.status_code == 200:
314
- return response.json()
315
- else:
316
- print(f"Failed to fetch Korea models: {response.status_code}")
317
- return []
318
- except Exception as e:
319
- print(f"Error fetching Korea models: {str(e)}")
320
- return []
321
-
322
- def get_all_models(limit=1000):
323
- """모든 모델과 Korea 관련 모델 가져오기"""
324
- all_models = []
325
- existing_ids = set()
326
-
327
- # 1. Korea 검색 결과 가져오기
328
- korea_params = {
329
- "search": "korea",
330
- "full": "True",
331
- "config": "True",
332
- "limit": limit
333
- }
334
-
335
- korea_response = requests.get(
336
- "https://huggingface.co/api/models",
337
- headers={'Accept': 'application/json'},
338
- params=korea_params
339
- )
340
-
341
- if korea_response.status_code == 200:
342
- korea_models = korea_response.json()
343
- print(f"Found {len(korea_models)} Korea-related models")
344
- for model in korea_models:
345
- model_id = model.get('id', '')
346
- if model_id not in existing_ids:
347
- all_models.append(model)
348
- existing_ids.add(model_id)
349
-
350
- # 2. Korean 검색 결과 가져오기
351
- korean_params = {
352
- "search": "korean",
353
- "full": "True",
354
- "config": "True",
355
- "limit": limit
356
- }
357
-
358
- korean_response = requests.get(
359
- "https://huggingface.co/api/models",
360
- headers={'Accept': 'application/json'},
361
- params=korean_params
362
- )
363
-
364
- if korean_response.status_code == 200:
365
- korean_models = korean_response.json()
366
- print(f"Found {len(korean_models)} Korean-related models")
367
- for model in korean_models:
368
- model_id = model.get('id', '')
369
- if model_id not in existing_ids:
370
- all_models.append(model)
371
- existing_ids.add(model_id)
372
-
373
- # 3. 일반 모델 리스트 가져오기
374
- params = {
375
- "limit": limit,
376
- "full": "True",
377
- "config": "True"
378
- }
379
-
380
- response = requests.get(
381
- "https://huggingface.co/api/models",
382
- headers={'Accept': 'application/json'},
383
- params=params
384
- )
385
-
386
- if response.status_code == 200:
387
- general_models = response.json()
388
- for model in general_models:
389
- model_id = model.get('id', '')
390
- if model_id not in existing_ids:
391
- all_models.append(model)
392
- existing_ids.add(model_id)
393
-
394
- print(f"Total unique models: {len(all_models)}")
395
- return all_models[:limit]
396
-
397
- def get_models_data(progress=gr.Progress()):
398
- """모델 데이터 가져오기"""
399
- try:
400
- progress(0, desc="Fetching models...")
401
-
402
- # 모델 가져오기
403
- all_global_models = get_all_models(limit=1000)
404
- print(f"Actually fetched models count: {len(all_global_models)}")
405
-
406
- # API 응답 순서를 순위로 사용하여 순위 맵 생성
407
- rank_map = {}
408
- for rank, model in enumerate(all_global_models, 1):
409
- model_id = model.get('id', '').strip()
410
- rank_map[model_id] = {
411
- 'rank': rank,
412
- 'likes': model.get('likes', 0),
413
- 'downloads': model.get('downloads', 0),
414
- 'title': model.get('title', 'No Title')
415
- }
416
- print(f"Rank {rank}: {model_id}")
417
-
418
- # target_models의 순위 확인 및 정보 수집
419
- filtered_models = []
420
- for model_id in target_models.keys():
421
- try:
422
- # 개별 모델 API 호출
423
- normalized_id = model_id.strip('/')
424
- model_url_api = f"https://huggingface.co/api/models/{normalized_id}"
425
- response = requests.get(
426
- model_url_api,
427
- headers={'Accept': 'application/json'}
428
- )
429
-
430
- if response.status_code == 200:
431
- model_data = response.json()
432
- api_id = model_data.get('id', '').strip()
433
-
434
- # API 응답 순서에서 순위 찾기
435
- rank_info = rank_map.get(api_id)
436
-
437
- model_info = {
438
- 'id': model_id,
439
- 'global_rank': rank_info['rank'] if rank_info else 'Not in top 1000',
440
- 'downloads': model_data.get('downloads', 0),
441
- 'likes': model_data.get('likes', 0),
442
- 'title': model_data.get('title', 'No Title')
443
- }
444
- filtered_models.append(model_info)
445
- print(f"Model {model_id}: Rank={model_info['global_rank']}, Downloads={model_info['downloads']}, Likes={model_info['likes']}")
446
- else:
447
- filtered_models.append({
448
- 'id': model_id,
449
- 'global_rank': 'Not in top 1000',
450
- 'downloads': 0,
451
- 'likes': 0,
452
- 'title': 'No Title'
453
- })
454
- except Exception as e:
455
- print(f"Error processing {model_id}: {str(e)}")
456
- filtered_models.append({
457
- 'id': model_id,
458
- 'global_rank': 'Not in top 1000',
459
- 'downloads': 0,
460
- 'likes': 0,
461
- 'title': 'No Title'
462
- })
463
-
464
- # 순위로 정렬
465
- filtered_models.sort(key=lambda x: float('inf') if isinstance(x['global_rank'], str) else x['global_rank'])
466
-
467
- progress(0.3, desc="Creating visualization...")
468
-
469
- # 시각화 생성
470
- fig = go.Figure()
471
-
472
- # 순위권 내 모델만 필터링하여 시각화
473
- valid_models = [m for m in filtered_models if isinstance(m['global_rank'], (int, float))]
474
-
475
- if valid_models:
476
- ids = [m['id'] for m in valid_models]
477
- ranks = [m['global_rank'] for m in valid_models]
478
- likes = [m['likes'] for m in valid_models]
479
- downloads = [m['downloads'] for m in valid_models]
480
-
481
- # 막대 그래프 생성 (각 순위에서 1000까지의 길이로 막대 생성)
482
- fig.add_trace(go.Bar(
483
- x=ids,
484
- y=ranks, # 실제 순위 사용
485
- base=1000, # 막대의 ��준점을 1000으로 설정
486
- text=[f"Global Rank: #{r}<br>Downloads: {format(d, ',')}<br>Likes: {format(l, ',')}"
487
- for r, d, l in zip(ranks, downloads, likes)],
488
- textposition='auto',
489
- marker_color='rgb(158,202,225)',
490
- opacity=0.8
491
- ))
492
-
493
- fig.update_layout(
494
- title={
495
- 'text': 'Hugging Face Models Global Rankings',
496
- 'y':0.95,
497
- 'x':0.5,
498
- 'xanchor': 'center',
499
- 'yanchor': 'top'
500
- },
501
- xaxis_title='Model ID',
502
- yaxis_title='Rank',
503
- yaxis=dict(
504
- autorange='reversed', # Y축을 반전
505
- tickmode='linear',
506
- tick0=0,
507
- dtick=50,
508
- range=[0, 1000]
509
- ),
510
- height=800,
511
- showlegend=False,
512
- template='plotly_white',
513
- xaxis_tickangle=-45
514
- )
515
-
516
- progress(0.6, desc="Creating model cards...")
517
-
518
- # HTML 카드 생성
519
- html_content = """
520
- <div style='padding: 20px; background: #f5f5f5;'>
521
- <h2 style='color: #2c3e50;'>Models Global Rankings</h2>
522
- <div style='display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px;'>
523
- """
524
-
525
- for model in filtered_models:
526
- rank_display = f"Global Rank #{model['global_rank']}" if isinstance(model['global_rank'], (int, float)) else "Not in top 1000"
527
-
528
- html_content += f"""
529
- <div style='
530
- background: white;
531
- padding: 20px;
532
- border-radius: 10px;
533
- box-shadow: 0 2px 4px rgba(0,0,0,0.1);
534
- transition: transform 0.2s;
535
- '>
536
- <h3 style='color: #34495e;'>{rank_display}</h3>
537
- <h4 style='color: #2c3e50;'>{model['id']}</h4>
538
- <p style='color: #7f8c8d;'>⬇️ Downloads: {format(model['downloads'], ',')}</p>
539
- <p style='color: #7f8c8d;'>👍 Likes: {format(model['likes'], ',')}</p>
540
- <a href='{target_models[model['id']]}'
541
- target='_blank'
542
- style='
543
- display: inline-block;
544
- padding: 8px 16px;
545
- background: #3498db;
546
- color: white;
547
- text-decoration: none;
548
- border-radius: 5px;
549
- transition: background 0.3s;
550
- '>
551
- Visit Model 🔗
552
- </a>
553
- </div>
554
- """
555
-
556
- html_content += "</div></div>"
557
-
558
- # 데이터프레임 생성
559
- df = pd.DataFrame([{
560
- 'Global Rank': f"#{m['global_rank']}" if isinstance(m['global_rank'], (int, float)) else m['global_rank'],
561
- 'Model ID': m['id'],
562
- 'Title': m['title'],
563
- 'Downloads': format(m['downloads'], ','),
564
- 'Likes': format(m['likes'], ','),
565
- 'URL': target_models[m['id']]
566
- } for m in filtered_models])
567
-
568
- progress(1.0, desc="Complete!")
569
- return fig, html_content, df
570
-
571
- except Exception as e:
572
- print(f"Error in get_models_data: {str(e)}")
573
- return create_error_plot(), f"<div>에러 발생: {str(e)}</div>", pd.DataFrame()
574
-
575
-
576
- # 관심 스페이스 URL 리스트와 정보
577
- target_spaces = {
578
-
579
- "openfree/Korean-Leaderboard": "https://huggingface.co/spaces/openfree/Korean-Leaderboard",
580
- "ginipick/FLUXllama": "https://huggingface.co/spaces/ginipick/FLUXllama",
581
- "ginipick/SORA-3D": "https://huggingface.co/spaces/ginipick/SORA-3D",
582
- "fantaxy/Sound-AI-SFX": "https://huggingface.co/spaces/fantaxy/Sound-AI-SFX",
583
- "fantos/flx8lora": "https://huggingface.co/spaces/fantos/flx8lora",
584
- "ginigen/Canvas": "https://huggingface.co/spaces/ginigen/Canvas",
585
- "fantaxy/erotica": "https://huggingface.co/spaces/fantaxy/erotica",
586
- "ginipick/time-machine": "https://huggingface.co/spaces/ginipick/time-machine",
587
- "aiqcamp/FLUX-VisionReply": "https://huggingface.co/spaces/aiqcamp/FLUX-VisionReply",
588
- "openfree/Tetris-Game": "https://huggingface.co/spaces/openfree/Tetris-Game",
589
- "openfree/everychat": "https://huggingface.co/spaces/openfree/everychat",
590
- "VIDraft/mouse1": "https://huggingface.co/spaces/VIDraft/mouse1",
591
- "kolaslab/alpha-go": "https://huggingface.co/spaces/kolaslab/alpha-go",
592
- "ginipick/text3d": "https://huggingface.co/spaces/ginipick/text3d",
593
- "openfree/trending-board": "https://huggingface.co/spaces/openfree/trending-board",
594
- "cutechicken/tankwar": "https://huggingface.co/spaces/cutechicken/tankwar",
595
- "openfree/game-jewel": "https://huggingface.co/spaces/openfree/game-jewel",
596
- "VIDraft/mouse-chat": "https://huggingface.co/spaces/VIDraft/mouse-chat",
597
- "ginipick/AccDiffusion": "https://huggingface.co/spaces/ginipick/AccDiffusion",
598
- "aiqtech/Particle-Accelerator-Simulation": "https://huggingface.co/spaces/aiqtech/Particle-Accelerator-Simulation",
599
- "openfree/GiniGEN": "https://huggingface.co/spaces/openfree/GiniGEN",
600
- "kolaslab/3DAudio-Spectrum-Analyzer": "https://huggingface.co/spaces/kolaslab/3DAudio-Spectrum-Analyzer",
601
- "openfree/trending-news-24": "https://huggingface.co/spaces/openfree/trending-news-24",
602
- "ginipick/Realtime-FLUX": "https://huggingface.co/spaces/ginipick/Realtime-FLUX",
603
- "VIDraft/prime-number": "https://huggingface.co/spaces/VIDraft/prime-number",
604
- "kolaslab/zombie-game": "https://huggingface.co/spaces/kolaslab/zombie-game",
605
- "fantos/miro-game": "https://huggingface.co/spaces/fantos/miro-game",
606
- "kolaslab/shooting": "https://huggingface.co/spaces/kolaslab/shooting",
607
- "VIDraft/Mouse-Hackathon": "https://huggingface.co/spaces/VIDraft/Mouse-Hackathon",
608
- "upstage/open-ko-llm-leaderboard": "https://huggingface.co/spaces/upstage/open-ko-llm-leaderboard",
609
- "LGAI-EXAONE/EXAONE-3.5-Instruct-Demo": "https://huggingface.co/spaces/LGAI-EXAONE/EXAONE-3.5-Instruct-Demo",
610
-
611
- "cutechicken/TankWar3D": "https://huggingface.co/spaces/cutechicken/TankWar3D",
612
- "kolaslab/RC4-EnDecoder": "https://huggingface.co/spaces/kolaslab/RC4-EnDecoder",
613
- "kolaslab/simulator": "https://huggingface.co/spaces/kolaslab/simulator",
614
- "kolaslab/calculator": "https://huggingface.co/spaces/kolaslab/calculator",
615
- "etri-vilab/Ko-LLaVA": "https://huggingface.co/spaces/etri-vilab/Ko-LLaVA",
616
- "etri-vilab/KOALA": "https://huggingface.co/spaces/etri-vilab/KOALA",
617
- "naver-clova-ix/donut-base-finetuned-cord-v2": "https://huggingface.co/spaces/naver-clova-ix/donut-base-finetuned-cord-v2",
618
-
619
- "NCSOFT/VARCO_Arena": "https://huggingface.co/spaces/NCSOFT/VARCO_Arena"
620
- }
621
-
622
- def get_spaces_data(sort_type="trending", progress=gr.Progress()):
623
- """스페이스 데이터 가져오기 (trending 또는 modes)"""
624
- url = "https://huggingface.co/api/spaces"
625
- params = {
626
- 'full': 'true',
627
- 'limit': 400
628
- }
629
-
630
- if sort_type == "modes":
631
- params['sort'] = 'likes'
632
-
633
- try:
634
- progress(0, desc=f"Fetching {sort_type} spaces data...")
635
- response = requests.get(url, params=params)
636
- response.raise_for_status()
637
- all_spaces = response.json()
638
-
639
- # 순위 정보 저장
640
- space_ranks = {}
641
- for idx, space in enumerate(all_spaces, 1):
642
- space_id = space.get('id', '')
643
- if space_id in target_spaces:
644
- space['rank'] = idx
645
- space_ranks[space_id] = space
646
-
647
- spaces = [space_ranks[space_id] for space_id in space_ranks.keys()]
648
- spaces.sort(key=lambda x: x['rank'])
649
-
650
- progress(0.3, desc="Creating visualization...")
651
-
652
- # 시각화 생성
653
- fig = go.Figure()
654
-
655
- # 데이터 준비
656
- ids = [space['id'] for space in spaces]
657
- ranks = [space['rank'] for space in spaces]
658
- likes = [space.get('likes', 0) for space in spaces]
659
- titles = [space.get('cardData', {}).get('title') or space.get('title', 'No Title') for space in spaces]
660
-
661
- # 막대 그래프 생성 (각 순위에서 400까지의 길이로 막대 생성)
662
- fig.add_trace(go.Bar(
663
- x=ids,
664
- y=ranks, # 실제 순위 사용
665
- base=400, # 막대의 기준점을 400으로 설정
666
- text=[f"Rank: {r}<br>Title: {t}<br>Likes: {l}"
667
- for r, t, l in zip(ranks, titles, likes)],
668
- textposition='auto',
669
- marker_color='rgb(158,202,225)',
670
- opacity=0.8
671
- ))
672
-
673
- fig.update_layout(
674
- title={
675
- 'text': f'Hugging Face Spaces {sort_type.title()} Rankings (Top 400)',
676
- 'y':0.95,
677
- 'x':0.5,
678
- 'xanchor': 'center',
679
- 'yanchor': 'top'
680
- },
681
- xaxis_title='Space ID',
682
- yaxis_title='Rank',
683
- yaxis=dict(
684
- autorange='reversed', # Y축을 반전 (1이 위로, 400이 아래로)
685
- tickmode='linear',
686
- tick0=1, # 시작값을 1로 설정
687
- dtick=20,
688
- range=[1, 400], # Y축 범위를 1부터 400까지로 설정
689
- ticktext=[str(i) for i in range(1, 401, 20)], # 1부터 시작하는 눈금 레이블
690
- tickvals=[i for i in range(1, 401, 20)] # 눈금 위치
691
- ),
692
- height=800,
693
- showlegend=False,
694
- template='plotly_white',
695
- xaxis_tickangle=-45
696
- )
697
-
698
- progress(0.6, desc="Creating space cards...")
699
-
700
- # HTML 카드 생성
701
- html_content = f"""
702
- <div style='padding: 20px; background: #f5f5f5;'>
703
- <h2 style='color: #2c3e50;'>{sort_type.title()} Rankings</h2>
704
- <div style='display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px;'>
705
- """
706
-
707
- for space in spaces:
708
- space_id = space['id']
709
- rank = space['rank']
710
- title = space.get('cardData', {}).get('title') or space.get('title', 'No Title')
711
- likes = space.get('likes', 0)
712
-
713
- html_content += f"""
714
- <div style='
715
- background: white;
716
- padding: 20px;
717
- border-radius: 10px;
718
- box-shadow: 0 2px 4px rgba(0,0,0,0.1);
719
- transition: transform 0.2s;
720
- '>
721
- <h3 style='color: #34495e;'>Rank #{rank} - {space_id}</h3>
722
- <h4 style='
723
- color: #2980b9;
724
- margin: 10px 0;
725
- font-size: 1.2em;
726
- font-weight: bold;
727
- text-shadow: 1px 1px 2px rgba(0,0,0,0.1);
728
- background: linear-gradient(to right, #3498db, #2980b9);
729
- -webkit-background-clip: text;
730
- -webkit-text-fill-color: transparent;
731
- padding: 5px 0;
732
- '>{title}</h4>
733
- <p style='color: #7f8c8d; margin-bottom: 10px;'>👍 Likes: {likes}</p>
734
- <a href='{target_spaces[space_id]}'
735
- target='_blank'
736
- style='
737
- display: inline-block;
738
- padding: 8px 16px;
739
- background: #3498db;
740
- color: white;
741
- text-decoration: none;
742
- border-radius: 5px;
743
- transition: background 0.3s;
744
- '>
745
- Visit Space 🔗
746
- </a>
747
- </div>
748
- """
749
-
750
- html_content += "</div></div>"
751
-
752
- # 데이터프레임 생성
753
- df = pd.DataFrame([{
754
- 'Rank': space['rank'],
755
- 'Space ID': space['id'],
756
- 'Title': space.get('cardData', {}).get('title') or space.get('title', 'No Title'),
757
- 'Likes': space.get('likes', 0),
758
- 'URL': target_spaces[space['id']]
759
- } for space in spaces])
760
-
761
- progress(1.0, desc="Complete!")
762
- return fig, html_content, df
763
-
764
- except Exception as e:
765
- print(f"Error in get_spaces_data: {str(e)}")
766
- error_html = f'<div style="color: red; padding: 20px;">Error: {str(e)}</div>'
767
- error_plot = create_error_plot()
768
- return error_plot, error_html, pd.DataFrame()
769
-
770
-
771
- def create_trend_visualization(spaces_data):
772
- if not spaces_data:
773
- return create_error_plot()
774
-
775
- fig = go.Figure()
776
-
777
- # 순위 데이터 준비
778
- ranks = []
779
- for idx, space in enumerate(spaces_data, 1):
780
- space_id = space.get('id', '')
781
- if space_id in target_spaces:
782
- ranks.append({
783
- 'id': space_id,
784
- 'rank': idx,
785
- 'likes': space.get('likes', 0),
786
- 'title': space.get('title', 'N/A'),
787
- 'views': space.get('views', 0)
788
- })
789
-
790
- if not ranks:
791
- return create_error_plot()
792
-
793
- # 순위별로 정렬
794
- ranks.sort(key=lambda x: x['rank'])
795
-
796
- # 플롯 데이터 생성
797
- ids = [r['id'] for r in ranks]
798
- rank_values = [r['rank'] for r in ranks]
799
- likes = [r['likes'] for r in ranks]
800
- views = [r['views'] for r in ranks]
801
-
802
- # 막대 그래프 생성
803
- fig.add_trace(go.Bar(
804
- x=ids,
805
- y=rank_values,
806
- text=[f"Rank: {r}<br>Likes: {l}<br>Views: {v}" for r, l, v in zip(rank_values, likes, views)],
807
- textposition='auto',
808
- marker_color='rgb(158,202,225)',
809
- opacity=0.8
810
- ))
811
-
812
- fig.update_layout(
813
- title={
814
- 'text': 'Current Trending Ranks (All Target Spaces)',
815
- 'y':0.95,
816
- 'x':0.5,
817
- 'xanchor': 'center',
818
- 'yanchor': 'top'
819
- },
820
- xaxis_title='Space ID',
821
- yaxis_title='Trending Rank',
822
- yaxis_autorange='reversed',
823
- height=800,
824
- showlegend=False,
825
- template='plotly_white',
826
- xaxis_tickangle=-45
827
- )
828
-
829
- return fig
830
-
831
- # 토큰이 없는 경우를 위한 대체 함수
832
- def get_trending_spaces_without_token():
833
- try:
834
- url = "https://huggingface.co/api/spaces"
835
- params = {
836
- 'sort': 'likes',
837
- 'direction': -1,
838
- 'limit': 400,
839
- 'full': 'true'
840
- }
841
-
842
- response = requests.get(url, params=params)
843
-
844
- if response.status_code == 200:
845
- return response.json()
846
- else:
847
- print(f"API 요청 실패 (토큰 없음): {response.status_code}")
848
- print(f"Response: {response.text}")
849
- return None
850
- except Exception as e:
851
- print(f"API 호출 중 에러 발생 (토큰 없음): {str(e)}")
852
- return None
853
-
854
- # API 토큰 설정 및 함수 선택
855
- if not HF_TOKEN:
856
- get_trending_spaces = get_trending_spaces_without_token
857
-
858
-
859
-
860
- def create_error_plot():
861
- fig = go.Figure()
862
- fig.add_annotation(
863
- text="데이터를 불러올 수 없습니다.\n(API 인증이 필요합니다)",
864
- xref="paper",
865
- yref="paper",
866
- x=0.5,
867
- y=0.5,
868
- showarrow=False,
869
- font=dict(size=20)
870
- )
871
- fig.update_layout(
872
- title="Error Loading Data",
873
- height=400
874
- )
875
- return fig
876
-
877
-
878
- def create_space_info_html(spaces_data):
879
- if not spaces_data:
880
- return "<div style='padding: 20px;'><h2>데이터를 불러오는데 실패했습니다.</h2></div>"
881
-
882
- html_content = """
883
- <div style='padding: 20px;'>
884
- <h2 style='color: #2c3e50;'>Current Trending Rankings</h2>
885
- <div style='display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px;'>
886
- """
887
-
888
- # 모든 target spaces를 포함하도록 수정
889
- for space_id in target_spaces.keys():
890
- space_info = next((s for s in spaces_data if s.get('id') == space_id), None)
891
- if space_info:
892
- rank = next((idx for idx, s in enumerate(spaces_data, 1) if s.get('id') == space_id), 'N/A')
893
- html_content += f"""
894
- <div style='
895
- background: white;
896
- padding: 20px;
897
- border-radius: 10px;
898
- box-shadow: 0 2px 4px rgba(0,0,0,0.1);
899
- transition: transform 0.2s;
900
- '>
901
- <h3 style='color: #34495e;'>#{rank} - {space_id}</h3>
902
- <p style='color: #7f8c8d;'>👍 Likes: {space_info.get('likes', 'N/A')}</p>
903
- <p style='color: #7f8c8d;'>👀 Views: {space_info.get('views', 'N/A')}</p>
904
- <p style='color: #2c3e50;'>{space_info.get('title', 'N/A')}</p>
905
- <p style='color: #7f8c8d; font-size: 0.9em;'>{space_info.get('description', 'N/A')[:100]}...</p>
906
- <a href='{target_spaces[space_id]}'
907
- target='_blank'
908
- style='
909
- display: inline-block;
910
- padding: 8px 16px;
911
- background: #3498db;
912
- color: white;
913
- text-decoration: none;
914
- border-radius: 5px;
915
- transition: background 0.3s;
916
- '>
917
- Visit Space 🔗
918
- </a>
919
- </div>
920
- """
921
- else:
922
- html_content += f"""
923
- <div style='
924
- background: #f8f9fa;
925
- padding: 20px;
926
- border-radius: 10px;
927
- box-shadow: 0 2px 4px rgba(0,0,0,0.1);
928
- '>
929
- <h3 style='color: #34495e;'>{space_id}</h3>
930
- <p style='color: #7f8c8d;'>Not in trending</p>
931
- <a href='{target_spaces[space_id]}'
932
- target='_blank'
933
- style='
934
- display: inline-block;
935
- padding: 8px 16px;
936
- background: #95a5a6;
937
- color: white;
938
- text-decoration: none;
939
- border-radius: 5px;
940
- '>
941
- Visit Space 🔗
942
- </a>
943
- </div>
944
- """
945
-
946
- html_content += "</div></div>"
947
- return html_content
948
-
949
- def create_data_table(spaces_data):
950
- if not spaces_data:
951
- return pd.DataFrame()
952
-
953
- rows = []
954
- for idx, space in enumerate(spaces_data, 1):
955
- space_id = space.get('id', '')
956
- if space_id in target_spaces:
957
- rows.append({
958
- 'Rank': idx,
959
- 'Space ID': space_id,
960
- 'Likes': space.get('likes', 'N/A'),
961
- 'Title': space.get('title', 'N/A'),
962
- 'URL': target_spaces[space_id]
963
- })
964
-
965
- return pd.DataFrame(rows)
966
-
967
- def refresh_data():
968
- spaces_data = get_trending_spaces()
969
- if spaces_data:
970
- plot = create_trend_visualization(spaces_data)
971
- info = create_space_info_html(spaces_data)
972
- df = create_data_table(spaces_data)
973
- return plot, info, df
974
- else:
975
- return create_error_plot(), "<div>API 인증이 필요합니다.</div>", pd.DataFrame()
976
-
977
- with gr.Blocks(theme=gr.themes.Soft()) as demo:
978
- gr.Markdown("""
979
- # 🤗 허깅페이스 '한국(언어) 리더보드'
980
- HuggingFace가 제공하는 Spaces와 Models 실시간 인기 순위를 반영: 한국인(기업)이 공개, 한국 'LLM 리더보드' 및 TAG 등을 참고해 리스트 갱신. 신규 등록 요청: [email protected]
981
- """)
982
-
983
- # 새로 고침 버튼을 상단으로 이동하고 한글로 변경
984
- refresh_btn = gr.Button("🔄 새로 고침", variant="primary")
985
-
986
- with gr.Tab("Spaces Trending"):
987
- trending_plot = gr.Plot()
988
- trending_info = gr.HTML()
989
- trending_df = gr.DataFrame()
990
-
991
- with gr.Tab("Models Trending"):
992
- models_plot = gr.Plot()
993
- models_info = gr.HTML()
994
- models_df = gr.DataFrame()
995
-
996
- def refresh_all_data():
997
- spaces_results = get_spaces_data("trending")
998
- models_results = get_models_data()
999
- return [*spaces_results, *models_results]
1000
-
1001
- refresh_btn.click(
1002
- refresh_all_data,
1003
- outputs=[
1004
- trending_plot, trending_info, trending_df,
1005
- models_plot, models_info, models_df
1006
- ]
1007
- )
1008
-
1009
- # 초기 데이터 로드
1010
- spaces_results = get_spaces_data("trending")
1011
- models_results = get_models_data()
1012
-
1013
- trending_plot.value, trending_info.value, trending_df.value = spaces_results
1014
- models_plot.value, models_info.value, models_df.value = models_results
1015
-
1016
-
1017
- # Gradio 앱 실행
1018
- demo.launch(
1019
- server_name="0.0.0.0",
1020
- server_port=7860,
1021
- share=False
1022
- )