Spaces:
Sleeping
Sleeping
Update templates/index.html
Browse files- templates/index.html +0 -185
templates/index.html
CHANGED
|
@@ -88,191 +88,6 @@
|
|
| 88 |
|
| 89 |
|
| 90 |
|
| 91 |
-
<div class="image-section">
|
| 92 |
-
<div id="image-modality-header" class="image-header">{{ image_type | default('์๋ฃ ์์', true) }}
|
| 93 |
-
</div> <!-- Updated: ID added, initial text changed -->
|
| 94 |
-
<div id="image-container" class="image-container"> <!-- Container for relative positioning -->
|
| 95 |
-
<img id="report-image" src="" alt="์๋ฃ ์์" style="display: none;">
|
| 96 |
-
<div id="image-loading" class="loading" style="display: none;">์ด๋ฏธ์ง ๋ก๋ฉ ์ค...</div>
|
| 97 |
-
<div id="image-error" class="error-message" style="display: none;"></div>
|
| 98 |
-
</div>
|
| 99 |
-
<div id="ct-image-note" class="image-note">
|
| 100 |
-
์ด๊ฒ์ CT์ ๋จ์ผ ์ฌ๋ผ์ด์ค๋ฅผ ๋ณด์ฌ์ค๋๋ค. ๋ณด๊ณ ์์ ๋ชจ๋ ์์๋ฅผ ์๊ฐํํ ์๋ ์์ต๋๋ค.
|
| 101 |
-
</div>
|
| 102 |
-
</div>
|
| 103 |
-
|
| 104 |
-
<div class="report-section">
|
| 105 |
-
<div id="app-loading" class="loading" style="display: none;">๋ณด๊ณ ์ ์์ธ ์ ๋ณด ๋ก๋ฉ ์ค...</div>
|
| 106 |
-
<div id="app-error" class="error-message" style="display: none;"></div>
|
| 107 |
-
<div class="explanation-section">
|
| 108 |
-
<div id="explanation-output" class="explanation-box">
|
| 109 |
-
<div id="explanation-loading" class="loading">์ค๋ช
์ ์์ฑํ๊ณ ์์ต๋๋ค... ์ ์๋ง ๊ธฐ๋ค๋ ค์ฃผ์ธ์.</div>
|
| 110 |
-
<div class="explanation-header">์ด๊ฒ์ด ์๋ฏธํ๋ ๋ฐ
|
| 111 |
-
</div>
|
| 112 |
-
<div id="explanation-content">
|
| 113 |
-
๋ฌธ์ฅ์ ํด๋ฆญํ๋ฉด ์ฌ๊ธฐ์ ์ค๋ช
์ด ํ์๋ฉ๋๋ค.
|
| 114 |
-
</div>
|
| 115 |
-
</div>
|
| 116 |
-
</div>
|
| 117 |
-
<div class="report-text-area">
|
| 118 |
-
<div id="report-text-display" >
|
| 119 |
-
<!-- Report text will be loaded here -->
|
| 120 |
-
๋ณด๊ณ ์๋ฅผ ์ ํํ๋ฉด ํ
์คํธ๊ฐ ํ์๋ฉ๋๋ค.
|
| 121 |
-
</div>
|
| 122 |
-
<div class="floating-disclaimer">
|
| 123 |
-
<span class="material-symbols-outlined disclaimer-icon">warning</span>
|
| 124 |
-
<span class="disclaimer-text">์ด ๋ฐ๋ชจ๋ MedGemma์ ๊ธฐ๋ณธ ๊ธฐ๋ฅ์ ์ค๋ช
ํ๊ธฐ ์ํ ๋ชฉ์ ์ผ๋ก๋ง ์ ๊ณต๋ฉ๋๋ค. ์์ฑ๋๊ฑฐ๋ ์น์ธ๋ ์ ํ์ ๋ํ๋ด์ง ์์ผ๋ฉฐ, ์ง๋ณ์ด๋ ์ํ๋ฅผ ์ง๋จํ๊ฑฐ๋ ์น๋ฃ๋ฅผ ์ ์ํ๊ธฐ ์ํ ๊ฒ์ด ์๋๋ฉฐ, ์ํ์ ์กฐ์ธ์ ์ฌ์ฉํด์๋ ์ ๋ฉ๋๋ค.</span>
|
| 125 |
-
</div>
|
| 126 |
-
</div>
|
| 127 |
-
</div>
|
| 128 |
-
<!-- Embed available reports data for JavaScript -->
|
| 129 |
-
<script id="reports-data" type="application/json">
|
| 130 |
-
{{ available_reports | tojson | safe }}
|
| 131 |
-
</script>
|
| 132 |
-
<div id="explanation-error" class="error-message" style="display: none;"></div>
|
| 133 |
-
</div>
|
| 134 |
-
|
| 135 |
-
<!-- Immersive Info Dialog -->
|
| 136 |
-
<div id="immersive-info-dialog" class="dialog-overlay" style="display: none;" role="dialog" aria-modal="true"
|
| 137 |
-
aria-labelledby="dialog-title">
|
| 138 |
-
<div class="dialog-box">
|
| 139 |
-
<button id="dialog-close-button" class="dialog-close-btn" aria-label="๋ํ์์ ๋ซ๊ธฐ">
|
| 140 |
-
<span class="material-symbols-outlined">close</span>
|
| 141 |
-
</button>
|
| 142 |
-
<h2 id="dialog-title" class="dialog-title-text">์ด ๋ฐ๋ชจ์ ๋ํ ์์ธ ์ ๋ณด</h2>
|
| 143 |
-
<div class="dialog-body-scrollable">
|
| 144 |
-
<p><b>๋ชจ๋ธ:</b> ์ด ๋ฐ๋ชจ๋ ๊ตฌ๊ธ์ MedGemma-4B๋ฅผ ๋
์ ์ ์ผ๋ก ์ฌ์ฉํฉ๋๋ค. ์ด๋ Gemma 3 ๊ธฐ๋ฐ ๋ชจ๋ธ๋ก, ํ๋ถ X-๋ ์ด์ ๊ฐ์ ์๋ฃ ํ
์คํธ ๋ฐ ์ด๋ฏธ์ง๋ฅผ ์ดํดํ๋๋ก ๋ฏธ์ธ ์กฐ์ ๋์์ต๋๋ค. ์๋ฃ ๋ฐ์ดํฐ์ ๊ณ ๊ธ ํด์์ ์ ๊ณตํ์ฌ AI ๊ธฐ๋ฐ ์๋ฃ ์ ํ๋ฆฌ์ผ์ด์
๊ฐ๋ฐ์ ๊ฐ์ํํ๋ MedGemma์ ๋ฅ๋ ฅ์ ๋ณด์ฌ์ค๋๋ค.</p>
|
| 145 |
-
<p><b>๋ชจ๋ธ ์ ๊ทผ ๋ฐ ์ฌ์ฉ:</b> ๊ตฌ๊ธ์ MedGemma-4B๋ <a
|
| 146 |
-
href="https://huggingface.co/google/medgemma-4b-it" target="_blank">HuggingFace<img
|
| 147 |
-
class="hf-logo"
|
| 148 |
-
src="https://huggingface.co/datasets/huggingface/brand-assets/resolve/main/hf-logo.svg">
|
| 149 |
-
</a>์
|
| 150 |
-
<a href="https://console.cloud.google.com/vertex-ai/publishers/google/model-garden/medgemma" target="_blank">Model
|
| 151 |
-
Garden <img class="hf-logo"
|
| 152 |
-
src="https://www.gstatic.com/cloud/images/icons/apple-icon.png"></a>์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
|
| 153 |
-
๋ชจ๋ธ ์ฌ์ฉ ๋ฐ ์ ํ ์ฌํญ์ ๋ํ ์์ธํ ๋ด์ฉ์ <a
|
| 154 |
-
href="https://developers.google.com/health-ai-developer-foundations?referral=rad_explain"
|
| 155 |
-
target="_blank">HAI-DEF
|
| 156 |
-
๊ฐ๋ฐ์ ์ฌ์ดํธ</a>์์ ํ์ธํ์ธ์.
|
| 157 |
-
</p>
|
| 158 |
-
<p><b>Health AI Developer Foundations (HAI-DEF)</b>๋ ๊ฐ๋ฐ์๊ฐ ์๋ฃ ๋ถ์ผ์ฉ AI ๋ชจ๋ธ์ ๊ตฌ์ถํ ์ ์๋๋ก ํ๋ ์คํ ์จ์ดํธ ๋ชจ๋ธ ๋ฐ ๊ด๋ จ ๋ฆฌ์์ค ๋ชจ์์ ์ ๊ณตํฉ๋๋ค.</p>
|
| 159 |
-
<p><b>๋ฐ๋ชจ๊ฐ ๋ง์์ ๋์
จ๋์?</b> ์ฌ๋ฌ๋ถ์ ํผ๋๋ฐฑ์ ๊ธฐ๏ฟฝ๏ฟฝ๋ฆฝ๋๋ค! ์ด ๋ฐ๋ชจ๊ฐ ๋์์ด ๋์๋ค๋ฉด, ์๋จ์ ๋งํฌ๋ HuggingFace ํ์ด์ง์์ โก ๋ฒํผ์ ํด๋ฆญํ์ฌ ๊ฐ์ฌ์ ๋ง์์ ํํํด์ฃผ์ธ์.</p>
|
| 160 |
-
<p><b>๋ ๋ง์ ๋ฐ๋ชจ ํ์:</b> HuggingFace Spaces ๋๋ Colab์ ํตํด ์ถ๊ฐ ๋ฐ๋ชจ๋ฅผ ํ์ธํ์ธ์:
|
| 161 |
-
</p>
|
| 162 |
-
<ul>
|
| 163 |
-
<li><a href="https://huggingface.co/spaces/google/cxr-foundation-demo?referral=rad_explain"
|
| 164 |
-
target="_blank">
|
| 165 |
-
CXR Foundations ๋ฐ๋ชจ <img class="hf-logo"
|
| 166 |
-
src="https://huggingface.co/datasets/huggingface/brand-assets/resolve/main/hf-logo.svg"></a>
|
| 167 |
-
-
|
| 168 |
-
๋ธ๋ผ์ฐ์ ์์ ์คํ๋๋ ๋ฐ์ดํฐ ํจ์จ์ ์ด๊ณ ์ ๋ก์ท CXR ์ด๋ฏธ์ง ๋ถ๋ฅ๋ฅผ ๋ณด์ฌ์ค๋๋ค.</li>
|
| 169 |
-
<li><a href="https://huggingface.co/spaces/google/path-foundation-demo?referral=rad_explain"
|
| 170 |
-
target="_blank">
|
| 171 |
-
Path Foundations ๋ฐ๋ชจ <img class="hf-logo"
|
| 172 |
-
src="https://huggingface.co/datasets/huggingface/brand-assets/resolve/main/hf-logo.svg"></a>
|
| 173 |
-
-
|
| 174 |
-
๋ธ๋ผ์ฐ์ ์์ ์คํ๋๋ ๋ฐ์ดํฐ ํจ์จ์ ์ธ ๋ถ๋ฅ ๋ฐ ๋ณ๋ฆฌ ์ฌ๋ผ์ด๋ ๋ด ์ด์์น ํ์ง๋ฅผ ๊ฐ์กฐํฉ๋๋ค.</li>
|
| 175 |
-
<li><a href="https://github.com/Google-Health/medgemma/tree/main/notebooks/fine_tune_with_hugging_face.ipynb" target="_blank">
|
| 176 |
-
MedGemma ๋ฏธ์ธ ์กฐ์ Colab <img class="hf-logo"
|
| 177 |
-
src="https://upload.wikimedia.org/wikipedia/commons/d/d0/Google_Colaboratory_SVG_Logo.svg"></a>
|
| 178 |
-
-
|
| 179 |
-
์ด ๋ชจ๋ธ์ ๋ฏธ์ธ ์กฐ์ ํ๋ ๋ฐฉ๋ฒ์ ์์ ๋ฅผ ํ์ธํ์ธ์.</li>
|
| 180 |
-
</ul>
|
| 181 |
-
</div>
|
| 182 |
-
</div>
|
| 183 |
-
</div>
|
| 184 |
-
</body>
|
| 185 |
-
|
| 186 |
-
</html><!DOCTYPE html>
|
| 187 |
-
|
| 188 |
-
<html lang="ko">
|
| 189 |
-
|
| 190 |
-
<head>
|
| 191 |
-
<meta charset="UTF-8">
|
| 192 |
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
| 193 |
-
<title>๋ฐฉ์ฌ์ ๋ณด๊ณ ์ ์ค๋ช
๋๊ตฌ</title>
|
| 194 |
-
<link rel="stylesheet" href="{{ url_for('static', filename='css/style.css') }}">
|
| 195 |
-
<link rel="preconnect" href="https://fonts.googleapis.com">
|
| 196 |
-
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
| 197 |
-
<link
|
| 198 |
-
href="https://fonts.googleapis.com/css2?family=Google+Sans:wght@400;500&family=Google+Sans+Text:wght@500&display=swap"
|
| 199 |
-
rel="stylesheet">
|
| 200 |
-
<link
|
| 201 |
-
href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,[email protected],100..700,0..1,-50..200"
|
| 202 |
-
rel="stylesheet">
|
| 203 |
-
<!-- Link to the correct JS file -->
|
| 204 |
-
<script src="https://unpkg.com/compromise" defer></script>
|
| 205 |
-
<script src="{{ url_for('static', filename='js/demo.js') }}" defer></script>
|
| 206 |
-
</head>
|
| 207 |
-
|
| 208 |
-
<body>
|
| 209 |
-
<div class="info">
|
| 210 |
-
<!-- New Info Page Content -->
|
| 211 |
-
<div class="info-page-container">
|
| 212 |
-
<div class="info-content">
|
| 213 |
-
<div class="info-header">
|
| 214 |
-
<span class="info-title-demo">๋ฐฉ์ฌ์ ์ค๋ช
๋๊ตฌ ๋ฐ๋ชจ</span><br>
|
| 215 |
-
<span class="info-title-demo info-subtitle-demo">๊ธฐ๋ฐ ๊ธฐ์ :</span>
|
| 216 |
-
<span class="info-title-med info-subtitle-demo">MedGemma</span>
|
| 217 |
-
</div>
|
| 218 |
-
<div class="info-text">๋ฐฉ์ฌ์ ์์๊ณผ์ ์ํธ์์ฉ์ด ํ์ต์ ํฌ๊ฒ ํฅ์์ํฌ ์ ์๋ ๊ต์ก ์๋๋ฆฌ์ค๋ฅผ ์๊ฐํด๋ณด์ธ์. ์ด ๋ฐ๋ชจ๋ MedGemma๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ฐฉ์ฌ์ ์์๊ณผ ๊ด๋ จ ๋ณด๊ณ ์๋ฅผ ์ฌ์ด ์ธ์ด๋ก ๋ฒ์ญํ๊ณ , ์์์ ๊ด๋ จ ์์ญ์ ์๊ฐ์ ์ผ๋ก ๊ฐ์กฐํ์ฌ ํ์ํ ์ ์๋ ์ ์ฉํ ๋๊ตฌ๋ฅผ ์ ๊ณตํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค.</div>
|
| 219 |
-
<div class="info-disclaimer-text"><span class="info-disclaimer-title">๋ฉด์ฑ
์กฐํญ</span> ์ด ๋ฐ๋ชจ๋ ์ค๋ช
๋ชฉ์ ์ผ๋ก๋ง ์ ๊ณต๋๋ฉฐ ์์ฑ๋๊ฑฐ๋ ์น์ธ๋ ์ ํ์ ๋ํ๋ด์ง ์์ต๋๋ค. ํ์ง, ์์ ์ฑ ๋๋ ํจ๋ฅ์ ๋ํ ๊ท์ ์ด๋ ํ์ค ์ค์๋ฅผ ๋ํ๋ด์ง ์์ต๋๋ค. ์ค์ ์์ฉ ํ๋ก๊ทธ๋จ์๋ ์ถ๊ฐ ๊ฐ๋ฐ, ๊ต์ก ๋ฐ ์ ์์ด ํ์ํฉ๋๋ค. ์ด ๋ฐ๋ชจ์์ ๊ฐ์กฐ๋ ๊ฒฝํ์ ํ์๋ ์์
์ ๋ํ MedGemma์ ๊ธฐ๋ณธ ๊ธฐ๋ฅ์ ๋ณด์ฌ์ฃผ๋ฉฐ, ๊ฐ๋ฐ์์ ์ฌ์ฉ์๊ฐ ๊ฐ๋ฅํ ์์ฉ ํ๋ก๊ทธ๋จ์ ํ์ํ๊ณ ์ถ๊ฐ ๊ฐ๋ฐ์ ์๊ฐ์ ์ฃผ๋๋ก ๋๊ธฐ ์ํ ๊ฒ์
๋๋ค.</div>
|
| 220 |
-
<button class="info-button" id="view-demo-button">๋ฐ๋ชจ ๋ณด๊ธฐ</button>
|
| 221 |
-
</div>
|
| 222 |
-
</div>
|
| 223 |
-
</div>
|
| 224 |
-
<div class="main">
|
| 225 |
-
<div class="nav-button nav-button-back" id="back-to-info-button">
|
| 226 |
-
<div class="nav-button-inner">
|
| 227 |
-
<span class="material-symbols-outlined nav-button-icon">keyboard_arrow_left</span>
|
| 228 |
-
<span class="nav-button-text">๋ค๋ก</span>
|
| 229 |
-
</div>
|
| 230 |
-
</div>
|
| 231 |
-
<div class="case-selector-tabs-container" id="case-selector-tabs-container">
|
| 232 |
-
<div>X-๋ ์ด</div>
|
| 233 |
-
<div class="case-selector-tabs" id="case-selector-tabs">
|
| 234 |
-
{% if available_reports %}
|
| 235 |
-
{% for report in available_reports %}
|
| 236 |
-
{% if report.image_type == 'CXR' %}
|
| 237 |
-
<div class="nav-button nav-button-case" data-report-name="{{ report.name }}">
|
| 238 |
-
<div class="nav-button-inner">
|
| 239 |
-
<span class="nav-button-text">{{ report.name }}</span>
|
| 240 |
-
</div>
|
| 241 |
-
</div>
|
| 242 |
-
{% endif %}
|
| 243 |
-
{% endfor %}
|
| 244 |
-
{% else %}
|
| 245 |
-
<span class="no-cases-available">์ฌ์ฉ ๊ฐ๋ฅํ ์ผ์ด์ค๊ฐ ์์ต๋๋ค</span>
|
| 246 |
-
{% endif %}
|
| 247 |
-
</div>
|
| 248 |
-
|
| 249 |
-
<div>CT</div>
|
| 250 |
-
<div class="case-selector-tabs" id="case-selector-tabs2">
|
| 251 |
-
{% if available_reports %}
|
| 252 |
-
{% for report in available_reports %}
|
| 253 |
-
{% if report.image_type == 'CT' %}
|
| 254 |
-
<div class="nav-button nav-button-case" data-report-name="{{ report.name }}">
|
| 255 |
-
<div class="nav-button-inner">
|
| 256 |
-
<span class="nav-button-text">{{ report.name }}</span>
|
| 257 |
-
</div>
|
| 258 |
-
</div>
|
| 259 |
-
{% endif %}
|
| 260 |
-
{% endfor %}
|
| 261 |
-
{% else %}
|
| 262 |
-
<span class="no-cases-available">์ฌ์ฉ ๊ฐ๋ฅํ ์ผ์ด์ค๊ฐ ์์ต๋๋ค</span>
|
| 263 |
-
{% endif %}
|
| 264 |
-
</div>
|
| 265 |
-
|
| 266 |
-
</div>
|
| 267 |
-
<div class="nav-button nav-button-info" id="info-button">
|
| 268 |
-
<div class="nav-button-inner">
|
| 269 |
-
<span class="material-symbols-outlined nav-button-icon">code_blocks</span>
|
| 270 |
-
<span class="nav-button-text">์ด ๋ฐ๋ชจ์ ๋ํ ์์ธ ์ ๋ณด</span>
|
| 271 |
-
</div>
|
| 272 |
-
</div>
|
| 273 |
-
|
| 274 |
-
|
| 275 |
-
|
| 276 |
<div class="image-section">
|
| 277 |
<div id="image-modality-header" class="image-header">{{ image_type | default('์๋ฃ ์์', true) }}
|
| 278 |
</div> <!-- Updated: ID added, initial text changed -->
|
|
|
|
| 88 |
|
| 89 |
|
| 90 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 91 |
<div class="image-section">
|
| 92 |
<div id="image-modality-header" class="image-header">{{ image_type | default('์๋ฃ ์์', true) }}
|
| 93 |
</div> <!-- Updated: ID added, initial text changed -->
|