diff --git a/app/components/DarkModeToggle.tsx b/app/components/DarkModeToggle.tsx new file mode 100644 index 0000000..19c6c96 --- /dev/null +++ b/app/components/DarkModeToggle.tsx @@ -0,0 +1,55 @@ +"use client"; +import { useEffect, useState } from "react"; + +export default function DarkModeToggle() { + const [isDark, setIsDark] = useState(false); + + // On mount, check localStorage or system preference + useEffect(() => { + const saved = localStorage.getItem("theme"); + if ( + saved === "dark" || + (!saved && window.matchMedia("(prefers-color-scheme: dark)").matches) + ) { + setIsDark(true); + document.documentElement.classList.add("dark"); + } else { + setIsDark(false); + document.documentElement.classList.remove("dark"); + } + }, []); + + // Toggle handler + const toggle = () => { + const next = !isDark; + setIsDark(next); + if (next) { + document.documentElement.classList.add("dark"); + localStorage.setItem("theme", "dark"); + } else { + document.documentElement.classList.remove("dark"); + localStorage.setItem("theme", "light"); + } + }; + + return ( + + ); +} diff --git a/public/images/word/word-img-01.png b/app/docs/ai/llm-basics/pytorch/index.assets/word-img-01.png similarity index 100% rename from public/images/word/word-img-01.png rename to app/docs/ai/llm-basics/pytorch/index.assets/word-img-01.png diff --git a/public/images/word/word-img-02.png b/app/docs/ai/llm-basics/pytorch/index.assets/word-img-02.png similarity index 100% rename from public/images/word/word-img-02.png rename to app/docs/ai/llm-basics/pytorch/index.assets/word-img-02.png diff --git a/app/docs/ai/llm-basics/pytorch/index.mdx b/app/docs/ai/llm-basics/pytorch/index.mdx index 1fe4210..68eac06 100644 --- a/app/docs/ai/llm-basics/pytorch/index.mdx +++ b/app/docs/ai/llm-basics/pytorch/index.mdx @@ -35,8 +35,8 @@ PyTorch是现代深度学习最重要的框架之一,特别在研究和大模 ## 核心概念 - **张量 (Tensor)**:PyTorch 的核心数据结构,支持 GPU 加速的多维数组 -  -  +  +  - **自动梯度 (Autograd)**:动态计算图与自动微分系统 - **神经网络模块 (nn.Module)**:模块化构建神经网络 - **训练循环**:优化器、损失函数、学习率调度等 diff --git a/app/layout.tsx b/app/layout.tsx index f0323f3..8abacb2 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -4,6 +4,8 @@ import { RootProvider } from "fumadocs-ui/provider"; import Script from "next/script"; import "./globals.css"; +import DarkModeToggle from "@/app/components/DarkModeToggle"; + const geistSans = localFont({ src: "./fonts/GeistVF.woff", variable: "--font-geist-sans", @@ -30,6 +32,7 @@ export default function RootLayout({
+