1<!DOCTYPE html><html lang="zh-CN" data-theme="light"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"><title>TianxingleoçBlog</title><meta name="author" content="Tianxingleo"><meta name="copyright" content="Tianxingleo"><meta name="format-detection" content="telephone=no"><meta name="theme-color" content="#f7f9fe"><meta name="mobile-web-app-capable" content="yes"><meta name="apple-touch-fullscreen" content="yes"><meta name="apple-mobile-web-app-title" content="TianxingleoçBlog"><meta name="application-name" content="TianxingleoçBlog"><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="#f7f9fe"><meta property="og:type" content="website"><meta property="og:title" content="TianxingleoçBlog"><meta property="og:url" content="https://tianxingleo.top/index.html"><meta property="og:site_name" content="TianxingleoçBlog"><meta property="og:description"><meta property="og:locale" content="zh-CN"><meta property="og:image" content="https://github.com/tianxingleo.png"><meta property="article:author" content="Tianxingleo"><meta property="article:tag"><meta name="twitter:card" content="summary"><meta name="twitter:image" content="https://github.com/tianxingleo.png"><meta name="description"><link rel="shortcut icon" href="/favicon.ico"><link rel="canonical" href="https://tianxingleo.top/"><link rel="preconnect" href="//cdn.cbd.int"/><link rel="preconnect" href="//www.google-analytics.com" crossorigin=""/><link rel="preconnect" href="//hm.baidu.com"/><link rel="preconnect" href="//busuanzi.ibruce.info"/><meta name="google-site-verification" content="xxx"/><meta name="baidu-site-verification" content="code-xxx"/><meta name="msvalidate.01" content="xxx"/><link rel="stylesheet" href="/css/index.css"><link rel="stylesheet" href="https://cdn.cbd.int/[email protected]/dist/snackbar.min.css" media="print" onload="this.media='all'"><link rel="stylesheet" href="https://cdn.cbd.int/@fancyapps/[email protected]/dist/fancybox/fancybox.css" media="print" onload="this.media='all'">
1<script async="async" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-1224030144383381" crossorigin="anonymous"></script>
1<script>var _hmt = _hmt || []; 2(function() { 3 var hm = document.createElement("script"); 4 hm.src = "https://hm.baidu.com/hm.js?2abdc2befae45d70b9fd72c864f6fac0"; 5 var s = document.getElementsByTagName("script")[0]; 6 s.parentNode.insertBefore(hm, s); 7})(); 8</script>
vendor: 71 bytes, line 8
8<script async="async" src="https://www.googletagmanager.com/gtag/js?id=
8G-NVDE0BFR5M
vendor: 11 bytes, line 8
8"></script>
8<script>
vendor: 127 bytes, lines 8-11
8window.dataLayer = window.dataLayer || []; 9function gtag(){dataLayer.push(arguments);} 10gtag('js', new Date()); 11gtag('config', '
11G-NVDE0BFR5M
vendor: 4 bytes, line 11
11');
12</script>
12<script>const GLOBAL_CONFIG = { 13 linkPageTop: undefined, 14 peoplecanvas: undefined, 15 postHeadAiDescription: {"enable":true,"gptName":"AnZhiYu","mode":"tianli","switchBtn":false,"btnLink":"https://afdian.net/item/886a79d4db6711eda42a52540025c377","randomNum":3,"basicWordCount":1000,"key":"S-IQC7J39MX5C7PRZM","Referer":"https://xx.xx/"}, 16 diytitle: {"enable":true,"leaveTitle":"w(ï¾Ðï¾)w ä¸è¦èµ°ï¼åççåï¼","backTitle":"âª(^â^*)欢è¿è¥æ¥ï¼"}, 17 LA51: undefined, 18 greetingBox: undefined, 19 twikooEnvId: '', 20 commentBarrageConfig:undefined, 21 music_page_default: "nav_music", 22 root: '/', 23 preloader: {"source":3}, 24 friends_vue_info: undefined, 25 navMusic: false, 26 mainTone: undefined, 27 authorStatus: undefined, 28 algolia: {"appId":"66YB7CN8AP","apiKey":"61956196bfa43507ef197aade2f06e78","indexName":"my-hexo-blog","hits":{"per_page":6},"languages":{"input_placeholder":"è¾å ¥å ³é®è¯åæä¸åè½¦æ¥æ¾","hits_empty":"æ¾ä¸å°æ¨æ¥è¯¢çå 容ï¼${query}","hits_stats":"æ¾å° ${hits} æ¡ç»æï¼ç¨æ¶ ${time} 毫ç§"}}, 29 localSearch: undefined, 30 translate: {"defaultEncoding":2,"translateDelay":0,"msgToTraditionalChinese":"ç¹","msgToSimplifiedChinese":"ç®","rightMenuMsgToTraditionalChinese":"转为ç¹ä½","rightMenuMsgToSimplifiedChinese":"转为ç®ä½"}, 31 noticeOutdate: undefined, 32 highlight: {"plugin":"highlight.js","highlightCopy":true,"highlightLang":true,"highlightHeightLimit":330}, 33 copy: { 34 success: 'å¤å¶æå', 35 error: 'å¤å¶é误', 36 noSupport: 'æµè§å¨ä¸æ¯æ' 37 }, 38 relativeDate: { 39 homepage: false, 40 simplehomepage: true, 41 post: false 42 }, 43 runtime: '天', 44 date_suffix: { 45 just: 'åå', 46 min: 'åéå', 47 hour: 'å°æ¶å', 48 day: '天å', 49 month: '个æå' 50 }, 51 copyright: {"copy":true,"copyrightEbable":false,"limitCount":50,"languages":{"author":"ä½è : Tianxingleo","link":"龿¥: ","source":"æ¥æº: TianxingleoçBlog","info":"è使å½ä½è ææãåä¸è½¬è½½è¯·èç³»ä½è è·å¾ææï¼éåä¸è½¬è½½è¯·æ³¨æåºå¤ã","copySuccess":"å¤å¶æåï¼å¤å¶åè½¬è½½è¯·æ æ³¨æ¬æå°å"}}, 52 lightbox: 'fancybox', 53 Snackbar: {"chs_to_cht":"ä½ å·²åæ¢ä¸ºç¹ä½","cht_to_chs":"ä½ å·²åæ¢ä¸ºç®ä½","day_to_night":"ä½ å·²åæ¢ä¸ºæ·±è²æ¨¡å¼","night_to_day":"ä½ å·²åæ¢ä¸ºæµ è²æ¨¡å¼","bgLight":"#425AEF","bgDark":"#1f1f1f","position":"top-center"}, 54 source: { 55 justifiedGallery: { 56 js: 'https://cdn.cbd.int/[email protected]/dist/fjGallery.min.js', 57 css: 'https://cdn.cbd.int/[email protected]/dist/fjGallery.css' 58 } 59 }, 60 isPhotoFigcaption: false, 61 islazyload: true, 62 isAnchor: false, 63 shortcutKey: undefined, 64 autoDarkmode: true 65}</script>
65<script id="config-diff">var GLOBAL_CONFIG_SITE = { 66 configTitle: 'TianxingleoçBlog', 67 title: 'TianxingleoçBlog', 68 postAI: '', 69 pageFillDescription: '', 70 isPost: false, 71 isHome: true, 72 isHighlightShrink: false, 73 isToc: false, 74 postUpdate: '2026-05-02 12:10:59', 75 postMainColor: '', 76}</script>
76<noscript><style type="text/css"> 77 #nav { 78 opacity: 1 79 } 80 .justified-gallery img { 81 opacity: 1 82 } 83 84 #recent-posts time, 85 #post-meta time { 86 display: inline !important 87 } 88</style></noscript>
88<script>(win=>{ 89 win.saveToLocal = { 90 set: (key, value, ttl) => { 91 if (ttl === 0) return 92 const now = Date.now() 93 const expiry = now + ttl * 86400000 94 const item = { 95 value, 96 expiry 97 } 98 localStorage.setItem(key, JSON.stringify(item)) 99 }, 100 101 get: key => { 102 const itemStr = localStorage.getItem(key) 103 104 if (!itemStr) { 105 return undefined 106 } 107 const item = JSON.parse(itemStr) 108 const now = Date.now() 109 110 if (now > item.expiry) { 111 localStorage.removeItem(key) 112 return undefined 113 } 114 return item.value 115 } 116 } 117 118 win.getScript = (url, attr = {}) => new Promise((resolve, reject) => { 119 const script = document.createElement('script') 120 script.src = url 121 script.async = true 122 script.onerror = reject 123 script.onload = script.onreadystatechange = function() { 124 const loadState = this.readyState 125 if (loadState && loadState !== 'loaded' && loadState !== 'complete') return 126 script.onload = script.onreadystatechange = null 127 resolve() 128 } 129 130 Object.keys(attr).forEach(key => { 131 script.setAttribute(key, attr[key]) 132 }) 133 134 document.head.appendChild(script) 135 }) 136 137 win.getCSS = (url, id = false) => new Promise((resolve, reject) => { 138 const link = document.createElement('link') 139 link.rel = 'stylesheet' 140 link.href = url 141 if (id) link.id = id 142 link.onerror = reject 143 link.onload = link.onreadystatechange = function() { 144 const loadState = this.readyState 145 if (loadState && loadState !== 'loaded' && loadState !== 'complete') return 146 link.onload = link.onreadystatechange = null 147 resolve() 148 } 149 document.head.appendChild(link) 150 }) 151 152 win.activateDarkMode = () => { 153 document.documentElement.setAttribute('data-theme', 'dark') 154 if (document.querySelector('meta[name="theme-color"]') !== null) { 155 document.querySelector('meta[name="theme-color"]').setAttribute('content', '#18171d') 156 } 157 } 158 win.activateLightMode = () => { 159 document.documentElement.setAttribute('data-theme', 'light') 160 if (document.querySelector('meta[name="theme-color"]') !== null) { 161 document.querySelector('meta[name="theme-color"]').setAttribute('content', '#f7f9fe') 162 } 163 } 164 const t = saveToLocal.get('theme') 165 166 const isDarkMode = window.matchMedia('(prefers-color-scheme: dark)').matches 167 const isLightMode = window.matchMedia('(prefers-color-scheme: light)').matches 168 const isNotSpecified = window.matchMedia('(prefers-color-scheme: no-preference)').matches 169 const hasNoSupport = !isDarkMode && !isLightMode && !isNotSpecified 170 171 if (t === undefined) { 172 if (isLightMode) activateLightMode() 173 else if (isDarkMode) activateDarkMode() 174 else if (isNotSpecified || hasNoSupport) { 175 const now = new Date() 176 const hour = now.getHours() 177 const isNight = hour <= 6 || hour >= 18 178 isNight ? activateDarkMode() : activateLightMode() 179 } 180 window.matchMedia('(prefers-color-scheme: dark)').addListener(e => { 181 if (saveToLocal.get('theme') === undefined) { 182 e.matches ? activateDarkMode() : activateLightMode() 183 } 184 }) 185 } else if (t === 'light') activateLightMode() 186 else activateDarkMode() 187 188 const asideStatus = saveToLocal.get('aside-status') 189 if (asideStatus !== undefined) { 190 if (asideStatus === 'hide') { 191 document.documentElement.classList.add('hide-aside') 192 } else { 193 document.documentElement.classList.remove('hide-aside') 194 } 195 } 196 197 const detectApple = () => { 198 if(/iPad|iPhone|iPod|Macintosh/.test(navigator.userAgent)){ 199 document.documentElement.classList.add('apple') 200 } 201 } 202 detectApple() 203 })(window)</script>
203<!-- hexo injector head_end start --><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.9/katex.min.css" integrity="sha512-fHwaWebuwA7NSF5Qg/af4UeDx9XqUpYpOGgubo3yWu+b2IQR4UeQwbb42Ti7gVAjNtVoI/I9TEoYeu9omwcC6g==" crossorigin="anonymous" referrerpolicy="no-referrer" /><!-- hexo injector head_end end --><meta name="generator" content="Hexo 8.1.1"><link rel="alternate" href="/atom.xml" title="TianxingleoçBlog" type="application/atom+xml"> 204</head><body data-type="anzhiyu"><div id="web_bg"></div><div id="an_music_bg"></div><div id="loading-box" onclick="document.getElementById("loading-box").classList.add("loaded")"><div class="loading-bg"><img class="loading-img nolazyload" alt="å 载头å" src="https://avatars.githubusercontent.com/u/237200863?v=4"/><div class="loading-image-dot"></div></div></div>
204<script>const preloader = { 205 endLoading: () => { 206 document.getElementById('loading-box').classList.add("loaded"); 207 }, 208 initLoading: () => { 209 document.getElementById('loading-box').classList.remove("loaded") 210 } 211} 212window.addEventListener('load',()=> { preloader.endLoading() }) 213setTimeout(function(){preloader.endLoading();},10000) 214 215if (false) { 216 document.addEventListener('pjax:send', () => { preloader.initLoading() }) 217 document.addEventListener('pjax:complete', () => { preloader.endLoading() }) 218}</script>
218<link rel="stylesheet" href="https://cdn.cbd.int/[email protected]/progress_bar/progress_bar.css"/>
218<script async="async" src="https://cdn.cbd.int/[email protected]/pace.min.js" data-pace-options="{ "restartOnRequestAfter":false,"eventLag":false}"></script>
218<div class="page" id="body-wrap"><header class="full_page" id="page-header" style="background: url(https://pub-f8d3afa0c3274f1e943ee2f8c45dff96.r2.dev/64761443_p01.webp) top / cover no-repeat"><nav id="nav"><div id="nav-group"><span id="blog_name"><div class="back-home-button"><i class="anzhiyufont anzhiyu-icon-grip-vertical"></i><div class="back-menu-list-groups"><div class="back-menu-list-group"><div class="back-menu-list-title">ç½é¡µ</div><div class="back-menu-list"><a class="back-menu-item" target="_blank" rel="noopener" href="https://tianxingleo.github.io" title="å客"><img class="back-menu-item-icon" src="https://avatars.githubusercontent.com/u/237200863?v=4" alt="å客"/><span class="back-menu-item-text">å客</span></a></div></div><div class="back-menu-list-group"><div class="back-menu-list-title">项ç®</div><div class="back-menu-list"><a class="back-menu-item" target="_blank" rel="noopener" href="https://acgti.tianxingleo.top" title="ACGTI"><img class="back-menu-item-icon" src="https://acgti.tianxingleo.top/favicon.svg" alt="ACGTI"/><span class="back-menu-item-text">ACGTI</span></a><a class="back-menu-item" target="_blank" rel="noopener" href="https://github.com/tianxingleo" title="Github"><img class="back-menu-item-icon" src="https://github.githubassets.com/assets/GitHub-Mark-ea2971cee799.png" alt="Github"/><span class="back-menu-item-text">Github</span></a></div></div></div></div><a id="site-name" href="/" accesskey="h"><div class="title">TianxingleoçBlog</div><i class="anzhiyufont anzhiyu-icon-house-chimney"></i></a></span><div class="mask-name-container"><div id="name-container"><a id="page-name" href="javascript:anzhiyu.scrollToDest(0, 500)">TianxingleoçBlog</a></div></div><div id="menus"><div class="menus_items"><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span> é¦é¡µ</span></a><ul class="menus_item_child"><li><a class="site-page child faa-parent animated-hover" href="/"><i class="anzhiyufont anzhiyu-icon-home faa-tada" style="font-size: 0.9em;"></i><span> é¦é¡µ</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span> æç« </span></a><ul class="menus_item_child"><li><a class="site-page child faa-parent animated-hover" href="/archives/"><i class="anzhiyufont anzhiyu-icon-box-archive faa-tada" style="font-size: 0.9em;"></i><span> 彿¡£</span></a></li><li><a class="site-page child faa-parent animated-hover" href="/categories/"><i class="anzhiyufont anzhiyu-icon-shapes faa-tada" style="font-size: 0.9em;"></i><span> åç±»</span></a></li><li><a class="site-page child faa-parent animated-hover" href="/tags/"><i class="anzhiyufont anzhiyu-icon-tags faa-tada" style="font-size: 0.9em;"></i><span> æ ç¾</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span> åé¾</span></a><ul class="menus_item_child"><li><a class="site-page child faa-parent animated-hover" href="/link/"><i class="anzhiyufont anzhiyu-icon-link faa-tada" style="font-size: 0.9em;"></i><span> å人å¸</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span> å
³äº</span></a><ul class="menus_item_child"><li><a class="site-page child faa-parent animated-hover" href="/about/"><i class="anzhiyufont anzhiyu-icon-paper-plane faa-tada" style="font-size: 0.9em;"></i><span> å
³äºæ¬äºº</span></a></li><li><a class="site-page child faa-parent animated-hover" href="/privacy/"><i class="anzhiyufont anzhiyu-icon-shield faa-tada" style="font-size: 0.9em;"></i><span> éç§æ¿ç</span></a></li><li><a class="site-page child faa-parent animated-hover" href="javascript:toRandomPost()"><i class="anzhiyufont anzhiyu-icon-shoe-prints1 faa-tada" style="font-size: 0.9em;"></i><span> é便éé</span></a></li></ul></div></div></div><div id="nav-right"><div class="nav-button" id="randomPost_button"><a class="site-page" onclick="toRandomPost()" title="éæºåå¾ä¸ä¸ªæç« " href="javascript:void(0);"><i class="anzhiyufont anzhiyu-icon-dice"></i></a></div><div class="nav-button" id="search-button"><a class="site-page social-icon search" href="javascript:void(0);" title="æç´¢ð" accesskey="s"><i class="anzhiyufont anzhiyu-icon-magnifying-glass"></i><span> æç´¢</span></a></div><input id="center-console" type="checkbox"/><label class="widget" for="center-console" title="䏿§å°" onclick="anzhiyu.switchConsole();"><i class="left"></i><i class="widget center"></i><i class="widget right"></i></label><div id="console"><div class="console-card-group-reward"><ul class="reward-all console-card"><li class="reward-item"><a href="https://npm.elemecdn.com/[email protected]/img/post/common/qrcode-weichat.png" target="_blank"><img class="post-qr-code-img" alt="微信" src="https://npm.elemecdn.com/[email protected]/img/post/common/qrcode-weichat.png"/></a><div class="post-qr-code-desc">微信</div></li><li class="reward-item"><a href="https://npm.elemecdn.com/[email protected]/img/post/common/qrcode-alipay.png" target="_blank"><img class="post-qr-code-img" alt="æ¯ä»å®" src="https://npm.elemecdn.com/[email protected]/img/post/common/qrcode-alipay.png"/></a><div class="post-qr-code-desc">æ¯ä»å®</div></li></ul></div><div class="console-card-group"><div class="console-card-group-left"></div><div class="console-card-group-right"><div class="console-card tags"><div class="card-content"><div class="author-content-item-tips">å
´è¶£ç¹</div><span class="author-content-item-title">寻æ¾ä½ æå
´è¶£çé¢å</span><div class="card-tags"><div class="item-headline"></div><div class="card-tag-cloud"><a href="/tags/3D%E6%89%93%E5%8D%B0/" style="font-size: 1.05rem;">3Dæå°<sup>1</sup></a><a href="/tags/3dgs/" style="font-size: 1.05rem;">3dgs<sup>7</sup></a><a href="/tags/AI/" style="font-size: 1.05rem;">AI<sup>1</sup></a><a href="/tags/CG/" style="font-size: 1.05rem;">CG<sup>7</sup></a><a href="/tags/CV/" style="font-size: 1.05rem;">CV<sup>6</sup></a><a href="/tags/GAMES/" style="font-size: 1.05rem;">GAMES<sup>1</sup></a><a href="/tags/GAMES101/" style="font-size: 1.05rem;">GAMES101<sup>1</sup></a><a href="/tags/LLM/" style="font-size: 1.05rem;">LLM<sup>1</sup></a><a href="/tags/SDFoam/" style="font-size: 1.05rem;">SDFoam<sup>4</sup></a><a href="/tags/ai/" style="font-size: 1.05rem;">ai<sup>1</sup></a><a href="/tags/c/" style="font-size: 1.05rem;">c<sup>4</sup></a><a href="/tags/cloudflare/" style="font-size: 1.05rem;">cloudflare<sup>1</sup></a><a href="/tags/cpc/" style="font-size: 1.05rem;">cpc<sup>4</sup></a><a href="/tags/cpp/" style="font-size: 1.05rem;">cpp<sup>14</sup></a><a href="/tags/css/" style="font-size: 1.05rem;">css<sup>1</sup></a><a href="/tags/docker/" style="font-size: 1.05rem;">docker<sup>1</sup></a><a href="/tags/frp/" style="font-size: 1.05rem;">frp<sup>1</sup></a><a href="/tags/html/" style="font-size: 1.05rem;">html<sup>1</sup></a><a href="/tags/mask/" style="font-size: 1.05rem;">mask<sup>1</sup></a><a href="/tags/metapi/" style="font-size: 1.05rem;">metapi<sup>1</sup></a><a href="/tags/nerfstudio/" style="font-size: 1.05rem;">nerfstudio<sup>1</sup></a><a href="/tags/nuxt/" style="font-size: 1.05rem;">nuxt<sup>1</sup></a><a href="/tags/sam/" style="font-size: 1.05rem;">sam<sup>1</sup></a><a href="/tags/sam3/" style="font-size: 1.05rem;">sam3<sup>1</sup></a><a href="/tags/ssh/" style="font-size: 1.05rem;">ssh<sup>1</sup></a><a href="/tags/supabase/" style="font-size: 1.05rem;">supabase<sup>1</sup></a><a href="/tags/tic/" style="font-size: 1.05rem;">tic<sup>1</sup></a><a href="/tags/vps/" style="font-size: 1.05rem;">vps<sup>3</sup></a><a href="/tags/vscode/" style="font-size: 1.05rem;">vscode<sup>
2182</sup></a><a href="/tags/wsl2/" style="font-size: 1.05rem;">wsl2<sup>1</sup></a><a href="/tags/yolo/" style="font-size: 1.05rem;">yolo<sup>1</sup></a><a href="/tags/%E4%B8%89%E7%BB%B4%E9%87%8D%E5%BB%BA/" style="font-size: 1.05rem;">ä¸ç»´é建<sup>5</sup></a><a href="/tags/%E5%89%8D%E7%AB%AF/" style="font-size: 1.05rem;">å端<sup>2</sup></a><a href="/tags/%E5%A4%A7%E5%AD%A6/" style="font-size: 1.05rem;">大å¦<sup>11</sup></a><a href="/tags/%E5%AD%A6%E4%B9%A0/" style="font-size: 1.05rem;">å¦ä¹ <sup>6</sup></a><a href="/tags/%E6%8C%87%E9%92%88/" style="font-size: 1.05rem;">æé<sup>2</sup></a><a href="/tags/%E6%90%9C%E7%B4%A2/" style="font-size: 1.05rem;">æç´¢<sup>1</sup></a><a href="/tags/%E6%9C%8D%E5%8A%A1%E5%99%A8/" style="font-size: 1.05rem;">æå¡å¨<sup>1</sup></a><a href="/tags/%E7%AE%97%E6%B3%95/" style="font-size: 1.05rem;">ç®æ³<sup>6</sup></a><a href="/tags/%E9%AB%98%E6%95%B0/" style="font-size: 1.05rem;">髿°<sup>7</sup></a></div></div><hr/></div></div><div class="console-card history"><div class="item-headline"><i class="anzhiyufont anzhiyu-icon-box-archiv"></i><span>æç« </span></div><div class="card-archives"><div class="item-headline"><i class="anzhiyufont anzhiyu-icon-archive"></i><span>彿¡£</span></div><ul class="card-archive-list"><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2026/05/"><span class="card-archive-list-date">äºæ 2026</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">1</span><span>ç¯</span></div></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2026/04/"><span class="card-archive-list-date">
218åæ 2026</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">2</span><span>ç¯</span></div></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2026/03/"><span class="card-archive-list-date">䏿 2026</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">1</span><span>ç¯</span></div></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2026/02/"><span class="card-archive-list-date">äºæ 2026</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">5</span><span>ç¯</span></div></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2026/01/"><span class="card-archive-list-date">䏿 2026</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">4</span><span>ç¯</span></div></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2025/12/"><span class="card-archive-list-date">åäºæ 2025</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">18</span><span>ç¯</span></div></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2025/11/"><span class="card-archive-list-date">å䏿 2025</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">18</span><span>ç¯</span></div></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2025/10/"><span class="card-archive-list-date">åæ 2025</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">11</span><span>ç¯</span></div></a></li></ul></div><hr/></div></div></div><div class="button-group"><div class="console-btn-item"><a class="darkmode_switchbutton" title="æ¾ç¤ºæ¨¡å¼åæ¢" href="javascript:void(0);"><i class="anzhiyufont anzhiyu-icon-moon"></i></a></div><div class="console-btn-item" id="consoleHideAside" onclick="anzhiyu.hideAsideBtn()" title="è¾¹æ æ¾ç¤ºæ§å¶"><a class="asideSwitch"><i class="anzhiyufont anzhiyu-icon-arrows-left-right"></i></a></div></div><div class="console-mask" onclick="anzhiyu.hideConsole()" href="javascript:void(0);"></div></div><div class="nav-button" id="nav-totop"><a class="totopbtn" href="javascript:void(0);"><i class="anzhiyufont anzhiyu-icon-arrow-up"></i><span id="percent" onclick="anzhiyu.scrollToDest(0,500)">0</span></a></div><div id="toggle-menu"><a class="site-page" href="javascript:void(0);" title="忢"><i class="anzhiyufont anzhiyu-icon-bars"></i></a></div></div></div></nav><div id="site-info"><h1 id="site-title">TianxingleoçBlog</h1><div id="site_social_icons"><a class="social-icon faa-parent animated-hover" href="/atom.xml" target="_blank" title="RSS"><i class="anzhiyufont anzhiyu-icon-rss"></i></a></div></div><div id="scroll-down"><i class="anzhiyufont anzhiyu-icon-angle-down scroll-down-effects"></i></div></header><main id="blog-container"><div id="home_top"><div class="swiper_container_card" style="height: auto;width: 100%"><div id="bannerGroup"><div id="random-banner"><div class="banners-title"><div class="banners-title-big">çä¾ä¸å¨å¤©å </div><div class="banners-title-big">çä¾å°±å¨è·¯ä¸ã</div><div class="banners-title-small">tianxingleo.github.io</div></div><div id="skills-tags-group-all"><div class="tags-group-wrapper"><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #fff"><img class="no-lightbox" title="Java" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/26ba17ce013ecde9afc8b373e2fc0b9d_1804318147854602575.jpg" size="60px" alt="Java"></div><div class="tags-group-icon" style="background: #57b6e6"><img class="no-lightbox" title="Docker" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/544b2d982fd5c4ede6630b29d86f3cae_7350393908531420887.png" size="60px" alt="Docker"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #4082c3"><img class="no-lightbox" title="Photoshop" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/4ce1d081b9b37b06e3714bee95e58589_1613929877388832041.png" size="60px" alt="Photoshop"></div><div class="tags-group-icon" style="background: #333"><img class="no-lightbox" title="Node" src="https://npm.elemecdn.com/[email protected]/img/svg/node-logo.svg" size="60px" alt="Node"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #2e3a41"><img class="no-lightbox" title="Webpack" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/32dc115fbfd1340f919f0234725c6fb4_4060605986539473613.png" size="60px" alt="Webpack"></div><div class="tags-group-icon" style="background: #fff"><img class="no-lightbox" title="Pinia" src="https://npm.elemecdn.com/[email protected]/img/svg/pinia-logo.svg" size="60px" alt="Pinia"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #fff"><img class="no-lightbox" title="Python" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/02c9c621414cc2ca41035d809a4154be_7912546659792951301.png" size="60px" alt="Python"></div><div class="tags-group-icon" style="background: #937df7"><img class="no-lightbox" title="Vite" src="https://npm.elemecdn.com/[email protected]/img/svg/vite-logo.svg" size="60px" alt="Vite"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #4499e4"><img class="no-lightbox" title="Flutter" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/b5aa93e0b61d8c9784cf76d14886ea46_4590392178423108088.png" size="60px" alt="Flutter"></div><div class="tags-group-icon" style="background: #b8f0ae"><img class="no-lightbox" title="Vue" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/cf23526f451784ff137f161b8fe18d5a_692393069314581413.png" size="60px" alt="Vue"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #222"><img class="no-lightbox" title="React" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii0xMS41IC0xMC4yMzE3NCAyMyAyMC40NjM0OCI+CiAgPHRpdGxlPlJlYWN0IExvZ288L3RpdGxlPgogIDxjaXJjbGUgY3g9IjAiIGN5PSIwIiByPSIyLjA1IiBmaWxsPSIjNjFkYWZiIi8+CiAgPGcgc3Ryb2tlPSIjNjFkYWZiIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiPgogICAgPGVsbGlwc2Ugcng9IjExIiByeT0iNC4yIi8+CiAgICA8ZWxsaXBzZSByeD0iMTEiIHJ5PSI0LjIiIHRyYW5zZm9ybT0icm90YXRlKDYwKSIvPgogICAgPGVsbGlwc2Ugcng9IjExIiByeT0iNC4yIiB0cmFuc2Zvcm09InJvdGF0ZSgxMjApIi8+CiAgPC9nPgo8L3N2Zz4K" size="60px" alt="React"></div><div class="tags-group-icon" style="background: #2c51db"><img class="no-lightbox" title="CSS3" src="https://upload-bbs.miyoushe.com/upload/2025/08/02/125766904/948767d87de7c5733b5f59b036d28b4b_3573026798828830876.png" size="60px" alt="CSS3"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #f7cb4f"><img class="no-lightbox" title="JS" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/06216e7fddb6704b57cb89be309443f9_7269407781142156006.png" size="60px" alt="JS"></div>
218<div class="tags-group-icon" style="background: #e9572b"><img class="no-lightbox" title="HTML" src="https://upload-bbs.miyoushe.com/upload/2025/08/02/125766904/f774c401c8bc2707e1df1323bdc9e423_1926035231499717029.png" size="60px" alt="HTML"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #df5b40"><img class="no-lightbox" title="Git" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/fcc0dbbfe206b4436097a8362d64b558_6981541002497327189.webp" size="60px" alt="Git"></div><div class="tags-group-icon" style="background: #e65164"><img class="no-lightbox" title="Apifox" src="https://upload-bbs.miyoushe.com/upload/2025/08/02/125766904/b61bc7287d7f7f89bd30079c7f04360e_2465770520170903938.png" size="60px" alt="Apifox"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #fff"><img class="no-lightbox" title="Java" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/26ba17ce013ecde9afc8b373e2fc0b9d_1804318147854602575.jpg" size="60px" alt="Java"></div><div class="tags-group-icon" style="background: #57b6e6"><img class="no-lightbox" title="Docker" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/544b2d982fd5c4ede6630b29d86f3cae_7350393908531420887.png" size="60px" alt="Docker"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #4082c3"><img class="no-lightbox" title="Photoshop" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/4ce1d081b9b37b06e3714bee95e58589_1613929877388832041.png" size="60px" alt="Photoshop"></div><div class="tags-group-icon" style="background: #333"><img class="no-lightbox" title="Node" src="https://npm.elemecdn.com/[email protected]/img/svg/node-logo.svg" size="60px" alt="Node"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #2e3a41"><img class="no-lightbox" title="Webpack" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/32dc115fbfd1340f919f0234725c6fb4_4060605986539473613.png" size="60px" alt="Webpack"></div><div class="tags-group-icon" style="background: #fff"><img class="no-lightbox" title="Pinia" src="https://npm.elemecdn.com/[email protected]/img/svg/pinia-logo.svg" size="60px" alt="Pinia"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #fff"><img class="no-lightbox" title="Python" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/02c9c621414cc2ca41035d809a4154be_7912546659792951301.png" size="60px" alt="Python"></div><div class="tags-group-icon" style="background: #937df7"><img class="no-lightbox" title="Vite" src="https://npm.elemecdn.com/[email protected]/img/svg/vite-logo.svg" size="60px" alt="Vite"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #4499e4"><img class="no-lightbox" title="Flutter" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/b5aa93e0b61d8c9784cf76d14886ea46_4590392178423108088.png" size="60px" alt="Flutter"></div><div class="tags-group-icon" style="background: #b8f0ae"><img class="no-lightbox" title="Vue" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/cf23526f451784ff137f161b8fe18d5a_692393069314581413.png" size="60px" alt="Vue"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #222"><img class="no-lightbox" title="React" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii0xMS41IC0xMC4yMzE3NCAyMyAyMC40NjM0OCI+CiAgPHRpdGxlPlJlYWN0IExvZ288L3RpdGxlPgogIDxjaXJjbGUgY3g9IjAiIGN5PSIwIiByPSIyLjA1IiBmaWxsPSIjNjFkYWZiIi8+CiAgPGcgc3Ryb2tlPSIjNjFkYWZiIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiPgogICAgPGVsbGlwc2Ugcng9IjExIiByeT0iNC4yIi8+CiAgICA8ZWxsaXBzZSByeD0iMTEiIHJ5PSI0LjIiIHRyYW5zZm9ybT0icm90YXRlKDYwKSIvPgogICAgPGVsbGlwc2Ugcng9IjExIiByeT0iNC4yIiB0cmFuc2Zvcm09InJvdGF0ZSgxMjApIi8+CiAgPC9nPgo8L3N2Zz4K" size="60px" alt="React"></div><div class="tags-group-icon" style="background: #2c51db"><img class="no-lightbox" title="CSS3" src="https://upload-bbs.miyoushe.com/upload/2025/08/02/125766904/948767d87de7c5733b5f59b036d28b4b_3573026798828830876.png" size="60px" alt="CSS3"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #f7cb4f"><img class="no-lightbox" title="JS" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/06216e7fddb6704b57cb89be309443f9_7269407781142156006.png" size="60px" alt="JS"></div>
218<div class="tags-group-icon" style="background: #e9572b"><img class="no-lightbox" title="HTML" src="https://upload-bbs.miyoushe.com/upload/2025/08/02/125766904/f774c401c8bc2707e1df1323bdc9e423_1926035231499717029.png" size="60px" alt="HTML"></div></div><div class="tags-group-icon-pair"><div class="tags-group-icon" style="background: #df5b40"><img class="no-lightbox" title="Git" src="https://upload-bbs.miyoushe.com/upload/2025/07/29/125766904/fcc0dbbfe206b4436097a8362d64b558_6981541002497327189.webp" size="60px" alt="Git"></div><div class="tags-group-icon" style="background: #e65164"><img class="no-lightbox" title="Apifox" src="https://upload-bbs.miyoushe.com/upload/2025/08/02/125766904/b61bc7287d7f7f89bd30079c7f04360e_2465770520170903938.png" size="60px" alt="Apifox"></div></div></div></div><a id="random-hover" href="javascript:toRandomPost()"><i class="anzhiyufont anzhiyu-icon-paper-plane"></i><div class="bannerText">é便éé<i class="anzhiyufont anzhiyu-icon-arrow-right"></i></div></a></div><div class="categoryGroup"><div class="categoryItem" style="box-shadow:var(--anzhiyu-shadow-blue)"><a class="categoryButton blue" href="/categories/%E5%AD%A6%E4%B9%A0/"><span class="categoryButtonText">å¦ä¹ </span><i class="anzhiyufont anzhiyu-icon-dove"></i></a></div><div class="categoryItem" style="box-shadow:var(--anzhiyu-shadow-red)"><a class="categoryButton red" href="/categories/%E9%A1%B9%E7%9B%AE/"><span class="categoryButtonText">项ç®</span><i class="anzhiyufont anzhiyu-icon-fire"></i></a></div><div class="categoryItem" style="box-shadow:var(--anzhiyu-shadow-green)"><a class="categoryButton green" href="/categories/%E7%94%9F%E6%B4%BB/"><span class="categoryButtonText">çæ´»</span><i class="anzhiyufont anzhiyu-icon-book"></i></a></div></div></div><div class="topGroup"><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl("/posts/c725fe1a895f/") : window.location.href="/posts/c725fe1a895f/""><div class="post_cover left_radius"><a href="posts/c725fe1a895f/" title="2025å¦å¹´é«æ°ä¸ææ«èè¯å¤ä¹ æçº²"><span class="recent-post-top-text">è</span><img class="post_bg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="cover" src="https://pub-f8d3afa0c3274f1e943ee2f8c45dff96.r2.dev/114477837_p0_master1200.webp?_r_=c1457af2-cb86-0bba-cb1b-fdbb6217f
218c4b"></a></div><div class="recent-post-info"><a class="article-title" href="posts/c725fe1a895f/" title="2025å¦å¹´é«æ°ä¸ææ«èè¯å¤ä¹ æçº²">2025å¦å¹´é«æ°ä¸ææ«èè¯å¤ä¹ æçº²</a></div></div><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl("/posts/f31cef78598b/") : window.location.href="/posts/f31cef78598b/""><div class="post_cover left_radius"><a href="posts/f31cef78598b/" title="CPUæå¡å¨è·LLMå®å½"><span class="recent-post-top-text">è</span><img class="post_bg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="cover" src="https://pub-f8d3afa0c3274f1e943ee2f8c45dff96.r2.dev/9c7026124dcb360f454545904aac9838cb95adb8.webp?_r_=860c929a-21ec-b990-da89-af02f091f7a5"></a></div><div class="recent-post-info"><a class="article-title" href="posts/f31cef78598b/" title="CPUæå¡å¨è·LLMå®å½">CPUæå¡å¨è·LLMå®å½</a></div></div><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl("/posts/e215c1943dfb/") : window.location.href="/posts/e215c1943dfb/""><div class="post_cover left_radius"><a href="posts/e215c1943dfb/" title="2025å¦å¹´é«æ°ä¸æä¸ææ«èè¯å¤ä¹ æçº²"><span class="recent-post-top-text">è</span><img class="post_bg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="cover" src="https://pub-f8d3afa0c3274f1e943ee2f8c45dff96.r2.dev/8eb85bb13982d5a8187fee8a42adf1bc1a95a704.webp?_r_=406473bb-f1b9-d8e9-22f4-d442b950ab68"></a></div><div class="recent-post-info"><a class="article-title" href="posts/e215c1943dfb/" title="2025å¦å¹´é«æ°ä¸æä¸ææ«èè¯å¤ä¹ æçº²">2025å¦å¹´é«æ°ä¸æä¸ææ«èè¯å¤ä¹ æçº²</a></div></div><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl("/posts/ad6732188258/") : window.location.href="/posts/ad6732188258/""><div class="post_cover left_radius"><a href="posts/ad6732188258/" title="2025年度æ»ç»"><span class="recent-post-top-text">è</span><img class="post_bg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="cover" src="https://pub-f8d3afa0c3274f1e943ee2f8c45dff96.r2.dev/91953835_p0.webp?_r_=ad1d1f16-627c-2c04-b5b2-09f27120c269"></a></div><div class="recent-post-info"><a class="article-title" href="posts/ad6732188258/" title="2025年度æ»ç»">2025年度æ»ç»</a></div></div><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl("/posts/6bed9573cc87/") : window.location.href="/posts/6bed9573cc87/""><div class="post_cover left_radius"><a href="posts/6bed9573cc87/" title="Cè¯è¨ä¸å¸¸è§çè¾å ¥å½æ°"><span class="recent-post-top-text">è</span><img class="post_bg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="cover" src="https://pub-f8d3afa0c3274f1e943ee2f8c45dff96.r2.dev/ae2d1eca082f876be72a1278e9e959e9.webp?_r_=13b65b76-a656-0920-e70a-5cdc9d27fa00"></a></div><div class="recent-post-info"><a class="article-title" href="posts/6bed9573cc87/" title="Cè¯è¨ä¸å¸¸è§çè¾å ¥å½æ°">Cè¯è¨ä¸å¸¸è§çè¾å ¥å½æ°</a></div></div><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl("/posts/14b6f659dc49/") : window.location.href="/posts/14b6f659dc49/""><div class="post_cover left_radius"><a href="posts/14b6f659dc49/" title="DUTå¼ååºcpcç»ç¬¬ä¸æ¬¡ä¾ä¼ç¬è®°ï¼2025ç§ï¼"><span class="recent-post-top-text">è</span><img class="post_bg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="cover" src="https://pub-f8d3afa0c3274f1e943ee2f8c45dff96.r2.dev/9c7026124dcb360f454545904aac9838cb95adb8.webp?_r_=9a20639a-6b7d-e269-71f2-350267a84a23"></a></div><div class="recent-post-info"><a class="article-title" href="posts/14b6f659dc49/" title="DUTå¼ååºcpcç»ç¬¬ä¸æ¬¡ä¾ä¼ç¬è®°ï¼2025ç§ï¼">DUTå¼ååºcpcç»ç¬¬ä¸æ¬¡ä¾ä¼ç¬è®°ï¼2025ç§ï¼</a></div></div><a class="todayCard" id="todayCard" target="_blank" rel="noopener" href="https://github.com/tianxingleo" style="z-index: 1;"><div class="todayCard-info"><div class="todayCard-tips">github.com/tianxingleo</div><div class="todayCard-title">æçgithub主页</div></div><img class="todayCard-cover" src="https://pub-f8d3afa0c3274f1e943ee2f8c45dff96.r2.dev/miku.jpg" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="å°é¢"><div class="banner-button-group"><div class="banner-button" onclick="event.stopPropagation();event.preventDefault();anzhiyu.hideTodayCard();"><i class="anzhiyufont anzhiyu-icon-arrow-circle-right"></i><span class="banner-button-text">æ´å¤æ¨è</span></div></div></a></div><link rel="stylesheet"></div></div><div class="layout" id="content-inner"><div class="recent-posts" id="recent-posts"><div id="categoryBar"><div class="category-bar" id="category-bar"><div id="catalog-bar"><div id="catalog-list"><div class="catalog-list-item" id="é¦é¡µ"><a href="/">é¦é¡µ</a></div> 219 <div class="catalog-list-item" id="/categories/å¦ä¹ /"> 220 <a href="/categories/å¦ä¹ /"> 221 å¦ä¹ 222 </a> 223 </div> 224 225 <div class="catalog-list-item" id="/categories/项ç®/"> 226 <a href="/categories/项ç®/"> 227 é¡¹ç® 228 </a> 229 </div> 230 231 <div class="catalog-list-item" id="/categories/çæ´»/"> 232 <a href="/categories/çæ´»/"> 233 çæ´» 234 </a> 235 </div> 236 237 <div class="catalog-list-item" id="/categories/æè ¾è®°å½/"> 238 <a href="/categories/æè ¾è®°å½/"> 239 æè ¾è®°å½ 240 </a> 241 </div> 242 </div><div class="category-bar-next" id="category-bar-next" onclick="anzhiyu.scrollCategoryBarToRight()"><i class="anzhiyufont anzhiyu-icon-angle-double-right"></i></div><a class="catalog-more" href="/categories/">æ´å¤</a></div></div></div><div class="recent-post-item lastestpost-item" onclick="window.pjax ? pjax.loadUrl('/posts/047ec04c09e7/') : window.location.href='/posts/047ec04c09e7/'"><div class="recent-post-info no-cover"><div class="recent-post-info-top"><div class="recent-post-info-top-tips"><div class="article-categories-original">æè ¾è®°å½</div><span class="newPost">ææ°</span><a class="unvisited-post" href="/posts/047ec04c09e7/" title="Metapiç»ä¸AIç½å ³é¨ç½²å ¨è®°å½ï¼ä»WSL2å°Cloudflare Tunnelç宿´é ç½®ä¸è¸©å">æªè¯»</a></div><a class="article-title" href="/posts/047ec04c09e7/" title="Metapiç»ä¸AIç½å ³é¨ç½²å ¨è®°å½ï¼ä»WSL2å°Cloudflare Tunnelç宿´é ç½®ä¸è¸©å">Metapiç»ä¸AIç½å ³é¨ç½²å ¨è®°å½ï¼ä»WSL2å°Cloudflare Tunnelç宿´é ç½®ä¸è¸©å</a></div><div class="article-meta-wrap"><span class="post-meta-date"><i class="anzhiyufont anzhiyu-icon-calendar-days" style="font-size: 15px; display:none"></i><span class="article-meta-label">å表äº</span><time datetime="2026-05-02T07:00:00.000Z" title="åè¡¨äº 2026-05-02 15:00:00" time="2026-05-02 15:00:00">2026-05-02</time><time class="time_hidden" datetime="2026-05-01T17:39:33.927Z" title="æ´æ°äº 2026-05-02 01:39:33" time="2026-05-02 01:39:33">2026-05-02</time></span><span class="article-meta tags"><a class="article-meta__tags" href="/tags/metapi/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>metapi</span></a><a class="article-meta__tags" href="/tags/docker/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>
242docker</span></a><a class="article-meta__tags" href="/tags/wsl2/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>wsl2</span></a><a class="article-meta__tags" href="/tags/cloudflare/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>cloudflare</span></a><a class="article-meta__tags" href="/tags/ai/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>ai</span></a></span></div><div class="content">Metapi ç»ä¸ AI ç½å ³é¨ç½²å ¨è®°å½ï¼ä» WSL2 å° Cloudflare Tunnel ç宿´é ç½®ä¸è¸©å 243 244æ¬æè®°å½äºå¨ Windows WSL2 ç¯å¢ä¸é¨ç½² Metapi ç»ä¸ AI ç½å ³ç宿´è¿ç¨ï¼éç¹è®°å½äºæ¥å ¥ DeepSeek ä½ä¸ºå¤ç¨ä¸æ¸¸æ¶éå°çä¸ç³»åå ¼å®¹æ§é®é¢åå ¶è§£å³æ¹æ¡ã 245 246ä¸ãèµ·å ï¼ä¸ºä»ä¹éè¦ Metapiï¼ 2471.1 èæ¯ï¼äºè±å «é¨ç AI Token 248ä½ä¸ºä¸åé度 AI ç¨æ·ï¼ææä¸æåç§æ¥æºç API Tokenï¼ 249 250GLM Coding Plan Liteï¼æºè°±çç¼ç¨ä¸ç¨é¢åº¦ï¼ä»·æ ¼ä¾¿å®ä½å¹¶åéå¶ä¸¥æ ¼ 251**Xiaomi Mimo **ï¼å°ç±³ç Coding Planï¼æä¸å®èµ éé¢åº¦ 252DeepSeek APIï¼èªå å¼ä½é¢ï¼v4-pro éä»·åæ§ä»·æ¯æé« 253åç§ New API / One API ä¸è½¬ç«ï¼æ³¨åäºä¸å ç«ç¹ï¼é¢åº¦åæ£ 254 255è¿äº Token 忣å¨ä¸åå¹³å°ãä¸åè´¦å·ï¼ç®¡çèµ·æ¥é常头ç¼ãæ¯æ¬¡ä½¿ç¨é½è¦åæ¢ Base URL å API Keyï¼è䏿 æ³ç»ä¸è°åº¦é¢åº¦ã 2561.2 ç´æ¥è¯±å ï¼GLM Coding Plan å¹¶åä¸è¶³ 257GLM Coding Plan ...</div></div></div><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl('/posts/9bcf27f17565/') : window.location.href='/posts/9bcf27f17565/'"><div class="recent-post-info no-cover"><div class="recent-post-info-top"><div class="recent-post-info-top-tips"><div class="article-categories-original">项ç®</div><a class="unvisited-post" href="/posts/9bcf27f17565/" title="ãå¤çãä»ä¸æä¸ä¸ç±³å·¥ä½å°3天400w+æµè§éçç½ç«ï¼æåäºä»ä¹">æªè¯»</a></div><a class="article-title" href="/posts/9bcf27f17565/" title="ãå¤çãä»ä¸æä¸ä¸ç±³å·¥ä½å°3天400w+æµè§éçç½ç«ï¼æåäºä»ä¹">ãå¤çãä»ä¸æä¸ä¸ç±³å·¥ä½å°3天400w+æµè§éçç½ç«ï¼æåäºä»ä¹</a></div><div class="article-meta-wrap"><span class="post-meta-date"><i class="anzhiyufont anzhiyu-icon-calendar-days" style="font-size: 15px; display:none"></i><span class="article-meta-label">å表äº</span><time datetime="2026-04-12T12:44:41.000Z" title="åè¡¨äº 2026-04-12 20:44:41" time="2026-04-12 20:44:41">2026-04-12</time><time class="time_hidden" datetime="2026-04-28T16:36:53.165Z" title="æ´æ°äº 2026-04-29 00:36:53" time="2026-04-29 00:36:53">2026-04-29</time></span><span class="article-meta tags"><a class="article-meta__tags" href="/tags/%E5%89%8D%E7%AB%AF/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>å端</span></a><a class="article-meta__tags" href="/tags/Vue/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>Vue</span></a><a class="article-meta__tags" href="/tags/%E5%BC%80%E6%BA%90%E9%A1%B9%E7%9B%AE/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>弿ºé¡¹ç®</span></a><a class="article-meta__tags" href="/tags/ACG/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>ACG</span></a></span></div><div class="content">æªæ¢å° 2026 å¹´ 4 æ 14 æ¥ 16:00ï¼ACGTI çææï¼ 258ç«ç¹ç´¯è®¡æµè§éè¶ è¿ 400wï¼è®¿é®äººæ°è¶ è¿ 117wï¼GitHub ä»åºæ¶è· 332 âã22 Forkã 259对ä¸ä¸ªä»çç¹ä¸å¿«éèµ·æã以纯å端æ¹å¼æå»ºãå 天å 宿ä¸çº¿åè¿ä»£ç娱ä¹åå°é¡¹ç®æ¥è¯´ï¼è¿ä¸ªä¼ æé度è¿è¿è¶ åºäºæä¸å¼å§ç颿ã 260 261 262æ äºè¦ä»2026å¹´4æ9å·è¯´èµ· 263é£ä¸å¤©ï¼æå¨Bç«å·å°äºä¸ä¸ªå ³æ³¨çå主åçè§é¢ï¼å±ç¤ºäºå¥¹åçSBTIãé£ä¸ä¸¤å¤©ï¼æååãå°çº¢ä¹¦é½è¢«è¿ä¸ªå°ç½ç«å·å±äºã 264ææ±çççè¿é¡¹ç®é¿ä»ä¹æ ·çå¿æå»æ¾äºå¼æºä»åºï¼åç°è¿å± ç¶æ¯ä¸ä¸ªä¸¤ä¸åè¡çåHTMLæä»¶ãç¬¬ä¸æ¬¡çå°çæ¶åæºéæ¼ââè¿ä¹é«ç度çç½ç«ï¼å± ç¶æ¯é¢åChatGPT App vibeåºæ¥çãåæ¶æä¹è§å¾è¿ä¸ªé¡¹ç®çä¸éå¯ä»¥ç»§ç»æåï¼åHTMLæä»¶å³å®äºå®é¾ä»¥ç»´æ¤ï¼å¾å¤ä¸è¥¿æå±èµ·æ¥ä¸å¤ªæ¹ä¾¿ï¼ä¸å¤å·¥ç¨åãé£å¦æç¨Vue3 rebuildä¸ä¸ï¼æ¯ä¸æ¯å°±è½æå¤§æé«å®çä¸éï¼ 265å å¨GitHub䏿¾äºä¸ä¸ææ²¡ACGç¸å ³çMBTIæµè¯ï¼æè§å¥½åé½ä¸æ¯æææ³ç飿 ·ï¼æ¢ç¶å¦æ¤ï¼ä¸å¦èªå·±åä¸ä¸ªç©ç©ï¼æ£å¥½ä¸æ³å¤ä¹ 髿°ï¼wwwç»æé«æ°èè¯ä¹ä¸ç®çæ³ï¼ã 266é£ä¸ä¸ªæä¸ï¼æä¸ ...</div></div></div><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl('/posts/cb56b2867ae4/') : window.location.href='/posts/cb56b2867ae4/'"><div class="recent-post-info no-cover"><div class="recent-post-info-top"><div class="recent-post-info-top-tips"><div class="article-categories-original">çæ´»</div><a class="unvisited-post" href="/posts/cb56b2867ae4/" title="2w+ç3Dæå°æºæç«¹H2D䏿ä½éª">æªè¯»</a></div><a class="article-title" href="/posts/cb56b2867ae4/" title="2w+ç3Dæå°æºæç«¹H2D䏿ä½éª">2w+ç3Dæå°æºæç«¹H2D䏿ä½éª</a></div><div class="article-meta-wrap"><span class="post-meta-date"><i class="anzhiyufont anzhiyu-icon-calendar-days" style="font-size: 15px; display:none"></i><span class="article-meta-label">å表äº</span><time datetime="2026-04-06T16:16:55.000Z" title="åè¡¨äº 2026-04-07 00:16:55" time="2026-04-07 00:16:55">2026-04-07</time><time class="time_hidden" datetime="2026-04-28T16:36:53.106Z" title="æ´æ°äº 2026-04-29 00:36:53" time="2026-04-29 00:36:53">2026-04-29</time></span><span class="article-meta tags"><a class="article-meta__tags" href="/tags/3D%E6%89%93%E5%8D%B0/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>3Dæå°</span></a></span></div><div class="content">æå¹¸ä½¿ç¨äºæç«¹H2Dé¡¶é 3Dæå°æºå¨ï¼ä»¥ä¸æ¯è¿å å¨ç使ç¨ä½éªã 267æ¿å°çæ¶åæå°æºå·²ç»åºæ¬å®è£ 好ï¼ä½æ¯åå¨å忍¡ç»æ²¡ææ ¡åãTPUææå¡å¨AMSéé¢çé®é¢ã 268ç»è¿ä¸ä¸ªä¸åæå¼AMSï¼ååºå¡å¨éé¢çAMS 85Aææï¼æç»ä¿
268®å¥½äºAMSå¯ä»¥æ£å¸¸æå°ã 269忬¡ä½éª 270æåç使ç¨ä½éªï¼å¿« 271å¼å¯çæ´æ¨¡å¼166%éåº¦çæ¶åï¼æå°å°è¹æ¨¡åå°±å åéï¼æå°ä¸ä¸ªå°å¤¹åï¼è´¨éæè§è¿ä¸éã 272 273 274AMSå¤è²æå° 275使ç¨PLAæå°äºä¸ç»12个奶é¾ï¼å¿è®°ä½¿ç¨é»è²ææäºç¼ç 没æåºæ¥ wwwãå¼äºçæ´æ¨¡å¼ä¹å好åä¹è±äºå¤§æ¦6å°æ¶ï¼å¥½å忮鿍¡å¼æå°é度åºå«ä¸å¤§ï¼ä¸ç¥é为ä»ä¹ä¼è¿æ ·ãæå°äºæä¸ï¼æç»å好ç»ç»éæ¯ä¸ªäººåäºä¸ªå¥¶é¾ã 276 277 278é«ç²¾åº¦æå° 279å°è¯äºä¸ä¸è¿ä¸ªæºåçæé«ç²¾åº¦ï¼éæ©çæ¯PLA Matteç°è²ï¼æå°äºä¸å¯¹ç³ç®åï¼6cmçæ¬ï¼æè§å®é ä¸å°±4cmï¼ï¼0.4mmå·å´ã0.08mmå±é«ãæ ç¶æ¯æã100%éåº¦ï¼æå°èæ¶3å°æ¶ï¼é¤äºåå¨ä¸ç¹è½»å¾®æä¸ï¼è´¨éè¿æ¯é常ä¸éçï¼å¯¹æ¯å¥¶é¾å¯ç¥ï¼ã 280 281å忍¡ç» 282使ç¨å忍¡ç»å°è¯äºå®æ¹demoçæ¥è´ºå¡ï¼ç¨çæ¯æ åA4æå°çº¸ã纸太èäºï¼å®¹æææ¸£ï¼å¨ç²æ§é¢æ¿ä¸ä¸å¥½æ¸ çï¼å®¹æç渣导è´é¢æ¿çç²æ§ä¸é以 ...</div></div></div><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl('/posts/daebf52d5077/') : window.location.href='/posts/daebf52d5077/'"><div class="recent-post-info no-cover"><div class="recent-post-info-top"><div class="recent-post-info-top-tips"><div class="article-categories-original">å¦ä¹ </div><a class="unvisited-post" href="/posts/daebf52d5077/" title="对 UrbanScene3D æ°æ®éç䏿¬¡åæ¥è°ç ">æªè¯»</a></div><a class="article-title" href="/posts/daebf52d5077/" title="对 UrbanScene3D æ°æ®éç䏿¬¡åæ¥è°ç ">对 UrbanScene3D æ°æ®éç䏿¬¡åæ¥è°ç </a></div><div class="article-meta-wrap"><span class="post-meta-date"><i class="anzhiyufont anzhiyu-icon-calendar-days" style="font-size: 15px; display:none"></i><span class="article-meta-label">å表äº</span><time datetime="2026-03-16T07:29:23.000Z" title="åè¡¨äº 2026-03-16 15:29:23" time="2026-03-16 15:29:23">2026-03-16</time><time class="time_hidden" datetime="2026-04-28T16:36:53.184Z" title="æ´æ°äº 2026-04-29 00:36:53" time="2026-04-29 00:36:53">2026-04-29</time></span><span class="article-meta tags"><a class="article-meta__tags" href="/tags/%E4%B8%89%E7%BB%B4%E9%87%8D%E5%BB%BA/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>ä¸ç»´é建</span></a><a class="article-meta__tags" href="/tags/SDF/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>SDF</span></a><a class="article-meta__tags" href="/tags/GIS/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>GIS</span></a><a class="article-meta__tags" href="/tags/%E6%95%B0%E6%8D%AE%E9%9B%86/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>æ°æ®é</span></a><a class="article-meta__tags" href="/tags/%E7%A7%91%E7%A0%94/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>ç§ç </span></a><a class="article-meta__tags" href="/tags/UrbanScene3D/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>UrbanScene3D</span></a></span></div><div class="content">对 UrbanScene3D æ°æ®éç䏿¬¡åæ¥è°ç ï¼å®è½å¦ç¨äºåºäº GIS å éªç SDF åå¸ä¸ç»´éå»ºï¼ 283æè¿å¨ä¸ºâåºäº GIS å éªç SDF åå¸çº§ä¸ç»´éå»ºâæ¾åéçæ°æ®éï¼æé¡ºææ UrbanScene3D è¿äºä¸éãè¿éå è®°ä¸ä»½åæ¥è°ç ï¼éç¹ä¸æ¯å宿´ç»¼è¿°ï¼èæ¯åçä¸ä¸ªæ´å®é çé®é¢ï¼å®è½ä¸è½æ¿æ¥æè¿æ¡è·¯çº¿å è·éã 2841. æ»ä½å°è±¡ 285UrbanScene3D 宿¹ç»äººçç¬¬ä¸æè§æ¯ä¸ä¸ªåå¤§è§æ¨¡åå¸åºæ¯çæ°æ®å¹³å°ãä¸è¿å®é ä¸è½½åæ£æ¥ä¹åä¼åç°ï¼å®å¹¶ä¸æ¯ä¸å¥âåå§å½±å + 精确 GIS 模å + æ åçå¼âæå æ´é½çæ°æ®ï¼èæ´åæ¯ä¸ç»ç¨éä¸åçèµæºæ¾å¨äºä¸èµ·ã 286仿ç®åçå°ç Dropbox ç®å½æ¥çï¼ä¸»è¦å æ¬ï¼ 287 288Simulator.zip 289Image/ 290Path/ 291Proxy/ 292Reconstructed/ 293Evaluation.zip 294 295è¿äºç®å½çä½ç¨å¹¶ä¸ä¸æ ·ãæäºå仿çï¼æäºæ´æ¥è¿é建è¾å ¥ï¼ä¹æäºæ´åè¾ å©ç»ææå·²æå¤çä¸é´äº§ç©ã 2962. Simulator.zipï¼æ¬è´¨ä¸æ¯ UE é¡¹ç®æä»¶ 297ä¸å¼å§æå¯¹ Simulator.zip çé¢æï¼æ¯å®å¯è½ä¼å 嫿ç§å¯ä»¥ç´æ¥ä½¿ç¨çä»¿çæ°æ®ï¼ ...</div></div></div><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl('/posts/85effadda5b8/') : window.location.href='/posts/85effadda5b8/'"><div class="recent-post-info no-cover"><div class="recent-post-info-top"><div class="recent-post-info-top-tips"><div class="article-categories-original">å¦ä¹ </div><a class="unvisited-post" href="/posts/85effadda5b8/" title="æç®æ¡ä»¶ä¸çæ¿é´3Dé建ï¼DA3ä¸å3DGS Pipelineæ¹æ¡æ¨ªè¯">æªè¯»</a></div><a class="article-title" href="/posts/85effadda5b8/" title="æç®æ¡ä»¶ä¸çæ¿é´3Dé建ï¼DA3ä¸å3DGS Pipelineæ¹æ¡æ¨ªè¯">æç®æ¡ä»¶ä¸çæ¿é´3Dé建ï¼DA3ä¸å3DGS Pipelineæ¹æ¡æ¨ªè¯</a></div><div class="article-meta-wrap"><span class="post-meta-date"><i class="anzhiyufont anzhiyu-icon-calendar-days" style="font-size: 15px; display:none"></i><span class="article-meta-label">å表äº</span><time datetime="2026-02-20T08:21:03.000Z" title="åè¡¨äº 2026-02-20 16:21:03" time="2026-02-20 16:21:03">2026-02-20</time><time class="time_hidden" datetime="2026-04-28T16:36:53.203Z" title="æ´æ°äº 2026-04-29 00:36:53" time="2026-04-29 00:36:53">2026-04-29</time></span><span class="article-meta tags"><a class="article-meta__tags" href="/tags/CV/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>CV</span></a><a class="article-meta__tags" href="/tags/CG/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>CG</span></a><a class="article-meta__tags" href="/tags/SDF/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>SDF</span></a><a class="article-meta__tags" href="/tags/3DGS/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>3DGS</span></a><a class="article-meta__tags" href="/tags/Depth-Anything-3/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>Depth Anything 3</span></a></span></div><div class="content">æå°ç´ ææä½è´¨éçæç«¯æ åµä¸æ¿é´ä¸ç»´é建ä¸åPipelineå¯¹æ¯ 298卿¨è¿ä¸ªäºº 3D è®°å¿åºæå»ºçè¿ç¨ä¸ï¼æä»¬ç»å¸¸ä¼éå°ä¸ä¸ªæ£æçé®é¢ï¼æ¥å¸¸éæè®°å½çè§é¢å¾å¾æ¯ä¸å®ç¾çãæä»¬æ æ³åå®éªå®¤é飿 ·ï¼æ¶è®¾ä¸ä¸è®¾å¤å»è·åæ æ»è§ãé«å辨ççç´ æã å¦æåªæä¸æ®µæå°è§è§çææºè§é¢ãæä½ç»è´¨ãåå 䏿»¡å±åçç½å¢ååå å°æ¿ï¼ä¸ç»´é建è¿è½ååï¼ ä¼ ç»ç SfMï¼å¦ COLMAPï¼å¨è¿ç§å¤§é¢ç§¯å¼±çº¹çåºæ¯ä¸å¾å¾ç´æ¥å®£å失败ãä¸ºäºæ¢å¯»å¨æå°ç´ æãæä½è´¨éçæç«¯æ åµä¸çæä½³è§£å³æ¹æ¡ï¼æå¨æ¬å°ï¼RTX 5070 12Gï¼å¯¹ç®å主æµçå ç§ç»å深度å éªç 3DGS Pipeline è¿è¡äºæ¨ªåå¯¹æ¯æµè¯ã 299ç´ æ 300 301ææå¨æï¼OPPO Find X8 302ææç¯å¢ï¼å®¤å åææå ç¯å¢ 303ç´ æè§æ ¼ï¼ä»ææºææè§é¢ä¸æ½å165å¼ çº¦500Ã700çç §çï¼ç¦æ®µ15mm广è§éå¤´ï¼æå°ç´ ææä½è´¨éçæç«¯æ åµï¼ 304 305è®ç»ç¯å¢ 30612600kF + RTX5070 12G + 64G RAM 307åèèµæ 308论æ 309 3103D Gaussian Splatting for Real-Time Radiance Field Rendering - Bernard ...</div></div></div><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl('/posts/88143c5a2f82/') : window.location.href='/posts/88143c5a2f82/'"><div class="recent-post-info no-cover"><div class="recent-post-info-top"><div class="recent-post-info-top-tips"><div class="article-categories-original">项ç®</div><a class="unvisited-post" href="/posts/88143c5a2f82/" title="Nuxt3+Supabaseå ¨æ åºç¨ç§æåé¨ç½²å ¨è®°å½">æªè¯»</a></div><a class="article-title" href="/posts/88143c5a2f82/" title="Nuxt3+Supabaseå ¨æ åºç¨ç§æåé¨ç½²å ¨è®°å½">Nuxt3+Supabaseå ¨æ åºç¨ç§æåé¨ç½²å ¨è®°å½</a></div><div class="article-meta-wrap"><span class="post-meta-date"><i class="anzhiyufont anzhiyu-icon-calendar-days" style="font-size: 15px; display:none"></i><span class="article-meta-label">å表äº</span><time datetime="2026-02-10T08:01:34.000Z" title="åè¡¨äº 2026-02-10 16:01:34" time="2026-02-10 16:01:34">2026-02-10</time><time class="time_hidden" datetime="2026-04-28T16:36:53.146Z" title="æ´æ°äº 2026-04-29 00:36:53" time="2026-04-29 00:36:53">2026-04-29</time></span><span class="article-meta tags"><a class="article-meta__tags" href="/tags/nuxt/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>nuxt</span></a><a class="article-meta__tags" href="/tags/supabase/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>supabase</span></a><a class="article-meta__tags" href="/tags/vps/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>vps</span></a></span></div><div class="content">Nuxt3 + Supabase å ¨æ åºç¨ç§æåé¨ç½²å ¨è®°å½ 311 312æ¬æç± opencode + glm4.7 æ´ç 313 314æç« ç»æ 315æ¬æå为两个主è¦é¨åï¼ 316第ä¸é¨åï¼çæ³ä¹è·¯ ââ æ ååé¨ç½² SOP 317详ç»ä»ç»å¨çæ³æ åµä¸åºè¯¥å¦ä½è¿è¡é¨ç½²ï¼å æ¬ç¯å¢åå¤ãSupabase é ç½®ãæ°æ®è¿ç§»ãNuxt é¨ç½²ç宿´æµç¨
317ã 318第äºé¨åï¼å®æè¸©åå®å½ ââ æ¯ä¸ä¸ªæ¥éèåçè¡æ³ª 319çå®è¿åé¨ç½²è¿ç¨ä¸éå°çåç§é®é¢ï¼ä» Docker å®è£ å¤±è´¥å°æ°æ®åºå¯ç å°ç±ï¼åå°æå»ºä¼åçï¼ä¸ºè¯»è æä¾é¿åæåã 320 321第ä¸é¨åï¼çæ³ä¹è·¯ ââ æ ååé¨ç½² SOP (妿ä¸è¸©åï¼ä½ åºè¯¥è¿æ ·å) 322 323ð¡ æ ¸å¿é»è¾ï¼åºäº Ubuntu 22.04 LTSï¼ä½¿ç¨ Docker Compose ç¼æ Supabaseï¼é å Docker è¿è¡ Nuxt3ï¼å¹¶éè¿ GitHub Actions å®ç°èªå¨åé¨ç½²ï¼æåç± Nginx è¿è¡åå代çå SSL ç»ç»ã 324 325ä¸ã åºç¡è®¾æ½ä¸ç¯å¢åå¤ (Infrastructure) 3261.1 æå¡å¨éåä¸åå§å 327硬件åºåé ç½® 328å¨é¨ç½² Supabase + Nuxt 3 å ¨æ åºç¨æ¶ï¼æå¡å¨é ç½®éè¦ç»¼åèè以 ...</div></div></div><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl('/posts/c66e8d2525fe/') : window.location.href='/posts/c66e8d2525fe/'"><div class="recent-post-info no-cover"><div class="recent-post-info-top"><div class="recent-post-info-top-tips"><div class="article-categories-original">å¦ä¹ </div><a class="unvisited-post" href="/posts/c66e8d2525fe/" title="GAMES101ç¬è®°ï¼ Lecture 01 Overview of Computer Graphics & Lecture 02 Review of Linear Algebra & Lecture 03 Transformation & Lecture 04 Transformation Cont.">æªè¯»</a></div><a class="article-title" href="/posts/c66e8d2525fe/" title="GAMES101ç¬è®°ï¼ Lecture 01 Overview of Computer Graphics & Lecture 02 Review of Linear Algebra & Lecture 03 Transformation & Lecture 04 Transformation Cont.">GAMES101ç¬è®°ï¼ Lecture 01 Overview of Computer Graphics & Lecture 02 Review of Linear Algebra & Lecture 03 Transformation & Lecture 04 Transformation Cont.</a></div><div class="article-meta-wrap"><span class="post-meta-date"><i class="anzhiyufont anzhiyu-icon-calendar-days" style="font-size: 15px; display:none"></i><span class="article-meta-label">å表äº</span><time datetime="2026-02-02T11:11:55.000Z" title="åè¡¨äº 2026-02-02 19:11:55" time="2026-02-02 19:11:55">2026-02-02</time><time class="time_hidden" datetime="2026-04-28T16:36:53.138Z" title="æ´æ°äº 2026-04-29 00:36:53" time="2026-04-29 00:36:53">2026-04-29</time></span><span class="article-meta tags"><a class="article-meta__tags" href="/tags/CG/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>CG</span></a><a class="article-meta__tags" href="/tags/GAMES101/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>GAMES101</span></a><a class="article-meta__tags" href="/tags/GAMES/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>GAMES</span></a></span></div><div class="content">Lecture 03 Transformation 329缩æ¾ç©éµï¼ 330æ å缩æ¾ï¼ 331éåå缩æ¾ï¼ 332 333 334ååï¼ 335 336æè½¬ï¼ 337 338å ¶æ¬¡åæ ï¼Homogenous Coordinates 339为äºè½å¤ç¨ç©éµä¹æ³ç»ä¸è¡¨ç¤ºå¹³ç§»ï¼Translationï¼ï¼å¼å ¥äºç¬¬ä¸ä¸ªåæ åéï¼www åæ ã 3401. åæ è¡¨ç¤ºå®ä¹ 341 3422D ç¹ (2D point)ï¼è¡¨ç¤ºä¸º (x,y,1)T(x, y, 1)^T(x,y,1)T 3432D åé (2D vector)ï¼è¡¨ç¤ºä¸º (x,y,0)T(x, y, 0)^T(x,y,0)T 344 345 346注æï¼www åé为 111 表示ä½ç½®ï¼ç¹ï¼ï¼ä¸º 000 表示æ¹åï¼åéï¼ãè¿æ ·è®¾è®¡çä¸ä¸ªå·§å¦ä¹å¤å¨äºï¼åéå ·æå¹³ç§»ä¸åæ§ï¼å ä¸å¹³ç§»éåï¼www 便§ä¸º 000ï¼ã 347 348 3492. 平移çç©éµè¡¨ç¤º (Matrix representation of translations) 350éè¿ 3Ã33 \times 33Ã3 ç©éµï¼æä»¬å¯ä»¥å°å¹³ç§»æä½åæç©éµä¹æ³å½¢å¼ï¼ 351(xâ²yâ²wâ²)=(10tx01ty001)â (xy1)=(x+txy+ty1)\begin{pmatrix} x' \\ y' \\ ...</div></div></div><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl('/posts/f31cef78598b/') : window.location.href='/posts/f31cef78598b/'"><div class="recent-post-info no-cover"><div class="recent-post-info-top"><div class="recent-post-info-top-tips"><div class="article-categories-original">项ç®</div><a class="unvisited-post" href="/posts/f31cef78598b/" title="CPUæå¡å¨è·LLMå®å½">æªè¯»</a></div><a class="article-title" href="/posts/f31cef78598b/" title="CPUæå¡å¨è·LLMå®å½">CPUæå¡å¨è·LLMå®å½</a></div><div class="article-meta-wrap"><span class="post-meta-date"><i class="anzhiyufont anzhiyu-icon-calendar-days" style="font-size: 15px; display:none"></i><span class="article-meta-label">å表äº</span><time datetime="2026-01-30T14:35:08.000Z" title="åè¡¨äº 2026-01-30 22:35:08" time="2026-01-30 22:35:08">2026-01-30</time><time class="time_hidden" datetime="2026-04-28T16:36:53.118Z" title="æ´æ°äº 2026-04-29 00:36:53" time="2026-04-29 00:36:53">2026-04-29</time></span><span class="article-meta tags"><a class="article-meta__tags" href="/tags/AI/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>AI</span></a><a class="article-meta__tags" href="/tags/LLM/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>LLM</span></a><a class="article-meta__tags" href="/tags/%E6%9C%8D%E5%8A%A1%E5%99%A8/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>æå¡å¨</span></a></span></div><div class="content">1. 硬件é ç½®æ¦åµ 352è¿å°æå¡å¨çé ç½®æ¯è¾ç¹æ®ï¼æ¯å ¸åçä¼ä¸çº§å端æå¡å¨ï¼ 353 354CPU: åè·¯ Intel Xeon Gold 6231ï¼å ±64个é»è¾æ ¸å¿ãæ¯æ AVX-512 æä»¤éã 355å å: 376GiBï¼çº¦384GBï¼ãè¿æ¯è¿å°æºå¨æå¤§çä¼å¿ã 356硬ç: 238GB NVMe åºæç¡¬çï¼ç³»ç»çï¼+ 5å 14.6TB æºæ¢°ç¡¬çï¼æ°æ®çï¼ã 357æ¾å¡: æ ç¬ç«æ¾å¡ã 358 359æ ¸å¿æè·¯ï¼å©ç¨ 384GB çè¶ å¤§å åä½ä¸ºâæ¾åâï¼è¿è¡å¤§åæ°éçé忍¡åã 3602. ç¯å¢æå»ºä¸ç½ç»é¾é¢ 361è¦å¨ Linux ä¸è·æ¨¡åï¼é¦é Ollamaãä½å¨å½å æå¡å¨ä¸å®è£ Ollama ç»å¸¸å¡å¨ä¸è½½ç¯èã 362代çé ç½® 363Ollama çå®è£ èæ¬åæ¨¡ååºé½å¨ GitHub/Amazon S3 ä¸ãæå é¨ç½²äº Hysteria2 客æ·ç«¯ï¼å°å ¶è½¬ä¸ºæ¬å° 8080 端å£ç HTTP 代çã 364卿§è¡å®è£ èæ¬æ¶ï¼å¿ é¡»æå¨æå®ä»£çï¼ 365123export https_proxy=http://127.0.0.1:8080export http_proxy=http://127.0.0.1:8080curl -fsSL https://ollam ...</div></div></div><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl('/posts/87c4bf718838/') : window.location.href='/posts/87c4bf718838/'"><div class="recent-post-info no-cover"><div class="recent-post-info-top"><div class="recent-post-info-top-tips"><div class="article-categories-original">项ç®</div><a class="unvisited-post" href="/posts/87c4bf718838/" title="VSCodeè¿ç¨å¼åæåï¼ä½¿ç¨FRPèªå»ºå ¬ç½ç©¿éä¸å ç½ç´è¿æ¹æ¡">æªè¯»</a></div><a class="article-title" href="/posts/87c4bf718838/" title="VSCodeè¿ç¨å¼åæåï¼ä½¿ç¨FRPèªå»ºå ¬ç½ç©¿éä¸å ç½ç´è¿æ¹æ¡">VSCodeè¿ç¨å¼åæåï¼ä½¿ç¨FRPèªå»ºå ¬ç½ç©¿éä¸å ç½ç´è¿æ¹æ¡</a></div><div class="article-meta-wrap"><span class="post-meta-date"><i class="anzhiyufont anzhiyu-icon-calendar-days" style="font-size: 15px; display:none"></i><span class="article-meta-label">å表äº</span><time datetime="2026-01-15T15:31:46.000Z" title="åè¡¨äº 2026-01-15 23:31:46" time="2026-01-15 23:31:46">2026-01-15</time><time class="time_hidden" datetime="2026-04-28T16:36:53.148Z" title="æ´æ°äº 2026-04-29 00:36:53" time="2026-04-29 00:36:53">2026-04-29</time></span><span class="article-meta tags"><a class="article-meta__tags" href="/tags/vps/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>vps</span></a><a class="article-meta__tags" href="/tags/ssh/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>ssh</span></a><a class="article-meta__tags" href="/tags/vscode/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>vscode</span></a><a class="article-meta__tags" href="/tags/frp/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>frp</span></a></span></div><div class="content">èæ¯ 366VS Code èªå¸¦ç Tunnel åè½åºäº Azure ä¸ç»§æå¡å¨ï¼å¨è·¨å½æç½ç»ç¯å¢å¤æçæ åµä¸ï¼å¦å½å è¿æ¥æµ·å¤ï¼ï¼åå¨é«å»¶è¿ãè¿æ¥ä¸ç¨³å®åä¿åå¡é¡¿çé®é¢ã 367æ¬æç¨ä»ç»å¦ä½å©ç¨ä¸å°å ·æå ¬ç½ IP ç VPSï¼é å弿ºå·¥å · FRP æå»ºç§æç©¿éé§éï¼å®ç°ä½å»¶è¿çè¿ç¨å¼åãåæ¶ä»ç»äºå¨å±åç½ç¯å¢ä¸å¦ä½é ç½®ç´è¿ï¼é¿å æµéç»è¡ã 368æ¶æè¯´æ 369 370æå¡ç«¯ (VPS)ï¼CentOS 9ï¼å ¬ç½ IPï¼ç¤ºä¾ï¼104.168.105.185ï¼ã 371ç®æ æº (Target)ï¼Windows è¿è¡ç WSL (Ubuntu)ï¼å¤äºå ç½ï¼æ å ¬ç½ IPã 372客æ·ç«¯ (Client)ï¼æ¬å°ç¬è®°æ¬ï¼å®è£ VS Codeã 373 374 375第ä¸é¨åï¼VPS æå¡ç«¯é ç½® 376éè¦å¨ VPS ä¸è¿è¡ FRP çæå¡ç«¯ (frps)ï¼ç¨äºä¸è½¬æµéã 3771. ä¸è½½ä¸å®è£ 378ç»å½ VPSï¼ä¸è½½ FRPï¼éæ ¹æ®ç³»ç»æ¶æéæ©ï¼æ¤å¤ä»¥ Linux AMD64 为ä¾ï¼ï¼ 37912345cd ~wget https://github.com/fatedier/frp/releases/download/v0.52.3/frp_0.52.3_linux_amd ...</div></div></div><div class="recent-post-item" onclick="window.pjax ? pjax.loadUrl('/posts/0
379763f8f44d63/') : window.location.href='/posts/0763f8f44d63/'"><div class="recent-post-info no-cover"><div class="recent-post-info-top"><div class="recent-post-info-top-tips"><div class="article-categories-original">项ç®</div><a class="unvisited-post" href="/posts/0763f8f44d63/" title="é对 RackNerd VPS ä¸ä¸å½ç§»å¨åºå£å¸¦å®½éå¶çææ¥ä¸ä¼åæå">æªè¯»</a></div><a class="article-title" href="/posts/0763f8f44d63/" title="é对 RackNerd VPS ä¸ä¸å½ç§»å¨åºå£å¸¦å®½éå¶çææ¥ä¸ä¼åæå">é对 RackNerd VPS ä¸ä¸å½ç§»å¨åºå£å¸¦å®½éå¶çææ¥ä¸ä¼åæå</a></div><div class="article-meta-wrap"><span class="post-meta-date"><i class="anzhiyufont anzhiyu-icon-calendar-days" style="font-size: 15px; display:none"></i><span class="article-meta-label">å表äº</span><time datetime="2026-01-15T15:06:03.000Z" title="åè¡¨äº 2026-01-15 23:06:03" time="2026-01-15 23:06:03">2026-01-15</time><time class="time_hidden" datetime="2026-04-28T16:36:53.236Z" title="æ´æ°äº 2026-04-29 00:36:53" time="2026-04-29 00:36:53">2026-04-29</time></span><span class="article-meta tags"><a class="article-meta__tags" href="/tags/vps/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>vps</span></a><a class="article-meta__tags" href="/tags/RackNerd/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>RackNerd</span></a><a class="article-meta__tags" href="/tags/Hysteria-2/" onclick="event.stopPropagation();"><span> <i class="anzhiyufont anzhiyu-icon-hashtag"></i>Hysteria 2</span></a></span></div><div class="content">é对 RackNerd VPS ä¸ä¸å½ç§»å¨åºå£å¸¦å®½éå¶çææ¥ä¸å©ç¨Hysteria 2ä¼åæå 3801. é®é¢èæ¯ä¸ç°è±¡ 381å¨ä½¿ç¨ RackNerd çç¾è¥¿å»ä»· VPS æ¶ï¼ä¸å½ç§»å¨å®½å¸¦ç¨æ·å¸¸éå°ä»¥ä¸å ¸åç°è±¡ï¼ 382 383åææ£å¸¸ï¼VPS åé¨ç½²å®ææ¶ï¼é常å¨éé«å³°æ¶æ®µï¼ï¼è¿æ¥é度快ï¼å»¶è¿å¯æ¥åã 384åæè¡°åï¼å¨æé«å³°ï¼19:00 - 23:00ï¼æé¨ç½²ä¸æ®µæ¶é´åï¼SSH è¿æ¥å¡é¡¿ï¼æä»¶ä¼ è¾é度è·è³æä½æ°´å¹³ï¼å¦ 0.5Mbps - 2Mbpsï¼ï¼ä¸ä¼´éé«ä¸¢å çã 385å议失æï¼ä½¿ç¨åºäº TCP çåè®®ï¼å¦ VLESS-RealityãVMess-TCPï¼æ¶ï¼å³ä½¿æ´æ¢ç«¯å£æä¼ªè£ ååï¼é度ä¾ç¶æ æ³æ¢å¤ã 386 3872. ææ¥æè·¯ä¸æ ¹å åæ 388å½åºç°ä¸è¿°é®é¢æ¶ï¼éæç §ä»¥ä¸é»è¾è¿è¡ææ¥ï¼ç¡®è®¤æ¯å¦ä¸ºçº¿è·¯æ¥å µå¯¼è´çç©çç¶é¢ã 3892.1 æé¤æ¬å°ä¸æå¡ç«¯é ç½®é®é¢ 390å¨è¿è¡é¾è·¯åæåï¼é确认并éåç¹æ éï¼ 391 392æ¬å°ç½ç»ï¼è®¿é®å½å ç½ç«æå ¶ä»éè·¨å¢æå¡é度æ£å¸¸ï¼æé¤æ¬å°å ç«æè·¯ç±å¨é®é¢ã 393VPS è´è½½ï¼éè¿ top æ htop å½ä»¤æ£æ¥ VPS ç CPU åå åå ç¨ã妿 CPU Steal Time (st) è¾ä½ï¼æé¤âé»å± âå ç¨èµ ...</div></div></div><nav id="pagination"><div class="pagination"><span class="page-number current">1</span><a class="page-number" href="/page/2/#content-inner">2</a><a class="page-number" href="/page/3/#content-inner">3</a><a class="extend next" rel="next" href="/page/2/#content-inner"><div class="pagination_tips_next">ä¸é¡µ</div><i style="font-weight: inherit; font-size: 1rem;" class="anzhiyufont anzhiyu-icon-chevron-right fa-fw"></i></a><div class="toPageGroup"><input id="toPageText" oninput="value=value.replace(/[^0-9]/g,'')" maxlength="3" onkeyup="this.value=this.value.replace(/[^u4e00-u9fa5w]/g,'')" aria-label="toPage"><a id="toPageButton" onclick="anzhiyu.toPage()"><i class="anzhiyufont anzhiyu-icon-angles-right" style="font-weight: inherit; font-size: 1rem;"></i></a></div></div></nav></div><div class="aside-content" id="aside-content"><div class="card-widget card-info"><div class="card-content"><div class="author-info-avatar"><img class="avatar-img" src="https://github.com/tianxingleo.png" onerror="this.onerror=null;this.src='/img/friend_404.gif'" alt="avatar"/></div><div class="author-info__description"><div style="line-height:1.38;margin:0.6rem 0;text-align:justify;color:rgba(255, 255, 255, 0.8);"><b style="color:#fff">è¿æ¯å¤©é©¬è¡ç©ºï¼tianxingleoï¼</b>çblogï¼ç¨äº<b style="color:#fff">è®°å½ãå享ãå¦ä¹ ã交æµ</b></div></div><div class="author-info__bottom-group"><a class="author-info__bottom-group-left" href="/"><h1 class="author-info__name">Tianxingleo</h1><div class="author-info__desc"></div></a><div class="card-info-social-icons is-center"><a class="social-icon faa-parent animated-hover" href="/atom.xml" target="_blank" title="RSS"><i class="anzhiyufont anzhiyu-icon-rss"></i></a></div></div></div></div><div class="card-widget card-announcement"><div class="item-headline"><i class="anzhiyufont anzhiyu-icon-bullhorn anzhiyu-shake"></i><span>å ¬å</span></div><div class="announcement_content">æ¬¢è¿æ¥çæçå客é¸~</div></div><div class="sticky_layout"><div class="card-widget"><div class="card-tags"><div class="item-headline"></div><div class="card-tag-cloud"><a href="/tags/3D%E6%89%93%E5%8D%B0/" style="font-size: 1.05rem;">3Dæå°<sup>1</sup></a><a href="/tags/3dgs/" style="font-size: 1.05rem;">3dgs<sup>7</sup></a><a href="/tags/AI/" style="font-size: 1.05rem;">AI<sup>1</sup></a><a href="/tags/CG/" style="font-size: 1.05rem;">CG<sup>7</sup></a><a href="/tags/CV/" style="font-size: 1.05rem;">CV<sup>6</sup></a><a href="/tags/GAMES/" style="font-size: 1.05rem;">GAMES<sup>1</sup></a><a href="/tags/GAMES101/" style="font-size: 1.05rem;">GAMES101<sup>1</sup></a><a href="/tags/LLM/" style="font-size: 1.05rem;">LLM<sup>1</sup></a><a href="/tags/SDFoam/" style="font-size: 1.05rem;">SDFoam<sup>4</sup></a><a href="/tags/ai/" style="font-size: 1.05rem;">ai<sup>1</sup></a><a href="/tags/c/" style="font-size: 1.05rem;">c<sup>4</sup></a><a href="/tags/cloudflare/" style="font-size: 1.05rem;">cloudflare<sup>1</sup></a><a href="/tags/cpc/" style="font-size: 1.05rem;">cpc<sup>4</sup></a><a href="/tags/cpp/" style="font-size: 1.05rem;">cpp<sup>14</sup></a><a href="/tags/css/" style="font-size: 1.05rem;">css<sup>1</sup></a><a href="/tags/docker/" style="font-size: 1.05rem;">docker<sup>1</sup></a><a href="/tags/frp/" style="font-size: 1.05rem;">frp<sup>1</sup></a><a href="/tags/html/" style="font-size: 1.05rem;">html<sup>1</sup></a><a href="/tags/mask/" style="font-size: 1.05rem;">mask<sup>1</sup></a><a href="/tags/metapi/" style="font-size: 1.05rem;">metapi<sup>1</sup></a><a href="/tags/nerfstudio/" style="font-size: 1.05rem;">nerfstudio<sup>1</sup></a><a href="/tags/nuxt/" style="font-size: 1.05rem;">nuxt<sup>1</sup></a><a href="/tags/sam/" style="font-size: 1.05rem;">sam<sup>1</sup></a><a href="/tags/sam3/" style="font-size: 1.05rem;">sam3<sup>1</sup></a><a href="/tags/ssh/" style="font-size: 1.05rem;">ssh<sup>1</sup></a><a href="/tags/supabase/" style="font-size: 1.05rem;">supabase<sup>1</sup></a><a href="/tags/tic/" style="font-size: 1.05rem;">tic<sup>1</sup></a><a href="/tags/vps/" style="font-size: 1.05rem;">vps<sup>3</sup></a><a href="/tags/vscode/" style="font-size: 1.05rem;">vscode<sup>
3932</sup></a><a href="/tags/wsl2/" style="font-size: 1.05rem;">wsl2<sup>1</sup></a><a href="/tags/yolo/" style="font-size: 1.05rem;">yolo<sup>1</sup></a><a href="/tags/%E4%B8%89%E7%BB%B4%E9%87%8D%E5%BB%BA/" style="font-size: 1.05rem;">ä¸ç»´é建<sup>5</sup></a><a href="/tags/%E5%89%8D%E7%AB%AF/" style="font-size: 1.05rem;">å端<sup>2</sup></a><a href="/tags/%E5%A4%A7%E5%AD%A6/" style="font-size: 1.05rem;">大å¦<sup>11</sup></a><a href="/tags/%E5%AD%A6%E4%B9%A0/" style="font-size: 1.05rem;">å¦ä¹ <sup>6</sup></a><a href="/tags/%E6%8C%87%E9%92%88/" style="font-size: 1.05rem;">æé<sup>2</sup></a><a href="/tags/%E6%90%9C%E7%B4%A2/" style="font-size: 1.05rem;">æç´¢<sup>1</sup></a><a href="/tags/%E6%9C%8D%E5%8A%A1%E5%99%A8/" style="font-size: 1.05rem;">æå¡å¨<sup>1</sup></a><a href="/tags/%E7%AE%97%E6%B3%95/" style="font-size: 1.05rem;">ç®æ³<sup>6</sup></a><a href="/tags/%E9%AB%98%E6%95%B0/" style="font-size: 1.05rem;">髿°<sup>7</sup></a></div></div><hr/><div class="card-archives"><div class="item-headline"><i class="anzhiyufont anzhiyu-icon-archive"></i><span>彿¡£</span></div><ul class="card-archive-list"><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2026/05/"><span class="card-archive-list-date">2026å¹´05æ</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">1</span><span>ç¯</span></div></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2026/04/"><span class="card-archive-list-date">2026å¹´04æ</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">2</span><span>ç¯</span></div></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2026/03/"><span class="card-archive-list-date">2026å¹´03æ</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">1</span><span>ç¯</span></div></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2026/02/"><span class="card-archive-list-date">2026å¹´02æ</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">5</span><span>ç¯</span></div></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2026/01/"><span class="card-archive-list-date">2026å¹´01æ</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">4</span><span>ç¯</span></div></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2025/12/"><span class="card-archive-list-date">2025å¹´12æ</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">18</span><span>ç¯</span></div></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2025/11/"><span class="card-archive-list-date">2025å¹´11æ</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">18</span><span>ç¯</span></div></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2025/10/"><span class="card-archive-list-date">2025å¹´10æ</span><div class="card-archive-list-count-group"><span class="card-archive-list-count">11</span><span>ç¯</span></div></a></li></ul></div><hr/><div class="card-webinfo"><div class="item-headline"><i class="anzhiyufont anzhiyu-icon-chart-line"></i><span>ç½ç«èµè®¯</span></div><div class="webinfo"><div class="webinfo-item"><div class="webinfo-item-title"><i class="anzhiyufont anzhiyu-icon-file-lines"></i><div class="item-name">
393æç« æ»æ° :</div></div><div class="item-count">60</div></div><div class="webinfo-item"><div class="webinfo-item-title"><i class="anzhiyufont anzhiyu-icon-stopwatch"></i><div class="item-name">建ç«å¤©æ° :</div></div><div class="item-count" id="runtimeshow" data-publishDate="2025-10-13T16:00:00.000Z"><i class="anzhiyufont anzhiyu-icon-spinner anzhiyu-spin"></i></div></div><div class="webinfo-item"><div class="webinfo-item-title"><i class="anzhiyufont anzhiyu-icon-universal-access"></i><div class="item-name">æ»è®¿å®¢æ° :</div></div><div class="item-count" id="busuanzi_value_site_uv"><i class="anzhiyufont anzhiyu-icon-spinner anzhiyu-spin"></i></div></div><div class="webinfo-item"><div class="webinfo-item-title"><i class="anzhiyufont anzhiyu-icon-square-poll-vertical"></i><div class="item-name">æ»è®¿é®é :</div></div><div class="item-count" id="busuanzi_value_site_pv"><i class="anzhiyufont anzhiyu-icon-spinner anzhiyu-spin"></i></div></div></div></div></div></div></div></div></main><footer id="footer"><div id="footer-wrap"><div id="anzhiyu-footer"><div class="footer-group"><div class="footer-title">åè®®</div><div class="footer-links"><a class="footer-item" title="éç§æ¿ç" href="/privacy/">éç§æ¿ç</a><a class="footer-item" title="å
³äºæ¬ç«" href="/about/">å
³äºæ¬ç«</a></div></div><div class="footer-group"><div class="footer-title-group"><div class="footer-title">åé¾</div><a class="random-friends-btn" id="footer-random-friends-btn" href="javascript:addFriendLinksInFooter();" title="æ¢ä¸æ¹åæ
龿¥"><i class="anzhiyufont anzhiyu-icon-arrow-rotate-right"></i></a></div><div class="footer-links" id="friend-links-in-footer"></div></div></div></div><div id="footer-bar"><div class="footer-bar-links"><div class="footer-bar-left"><div id="footer-bar-tips"><div class="copyright">©2025 - 2026 By <a class="footer-bar-link" href="/" title="Tianxingleo" target="_blank">Tianxingleo</a></div></div><div id="footer-type-tips"></div></div><div class="footer-bar-right"><a class="footer-bar-link" target="_blank" rel="noopener" href="https://github.com/anzhiyu-c/hexo-theme-anzhiyu" title="主é¢">主é¢</a><a class="footer-bar-link" href="/privacy/" title="éç§æ¿ç">éç§æ¿ç</a><a class="footer-bar-link" href="/about/" title="å
³äº">å
³äº</a></div></div></div></footer></div><div id="sidebar"><div id="menu-mask"></div><div id="sidebar-menus"><div class="sidebar-site-data site-data is-center"><a href="/archives/" title="archive"><div class="headline">æç« </div><div class="length-num">60</div></a><a href="/tags/" title="tag"><div class="headline">æ ç¾</div><div class="length-num">97</div></a><a href="/categories/" title="category"><div class="headline">åç±»</div><div class="length-num">4</div></a></div><span class="sidebar-menu-item-title">åè½</span><div class="sidebar-menu-item"><a class="darkmode_switchbutton menu-child" href="javascript:void(0);" title="æ¾ç¤ºæ¨¡å¼"><i class="anzhiyufont anzhiyu-icon-circle-half-stroke"></i><span>æ¾ç¤ºæ¨¡å¼</span></a></div><div class="back-menu-list-groups"><div class="back-menu-list-group"><div class="back-menu-list-title">ç½é¡µ</div><div class="back-menu-list"><a class="back-menu-item" target="_blank" rel="noopener" href="https://tianxingleo.github.io" title="å客"><img class="back-menu-item-icon" src="https://avatars.githubusercontent.com/u/237200863?v=4" alt="å客"/><span class="back-menu-item-text">å客</span></a></div></div><div class="back-menu-list-group"><div class="back-menu-list-title">项ç®</div><div class="back-menu-list"><a class="back-menu-item" target="_blank" rel="noopener" href="https://acgti.tianxingleo.top" title="ACGTI"><img class="back-menu-item-icon" src="https://acgti.tianxingleo.top/favicon.svg" alt="ACGTI"/><span class="back-menu-item-text">ACGTI</span></a><a class="back-menu-item" target="_blank" rel="noopener" href="https://github.com/tianxingleo" title="Github"><img class="back-menu-item-icon" src="https://github.githubassets.com/assets/GitHub-Mark-ea2971cee799.png" alt="Github"/><span class="back-menu-item-text">Github</span></a></div></div></div><div class="menus_items"><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span> é¦é¡µ</span></a><ul class="menus_item_child"><li><a class="site-page child faa-parent animated-hover" href="/"><i class="anzhiyufont anzhiyu-icon-home faa-tada" style="font-size: 0.9em;"></i><span> é¦é¡µ</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span> æç« </span></a><ul class="menus_item_child"><li><a class="site-page child faa-parent animated-hover" href="/archives/"><i class="anzhiyufont anzhiyu-icon-box-archive faa-tada" style="font-size: 0.9em;"></i><span> 彿¡£</span></a></li><li><a class="site-page child faa-parent animated-hover" href="/categories/"><i class="anzhiyufont anzhiyu-icon-shapes faa-tada" style="font-size: 0.9em;"></i><span> åç±»</span></a></li><li><a class="site-page child faa-parent animated-hover" href="/tags/"><i class="anzhiyufont anzhiyu-icon-tags faa-tada" style="font-size: 0.9em;"></i><span> æ ç¾</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span> åé¾</span></a><ul class="menus_item_child"><li><a class="site-page child faa-parent animated-hover" href="/link/"><i class="anzhiyufont anzhiyu-icon-link faa-tada" style="font-size: 0.9em;"></i><span> å人å¸</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span> å
³äº</span></a><ul class="menus_item_child"><li><a class="site-page child faa-parent animated-hover" href="/about/"><i class="anzhiyufont anzhiyu-icon-paper-plane faa-tada" style="font-size: 0.9em;"></i><span> å
³äºæ¬äºº</span></a></li><li><a class="site-page child faa-parent animated-hover" href="/privacy/"><i class="anzhiyufont anzhiyu-icon-shield faa-tada" style="font-size: 0.9em;"></i><span> éç§æ¿ç</span></a></li><li><a class="site-page child faa-parent animated-hover" href="javascript:toRandomPost()"><i class="anzhiyufont anzhiyu-icon-shoe-prints1 faa-tada" style="font-size: 0.9em;"></i><span> é便éé</span></a></li></ul></div></div><span class="sidebar-menu-item-title">æ ç¾</span><div class="card-tags"><div class="item-headline"></div><div class="card-tag-cloud"><a href="/tags/3D%E6%89%93%E5%8D%B0/" style="font-size: 0.88rem;">3Dæå°<sup>1</sup></a><a href="/tags/3dgs/" style="font-size: 0.88rem;">3dgs<sup>7</sup></a><a href="/tags/AI/" style="font-size: 0.88rem;">AI<sup>1</sup></a><a href="/tags/CG/" style="font-size: 0.88rem;">CG<sup>7</sup></a><a href="/tags/CV/" style="font-size: 0.88rem;">CV<sup>6</sup></a><a href="/tags/GAMES/" style="font-size: 0.88rem;">GAMES<sup>1</sup></a><a href="/tags/GAMES101/" style="font-size: 0.88rem;">GAMES101<sup>1</sup></a><a href="/tags/LLM/" style="font-size: 0.88rem;">LLM<sup>1</sup></a><a href="/tags/SDFoam/" style="font-size: 0.88rem;">SDFoam<sup>4</sup></a><a href="/tags/ai/" style="font-size: 0.88rem;">ai<sup>1</sup></a><a href="/tags/c/" style="font-size: 0.88rem;">c<sup>4</sup></a><a href="/tags/cloudflare/" style="font-size: 0.88rem;">cloudflare<sup>1</sup></a><a href="/tags/cpc/" style="font-size: 0.88rem;">cpc<sup>4</sup></a><a href="/tags/cpp/" style="font-size: 0.88rem;">cpp<sup>14</sup></a><a href="/tags/css/" style="font-size: 0.88rem;">css<sup>1</sup></a><a href="/tags/docker/" style="font-size: 0.88rem;">docker<sup>1</sup></a><a href="/tags/frp/" style="font-size: 0.88rem;">frp<sup>1</sup></a><a href="/tags/html/" style="font-size: 0.88rem;">html<sup>1</sup></a><a href="/tags/mask/" style="font-size: 0.88rem;">mask<sup>1</sup></a><a href="/tags/metapi/" style="font-size: 0.88rem;">metapi<sup>1</sup></a><a href="/tags/nerfstudio/" style="font-size: 0.88rem;">nerfstudio<sup>1</sup></a><a href="/tags/nuxt/" style="font-size: 0.88rem;">nuxt<sup>1</sup></a><a href="/tags/sam/" style="font-size: 0.88rem;">sam<sup>1</sup></a><a href="/tags/sam3/" style="font-size: 0.88rem;">sam3<sup>1</sup></a><a href="/tags/ssh/" style="font-size: 0.88rem;">ssh<sup>1</sup></a><a href="/tags/supabase/" style="font-size: 0.88rem;">supabase<sup>1</sup></a><a href="/tags/tic/" style="font-size: 0.88rem;">tic<sup>1</sup></a><a href="/tags/vps/" style="font-size: 0.88rem;">vps<sup>3</sup></a><a href="/tags/vscode/" style="font-size: 0.88rem;">vscode<sup>
3932</sup></a><a href="/tags/wsl2/" style="font-size: 0.88rem;">wsl2<sup>1</sup></a><a href="/tags/yolo/" style="font-size: 0.88rem;">yolo<sup>1</sup></a><a href="/tags/%E4%B8%89%E7%BB%B4%E9%87%8D%E5%BB%BA/" style="font-size: 0.88rem;">ä¸ç»´é建<sup>5</sup></a><a href="/tags/%E5%89%8D%E7%AB%AF/" style="font-size: 0.88rem;">å端<sup>2</sup></a><a href="/tags/%E5%A4%A7%E5%AD%A6/" style="font-size: 0.88rem;">大å¦<sup>11</sup></a><a href="/tags/%E5%AD%A6%E4%B9%A0/" style="font-size: 0.88rem;">å¦ä¹ <sup>6</sup></a><a href="/tags/%E6%8C%87%E9%92%88/" style="font-size: 0.88rem;">æé<sup>2</sup></a><a href="/tags/%E6%90%9C%E7%B4%A2/" style="font-size: 0.88rem;">æç´¢<sup>1</sup></a><a href="/tags/%E6%9C%8D%E5%8A%A1%E5%99%A8/" style="font-size: 0.88rem;">æå¡å¨<sup>1</sup></a><a href="/tags/%E7%AE%97%E6%B3%95/" style="font-size: 0.88rem;">ç®æ³<sup>6</sup></a><a href="/tags/%E9%AB%98%E6%95%B0/" style="font-size: 0.88rem;">髿°<sup>7</sup></a></div></div><hr/></div></div><div id="rightside"><div id="rightside-config-hide"><button id="translateLink" type="button" title="ç®ç¹è½¬æ¢">ç¹</button><button id="darkmode" type="button" title="æµ
è²åæ·±è²æ¨¡å¼è½¬æ¢"><i class="anzhiyufont anzhiyu-icon-circle-half-stroke"></i></button><button id="hide-aside-btn" type="button" title="åæ ååæ åæ¢"><i class="anzhiyufont anzhiyu-icon-arrows-left-right"></i></button></div><div id="rightside-config-show"><button id="rightside-config" type="button" title="设置"><i class="anzhiyufont anzhiyu-icon-gear"></i></button><button id="go-up" type="button" title="åå°é¡¶é¨"><i class="anzhiyufont anzhiyu-icon-arrow-up"></i></button></div></div><div id="algolia-search"><div class="search-dialog"><nav class="search-nav"><span class="search-dialog-title">æç´¢</span><button class="search-close-button"><i class="anzhiyufont anzhiyu-icon-xmark"></i></button></nav><div class="search-wrap"><div id="algolia-search-input"></div><hr/><div id="algolia-search-results"><div id="algolia-hits"></div><div id="algolia-pagination"></div><div id="algolia-info"><div class="algolia-stats"></div><div class="algolia-poweredBy"></div></div></div></div></div><div id="search-mask"></div></div><div id="rightMenu"><div class="rightMenu-group rightMenu-small"><div class="rightMenu-item" id="menu-backward"><i class="anzhiyufont anzhiyu-icon-arrow-left"></i></div><div class="rightMenu-item" id="menu-forward"><i class="anzhiyufont anzhiyu-icon-arrow-right"></i></div><div class="rightMenu-item" id="menu-refresh"><i class="anzhiyufont anzhiyu-icon-arrow-rotate-right" style="font-size: 1rem;"></i></div><div class="rightMenu-item" id="menu-top"><i class="anzhiyufont anzhiyu-icon-arrow-up"></i></div></div><div class="rightMenu-group rightMenu-line rightMenuPlugin"><div class="rightMenu-item" id="menu-copytext"><i class="anzhiyufont anzhiyu-icon-copy"></i><span>å¤å¶é䏿æ¬</span></div><div class="rightMenu-item" id="menu-pastetext"><i class="anzhiyufont anzhiyu-icon-paste"></i><span>ç²è´´ææ¬</span></div><a class="rightMenu-item" id="menu-commenttext"><i class="anzhiyufont anzhiyu-icon-comment-medical"></i><span>å¼ç¨å°è¯è®º</span></a><div class="rightMenu-item" id="menu-newwindow"><i class="anzhiyufont anzhiyu-icon-window-restore"></i><span>æ°çªå£æå¼</span></div><div class="rightMenu-item" id="menu-copylink"><i class="anzhiyufont anzhiyu-icon-link"></i><span>å¤å¶é¾æ¥å°å</span></div><div class="rightMenu-item" id="menu-copyimg"><i class="anzhiyufont anzhiyu-icon-images"></i><span>å¤å¶æ¤å¾ç</span></div><div class="rightMenu-item" id="menu-downloadimg"><i class="anzhiyufont anzhiyu-icon-download"></i><span>ä¸è½½æ¤å¾ç</span></div><div class="rightMenu-item" id="menu-newwindowimg"><i class="anzhiyufont anzhiyu-icon-window-restore"></i><span>æ°çªå£æå¼å¾ç</span></div><div class="rightMenu-item" id="menu-search"><i class="anzhiyufont anzhiyu-icon-magnifying-glass"></i><span>ç«å
æç´¢</span></div><div class="rightMenu-item" id="menu-searchBaidu"><i class="anzhiyufont anzhiyu-icon-magnifying-glass"></i><span>ç¾åº¦æç´¢</span></div><div class="rightMenu-item" id="menu-music-toggle"><i class="anzhiyufont anzhiyu-icon-play"></i><span>ææ¾é³ä¹</span></div><div class="rightMenu-item" id="menu-music-back"><i class="anzhiyufont anzhiyu-icon-backward"></i><span>忢å°ä¸ä¸é¦</span></div><div class="rightMenu-item" id="menu-music-forward"><i class="anzhiyufont anzhiyu-icon-forward"></i><span>忢å°ä¸ä¸é¦</span></div><div class="rightMenu-item" id="menu-music-playlist" onclick="window.open("https://y.qq.com/n/ryqq/playlist/8802438608", "_blank");" style="display: none;"><i class="anzhiyufont anzhiyu-icon-radio"></i><span>æ¥çææææ²</span></div><div class="rightMenu-item" id="menu-music-copyMusicName"><i class="anzhiyufont anzhiyu-icon-copy"></i><span>å¤å¶æå</span></div></div><div class="rightMenu-group rightMenu-line rightMenuOther"><a class="rightMenu-item menu-link" id="menu-randomPost"><i class="anzhiyufont anzhiyu-icon-shuffle"></i><span>é便éé</span></a><a class="rightMenu-item menu-link" href="/categories/"><i class="anzhiyufont anzhiyu-icon-cube"></i><span>å客åç±»</span></a><a class="rightMenu-item menu-link" href="/tags/"><i class="anzhiyufont anzhiyu-icon-tags"></i><span>æç« æ ç¾</span></a></div><div class="rightMenu-group rightMenu-line rightMenuOther"><a class="rightMenu-item" id="menu-copy" href="javascript:void(0);"><i class="anzhiyufont anzhiyu-icon-copy"></i><span>å¤å¶å°å</span></a><a class="rightMenu-item" id="menu-commentBarrage" href="javascript:void(0);"><i class="anzhiyufont anzhiyu-icon-message"></i><span class="menu-commentBarrage-text">å
³éçè¯</span></a><a class="rightMenu-item" id="menu-darkmode" href="javascript:void(0);"><i class="anzhiyufont anzhiyu-icon-circle-half-stroke"></i><span class="menu-darkmode-text">æ·±è²æ¨¡å¼</span></a><a class="rightMenu-item" id="menu-translate" href="javascript:void(0);"><i class="anzhiyufont anzhiyu-icon-language"></i><span>è½çºç¹é«</span></a></div></div><div id="rightmenu-mask"></div><div>
393<script src="/js/utils.js"></script>
393<script src="/js/main.js"></script>
393<script src="/js/tw_cn.js"></script>
393<script src="https://cdn.cbd.int/@fancyapps/[email protected]/dist/fancybox/fancybox.umd.js"></script>
393<script src="https://cdn.cbd.int/[email protected]/dist/lazyload.iife.min.js"></script>
393<script src="https://cdn.cbd.int/[email protected]/dist/snackbar.min.js"></script>
393<canvas id="universe"></canvas>
393<script async src="https://npm.elemecdn.com/[email protected]/dark/dark.js"></script>
393<script>// æ¶é¤æ§å¶å°æå° 394var HoldLog = console.log; 395console.log = function () {}; 396let now1 = new Date(); 397queueMicrotask(() => { 398 const Log = function () { 399 HoldLog.apply(console, arguments); 400 }; //卿¢å¤åè¾åºæ¥å¿ 401 const grt = new Date("Tue Oct 14 2025 00:00:00 GMT+0800 (馿¸¯æ åæ¶é´)"); //æ¤å¤ä¿®æ¹ä½ çå»ºç«æ¶é´æè ç½ç«ä¸çº¿æ¶é´ 402 now1.setTime(now1.getTime() + 250); 403 const days = (now1 - grt) / 1000 / 60 / 60 / 24; 404 const dnum = Math.floor(days); 405 const ascll = [ 406 `欢è¿ä½¿ç¨å®ç¥é±¼!`, 407 `çæ´»ææ, ä¸ç©å¯ç±`, 408 ` 409 410 ââââââ ââââ ââââââââââââââ âââââââââ ââââââ âââ 411 âââââââââââââ ââââââââââââââ ââââââââââ âââââââ âââ 412 ââââââââââââââ âââ âââââ âââââââââââ âââââââ âââ âââ 413 ââââââââââââââââââ âââââ âââââââââââ âââââ âââ âââ 414 âââ ââââââ âââââââââââââââââ ââââââ âââ âââââââââ 415 âââ ââââââ ââââââââââââââââ ââââââ âââ âââââââ 416 417 `, 418 "å·²ä¸çº¿", 419 dnum, 420 "天", 421 "©2025 By å®ç¥é±¼ V1.6.14", 422 ]; 423 const ascll2 = [`NCC2-036`, `è°ç¨åç½®æå头æç §æåï¼è¯å«ä¸ºãå°ç¬¨èã.`, `Photo captured: `, `ð¤ª`]; 424 425 setTimeout( 426 Log.bind( 427 console, 428 `\n%c${ascll[0]} %c ${ascll[1]} %c ${ascll[2]} %c${ascll[3]}%c ${ascll[4]}%c ${ascll[5]}\n\n%c ${ascll[6]}\n`, 429 "color:#425AEF", 430 "", 431 "color:#425AEF", 432 "color:#425AEF", 433 "", 434 "color:#425AEF", 435 "" 436 ) 437 ); 438 setTimeout( 439 Log.bind( 440 console, 441 `%c ${ascll2[0]} %c ${ascll2[1]} %c \n${ascll2[2]} %c\n${ascll2[3]}\n`, 442 "color:white; background-color:#4fd953", 443 "", 444 "", 445 'background:url("https://npm.elemecdn.com/[email protected]/img/post/common/tinggge.gif") no-repeat;font-size:450%' 446 ) 447 ); 448 449 setTimeout(Log.bind(console, "%c WELCOME %c ä½ å¥½ï¼å°ç¬¨è.", "color:white; background-color:#4f90d9", "")); 450 451 setTimeout( 452 console.warn.bind( 453 console, 454 "%c â¡ Powered by å®ç¥é±¼ %c ä½ æ£å¨è®¿é® Tianxingleo çå客.", 455 "color:white; background-color:#f0ad4e", 456 "" 457 ) 458 ); 459 460 setTimeout(Log.bind(console, "%c W23-12 %c ä½ å·²æå¼æ§å¶å°.", "color:white; background-color:#4f90d9", "")); 461 462 setTimeout( 463 console.warn.bind(console, "%c S013-782 %c ä½ ç°å¨æ£å¤äºçæ§ä¸.", "color:white; background-color:#d9534f", "") 464 ); 465});</script>
465<script async src="/anzhiyu/random.js"></script>
465<script src="https://cdn.cbd.int/[email protected]/dist/algoliasearch-lite.umd.js"></script>
465<script src="https://cdn.cbd.int/[email protected]/dist/instantsearch.production.min.js"></script>
465<script src="/js/search/algolia.js"></script>
465<div class="js-pjax">
465<script>(() => { 466 const $mermaid = document.querySelectorAll('#article-container .mermaid-wrap') 467 if ($mermaid.length === 0) return 468 const runMermaid = () => { 469 window.loadMermaid = true 470 const theme = document.documentElement.getAttribute('data-theme') === 'dark' ? 'dark' : 'default' 471 472 Array.from($mermaid).forEach((item, index) => { 473 const mermaidSrc = item.firstElementChild 474 const mermaidThemeConfig = '%%{init:{ \'theme\':\'' + theme + '\'}}%%\n' 475 const mermaidID = 'mermaid-' + index 476 const mermaidDefinition = mermaidThemeConfig + mermaidSrc.textContent 477 478 const renderFn = mermaid.render(mermaidID, mermaidDefinition) 479 480 const renderV10 = () => { 481 renderFn.then(({svg}) => { 482 mermaidSrc.insertAdjacentHTML('afterend', svg) 483 }) 484 } 485 486 const renderV9 = svg => { 487 mermaidSrc.insertAdjacentHTML('afterend', svg) 488 } 489 490 typeof renderFn === 'string' ? renderV9(renderFn) : renderV10() 491 }) 492 } 493 494 const loadMermaid = () => { 495 window.loadMermaid ? runMermaid() : getScript('https://cdn.cbd.int/[email protected]/dist/mermaid.min.js').then(runMermaid) 496 } 497 498 anzhiyu.addGlobalFn('themeChange', runMermaid, 'mermaid') 499 500 window.pjax ? loadMermaid() : document.addEventListener('DOMContentLoaded', loadMermaid) 501})()</script>
501<input type="hidden" name="page-type" id="page-type" value="anzhiyu"></div>
501<script>var visitorMail = ""; 502</script>
502<script async data-pjax src="https://cdn.cbd.int/[email protected]/waterfall/waterfall.js"></script>
502<script src="https://lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/qrcodejs/1.0.0/qrcode.min.js"></script>
502<link rel="stylesheet" href="https://cdn.cbd.int/[email protected]/icon/ali_iconfont_css.css">
502<script async data-pjax src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>
502<script charset="UTF-8" src="https://cdn.cbd.int/[email protected]/accesskey/accesskey.js"></script>
502</div><div id="popup-window"><div class="popup-window-title">éç¥</div><div class="popup-window-divider"></div><div class="popup-window-content"><div class="popup-tip">ä½ å¥½å</div><div class="popup-link"><i class="anzhiyufont anzhiyu-icon-arrow-circle-right"></i></div></div></div>
502<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"9e25fd688ffb436a9ef3b57b2fc6077e","r":1,"spa":2}' crossorigin="anonymous"></script>
502 503</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.