Spaces:
Running
Running
Update index.html
Browse files- index.html +128 -121
index.html
CHANGED
@@ -3,29 +3,26 @@
|
|
3 |
<head>
|
4 |
<meta charset="UTF-8" />
|
5 |
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
6 |
-
<title>XTTVS-MED |
|
7 |
|
8 |
<!-- Bootstrap -->
|
9 |
-
<link
|
10 |
-
href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css"
|
11 |
-
rel="stylesheet"
|
12 |
-
/>
|
13 |
|
14 |
<!-- Mermaid -->
|
15 |
<script src="https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.min.js"></script>
|
16 |
<script>
|
17 |
mermaid.initialize({
|
18 |
-
startOnLoad:
|
19 |
-
theme:
|
20 |
-
flowchart:
|
21 |
-
sequence:
|
22 |
});
|
23 |
</script>
|
24 |
|
25 |
<style>
|
26 |
:root{
|
27 |
-
--bg:#070707;
|
28 |
-
--txt:#e5e5e5;
|
29 |
}
|
30 |
*{box-sizing:border-box}
|
31 |
body{margin:0;background:var(--bg);color:var(--txt);font-family:'Fira Code',monospace}
|
@@ -34,11 +31,10 @@
|
|
34 |
.container-lg{max-width:1160px;padding:2rem 1rem}
|
35 |
.section{margin-bottom:3.2rem}
|
36 |
.panel{background:var(--panel);padding:1.3rem;border-radius:.65rem}
|
37 |
-
/* 100 % width, generous padding, horizontal scroll */
|
38 |
pre{
|
39 |
background:var(--card);
|
40 |
color:#c0f6ff;
|
41 |
-
padding:1.
|
42 |
border-radius:.55rem;
|
43 |
font-size:.9rem;
|
44 |
overflow-x:auto;
|
@@ -57,117 +53,128 @@
|
|
57 |
|
58 |
<div class="container-lg">
|
59 |
|
60 |
-
<!-- Header -->
|
61 |
-
<header class="text-center section">
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
<
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
79 |
</ul>
|
80 |
-
</
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
<h2>2. π¬ Live Demo Videos</h2>
|
86 |
-
|
87 |
-
<h3 class="mt-4">2.1 β’ Front-End Walk-Through (4 Languages)</h3>
|
88 |
-
<div class="ratio ratio-16x9 mb-3"><iframe src="https://streamable.com/e/bh1eff" allowfullscreen></iframe></div>
|
89 |
-
<p class="small text-center">Link β <a href="https://streamable.com/bh1eff" target="_blank">streamable.com/bh1eff</a></p>
|
90 |
-
|
91 |
-
<h3 class="mt-5">2.2 β’ Back-End Hardware / Latency</h3>
|
92 |
-
<div class="ratio ratio-16x9 mb-3"><iframe src="https://streamable.com/e/ryo2fv" allowfullscreen></iframe></div>
|
93 |
-
<p class="small text-center">Link β <a href="https://streamable.com/ryo2fv" target="_blank">streamable.com/ryo2fv</a></p>
|
94 |
-
</section>
|
95 |
-
|
96 |
-
<!-- 3 Β· Architecture (with time-over-wavelength) -->
|
97 |
-
<section class="section">
|
98 |
-
<h2>3. Time-over-Wavelength Voice-Cloning Pipeline</h2>
|
99 |
-
<div class="mermaid">
|
100 |
-
graph TD
|
101 |
-
A["Input<br>Waveform"] --> B["Time-Wavelength<br>Decomposition"] --> C["Semantic Vectors"] --> D["FloatBin Tree<br>Scheduler"] --> E["XTTSv2 (INT4)"] --> F["Cloned<br>Output"]
|
102 |
-
</div>
|
103 |
-
<p class="small">Pipeline summarised from Fig. 1 in the white paper :contentReference[oaicite:1]{index=1}.</p>
|
104 |
-
</section>
|
105 |
-
|
106 |
-
<!-- 4 Β· Quantization Equation -->
|
107 |
-
<section class="section">
|
108 |
-
<h2>4. 4-Bit FloatBin Quantization<br><span class="fs-6 text-muted">(reduces VRAM β₯ 5Γ)</span></h2>
|
109 |
-
<pre><code>x<sub>quant</sub> = round( (x β x<sub>min</sub>) / (x<sub>max</sub> β x<sub>min</sub>) Β· (2<sup>4</sup>β1) )
|
110 |
-
Β· (x<sub>max</sub> β x<sub>min</sub>) / (2<sup>4</sup>β1) + x<sub>min</sub></code></pre>
|
111 |
-
<p class="small mb-0">Enables deployment on 6 GB consumer GPUs while sustaining < 0.8 s latency :contentReference[oaicite:2]{index=2}.</p>
|
112 |
-
</section>
|
113 |
-
|
114 |
-
<!-- 5 Β· Hardware scalability -->
|
115 |
-
<section class="section">
|
116 |
-
<h2>5. Hardware Benchmarks</h2>
|
117 |
-
<table>
|
118 |
-
<tr><th>System</th><th>Compute</th><th>VRAM</th><th>Latency (250 chars)</th><th>Concurrent Streams</th></tr>
|
119 |
-
<tr><td>Pi 5 + Edge TPU</td><td>26 TFLOPS (INT8)</td><td>β</td><td>3.2 s</td><td>1β2</td></tr>
|
120 |
-
<tr><td>RTX 2080</td><td>13.4 TFLOPS (FP16)</td><td>8 GB</td><td>1.2 s</td><td>3β4</td></tr>
|
121 |
-
<tr><td>DGX A100</td><td>1 000 TFLOPS (FP16)</td><td>128 GB</td><td>0.4 s</td><td>20β30</td></tr>
|
122 |
-
<tr><td>HF200 Hospital Cluster</td><td>2 000 TFLOPS</td><td>256 GB</td><td>0.2 s</td><td>40οΏ½οΏ½οΏ½50 +</td></tr>
|
123 |
-
</table>
|
124 |
-
<p class="small">Table adapted from white-paper benchmarks :contentReference[oaicite:3]{index=3}.</p>
|
125 |
-
</section>
|
126 |
-
|
127 |
-
<!-- 6 Β· Clinical validation -->
|
128 |
-
<section class="section">
|
129 |
-
<h2>6. Clinical Validation & Stats</h2>
|
130 |
-
<div class="panel">
|
131 |
-
<ul class="mb-0">
|
132 |
-
<li>600 h labeled clinical audio; MOS β₯ 4.5 for intelligibility :contentReference[oaicite:4]{index=4}.</li>
|
133 |
-
<li>ANOVA on response-latency (p < 0.01).</li>
|
134 |
-
<li>Every 1 s saved in ER comms β ~7 % mortality reduction.</li>
|
135 |
-
<li>XTTVS-MED sub-second pipeline β 10β15 % survival uplift.</li>
|
136 |
-
</ul>
|
137 |
-
</div>
|
138 |
-
</section>
|
139 |
-
|
140 |
-
<!-- 7 Β· Expanded use-case table -->
|
141 |
-
<section class="section">
|
142 |
-
<h2>7. Expanded Use-Case Matrix</h2>
|
143 |
-
<table>
|
144 |
-
<tr><th>Sector</th><th>Example Workflow</th><th>Value Add</th></tr>
|
145 |
-
<tr><td>Emergency Care</td><td>Trauma bay commands auto-voiced in patientβs language</td><td>Reduce critical-path delay</td></tr>
|
146 |
-
<tr><td>Tele-ICU</td><td>Cross-border staff get real-time captions + cloned voice</td><td>Lower staff ratio, fewer errors</td></tr>
|
147 |
-
<tr><td>Post-Op Care</td><td>Personalised discharge instructions via bedside tablet</td><td>β compliance, β readmissions</td></tr>
|
148 |
-
<tr><td>Pharmacy</td><td>Kiosk prints label + speaks dosage directions</td><td>Better adherence for low-literacy patients</td></tr>
|
149 |
-
<tr><td>Mental-Health</td><td>Crisis hotline auto-interprets & mirrors counsellor tone</td><td>Instant rapport across languages</td></tr>
|
150 |
-
<tr><td>Clinical Training</td><td>Procedures auto-narrated in traineeβs language</td><td>Scalable global curriculum</td></tr>
|
151 |
-
<tr><td>Legal Consent</td><td>Forms read aloud, signed digitally</td><td>Stronger informed-consent audit trail</td></tr>
|
152 |
-
</table>
|
153 |
-
</section>
|
154 |
-
|
155 |
-
<!-- 8 Β· Resources -->
|
156 |
-
<section class="section">
|
157 |
-
<h2>8. Resources</h2>
|
158 |
-
<ul>
|
159 |
-
<li>π Live Space β <a href="https://huggingface.co/spaces/ghostai1/GHOSTVOICECBR" target="_blank">huggingface.co/spaces/ghostai1/GHOSTVOICECBR</a></li>
|
160 |
-
<li>π White Paper β ghostcbrwpaper2025.pdf</li>
|
161 |
-
<li>π Market Brief β marketAImed.pdf</li>
|
162 |
-
</ul>
|
163 |
-
</section>
|
164 |
-
|
165 |
-
<footer>
|
166 |
-
© 2025 GhostAI Labs Β·
|
167 |
-
<a href="https://huggingface.co/spaces/ghostai1/GHOSTVOICECBR" target="_blank">Try the live app</a>
|
168 |
-
</footer>
|
169 |
|
170 |
</div>
|
|
|
171 |
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
|
172 |
</body>
|
173 |
</html>
|
|
|
3 |
<head>
|
4 |
<meta charset="UTF-8" />
|
5 |
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
6 |
+
<title>XTTVS-MED | Multilingual Voice-to-Voice Demo Suite</title>
|
7 |
|
8 |
<!-- Bootstrap -->
|
9 |
+
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet"/>
|
|
|
|
|
|
|
10 |
|
11 |
<!-- Mermaid -->
|
12 |
<script src="https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.min.js"></script>
|
13 |
<script>
|
14 |
mermaid.initialize({
|
15 |
+
startOnLoad:true,
|
16 |
+
theme:'dark',
|
17 |
+
flowchart:{fontSize:'16px'},
|
18 |
+
sequence:{actorFontSize:'14px'}
|
19 |
});
|
20 |
</script>
|
21 |
|
22 |
<style>
|
23 |
:root{
|
24 |
+
--bg:#070707; --panel:#111; --card:#181818;
|
25 |
+
--txt:#e5e5e5; --accent:#00e5ff; --sub:#88f0ff;
|
26 |
}
|
27 |
*{box-sizing:border-box}
|
28 |
body{margin:0;background:var(--bg);color:var(--txt);font-family:'Fira Code',monospace}
|
|
|
31 |
.container-lg{max-width:1160px;padding:2rem 1rem}
|
32 |
.section{margin-bottom:3.2rem}
|
33 |
.panel{background:var(--panel);padding:1.3rem;border-radius:.65rem}
|
|
|
34 |
pre{
|
35 |
background:var(--card);
|
36 |
color:#c0f6ff;
|
37 |
+
padding:1.2rem 1.7rem;
|
38 |
border-radius:.55rem;
|
39 |
font-size:.9rem;
|
40 |
overflow-x:auto;
|
|
|
53 |
|
54 |
<div class="container-lg">
|
55 |
|
56 |
+
<!-- Header -->
|
57 |
+
<header class="text-center section">
|
58 |
+
<h1>XTTVS-MED Demo Suite</h1>
|
59 |
+
<p class="lead fw-semibold">
|
60 |
+
Whisper β Auto-Translate β 4-bit XTTSv2 cloning Β· Sub-second across EN-AR-ES-FR
|
61 |
+
</p>
|
62 |
+
<p><strong>Chris Coleman</strong> β CEO / CTO Β· GhostAI Labs<br>
|
63 |
+
<strong>Dr. Anthony Becker MD</strong> β Medical Advisor</p>
|
64 |
+
</header>
|
65 |
+
|
66 |
+
<!-- 1 -->
|
67 |
+
<section class="section">
|
68 |
+
<h2>1. Key Points</h2>
|
69 |
+
<div class="panel">
|
70 |
+
<ul class="mb-0">
|
71 |
+
<li>β‘ End-to-end pipeline < 1 s on a 6 GB gaming GPU.</li>
|
72 |
+
<li>π£οΈ Same speaker timbre across four languages via LoRA adapters.</li>
|
73 |
+
<li>π 4-bit FloatBin quantization drops VRAM by 5-6Γ.</li>
|
74 |
+
<li>π₯ Reduces critical ER communication delay by β 10-15 % survival uplift.</li>
|
75 |
+
</ul>
|
76 |
+
</div>
|
77 |
+
</section>
|
78 |
+
|
79 |
+
<!-- 2 Videos -->
|
80 |
+
<section class="section">
|
81 |
+
<h2>2. π¬ Demo Videos</h2>
|
82 |
+
|
83 |
+
<h3 class="mt-4">2.1 β’ Front-End Walk-Through (4 Languages)</h3>
|
84 |
+
<div class="ratio ratio-16x9 mb-3">
|
85 |
+
<iframe src="https://streamable.com/e/bh1eff" allowfullscreen></iframe>
|
86 |
+
</div>
|
87 |
+
|
88 |
+
<h3 class="mt-5">2.2 β’ Back-End Latency & Hardware</h3>
|
89 |
+
<div class="ratio ratio-16x9 mb-3">
|
90 |
+
<iframe src="https://streamable.com/e/ryo2fv" allowfullscreen></iframe>
|
91 |
+
</div>
|
92 |
+
</section>
|
93 |
+
|
94 |
+
<!-- 3 Architecture -->
|
95 |
+
<section class="section">
|
96 |
+
<h2>3. Pipeline (Time-over-Wavelength)</h2>
|
97 |
+
<div class="mermaid">
|
98 |
+
graph TD
|
99 |
+
A["Input Audio"] --> B["Time-Wavelength<br>Decomposition"]
|
100 |
+
B --> C["Semantic Vectors"]
|
101 |
+
C --> D["FloatBin<br>Scheduler"]
|
102 |
+
D --> E["XTTSv2<br>(INT4)"]
|
103 |
+
E --> F["Cloned Output"]
|
104 |
+
</div>
|
105 |
+
</section>
|
106 |
+
|
107 |
+
<!-- 4 Quant equation -->
|
108 |
+
<section class="section">
|
109 |
+
<h2>4. 4-Bit FloatBin Quantization</h2>
|
110 |
+
<pre>x<sub>q</sub> = round( (x β x<sub>min</sub>) / (x<sub>max</sub> β x<sub>min</sub>) Β· 15 )
|
111 |
+
Β· (x<sub>max</sub> β x<sub>min</sub>) / 15 + x<sub>min</sub></pre>
|
112 |
+
<p class="small mb-0">Allows full model on GTX 2060 6 GB while keeping quality β₯ 4.4 MOS.</p>
|
113 |
+
</section>
|
114 |
+
|
115 |
+
<!-- 5 Hardware -->
|
116 |
+
<section class="section">
|
117 |
+
<h2>5. Latency vs. Hardware</h2>
|
118 |
+
<table>
|
119 |
+
<tr><th>System</th><th>Compute</th><th>VRAM</th><th>Latency 250 chars</th><th>Streams</th></tr>
|
120 |
+
<tr><td>Pi 5 + TPU</td><td>26 TFLOPS INT8</td><td>β</td><td>3.2 s</td><td>1-2</td></tr>
|
121 |
+
<tr><td>RTX 2080</td><td>13 TFLOPS FP16</td><td>8 GB</td><td>1.2 s</td><td>3-4</td></tr>
|
122 |
+
<tr><td>DGX A100</td><td>1 PFLOP</td><td>128 GB</td><td>0.4 s</td><td>20-30</td></tr>
|
123 |
+
<tr><td>HF200 Cluster</td><td>2 PFLOPS</td><td>256 GB</td><td>0.2 s</td><td>40-50+</td></tr>
|
124 |
+
</table>
|
125 |
+
</section>
|
126 |
+
|
127 |
+
<!-- 6 Use-case matrix -->
|
128 |
+
<section class="section">
|
129 |
+
<h2>6. Expanded Use-Case Matrix</h2>
|
130 |
+
<table>
|
131 |
+
<tr><th>Sector</th><th>Workflow</th><th>Impact</th></tr>
|
132 |
+
<tr><td>ER Triage</td><td>Auto-voice vital alerts</td><td>> 10 % faster interventions</td></tr>
|
133 |
+
<tr><td>Tele-ICU</td><td>Live captions + cloned voice</td><td>Lower staffing ratio</td></tr>
|
134 |
+
<tr><td>Post-Op</td><td>Discharge voice reminders</td><td>β readmissions</td></tr>
|
135 |
+
<tr><td>Pharmacy</td><td>Label read-outs</td><td>β adherence</td></tr>
|
136 |
+
<tr><td>Mental-Health</td><td>Real-time interpreter</td><td>24/7 multilingual hotline</td></tr>
|
137 |
+
<tr><td>Training</td><td>Procedures auto-narrated</td><td>Scalable global education</td></tr>
|
138 |
+
<tr><td>Legal Consent</td><td>Forms voiced + display</td><td>Stronger audit trail</td></tr>
|
139 |
+
</table>
|
140 |
+
</section>
|
141 |
+
|
142 |
+
<!-- 7 Fetch helper -->
|
143 |
+
<section class="section">
|
144 |
+
<h2>7. 10-Line Fetch Helper</h2>
|
145 |
+
<pre>
|
146 |
+
// autoTranslateSpeak("I need pain medication.", "Spanish")
|
147 |
+
async function autoTranslateSpeak(text, target){
|
148 |
+
const {translated_text} = await fetch('/translate',{
|
149 |
+
method:'POST',headers:{'Content-Type':'application/json'},
|
150 |
+
body:JSON.stringify({text,source_language:'English',target_language:target})
|
151 |
+
}).then(r=>r.json());
|
152 |
+
|
153 |
+
const mp3 = await fetch('/voice',{
|
154 |
+
method:'POST',headers:{'Content-Type':'application/json'},
|
155 |
+
body:JSON.stringify({text:translated_text,speaker:'Emmas',speed:1.0,language:target})
|
156 |
+
}).then(r=>r.blob());
|
157 |
+
|
158 |
+
new Audio(URL.createObjectURL(mp3)).play();
|
159 |
+
}
|
160 |
+
</pre>
|
161 |
+
</section>
|
162 |
+
|
163 |
+
<!-- 8 Links -->
|
164 |
+
<section class="section">
|
165 |
+
<h2>8. Links</h2>
|
166 |
+
<ul>
|
167 |
+
<li>π Live Space β <a href="https://huggingface.co/spaces/ghostai1/GHOSTVOICECBR" target="_blank">ghostvoicecbr on HF Spaces</a></li>
|
168 |
+
<li>π Market brief β <a href="https://huggingface.co/spaces/ghostai1/GHOSTVOICECBR/blob/main/marketAImed.pdf" target="_blank">AImed market-fit</a></li>
|
169 |
</ul>
|
170 |
+
</section>
|
171 |
+
|
172 |
+
<footer>
|
173 |
+
© 2025 GhostAI Labs Β· <a href="https://huggingface.co/spaces/ghostai1/GHOSTVOICECBR" target="_blank">Try the live app</a>
|
174 |
+
</footer>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
175 |
|
176 |
</div>
|
177 |
+
|
178 |
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
|
179 |
</body>
|
180 |
</html>
|