"use client" import { useState, useCallback } from "react" import { Button } from "@/components/ui/button" import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card" import { Progress } from "@/components/ui/progress" import { Badge } from "@/components/ui/badge" import { Database, Settings, Brain, Sparkles, ChevronRight, Play, BookOpen } from "lucide-react" import DataCollectionStep from "@/components/data-collection-step" import DataPreprocessingStep from "@/components/data-preprocessing-step" import ModelTrainingStep from "@/components/model-training-step" import ImageGenerationStep from "@/components/image-generation-step" const steps = [ { id: 1, title: "数据采集", description: "选择图像作为AI的学习材料", icon: Database, color: "bg-chart-1", details: "学习如何为AI模型收集和准备训练数据", }, { id: 2, title: "数据预处理", description: "对图像进行清洗和标准化处理", icon: Settings, color: "bg-chart-2", details: "了解数据预处理在AI训练中的重要作用", }, { id: 3, title: "模型训练", description: "模拟AI学习图像特征的过程", icon: Brain, color: "bg-chart-3", details: "观察AI如何从数据中学习和提取特征", }, { id: 4, title: "图像生成", description: "输入提示词生成新的艺术作品", icon: Sparkles, color: "bg-chart-4", details: "体验AI根据学习内容创作新图像的过程", }, ] export default function HomePage() { const [currentStep, setCurrentStep] = useState(0) const [isStarted, setIsStarted] = useState(false) const [selectedImages, setSelectedImages] = useState([]) const handleStartLearning = () => { setIsStarted(true) setCurrentStep(1) } const handleStepClick = (stepId: number) => { if (isStarted) { setCurrentStep(stepId) } } const handleImagesChange = useCallback((images: string[]) => { setSelectedImages(images) }, []) const renderStepContent = () => { switch (currentStep) { case 1: return ( setCurrentStep(2)} selectedImages={selectedImages} onImagesChange={handleImagesChange} /> ) case 2: return setCurrentStep(3)} selectedImages={selectedImages} /> case 3: return setCurrentStep(4)} /> case 4: return default: return null } } return (
{/* Header */}

AI绘画教学平台

探索人工智能绘画的奥秘

教育版
{/* Sidebar Navigation */} {/* Main Content */}
{!isStarted ? ( // Welcome Screen

欢迎来到AI绘画世界

通过这个交互式学习平台,你将深入了解AI绘画的完整流程, 从数据采集到最终的艺术创作,每一步都有详细的解释和实践操作。

{steps.map((step) => { const Icon = step.icon return (
{step.title} {step.description}

{step.details}

) })}

预计学习时间:30-45分钟

) : ( // Step Content Area
第 {currentStep} 步

{steps[currentStep - 1].title}

{steps[currentStep - 1].details}

{renderStepContent()}
)}
) }