小遊戲上傳你的照片,或許就成為別人的建模訓練材料?
從工程現實看為什麼 AI 生圖服務不可能「用完即刪」
你上傳一張照片給 AI,它幫你生成了一張 40 年後的你。你很開心,存下來,跟朋友屁一下說我跟劉德華一樣越老越帥,之後關掉頁面。
但你有想過,你上傳的那張原圖,後來怎麼了嗎?
2019 年有一個「變老挑戰」的 app 叫 FaceApp,你上傳一張自拍,它讓你看到自己 40 年後的樣子。全世界都在玩,一度是 App Store 下載量第一名。
後來大家才發現,這是一家俄羅斯公司。條款裡面寫的是「永久、不可撤銷」的使用授權。你的照片上傳上去之後,永遠都是他們的。FBI 把這個 app 列為「潛在反情報威脅」,美國參議員要求聯邦調查。
(來源:Fortune "Is FaceApp Safe to Use? Russian Ties Raise Security Concerns")
同一年,中國的 ZAO 做了一個換臉 app,上傳一張照片就能把你的臉貼到電影場景裡。條款直接寫:公司對所有用戶生成的內容有「全球免費使用權」。有研究者測試,把照片刪掉之後,伺服器上的副本還在。
(來源:CNBC "The Chinese face-swapping app that went viral is taking the danger of 'deepfake' to the masses")
甚至,Cambridge Analytica 用一個心理測驗的小遊戲,收集了 8,700 萬人的個性資料,拿去做政治廣告定向,影響了川普和美國大選。Meta 被罰了 50 億美金。
(來源:FTC "Cambridge Analytica, LLC, In the Matter of")
從心理測驗到變老挑戰到換臉,套路一模一樣。給你一個好玩的東西,你用了,資料就留下了。差別只是以前收的是你的喜好,現在收的是你的臉。
但這些公司到底是怎麼拿到你的資料的?這件事其實沒有想像中複雜。
假設我們進度條今天要推出一個「以圖生圖」的服務,讓你上傳照片,AI 幫你生成風格化的版本。
首先,我們會在主機上用 Python 把開源的 AI 圖片模型跑起來,比如 Stable Diffusion 3.5。這個模型免費,跑在我們自己的機器上。
然後我們需要寫一個 API 接口,讓你的瀏覽器可以把照片傳上來。這個接口可以用 Rails、Laravel、Python、JavaScript 來做,都可以。
你按下「上傳」的那一刻,你的照片就到了我們的主機上。
但我們不能只把照片放在記憶體裡,因為 AI 生圖需要時間。如果過程中系統重啟,記憶體裡的東西全部消失,你的原圖沒了,結果也生不出來。所以我們一定會先把你的照片存到硬碟裡。萬一過程中出問題,還能用你的原圖重試,這也是為什麼有時候生成會比較久。
等 AI 生完圖,確認成功,把結果傳回給你,我們才會把你的原圖刪掉。
這是正常的工程做法。任何一個做過後端的人都會這樣寫。
但問題就在這裡。
其實,你應該幾乎沒有看過這些 APP 說會刪吧?你確定有看過那萬言字的使用條款?還是你朋友都在等了,先按確認再說。
刪不刪,完全取決於 APP 服務自己。你的照片已經在硬碟上了。要留著、要拿去訓練模型、要建資料庫,你完全不會知道。你能看到的只有「上傳成功」和「生成完成」。
那些爆紅的 app 做的事情,跟我剛才講的一模一樣。技術上沒有任何神秘的地方。差別只是規模。
所以下次你看到一個 app 可以幫你的照片做什麼有趣的事,記得,你的照片一定會到對方的主機上,一定會被"暫時"存起來。
至於這個 "暫時" 是多久呢?這就取決於企業的良心。或是...他的營運成本?














