|
1 | 1 | "use client"; |
2 | 2 |
|
3 | | -import { FileText, BookOpenText, X } from 'lucide-react'; |
4 | | -import SyntaxHighlighter from 'react-syntax-highlighter'; |
5 | | -import SyntaxHighlightedContent from './SyntaxHighlightedContent'; |
6 | | -import { a11yDark } from 'react-syntax-highlighter/dist/esm/styles/hljs'; |
7 | 3 | import { useState, useEffect } from 'react'; |
| 4 | +import { Cloudy, WandSparkles, ShieldCheck, SquarePlay, FolderGit, X, ArrowRight } from 'lucide-react'; |
8 | 5 |
|
9 | 6 | const tabImages = [ |
10 | 7 | '/acuracy.png', |
@@ -154,50 +151,75 @@ export default function Studio() { |
154 | 151 | onClick={() => setActiveTab(0)} |
155 | 152 | className={`flex items-center gap-3 rounded-[10px] bg-[var(--accent-purple)] p-4 cursor-pointer transition-opacity ${activeTab === 0 ? 'opacity-100' : 'opacity-70 hover:opacity-90'}`} |
156 | 153 | > |
157 | | - <span className="h-10 w-10 flex-shrink-0 tab-icon tab-icon-dashboard" /> |
| 154 | + <span className='tab-icon'> |
| 155 | + <Cloudy size={28} /> |
| 156 | + </span> |
158 | 157 | <div> |
159 | 158 | <p className="text-sm font-semibold">Cloud & On-Prem Infrastructure</p> |
160 | | - <p className="mt-1 text-xs">Run tasks on cloud or your on-prem GPU infrastructure</p> |
| 159 | + <p className="mt-1 text-xs">Run jobs on your preferred cloud or local GPU infrastructure</p> |
| 160 | + </div> |
| 161 | + <div className="flex justify-end flex-grow"> |
| 162 | + <ArrowRight size={20} /> |
161 | 163 | </div> |
162 | 164 | </div> |
163 | 165 | <div |
164 | 166 | onClick={() => setActiveTab(1)} |
165 | 167 | className={`flex items-center gap-3 rounded-[10px] bg-[var(--accent-purple)] p-4 cursor-pointer transition-opacity ${activeTab === 1 ? 'opacity-100' : 'opacity-70 hover:opacity-90'}`} |
166 | 168 | > |
167 | | - <span className="h-10 w-10 flex-shrink-0 tab-icon tab-icon-optimized" /> |
| 169 | + <span className='tab-icon'> |
| 170 | + <WandSparkles size={28} /> |
| 171 | + </span> |
168 | 172 | <div> |
169 | 173 | <p className="text-sm font-semibold">Training, Fine-Tuning and Alignment</p> |
170 | | - <p className="mt-1 text-xs">Train, fine-tune, and align LLMs</p> |
| 174 | + <p className="mt-1 text-xs">Train, fine-tune, and align LLMs and bare-metal speed</p> |
| 175 | + </div> |
| 176 | + <div className="flex justify-end flex-grow"> |
| 177 | + <ArrowRight size={20} /> |
171 | 178 | </div> |
172 | 179 | </div> |
173 | 180 | <div |
174 | 181 | onClick={() => setActiveTab(2)} |
175 | 182 | className={`flex items-center gap-3 rounded-[10px] bg-[var(--accent-purple)] p-4 cursor-pointer transition-opacity ${activeTab === 2 ? 'opacity-100' : 'opacity-70 hover:opacity-90'}`} |
176 | 183 | > |
177 | | - <span className="h-10 w-10 flex-shrink-0 tab-icon tab-icon-native" /> |
| 184 | + <span className='tab-icon'> |
| 185 | + <ShieldCheck size={32} /> |
| 186 | + </span> |
178 | 187 | <div> |
179 | 188 | <p className="text-sm font-semibold">Evaluation</p> |
180 | 189 | <p className="mt-1 text-xs">Run comprehensive evaluations of LLMs for performance, accuracy, security and alignment</p> |
181 | 190 | </div> |
| 191 | + <div className="flex justify-end flex-grow"> |
| 192 | + <ArrowRight size={20} /> |
| 193 | + </div> |
182 | 194 | </div> |
183 | 195 | <div |
184 | 196 | onClick={() => setActiveTab(3)} |
185 | 197 | className={`flex items-center gap-3 rounded-[10px] bg-[var(--accent-purple)] p-4 cursor-pointer transition-opacity ${activeTab === 3 ? 'opacity-100' : 'opacity-70 hover:opacity-90'}`} |
186 | 198 | > |
187 | | - <span className="h-10 w-10 flex-shrink-0 tab-icon tab-icon-experimentation" /> |
| 199 | + <span className='tab-icon'> |
| 200 | + <SquarePlay size={32} /> |
| 201 | + </span> |
188 | 202 | <div> |
189 | 203 | <p className="text-sm font-semibold">Deployment & Inference</p> |
190 | 204 | <p className="mt-1 text-xs">Deploy and run LLMs on multiple GPUs using KV-aware routing, GPU sharding, replicas, and disaggregated serving for production-grade performance</p> |
191 | 205 | </div> |
| 206 | + <div className="flex justify-end flex-grow"> |
| 207 | + <ArrowRight size={20} /> |
| 208 | + </div> |
192 | 209 | </div> |
193 | 210 | <div |
194 | 211 | onClick={() => setActiveTab(4)} |
195 | 212 | className={`flex items-center gap-3 rounded-[10px] bg-[var(--accent-purple)] p-4 cursor-pointer transition-opacity ${activeTab === 4 ? 'opacity-100' : 'opacity-70 hover:opacity-90'}`} |
196 | 213 | > |
197 | | - <span className="h-10 w-10 flex-shrink-0 tab-icon tab-icon-recipes-3" /> |
| 214 | + <span className='tab-icon'> |
| 215 | + <FolderGit size={32} /> |
| 216 | + </span> |
198 | 217 | <div> |
199 | 218 | <p className="text-sm font-semibold">Data Hub</p> |
200 | | - <p className="mt-1 text-xs">Your own, personal HuggingFace Hub for managing and sharing datasets and models</p> |
| 219 | + <p className="mt-1 text-xs">Your own, personal, private HuggingFace Hub for managing and sharing datasets and models</p> |
| 220 | + </div> |
| 221 | + <div className="flex justify-end flex-grow"> |
| 222 | + <ArrowRight size={20} /> |
201 | 223 | </div> |
202 | 224 | </div> |
203 | 225 | </div> |
|
0 commit comments