《生資料顯影術》:從未整理的資料中,看見板塊變化、摩擦與隱藏關聯
這陣子,我把不少時間花在用 AI 分析大量、尚未整理的原始資料。如果資料本身已有分類,我會觀察不同類別之間是否出現變化或新的摩擦;也會利用向量與語意搜尋,找出只靠關鍵字無法發現的訊息。
但我愈做愈發現,真正的瓶頸不在演算法,而在於多數人取得原始資料後,很快就用既有分類把它們固定下來。我把這種現象稱為「結塊」。因此,這堂課的第一步不是分析,而是先拆開這些既有分類。本文記錄的,就是我如何把這套想法設計成一日工作坊。
〇、執行摘要(TL;DR)
1. 這是一堂「非功能型」課程。 功能型課程讓學員學會一項操作,例如撰寫提示詞或進行語意搜尋;非功能型課程則讓學員更了解自己的觀察方式,例如自己特別容易注意到虛偽、不便或慾望。兩者沒有優劣之分:前者強調效率,後者強調自我定位與差異化。
2. 這堂課承諾的成果不是一項功能,而是一張地圖。 學員會帶走一份**「我的敏感度地圖」**、一套個人化的顯影提示詞,以及回家後可以自行練習的方法。這些成果不會自動替學員完成分析,而是協助他建立自己的觀察框架。
3. 核心主張只有一句:趨勢不一定要靠預測,它可能早已出現在原始資料裡。 就像影像早已留在底片上;如果太快分類、歸納與收斂,反而可能遮住重要訊號。先保留資料原貌,再逐步「顯影」,才有機會看見別人忽略的變化。這套方法的紀律只有三條:整批閱讀(完整讀取、不抽樣)、禁止過早分類、先展開再收斂。
4. 教學順序沿著一條因果鏈展開。 原始資料帶有既成分類 → 先拆開分類 → 利用敏感度地圖建立個人觀察角度 → 產出個人化的資料解讀 → 最後才偵測板塊變化與新的摩擦。這條因果關係也決定了課程順序。
5. 副標不只是招生文案,也是課程地圖。 板塊變化、新的摩擦與隱藏關聯,分別對應第 6 段的三種偵測方法。學員上完課後,應該能清楚知道每一項承諾如何在課程中實現。
一、先說清楚這是什麼課:功能型與非功能型
在談任何課綱之前,我覺得必須先把兩種課的差異拆開,因為它們的賣點、目標、甚至驗收標準都不一樣:
| 功能型課程 | 非功能型課程(本課) | |
|---|---|---|
| 學完的內化結果 | 「我會做 X」 | 「我知道我是誰」 |
| 範例 | 會寫提示詞、會做語意搜尋 | 我對虛偽、不便或慾望特別敏感 |
| 賣點 | 效率 | 自我定位與差異化 |
| 成果物 | 一項技能或一套可執行的流程 | 一張個人的「敏感度地圖」 |
《生資料顯影術》是一堂非功能型課程。它的成果不是「學完就會自動執行輿情分析」,而是「面對同一批原始資料時,你清楚知道自己的注意力會停在哪裡,又容易忽略哪些訊號」。
這個區別很重要:功能型課程關心的是「能不能做得更快」,非功能型課程關心的是「每個人看見了什麼不同的訊號」。因此,學員離開時不會帶走同一份標準答案,而會形成各自的觀察框架。
公司負責人通常不需要理解每一種演算法,他們更在意三件事,而這三件事正好對應課程副標:
- 板塊移動 = 產業趨勢轉變、消費者需求轉向、競品策略改變
- 新的摩擦 = 客戶抱怨集中點、供應鏈瓶頸、新興的公關危機或競爭阻力
- 關鍵字找不到的隱藏關聯 = 利用向量與語意搜尋,從大量資料中找出用詞不同、意義卻彼此相關的訊號
這堂課要做的,就是把 AI 商業情報分析與非結構化資料探勘,轉化成公司負責人與創業者看得懂、用得上,也能逐漸內化成個人觀察能力的方法。
二、核心主張:顯影,不是預知
這堂課的靈魂是一句否定式的開場:
「這不是預知,而是 AI 協助你看見原本看不到的東西。」
我用了兩套隱喻分工,把這句話撐起來。它們不是裝飾,各自負責不同的論證工作:
graph LR
A["暗房系|門面
底片 · 顯影液 · 影像
解釋『為什麼不是預知』
『為什麼每人結果不同』"]
B["烹飪/地質系|引擎
生 · 結塊 · 板塊 · 摩擦
負責操作層的精確定義"]
A -.->|"第 1 段收尾正式接軌
底片蒙殼 = 資料結塊"| B
- 暗房系(門面):底片、顯影液、影像。負責解釋「為什麼不是預知」和「為什麼每個人結果不同」。
- 烹飪/地質系(引擎):生、結塊、板塊、摩擦。負責操作層的精確定義。
兩套隱喻在第 1 段收尾正式接軌——底片蒙著殼 = 資料結塊。之後全課混用,但各司其職。
整套主張濃縮成一段話:
「理想上,完整蒐集回來的原始資料就像一張底片,觀察對象發生的事都已經留在上面。現實是,這張底片蒙著一層殼:不同來源的語氣、單一事件造成的偏差,以及既有共識形成的限制。趨勢不一定要靠預知,它可能早已留在底片上;你需要的是顯影——把外殼溶開,讓原本存在卻看不見的影像浮現。這堂課教的,就是如何顯影。」
三、全課的因果鏈:教學順序由此展開
這條鏈是整堂課的主軸。八個段落並非套用「先講理論、再做實作」的通用模板,而是依照以下因果關係排列:
graph TD
S0["理想:完整蒐集、尚未結塊的原始資料
(一張完整的底片)"]
S1["現實:資料誕生那一刻
就帶著原生結塊
(底片蒙著殼)"]
S2["第一步不是分析,是『去塊』
(把殼溶掉)"]
S3["去塊靠的不是通用公式
是你的『敏感度地圖』
——你的顯影液配方"]
S4["產出『個人的』不結塊資料
(同一張底片,不同配方,顯出不同影像)"]
S5["影像浮現,才看得見
板塊移動 · 新的摩擦 · 隱藏關聯
——那就是看不見的趨勢"]
S0 --> S1 --> S2 --> S3 --> S4 --> S5
style S0 fill:#dcfce7,stroke:#15803d
style S1 fill:#fee2e2,stroke:#b91c1c
style S2 fill:#fef9c3,stroke:#a16207
style S3 fill:#dbeafe,stroke:#1d4ed8
style S4 fill:#ede9fe,stroke:#7c3aed
style S5 fill:#dcfce7,stroke:#15803d
其中有兩個位置由因果關係決定,不宜任意更動順序:
- 敏感度地圖必須在午休後、實作前——它的原料是上午盲測的行為紀錄,它的角色是下午實作的濾鏡規格書。提前或挪後都會失去支點。
- 板塊偵測必須在去塊之後——不先溶殼,你看到的會是表面的既成結構(結塊),而不是深層結構(板塊)。
這個順序不是單憑教學偏好決定,而是由前後依賴關係推導出來。調整段落之前,必須先確認不會破壞這兩個關係。
四、課綱總覽:一日工作坊,八段結構
時間:一日工作坊,約 7 小時(含午休)。
對象:希望從大量雜訊中看出變化與機會的公司負責人或創業者。
| 段 | 主題 | 時間 | 它在因果鏈上的位置 |
|---|---|---|---|
| 1 | 親自感受資料如何結塊 | 50 分鐘 | 確立「資料帶有既成分類」 |
| 2 | 盲測——蒐集敏感度原始訊號 | 60 分鐘 | 蒐集顯影液配方的原料 |
| 3 | 頓悟時刻——同一張底片,不同的影像 | 45 分鐘 | 證明「個人的不結塊資料」存在 |
| — | 午休 | 60 分鐘 | — |
| 4 | 調配顯影液——畫出敏感度地圖初版 | 40 分鐘 | 把原料轉譯成濾鏡規格書 |
| 5 | 顯影實作——三步驟去塊法 | 80 分鐘 | 核心實作:溶殼 |
| 6 | 讀影像——板塊、摩擦與隱藏關聯 | 60 分鐘 | 兌現副標三項承諾 |
| 7 | 反駁我——檢查配方的盲區 | 45 分鐘 | 顯影液的第一次修訂 |
| 8 | 產出與回家配方 | 30 分鐘 | 帶走三項成果 |
| — | 收尾 | 10 分鐘 | 呼應開場,收束全課 |
貫穿全課的設計原則:體驗先於詞彙。結塊要撞上才命名、感知差異要看見才命名、顯影隱喻要撞完結塊才立起、盲區要被反駁才寫進地圖。沒有任何一個核心概念是用講義「講」進去的。
五、逐段展開
第 1 段|親自感受資料如何結塊(50 分鐘)
目標:不急著用講義解釋「什麼是結塊」,而是先讓學員親自遇到問題,再替這個現象命名。
操作:
- 提供一批尚未整理的原始資料:某產品發生公關危機期間的 500 筆文字,包含新聞、PTT、Dcard 與客服信件。
- 第一次體驗——人腦結塊:給學員 5 分鐘進行人工分類。他們通常會立刻貼上「客訴」「酸民」或「新聞」等標籤。
- 第二次體驗——AI 結塊:請學員把整批資料交給 AI,並要求它「彙整這次事件的輿情」。最後通常會得到一份看似完整、實際上缺乏洞察的摘要。
- 將兩個結果並排,問學員:「這份報告對公司負責人有用嗎?為什麼?」
- 此刻才命名:
「人工分類和缺乏脈絡的 AI 摘要,其實都在做同一件事:把資料重新結塊。分類看似整齊,卻可能把真正值得追問的訊號藏起來。」
收尾講解:結塊的三種原生形態
- 來源結塊:PTT 的酸民文化、Dcard 的學生語氣、客服信的制式抱怨——資料來源自帶的口吻。
- 事件結塊:公關危機那幾天,所有資料被同一個關鍵字集體污染、凝固。
- 語意慣性結塊:流行語和刻板印象形成的共識硬殼,把底層真正的摩擦蓋在下面。
第 1 段結束時,再正式帶入全課的主要隱喻(見第二節引言)。此時兩套隱喻接軌:底片蒙著殼,對應資料已經結塊。
第 2 段|盲測——蒐集你的敏感度原始訊號(60 分鐘)
目標:記錄每個人在未受提示時自然形成的注意力路徑,作為敏感度地圖的原料。這張地圖不能只靠問卷填寫,而要從實際行為中整理出來。
操作:
- 全員拿到另一批生資料(300–500 筆,與第 1 段素材完全不同領域——第 1 段的例子不能變成這一輪的錨)。
- 每個人獨立閱讀,不使用 AI,也不與其他人討論,只留下三種紀錄:
- 我第一眼注意到什麼?
- 我最想追問什麼?
- 哪些資料讓我覺得不對勁?
- 紀錄即時上繳。原始紀錄的價值在它未受任何框架污染——這是敏感度地圖的地質探勘資料。
為什麼要準備兩套不同領域的素材?因為如果沿用第 1 段的示範資料,學員容易模仿講師的觀察角度,無法呈現自己的注意力路徑。多準備一套素材,可以降低這種影響。
第 3 段|頓悟時刻——同一張底片,不同的影像(45 分鐘)
目標:全課的頓悟時刻,同時是「個人的不結塊資料」這個概念的現場證明。
操作:
- 匿名並排投影差異最大的 6–8 份紀錄。
- 帶全班比較:誰先看到利益衝突?誰先注意到流程卡點?誰在追蹤情緒與關係?誰已經下結論?誰仍保留其他可能?
- 只並置,不評分。 明確講:「沒有人看錯。你們接收到的是不同的訊號。」
- 接到核心概念:
「同一張底片,每個人顯出的影像都不一樣,因為你們使用的顯影液配方不同。你對什麼敏感,就比較容易看清楚那一類訊號。這也是為什麼拆解既有分類沒有一套通用公式。AI 的角色,是把你的觀察方式套用到十萬筆資料上。在這堂課裡,AI 不只是自動化工具,更是個人觀察能力的放大器。」
第 4 段|調配顯影液——畫出敏感度地圖初版(40 分鐘)
目標:把上午的行為紀錄轉譯成一份可操作的地圖——它不是自我描述,是接下來顯影實作的濾鏡規格書、你的顯影液配方。
地圖結構(觀察面向固定,內容可以持續調整):
| 固定軸 | 今天的位置(學員填) |
|---|---|
| 我最先看見什麼(我的雷達頻段) | |
| 什麼問題自然引起我的追問 | |
| 我容易把什麼當成雜訊(我的盲區候選) | |
| 我最想敲碎的結塊,通常是什麼形狀(虛偽?不便?官腔?黑話?) |
帶學員填的方式:不是憑感覺寫,是對著自己上午的三種紀錄回推——「你實際先看了什麼,就寫什麼」。行為證據優先於自我印象。
定位說明:
「這不是心理測驗,也不是對你做終身判定。它只記錄你今天的觀察位置。回家後,你可以持續調整,而且本來就應該隨著經驗更新。」
第 5 段|顯影實作——三步驟去塊法(80 分鐘,核心實作段)
目標:學員以自己的敏感度地圖作為濾鏡,重新解讀第 2 段的原始資料。提示詞的寫法,會決定 AI 是再次替資料分類,還是協助你看見原本被遮住的訊號。
這一段會把上午與下午的內容接在一起:上午先在不使用 AI 的情況下看見觀察差異,下午再利用 AI 重做一次。以下三個步驟,是「三步驟去塊法」第一次進入實作。
步驟 1:禁止收斂(20 分鐘)
- ❌ 錯誤示範:「請將以下資料分類為客訴、新聞、論壇討論。」——這是在替資料重新結塊,等於把剛溶開的殼再糊回去。
- ✅ 建議寫法:
不要對以下資料做任何傳統分類。
把所有資料視為一個流動的語意池,
找出跨越來源的共通情緒與張力。
這一步背後的原則是**「整批閱讀」**:你分析的是手上這整批原始資料——不抽樣、不先摘要、不挑代表性的幾筆。這裡的「整批」不是宣稱「資料涵蓋了整個母體」(這點無法保證),而是一條紀律:手上的資料要一次完整讀取。一般 AI 摘要會先抽樣、再濃縮;這套方法則要求 AI 保持整批資料的展開狀態,暫時不要收斂。
- 學員實作:對同一批資料下兩種指令,並排比較輸出。
步驟 2:加入感知濾鏡(30 分鐘)
把地圖的第四個觀察面向(你最想拆開的結塊類型)寫進提示詞,就像加入自己的顯影配方:
- 對官腔敏感的人:「過濾掉所有客套話、流程回覆(打破虛假和平結塊),只擷取字裡行間的挫折感與卡點。」
- 對黑話敏感的人:「敲碎專有名詞外殼,把技術論述翻譯成它對應的生活慾望。」
- 對風向敏感的人:「濾掉重複的集體口號,露出不同群體底層的利益摩擦點。」
學員依照自己的地圖設計濾鏡,分析同一批資料,再把結果並排比較。同一張底片經過不同配方後,會顯出不同影像;第 3 段的頓悟,在這裡透過 AI 再次得到驗證。
步驟 3:要求張力與碰撞(30 分鐘)
- 建議寫法:「找出這批資料中『技術論述』與『生活情境』之間的張力。不要給我結論,給我兩者碰撞的火花。」
教學重點:結論會讓可能性收斂,張力則能暫時保留不同解釋。 先請 AI 展開線索,最後再由人做出判斷。
第 6 段|讀影像——偵測板塊移動、新摩擦、隱藏關聯(60 分鐘)
開場必須先釐清「結塊」與「板塊」的差別:
「這裡有一個不能跳過的問題:前五段我們一直在拆開『結塊』,現在卻要觀察『板塊』。既然兩者都有一個『塊』字,為什麼一個要拆,另一個卻要保留?
因為兩者指的不是同一種東西。結塊是資料表面的既成結構,例如來源語氣、單一事件造成的偏差,以及既有共識形成的限制;它們可能遮住視線。板塊則是觀察對象的深層結構,例如利益、慾望與需求;這才是我們真正想觀察的對象。
用地質來比喻:地表的沉積層可能遮住底下板塊的移動。先移除表面的干擾,才看得見深層結構如何變化。前五段處理的是表層,現在才開始閱讀深層影像。」
這個問題安排在第 6 段說明,是因為學員此時已經完成「去塊」,正準備觀察「板塊」。如果太早解釋,概念還沒有具體經驗可以依附;如果略過不談,兩個名稱又容易混淆。因此,最適合的時機就是兩個概念第一次交會之處。
目標:顯影完成、影像浮現,這時才做副標承諾的事。趨勢不是一個點,是移動本身。三種偵測操作,逐一兌現副標三項:
| 偵測操作 | 對應的課程承諾 | 提示詞範例 |
|---|---|---|
| 時間切片比對 | 板塊移動 | 「依時間把資料切成前後兩段,用同一套濾鏡各執行一次。哪些語意在前段存在、後段消失?哪些是新出現的?不要摘要事件,只標出移動。」 |
| 跨來源張力比對 | 新的摩擦 | 「同一個主題,論壇怎麼說、客服信怎麼說、新聞怎麼說——三者之間的落差在哪裡?落差最大的地方,通常就是還沒被說出口的摩擦。」 |
| 語意鄰近搜尋 | 關鍵字找不到的隱藏關聯 | 「不要使用關鍵字。先描述一種感覺或情境,再找出語意相近、但用詞完全不同的資料。」 |
第三種方法最不應省略。關鍵字只能找到已經被命名的事物,語意搜尋則有機會找到尚未形成固定名稱的訊號。它也補上微觀尺度的觀察;若移除這一段,課名承諾的三個觀察尺度就會缺少一角。
換句話說:顯影不是把推理推得更深,而是把外殼溶掉。要找的東西不藏在推理的盡頭,而是在命名之前——等它有了名字、被大家看見,機會可能已經不再屬於你。率先看見尚未被命名的訊號,就是這套方法創造時間差的關鍵。
第 7 段|反駁我——檢查配方的盲區(45 分鐘)
目標:敏感度地圖是顯影液,而每種顯影液都有它顯不出來的波段。放大自己之後,要學會讓 AI 帶自己去看不敏感的地方。
操作:
- 每人下兩條指令:
- 「暫時忽略我剛才追的所有方向。這批資料裡,我最可能忽略了什麼訊號?」
- 「針對我目前的初步觀察,提出三種不同解釋,分別附上支持與反對的證據。」
- 現場討論哪些反駁有根據、哪些只是 AI 缺乏依據的推測。分辨兩者,本身就是課程的一部分。
- 把成立的盲區寫回地圖的「盲區候選」軸。地圖的第一次修訂在課堂上就發生——示範它是活的。
第 8 段|產出與回家配方(30 分鐘)
帶走三項成果:
- 敏感度地圖修訂版(包含第 7 段的盲區修訂)
- 個人顯影提示詞庫:將今天實作過的提示詞,依照三個去塊步驟與三種偵測方法歸檔,並套用自己的觀察條件。
- 回家自測配方(一頁 A4):
1. 選素材:任何一批沒讀過的混合文字(50 筆以上),刻意不清洗。
換一個完全不同領域,比同領域重測更能照出敏感度輪廓。
2. 先不用 AI 閱讀 10 分鐘,留下同樣三種紀錄(固定觀察面向不變)。
3. 三步驟去塊 → 一次板塊偵測 → 一次反駁我。
4. 回填地圖:比較這次與上次的位置,看看移動了什麼?
關鍵:觀察面向保持固定,內容則可以更新。如此累積出的才是變化軌跡,而不是彼此無關的片段。
收尾(10 分鐘)
「這不是預知。板塊變化、新的摩擦和尚未命名的關聯,可能早已留在原始資料裡。你們今天學的不是預測未來,而是顯影:移除表面的干擾,讓原本存在卻不容易看見的訊號浮現。今天大家處理同一批資料,最後卻帶走不同的觀察配方與結果。AI 能把個人的觀察方式套用到更大量的資料上,協助你看見其中容易被忽略的變化。」
這段收尾再次帶回開場的「這不是預知」,讓全文首尾呼應。
六、設計取捨(不納入學員教材)
整份設計包含八項重要取捨。記錄這些決定,是為了讓未來改版時仍能理解原本的考量。其中第 2 與第 8 項牽動其他段落,調整前應先確認連帶影響。
- 兩套隱喻各有用途:暗房隱喻(底片、顯影液、影像)負責解釋「為什麼不是預知」以及「為什麼每個人的結果不同」;烹飪與地質隱喻(生、結塊、板塊、摩擦)則負責定義實際操作。兩者在第 1 段結尾接軌,之後可以並用,但不應混淆功能。
- 「結塊」與「板塊」必須在第 6 段開頭澄清:前五段處理結塊,第 6 段開始觀察板塊。此時學員已經遇到兩個概念,說明才有具體經驗可以依附。
- 副標對應三種觀察尺度:板塊移動屬於宏觀、新的摩擦屬於中觀、隱藏關聯屬於微觀。這三項同時出現在課程定位、第一節對照表與第 6 段的偵測方法中,讓招生承諾與實際內容彼此一致。
- 體驗先於詞彙,貫穿全課:先親自遇到結塊,再替它命名;先看見觀察差異,再建立敏感度地圖;先遇到盲區,再將它寫回地圖。
- 第 1 段與第 2 段使用不同領域的素材:第 1 段的示範不應成為第 2 段盲測的參考框架,因此值得準備兩套素材。
- 敏感度地圖的位置由因果關係決定:它必須排在盲測之後,因為原料來自行為紀錄;也必須排在實作之前,因為它會成為實作時使用的濾鏡規格。
- 第 5 段步驟 2 負責連接前後半場:上午先在不使用 AI 的情況下看見觀察差異,下午再利用 AI 重做一次。
- 完整課程需要 7 小時:如果場地只能提供 6 小時,仍應保留第三種偵測,也就是語意鄰近與隱藏關聯。這一段不只對應招生文案,也補上微觀尺度的觀察。若必須縮短時間,可以減少第 5 段步驟 3 的練習量,或將語意鄰近改為講師示範,但不宜整段移除。
七、與前一版的差異(改版紀錄)
和前一版相比,因果鏈、八段結構與時間安排都沒有改變,但有四項調整:
- 盲測的角色換了:從「打破 MBTI 的證據」變成「敏感度地圖的探勘資料」。
- 說明文件改用新的語言:從人格描述改寫成濾鏡規格書與提示詞庫。
- 三步驟去塊法第一次排進實作段:原作者文件裡的「禁止收斂/加入濾鏡/張力碰撞」,以前只停留在概念層,現在納入第 5 段實作。
- 板塊偵測是這版新增的一段:時間切片、跨來源張力、語意鄰近——這一段具體落實課名的承諾,也是副標升格為課程地圖的依據。
前一版已驗證過的四個機制——盲測、三種固定紀錄、並排比較與反駁練習——都予以保留,但它們在新版課程中承擔不同功能。可以說是使用同一組零件,重新組成另一台機器。
八、延伸閱讀:這套方法背後的技術
課堂幾乎不談演算法,學員不需要理解嵌入向量(embedding)或餘弦相似度(cosine similarity)。不過,這套方法背後的向量搜尋、語意檢索與混合搜尋都有具體技術基礎,我也在另一個系列中實作過。課堂用「顯影液」統稱這些技術,以下文章則進一步拆解它們的運作方式:
- 用 BGE-M3 + LanceDB 打造本機 RAG 搜尋——從零實作本機語意搜尋,也是「語意鄰近搜尋」的技術原型。
- 進階 RAG:Hybrid Search 與 Reranking 的缺口——說明純關鍵字搜尋為什麼容易遺漏資料,以及純向量搜尋為什麼可能帶入過多雜訊。
- 2026 主流 RAG 架構總覽——整個語意/向量檢索生態的地圖。
對公司負責人而言,這套技術可以理解為「顯影液」;對工程師而言,它則是檢索增強生成(RAG)與語意搜尋(semantic search)。兩種說法指向同一套技術,只是溝通對象不同。
九、結語
如果這堂課只能留下一句話,我會留這句:
趨勢不是被預測出來的,是被顯影出來的。它一直在那裡,只是蒙著殼。
每個人的顯影配方不同,因此同一張底片會顯出不同的影像。這不是錯誤,而是這堂課無法被單一標準流程取代的價值。功能型課程可以教你做得更快;這堂課則希望幫助你理解:自己的觀察方向為什麼和別人不同。
從頭到尾,AI 的角色都不是替你做決定,而是把你的觀察方法應用到更大量的原始資料上。
本文是《生資料顯影術》一日工作坊的第一版課綱設計。背後的非結構化資料探勘與語意搜尋技術,請參考第八節延伸閱讀。第 6 段三種偵測方法的可重現示範,將另文整理。
- ← Previous
React 課綱設計報告 II:AI 輔助改變了什麼——從「寫 React」到「驗收 AI 產生的 React」 - Next →
《AI 時代》三門課總綱:把大部分注意力,從搬運工作拿回來