自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

關(guān)于ChatGPT八個(gè)技術(shù)問(wèn)題的猜想

人工智能 新聞
對(duì)于 ChatGPT 表現(xiàn)案例的總結(jié)已經(jīng)非常多了,這里主要總結(jié)一下自己對(duì) ChatGPT 技術(shù)問(wèn)題的一些思考。

看到 ChatGPT 的華麗誕生,心情很復(fù)雜,既高興、驚喜,也感到恐慌。高興和驚喜的是沒(méi)有預(yù)料到這么快就見(jiàn)證了自然語(yǔ)言處理(NLP)技術(shù)的重大突破,體驗(yàn)到通用技術(shù)的無(wú)限魅力??只诺氖?ChatGPT 幾乎可以高質(zhì)量地完成 NLP 中的大多數(shù)任務(wù),逐漸認(rèn)識(shí)到很多 NLP 的研究方向遇到了極大挑戰(zhàn)。

總體而言,ChatGPT 最令人非常驚艷的是它的通用性,相比于 GPT-3 需要通過(guò)設(shè)計(jì)非常精巧的提示來(lái)實(shí)現(xiàn)效果并不太好的各種 NLP 能力,ChatGPT 已經(jīng)讓用戶感受不到提示的存在。

作為一個(gè)對(duì)話系統(tǒng),ChatGPT 讓用戶自然提問(wèn)便可實(shí)現(xiàn)從理解到生成的各種任務(wù),而且性能在開(kāi)放領(lǐng)域幾乎都達(dá)到了當(dāng)前最佳水平,很多任務(wù)超越了針對(duì)特定任務(wù)單獨(dú)設(shè)計(jì)的模型,并且在代碼編程領(lǐng)域表現(xiàn)卓越。

具體而言,自然語(yǔ)言理解能力(尤其是用戶意圖理解能力)十分突出,無(wú)論是問(wèn)答、聊天、分類、摘要、翻譯等任務(wù),盡管回復(fù)不一定完全正確,但是幾乎都能夠領(lǐng)會(huì)用戶意圖,理解能力遠(yuǎn)超預(yù)期。

相比于理解能力,ChatGPT 的生成能力更加強(qiáng)大,可以針對(duì)各種問(wèn)題生成具有一定邏輯且多樣化的長(zhǎng)文本??偟膩?lái)說(shuō),ChatGPT 表現(xiàn)出的更多是驚艷,是通向 AGI 的初步階段,一些技術(shù)瓶頸解決后會(huì)更加強(qiáng)大。

對(duì)于 ChatGPT 表現(xiàn)案例的總結(jié)已經(jīng)非常多了,這里主要總結(jié)一下自己對(duì) ChatGPT 技術(shù)問(wèn)題的一些思考,算是與 ChatGPT 斷斷續(xù)續(xù)交互兩個(gè)多月的一個(gè)簡(jiǎn)單總結(jié)。由于無(wú)法了解 ChatGPT 的具體實(shí)現(xiàn)技術(shù)和細(xì)節(jié),所以幾乎都是主觀猜想,肯定有很多不對(duì)的地方,歡迎一起探討。

1. ChatGPT 的通用性為何做得如此之好?

只要使用過(guò) ChatGPT,我們就會(huì)發(fā)現(xiàn)它不是一個(gè)傳統(tǒng)意義上的人機(jī)對(duì)話系統(tǒng),實(shí)際是一個(gè)以自然語(yǔ)言為交互方式的通用語(yǔ)言處理平臺(tái)。

2020 年的 GPT-3 雖然擁有了通用能力的雛形,但是需要精心設(shè)計(jì)提示語(yǔ)來(lái)觸發(fā)相應(yīng)功能,而 ChatGPT 允許用戶采用非常自然的提問(wèn)就可以準(zhǔn)確識(shí)別意圖完成各種功能。傳統(tǒng)方法往往先進(jìn)行用戶意圖識(shí)別,再針對(duì)不同意圖調(diào)用相應(yīng)功能的處理模塊,例如通過(guò)用戶數(shù)據(jù)識(shí)別出摘要或翻譯意圖,再調(diào)用文本摘要或機(jī)器翻譯模型。

傳統(tǒng)方法在開(kāi)放域的意圖識(shí)別準(zhǔn)確率不夠理想,而且不同功能模塊各自為戰(zhàn)無(wú)法共享信息,難以形成強(qiáng)大的 NLP 通用平臺(tái)。ChatGPT 突破了各自為戰(zhàn)的模式,不再區(qū)分不同功能,統(tǒng)一認(rèn)為是對(duì)話過(guò)程中的一種特定需求。那么,ChatGPT 的通用性為何做得如此之好呢?一直在思考這個(gè)問(wèn)題,由于沒(méi)有條件實(shí)驗(yàn)證實(shí),所以僅能猜想。

根據(jù) Google 的 Instruction Tuning 研究工作 FLAN,當(dāng)模型達(dá)到一定規(guī)模(e.g. 68B)且 Instruction 任務(wù)的類型達(dá)到一定數(shù)目(e.g. 40),模型就涌現(xiàn)出對(duì)新意圖的識(shí)別能力。OpenAI 從其開(kāi)放的 API 中收集了全球用戶各種任務(wù)類型的對(duì)話數(shù)據(jù),根據(jù)意圖分類和標(biāo)注,然后在 175B 參數(shù) GPT-3.5 上進(jìn)行 Instruction Tuning,自然就涌現(xiàn)出了通用的意圖識(shí)別能力。

2. 為什么面向?qū)υ挼奈⒄{(diào)沒(méi)有遭遇災(zāi)難性遺忘問(wèn)題?

災(zāi)難性遺忘問(wèn)題一直是深度學(xué)習(xí)中的一個(gè)挑戰(zhàn),經(jīng)常因?yàn)樵谀硞€(gè)任務(wù)上訓(xùn)練后就喪失了在其他任務(wù)上的性能。例如,一個(gè) 30 億參數(shù)的基礎(chǔ)模型,先在自動(dòng)問(wèn)答數(shù)據(jù)上進(jìn)行微調(diào),然后在多輪對(duì)話數(shù)據(jù)上進(jìn)行微調(diào),結(jié)果會(huì)發(fā)現(xiàn)模型的問(wèn)答能力大幅度下降。ChatGPT 似乎不存在這個(gè)問(wèn)題,其在基礎(chǔ)模型 GPT-3.5 上進(jìn)行了兩次微調(diào),第一次依據(jù)人工標(biāo)注的對(duì)話數(shù)據(jù)進(jìn)行微調(diào),第二次根據(jù)人類反饋的強(qiáng)化學(xué)習(xí)進(jìn)行微調(diào),微調(diào)使用的數(shù)據(jù)很少,尤其是人類反饋的打分排序數(shù)據(jù)更少,微調(diào)后竟然仍然表現(xiàn)出強(qiáng)大的通用能力,而并沒(méi)有完全過(guò)擬合到對(duì)話任務(wù)。

這是個(gè)非常有趣的現(xiàn)象,也是我們沒(méi)有條件驗(yàn)證的現(xiàn)象。猜測(cè)可能有兩方面的原因,一方面是 ChatGPT 使用的對(duì)話微調(diào)數(shù)據(jù)實(shí)際可能包含了非常全面的 NLP 各種任務(wù),正如 InstructGPT 中對(duì)用戶使用 API 的問(wèn)題分類可以發(fā)現(xiàn),很多都不是簡(jiǎn)單的對(duì)話,還有分類、問(wèn)答、摘要、翻譯、代碼生成等等,因此,ChatGPT 實(shí)際是對(duì)若干任務(wù)同時(shí)進(jìn)行了微調(diào);另一方面,可能當(dāng)基礎(chǔ)模型足夠大之后,在較小數(shù)據(jù)上的微調(diào)不會(huì)對(duì)模型產(chǎn)生很大影響,可能僅在基礎(chǔ)模型參數(shù)空間非常小的鄰域中優(yōu)化,所以不會(huì)顯著影響基礎(chǔ)模型的通用能力。

3. ChatGPT 的大范圍上下文連續(xù)對(duì)話能力是如何做到的?

使用 ChatGPT 時(shí)就會(huì)發(fā)現(xiàn)它一個(gè)讓人十分驚訝的能力,即使和 ChatGPT 交互了十多輪,它仍然還記得第一輪的信息,而且能夠根據(jù)用戶意圖比較準(zhǔn)確地識(shí)別省略、指代等細(xì)粒度語(yǔ)言現(xiàn)象。這些對(duì)我們?nèi)藖?lái)說(shuō)似乎不算問(wèn)題,但是在 NLP 的研究歷史中,省略、指代等問(wèn)題一直是一個(gè)難以逾越的挑戰(zhàn)。此外,在傳統(tǒng)對(duì)話系統(tǒng)中,對(duì)話輪次多了之后,話題的一致性難以保障。

但是,ChatGPT 幾乎不存在這個(gè)問(wèn)題,即使輪次再多,似乎都可以保持對(duì)話主題的一致性和專注度。猜測(cè)這個(gè)能力可能有三方面的來(lái)源。首先,高質(zhì)量的多輪對(duì)話數(shù)據(jù)是基礎(chǔ)和關(guān)鍵,正如 Google 的 LaMDA,OpenAI 也采用人工標(biāo)注的方式構(gòu)造了大量高質(zhì)量多輪對(duì)話數(shù)據(jù),在此之上進(jìn)行的微調(diào)將會(huì)激發(fā)模型的多輪對(duì)話能力。

其次,基于人類反饋的強(qiáng)化學(xué)習(xí)因?yàn)樘嵘四P突貜?fù)的擬人性,也會(huì)間接增強(qiáng)模型多輪對(duì)話的一致性能力。最后,模型對(duì) 8192 個(gè)語(yǔ)言單元(Token)的顯式建模能力使其幾乎可以記憶普通人一整天的對(duì)話數(shù)據(jù),在一次對(duì)話交流中很難超出這個(gè)長(zhǎng)度,因此,所有對(duì)話歷史都已經(jīng)被有效記憶,從而可以顯著提升連續(xù)多輪對(duì)話的能力。

4. ChatGPT 的交互修正能力是如何煉成的?

交互修正能力是智能的一種高級(jí)體現(xiàn),對(duì)我們來(lái)人說(shuō)稀松平常的事情卻是機(jī)器的痛點(diǎn)。在交流過(guò)程中,被指出問(wèn)題后我們會(huì)立刻意識(shí)到問(wèn)題所在并及時(shí)準(zhǔn)確地修正相關(guān)信息。對(duì)于機(jī)器而言,意識(shí)到問(wèn)題、識(shí)別問(wèn)題范圍并更正對(duì)應(yīng)信息的每一步都不是一件容易的事情。ChatGPT 出現(xiàn)之前尚未看到過(guò)具有較強(qiáng)交互修正能力的通用模型。

與 ChatGPT 交互后就會(huì)發(fā)現(xiàn),無(wú)論是用戶更改自己之前的說(shuō)法還是指出 ChatGPT 的回復(fù)中存在的問(wèn)題,ChatGPT 都能夠捕捉到修改意圖,并準(zhǔn)確識(shí)別出需要修改的部分,最后能夠做出正確的修正。

目前為止,沒(méi)有發(fā)現(xiàn)任何模型相關(guān)的因素與交互修正能力直接相關(guān),也不相信 ChatGPT 具有實(shí)時(shí)學(xué)習(xí)的能力,一方面是重啟對(duì)話后 ChatGPT 可能還會(huì)犯相同錯(cuò)誤,另一方面是基礎(chǔ)大模型的優(yōu)化學(xué)習(xí)從來(lái)都是從高頻數(shù)據(jù)中總結(jié)頻繁模式,一次對(duì)話無(wú)論如何也難以更新基礎(chǔ)模型。

相信更多的是基礎(chǔ)語(yǔ)言大模型的一種歷史信息處理技巧,不太確定的因素可能包括:

  1. OpenAI 人工構(gòu)建的對(duì)話數(shù)據(jù)中包含一些交互修正的案例,微調(diào)后擁有了這樣的能力;
  2. 人工反饋的強(qiáng)化學(xué)習(xí)使得模型輸出更加符合人類偏好,從而在信息修正這類對(duì)話中表現(xiàn)得更加遵循人類的修正意圖;
  3. 可能大模型達(dá)到一定規(guī)模(e.g. 60B)之后,原始訓(xùn)練數(shù)據(jù)中的交互修正案例就被學(xué)到了,模型交互修正的能力自然就涌現(xiàn)出來(lái)了。

5. ChatGPT 的邏輯推理能力是如何學(xué)到的?

當(dāng)我們?cè)儐?wèn) ChatGPT 一些邏輯推理相關(guān)的問(wèn)題時(shí),它并不是直接給出答案,而是展示出詳細(xì)的邏輯推理步驟,最后給出推理結(jié)果。雖然雞兔同籠等很多案例表明 ChatGPT 并沒(méi)有學(xué)會(huì)推理本質(zhì),而僅僅學(xué)會(huì)了推理的表面邏輯,但是展示的推理步驟和框架基本是正確的。

一個(gè)語(yǔ)言模型能夠?qū)W習(xí)到基本的邏輯推理模式已經(jīng)極大超越了預(yù)期,其推理能力溯源是非常有趣的一個(gè)問(wèn)題。相關(guān)對(duì)比研究發(fā)現(xiàn),當(dāng)模型足夠大,并且程序代碼與文本數(shù)據(jù)混合訓(xùn)練時(shí),程序代碼的完整邏輯鏈就會(huì)遷移泛化到語(yǔ)言大模型,從而大模型就擁有了一定的推理能力。

這種推理能力的習(xí)得有點(diǎn)神奇,但是也能理解,可能代碼注釋是從邏輯代碼到語(yǔ)言大模型推理能力遷移泛化的橋梁。多語(yǔ)言能力應(yīng)該也是類似的道理。ChatGPT 的訓(xùn)練數(shù)據(jù)絕大部分是英文,中文數(shù)據(jù)占比極少,然而我們發(fā)現(xiàn) ChatGPT 的中文能力雖然比不上英文,但是也非常強(qiáng)大。訓(xùn)練數(shù)據(jù)中的一些中英對(duì)照的平行數(shù)據(jù)可能就是英文能力遷移到中文能力的橋梁。

6. ChatGPT 是否針對(duì)不同下游任務(wù)采用不同的解碼策略?

ChatGPT 有許多驚艷的表現(xiàn),其中一個(gè)是它可以針對(duì)同一個(gè)問(wèn)題生成多種不同的回復(fù),顯得很睿智。

比如,我們不滿意 ChatGPT 的回答,可以點(diǎn)擊 “重新生成” 按鈕,它立刻會(huì)生成另一種回復(fù),若還是不滿意可以繼續(xù)讓其重新生成。這一點(diǎn)在 NLP 領(lǐng)域并不神秘,對(duì)于語(yǔ)言模型來(lái)說(shuō)是它的一個(gè)基本能力,也就是采樣解碼。

一個(gè)文本片段的后面可能接不同的詞語(yǔ),語(yǔ)言模型會(huì)計(jì)算每個(gè)詞語(yǔ)出現(xiàn)的概率,如果解碼策略選擇概率最大的詞語(yǔ)輸出,那么每次結(jié)果都是確定的,就無(wú)法生成多樣性回復(fù)。如果按照詞匯輸出的概率分布進(jìn)行采樣,例如,“策略” 的概率是 0.5,“算法” 的概率是 0.3,然后采樣解碼輸出 “策略” 的可能性就是 50%,輸出 “算法” 的可能性就是 30%,從而保證了輸出的多樣性。因?yàn)椴蓸舆^(guò)程是按照概率分布進(jìn)行的,即使輸出結(jié)果多樣,但是每一次都是選擇概率較大的結(jié)果,所以多種結(jié)果看起來(lái)都相對(duì)比較合理。對(duì)比不同類型的任務(wù)時(shí),我們會(huì)發(fā)現(xiàn) ChatGPT 的回復(fù)多樣性針對(duì)不同下游任務(wù)差別比較大。

針對(duì) “如何”、“為什么” 等 “How”、“Why” 型任務(wù)時(shí),重新生成的回復(fù)與之前的回復(fù)無(wú)論是表達(dá)方式還是具體內(nèi)容具有較大差異,針對(duì)機(jī)器翻譯、數(shù)學(xué)應(yīng)用題等 “What” 型任務(wù)時(shí),不同回復(fù)之間的差異非常細(xì)微,有時(shí)幾乎沒(méi)有變化。如果都是依據(jù)概率分布的采樣解碼,為何不同回復(fù)之間的差異如此之小。

猜測(cè)一種理想情況可能是 “What” 型任務(wù)基礎(chǔ)大模型學(xué)習(xí)到的概率分布非常尖銳(Sharp),例如學(xué)到的 “策略” 概率為 0.8,“算法” 概率為 0.1,所以大多數(shù)時(shí)候采樣到相同的結(jié)果,也就是前面例子中 80% 的可能性都會(huì)采樣到 “策略”;“How”、“Why” 型任務(wù)基礎(chǔ)大模型學(xué)習(xí)到的概率分布比較平滑(Smooth),例如 “策略” 概率為 0.4,“算法” 概率為 0.3,所以不同時(shí)候可以采樣到差異性較大的結(jié)果。

如果 ChatGPT 能夠?qū)W習(xí)到任務(wù)相關(guān)的非常理想的概率分布,那確實(shí)非常厲害,基于采樣的解碼策略就可以適用于所有任務(wù)。通常,關(guān)于機(jī)器翻譯、數(shù)學(xué)計(jì)算、事實(shí)性問(wèn)答等答案比較確定或者 100% 確定的任務(wù),一般采用基于貪婪解碼,也就是每次輸出概率最高的詞語(yǔ)。如果希望輸出相同語(yǔ)義的多樣性輸出,大多采用基于柱搜索的解碼方法,但較少采用基于采樣的解碼策略。

從與 ChatGPT 的交互看,所有任務(wù)它似乎都采用了基于采樣的解碼方法,真是暴力美學(xué)。

7. ChatGPT 能否解決事實(shí)可靠性問(wèn)題?

答案缺乏可靠性是目前 ChatGPT 面臨的最大挑戰(zhàn)。特別是針對(duì)事實(shí)性和知識(shí)性相關(guān)的問(wèn)答,ChatGPT 有時(shí)候會(huì)一本正經(jīng)地胡編亂造,生成虛假信息。即使讓它給出來(lái)源和出處或者參考文獻(xiàn),ChatGPT 通常也會(huì)生成一個(gè)不存在的網(wǎng)址或者從未發(fā)表過(guò)的文獻(xiàn)。

不過(guò),ChatGPT 通常會(huì)給用戶一種比較好的感覺(jué),也就是很多事實(shí)和知識(shí)它似乎都知道。實(shí)際上,ChatGPT 就是一個(gè)語(yǔ)言大模型,語(yǔ)言大模型本質(zhì)就是一種深度神經(jīng)網(wǎng)絡(luò),深度神經(jīng)網(wǎng)絡(luò)本質(zhì)就是一種統(tǒng)計(jì)模型,就是從高頻數(shù)據(jù)中習(xí)得相關(guān)模式。很多常見(jiàn)的知識(shí)或事實(shí),在訓(xùn)練數(shù)據(jù)中出現(xiàn)頻率高,上下文之間的模式比較固定,預(yù)測(cè)的詞語(yǔ)概率分布就比較尖銳,熵比較小,大模型容易記住,并在解碼過(guò)程中輸出正確的事實(shí)或知識(shí)。

但是,有很多事件和知識(shí)即使在非常龐大的訓(xùn)練數(shù)據(jù)中也很少出現(xiàn),大模型便無(wú)法學(xué)習(xí)到相關(guān)模式,上下文之間的模式比較松散,詞語(yǔ)預(yù)測(cè)的概率分布比較平滑,熵比較大,大模型在推理過(guò)程中容易產(chǎn)生不確定性的隨機(jī)輸出。

這是包括 ChatGPT 在內(nèi)所有生成式模型的固有問(wèn)題。如果仍然延續(xù) GPT 系列架構(gòu),基礎(chǔ)模型不做改變,從理論上講是難以解決 ChatGPT 回復(fù)的事實(shí)可靠性問(wèn)題。和搜索引擎的結(jié)合目前看是非常務(wù)實(shí)的一種方案,搜索引擎負(fù)責(zé)搜索可靠的事實(shí)信息來(lái)源,ChatGPT 負(fù)責(zé)總結(jié)和歸納。

如果希望 ChatGPT 解決事實(shí)回答的可靠性問(wèn)題,可能需要進(jìn)一步提升模型的拒識(shí)能力,也就是過(guò)濾掉模型確定無(wú)法回答的那些問(wèn)題,同時(shí)還需要事實(shí)驗(yàn)證模塊來(lái)驗(yàn)證 ChatGPT 回復(fù)的正確性。希望下一代 GPT 能夠在這個(gè)問(wèn)題上取得突破。

8. ChatGPT 能否實(shí)現(xiàn)實(shí)時(shí)信息的學(xué)習(xí)?

ChatGPT 的交互修正能力使得它看起來(lái)似乎擁有了實(shí)時(shí)的自主學(xué)習(xí)能力。

正如上述討論,ChatGPT 可以依據(jù)用戶提供的修改意圖或者更正信息,立刻修正相關(guān)回復(fù),表現(xiàn)出實(shí)時(shí)學(xué)習(xí)的能力。實(shí)則不然,學(xué)習(xí)能力體現(xiàn)的是學(xué)到的知識(shí)是普適的,可以運(yùn)用在其他時(shí)間和其他場(chǎng)合,但是 ChatGPT 并沒(méi)有展現(xiàn)出這個(gè)能力。ChatGPT 只是在當(dāng)前的對(duì)話中能夠根據(jù)用戶反饋進(jìn)行了修正,當(dāng)我們重啟一個(gè)對(duì)話,測(cè)試相同的問(wèn)題時(shí),ChatGPT 還會(huì)犯相同或類似的錯(cuò)誤。

一個(gè)疑問(wèn)是為何 ChatGPT 不將修改后正確的信息存儲(chǔ)到模型中呢?這里有兩方面的問(wèn)題。首先,用戶反饋的信息并不一定是正確的,有時(shí)候故意引導(dǎo) ChatGPT 做出不合理的回答,只是因?yàn)?ChatGPT 在基于人類反饋的強(qiáng)化學(xué)習(xí)中加深了對(duì)用戶的依賴程度,所以 ChatGPT 在同一個(gè)對(duì)話過(guò)程中會(huì)非常相信用戶的反饋。其次,即使用戶反饋的信息是正確的,但因?yàn)榭赡艹霈F(xiàn)頻率不高,基礎(chǔ)大模型不能根據(jù)低頻數(shù)據(jù)更新參數(shù),否則大模型就會(huì)對(duì)某些長(zhǎng)尾數(shù)據(jù)進(jìn)行過(guò)擬合從而失去通用性。

所以,讓 ChatGPT 實(shí)時(shí)進(jìn)行學(xué)習(xí)非常困難,一種簡(jiǎn)單直觀的方案就是每經(jīng)過(guò)一段時(shí)間就利用新的數(shù)據(jù)微調(diào) ChatGPT?;蛘卟捎糜|發(fā)機(jī)制,當(dāng)多個(gè)用戶提交相同或相似反饋時(shí)觸發(fā)模型的參數(shù)更新,從而增強(qiáng)模型的動(dòng)態(tài)學(xué)習(xí)能力。

本文作者張家俊是中國(guó)科學(xué)院自動(dòng)化研究所研究員,原文鏈接:

?https://zhuanlan.zhihu.com/p/606478660?

責(zé)任編輯:張燕妮 來(lái)源: 機(jī)器之心
相關(guān)推薦

2022-06-15 14:37:30

元宇宙

2021-01-11 08:30:02

Dubbo服務(wù)

2023-06-02 08:00:00

ChatGPT人工智能

2022-12-01 16:53:27

NPM技巧

2023-01-27 15:38:25

ChatGPT人工智能機(jī)器人

2024-03-06 13:56:00

項(xiàng)目awaitpromise

2024-09-30 13:14:01

2019-08-26 09:15:04

Android數(shù)據(jù)庫(kù)安全

2025-02-07 15:01:49

Promise數(shù)組前端

2024-01-02 16:16:34

Promise前端

2014-06-17 09:51:57

Docker

2022-02-11 09:00:00

技術(shù)債務(wù)數(shù)據(jù)工具

2019-02-20 09:10:40

Java并發(fā)隊(duì)列編程語(yǔ)言

2017-01-15 10:32:49

大數(shù)據(jù)技術(shù)信息

2017-01-12 09:11:07

2023-02-20 15:48:48

2010-08-30 11:24:43

2022-05-07 11:13:58

蘋果汽車技術(shù)

2009-03-26 09:39:16

CSS網(wǎng)頁(yè)布局

2010-09-27 13:41:49

TCP IP故障問(wèn)題
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)