免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
谷歌科學(xué)家萬(wàn)字長(zhǎng)文:《改變你職業(yè)生涯的一篇文章,我如何運(yùn)用人工智能完成工作》建議每個(gè)人都要讀一遍
userphoto

2024.08.11 內(nèi)蒙古

關(guān)注

全文約13,000 字,閱讀約需 20分鐘

在當(dāng)今科技界,關(guān)于人工智能是否被過(guò)度炒作的爭(zhēng)論從未停息。然而,很少有像谷歌 DeepMind 的安全研究專家和機(jī)器學(xué)習(xí)科學(xué)家 Nicholas Carlini 這樣的專家,用親身經(jīng)歷為我們提供了一個(gè)獨(dú)特的視角。通過(guò)他的文章,我們看到了大型語(yǔ)言模型(LLM)在實(shí)際應(yīng)用中的強(qiáng)大能力和多樣性。這些并非空洞的營(yíng)銷宣傳,而是切實(shí)可以改變工作方式、提高生產(chǎn)效率、激發(fā)創(chuàng)意的工具。

最近,Carlini 本人親自撰寫了一篇長(zhǎng)達(dá)萬(wàn)字的文章,詳細(xì)介紹了他如何在日常生活和工作中使用 AI。這篇洞察力十足的文章不僅展示了 AI 技術(shù)的廣泛應(yīng)用,更讓我們得以一窺未來(lái)科技將如何重塑我們的生活方式。

Carlini 在文章中列舉了 50 個(gè)他親身使用 AI 的實(shí)例,涵蓋了工作效率、創(chuàng)意寫作、編程輔助等多個(gè)方面。然而,令人驚訝的是,這 50 個(gè)例子僅僅是他所有 AI 應(yīng)用場(chǎng)景的冰山一角 - 據(jù)他估計(jì),不到他實(shí)際使用情況的 2%。這一變革令人震撼,它不僅體現(xiàn)了 AI 技術(shù)的深度和廣度,更凸顯了我們可能還未充分認(rèn)識(shí)到 AI 的潛力。

事實(shí)上,Carlini 的經(jīng)歷可能預(yù)示著一個(gè)更廣泛的趨勢(shì):隨著 AI 技術(shù)的不斷進(jìn)步和普及,我們可能正站在一個(gè)技術(shù)革命的風(fēng)口浪尖。就像個(gè)人電腦和互聯(lián)網(wǎng)徹底改變了我們的生活和工作方式一樣,AI 可能會(huì)成為下一個(gè)推動(dòng)社會(huì)變革的關(guān)鍵力量。

那么,面對(duì)這樣的前景,我們應(yīng)該如何看待 AI 技術(shù)的發(fā)展呢?是抱有審慎的態(tài)度,還是積極擁抱變革?

原文如下:

作者:DeepMind 安全研究專家和機(jī)器學(xué)習(xí)科學(xué)家Nicholas Carlini

我不認(rèn)為“人工智能”模型(我指的是大型語(yǔ)言模型)被過(guò)度炒作了。

確實(shí),任何新技術(shù)都會(huì)吸引騙子。許多公司喜歡說(shuō)他們?cè)凇笆褂萌斯ぶ悄堋?,就像他們以前聲稱自己依靠“區(qū)塊鏈”一樣。(正如我們一次又一次看到的那樣)同樣,我們可能正處于一個(gè)泡沫中?;ヂ?lián)網(wǎng)在2000年泡沫破裂,但我們現(xiàn)在擁有的互聯(lián)網(wǎng)應(yīng)用,曾是字面上的科幻小說(shuō)中的東西。

但我認(rèn)為最近我們?nèi)〉玫倪M(jìn)展不僅僅是炒作的原因是,過(guò)去一年中,我每周至少花幾個(gè)小時(shí)與各種大型語(yǔ)言模型互動(dòng),并且對(duì)它們解決我給出的越來(lái)越困難的任務(wù)的能力印象深刻。因此,我可以說(shuō),這些模型使我在編寫代碼方面的速度提高了至少50%,無(wú)論是研究項(xiàng)目還是個(gè)人的編程副業(yè)。

我在網(wǎng)上找到的大多數(shù)談?wù)揕LM實(shí)用性的人要么過(guò)于樂(lè)觀,聲稱所有工作將在三年內(nèi)自動(dòng)化,要么極度悲觀,認(rèn)為它們沒(méi)有任何貢獻(xiàn),永遠(yuǎn)也不會(huì)有。

所以在這篇文章中,我只是想讓討論更加實(shí)際。我不會(huì)對(duì)未來(lái)進(jìn)行任何論斷。我只想列出一個(gè)列表,這是我(一名研究機(jī)器學(xué)習(xí)的程序員和研究科學(xué)家)與不同的大型語(yǔ)言模型進(jìn)行的50次對(duì)話,這些對(duì)話顯著提高了我進(jìn)行研究的能力,并幫助我從事隨機(jī)的編程副項(xiàng)目。其中包括:

  • 使用我之前從未使用過(guò)的技術(shù)構(gòu)建整個(gè)網(wǎng)絡(luò)應(yīng)用程序。
  • 教我如何使用各種框架,盡管我之前從未使用過(guò)它們。
  • 將幾十個(gè)程序轉(zhuǎn)換為C或Rust以提高10-100倍的性能。
  • 精簡(jiǎn)大型代碼庫(kù),顯著簡(jiǎn)化項(xiàng)目。
  • 為我在過(guò)去一年中撰寫的幾乎每一篇研究論文編寫初始實(shí)驗(yàn)代碼。
  • 自動(dòng)化幾乎所有單調(diào)的任務(wù)或一次性腳本。
  • 幾乎完全取代了幫助我設(shè)置和配置新軟件包或項(xiàng)目的網(wǎng)絡(luò)搜索。
  • 在幫助我調(diào)試錯(cuò)誤信息方面,網(wǎng)絡(luò)搜索的替代率約為50%。

如果對(duì)這些應(yīng)用實(shí)例進(jìn)行分類,它們大致可以分為“輔助學(xué)習(xí)”和“自動(dòng)化日常瑣事”兩類。前者對(duì)我來(lái)說(shuō)至關(guān)重要,因?yàn)樗屛夷軌蜉p松應(yīng)對(duì)之前覺(jué)得有難度的任務(wù);后者同樣重要,因?yàn)樗刮夷芗芯θプ鑫易钌瞄L(zhǎng)的事,解決真正的難題。

關(guān)鍵是,這些例子展示的是我如何實(shí)際利用大型語(yǔ)言模型(LLMs)的。它們并不旨在炫耀技術(shù)的驚人能力,而是基于我解決工作需求的實(shí)際情況。這意味著,這些例子或許看起來(lái)不夠引人注目,但實(shí)際上,我日常工作的很大一部分也都是平凡無(wú)奇的,而現(xiàn)今可用的LLMs幾乎幫我自動(dòng)化了所有這些工作。

通過(guò)這篇文章,我的目的是用一個(gè)接一個(gè)的實(shí)例,向你展示我在過(guò)去一年如何有效利用LLMs提升工作效率,直到你感到有些疲憊為止。要知道,盡管你可能已經(jīng)看過(guò)不少例子,但實(shí)際上我所展示的,還不到我利用LLMs的總數(shù)的2%。

細(xì)微差別

如果說(shuō)互聯(lián)網(wǎng)處理得不盡如人意的是什么,那一定是對(duì)細(xì)節(jié)的把握。我絕不認(rèn)為現(xiàn)今的大型語(yǔ)言模型(LLMs)能夠主宰世界,也不打算討論未來(lái)的模型能做什么,不能做什么。我只想探討,現(xiàn)階段的模型對(duì)我是否真的有用。

你可能會(huì)問(wèn),為什么還需要一篇文章來(lái)證明語(yǔ)言模型的用途呢?這難道不是顯而易見的事實(shí)嗎?但事實(shí)上,無(wú)論是在學(xué)術(shù)界、軟件工程領(lǐng)域還是媒體行業(yè),都有不少人聲稱LLMs毫無(wú)用處,只是一時(shí)的炒作,幾年后將默默無(wú)聞,對(duì)世界沒(méi)有任何影響。我要反駁這些觀點(diǎn),因?yàn)槟壳暗腖LMs已經(jīng)證明了它們的實(shí)用性。

但同時(shí),我也需要說(shuō)明,另有一批聲音同樣強(qiáng)烈的人士持相反觀點(diǎn),他們認(rèn)為現(xiàn)有模型能夠取代所有程序員,人們不應(yīng)再學(xué)習(xí)編程,因?yàn)椴痪煤蟠蠹叶紝⒚媾R失業(yè)。雖然反駁這些觀點(diǎn)不是本文的主旨,但我必須明確,我并不支持這種極端的看法。

此外,我也不會(huì)主張“目的正當(dāng)化手段”,即便這些模型的訓(xùn)練確實(shí)存在諸多負(fù)面影響,我不認(rèn)為應(yīng)當(dāng)因此而推廣使用。

我充分意識(shí)到這些模型可能帶來(lái)的負(fù)面后果,這些后果可能非常嚴(yán)重,包括但不限于散布錯(cuò)誤信息、濫用、監(jiān)控以及取代工作崗位(甚至有人擔(dān)憂到人類滅絕的地步)。我將在不久的將來(lái)撰寫一篇文章,深入探討LLMs可能引發(fā)的危害,屆時(shí)會(huì)在此放上鏈接。然而,這與語(yǔ)言模型是否有用的討論是兩碼事——這正是我此處想要探討的問(wèn)題。

我也清楚你可能因?yàn)檎Z(yǔ)言模型偏向于生成不準(zhǔn)確的信息、重復(fù)已知事實(shí)、在面對(duì)復(fù)雜情況時(shí)可能徹底失敗的傾向而不愿使用它們——可能我對(duì)這些局限性的了解比你更深。但本文不會(huì)討論這些。因?yàn)槲艺J(rèn)為,盡管有這些不足,模型仍然是有用的。

此外,我也深知培訓(xùn)這些模型所涉及的倫理問(wèn)題極具爭(zhēng)議。你可能不贊成在未經(jīng)許可的情況下使用人們的數(shù)據(jù)來(lái)訓(xùn)練它們(我對(duì)此的理解可能比你更深刻)?;蛟S你關(guān)注的是那些為直接訓(xùn)練這些模型而獲得微薄報(bào)酬的人。我承認(rèn)這些都是問(wèn)題,但本文也不打算討論這些。

正如我已經(jīng)多次強(qiáng)調(diào)的:我在這里討論的,僅僅是這些模型在當(dāng)前狀態(tài)下是否實(shí)際有用。

我的背景簡(jiǎn)介

通常,我不是那種輕易相信任何事物的人。比如,盡管我經(jīng)歷了十年前信息安全界的加密貨幣熱潮,我卻從未參與撰寫任何關(guān)于區(qū)塊鏈的研究論文。我也從未擁有過(guò)任何比特幣,因?yàn)樵谖铱磥?lái),它們除了用于賭博和欺詐之外,沒(méi)有任何實(shí)際價(jià)值。我一直持懷疑態(tài)度,每當(dāng)有人向我宣稱“某項(xiàng)新技術(shù)將改變世界”,我的反應(yīng)總是冷漠。

因此,當(dāng)?shù)谝淮斡腥烁嬖V我人工智能將極大地提升我的工作效率并改變我的日常工作方式時(shí),我同樣持保留態(tài)度,我的回應(yīng)是:“見到實(shí)際效果我才會(huì)信?!?/p>

此外,我是一名安全研究員。在過(guò)去近十年的工作中,我專注于展示人工智能模型在面對(duì)未曾訓(xùn)練過(guò)的各種環(huán)境時(shí)如何徹底失敗。我證明了只需對(duì)機(jī)器學(xué)習(xí)模型的輸入進(jìn)行輕微擾動(dòng),就能使其輸出完全錯(cuò)誤的結(jié)果;或者這些模型往往只是記住了它們訓(xùn)練數(shù)據(jù)中的特定案例,并在實(shí)際應(yīng)用時(shí)簡(jiǎn)單重復(fù)。我深知這些系統(tǒng)的種種局限。

然而,現(xiàn)在我卻在這里說(shuō),我認(rèn)為當(dāng)前的大型語(yǔ)言模型是自互聯(lián)網(wǎng)問(wèn)世以來(lái),給我的生產(chǎn)力帶來(lái)的最大提升。坦白說(shuō),如果今天要我在使用互聯(lián)網(wǎng)和一個(gè)最先進(jìn)的語(yǔ)言模型之間選擇一種工具來(lái)解決工作中隨機(jī)一個(gè)編程任務(wù),我可能會(huì)選擇使用語(yǔ)言模型的次數(shù)超過(guò)一半。

如何利用語(yǔ)言模型

以下是我如何利用大型語(yǔ)言模型(LLMs)來(lái)提升工作效率。

你可能對(duì)我所述的使用案例不感興趣,甚至認(rèn)為它們有些荒謬。也可能這些案例與你的需求不相關(guān),這一點(diǎn)我也能理解。但我只能從個(gè)人角度出發(fā)。這些使用實(shí)例都是我在過(guò)去一年里與LLMs的交流記錄中直接摘錄的。

1、為我開發(fā)完整應(yīng)用

去年,我創(chuàng)建了一個(gè)測(cè)驗(yàn),讓人們?cè)u(píng)估GPT-4在處理幾個(gè)特定任務(wù)上的表現(xiàn)。這個(gè)測(cè)驗(yàn)非常受歡迎,獲得了超過(guò)一千萬(wàn)的頁(yè)面瀏覽量。你可能想不到,我?guī)缀跏亲孏PT-4為我編寫了這個(gè)應(yīng)用的全部初始版本。這一過(guò)程是通過(guò)一連串的問(wèn)題進(jìn)行的,我從詢問(wèn)應(yīng)用的基本架構(gòu)開始,然后逐步擴(kuò)展其功能。整個(gè)對(duì)話長(zhǎng)達(dá)30,000字,極大地測(cè)試了當(dāng)時(shí)的GPT-4模型的能力極限。如果你翻看這些對(duì)話,會(huì)發(fā)現(xiàn)從我描述需求并請(qǐng)求模型完成全部實(shí)現(xiàn)的信息,到我請(qǐng)求做出具體修改的信息(如“不要比較平均分?jǐn)?shù),而是用核密度估計(jì)表示它是哪個(gè)百分位”),以及我提出一些完全不明確的問(wèn)題時(shí)復(fù)制粘貼的錯(cuò)誤信息(例如,“繪圖錯(cuò)誤:numpy.linalg.LinAlgError: singular matrix”),還有我僅僅詢問(wèn)簡(jiǎn)單單次問(wèn)題的情況(比如“如何用JavaScript在頁(yè)面上添加一個(gè)iframe,內(nèi)容是從字符串加載的?”)。

這種方法之所以有效,主要是因?yàn)檎Z(yǔ)言模型擅長(zhǎng)處理人們已經(jīng)解決的問(wèn)題,而這個(gè)測(cè)驗(yàn)的99%內(nèi)容只不過(guò)是一些基礎(chǔ)的HTML和Python后端服務(wù)器,這是任何人都可以編寫的。這個(gè)測(cè)驗(yàn)之所以引人關(guān)注并受到喜愛,并非因?yàn)槠浔澈蟮募夹g(shù),而是因?yàn)闇y(cè)驗(yàn)內(nèi)容本身。通過(guò)自動(dòng)化所有重復(fù)性的部分,我能輕松地完成這個(gè)項(xiàng)目。

實(shí)際上,如果沒(méi)有語(yǔ)言模型的幫助,我可能根本就不會(huì)去創(chuàng)建這個(gè)測(cè)驗(yàn),因?yàn)槲也辉敢饣〞r(shí)間從頭編寫整個(gè)網(wǎng)頁(yè)應(yīng)用。盡管我擅長(zhǎng)編程!我相信,即使是現(xiàn)有的模型,也足以讓大多數(shù)人僅憑提問(wèn)就能解決他們以前無(wú)法解決的重要任務(wù)。

我還有一些類似的例子以后介紹,其中我讓模型為我編寫了整個(gè)應(yīng)用,當(dāng)這些應(yīng)用發(fā)布時(shí),我會(huì)明確指出它們是在語(yǔ)言模型的協(xié)助下完成的。

2、作為新技術(shù)的向?qū)?/span>

我曾經(jīng)總能趕上各種新興框架的步伐。但是一個(gè)人的時(shí)間畢竟有限,因?yàn)槲业穆殬I(yè)特性,我大多數(shù)時(shí)間都在跟進(jìn)最新的研究進(jìn)展,而不是最新的JavaScript框架。

這意味著當(dāng)我開始一個(gè)不屬于我研究領(lǐng)域的新項(xiàng)目時(shí),我通常有兩個(gè)選擇:一是利用我已知的技術(shù),雖然這些技術(shù)可能已經(jīng)過(guò)時(shí)十年或二十年,但對(duì)于小項(xiàng)目來(lái)說(shuō)通常足夠了;二是嘗試學(xué)習(xí)新的(通常也是更好的)方法。

這就是語(yǔ)言模型派上用場(chǎng)的時(shí)候。對(duì)我而言較新的框架或工具,比如Docker、Flexbox或React,對(duì)其他人來(lái)說(shuō)可能已經(jīng)相當(dāng)熟悉了。世界上可能有成千上萬(wàn)的人已經(jīng)非常了解這些技術(shù)。當(dāng)前的語(yǔ)言模型也能做到這一點(diǎn)。

這意味著,我可以通過(guò)與語(yǔ)言模型的交互式學(xué)習(xí),來(lái)掌握解決任務(wù)所需的任何知識(shí),而不必依賴那些假設(shè)讀者具備特定知識(shí)、目標(biāo)明確的靜態(tài)教程。

比如,今年早些時(shí)候,我在構(gòu)建一個(gè)LLM評(píng)估框架時(shí),希望能在一個(gè)受限環(huán)境中運(yùn)行由LLM生成的代碼,以避免它刪除我的計(jì)算機(jī)上的隨機(jī)文件等問(wèn)題。Docker是完成這一任務(wù)的理想工具,但我之前從未使用過(guò)。

重要的是,這個(gè)項(xiàng)目的目標(biāo)并非是要學(xué)會(huì)使用Docker,Docker只是我實(shí)現(xiàn)目標(biāo)所需的工具。我只需要掌握Docker的10%,確保我能以最基本的方式安全使用它。

如果是在90年代,我可能需要購(gòu)買一本關(guān)于Docker的書籍,從頭開始學(xué)習(xí),閱讀前幾章,然后試圖跳讀以找出如何實(shí)現(xiàn)我想要的功能。過(guò)去十年情況有所改善,我可能會(huì)在線搜索如何使用Docker的教程,跟著操作,然后搜索遇到的錯(cuò)誤信息,看是否有人遇到相同的問(wèn)題。

但在今天,我只需要請(qǐng)一個(gè)語(yǔ)言模型教我使用Docker。

3、開始新項(xiàng)目

回想起來(lái),我最初接觸的編程語(yǔ)言是Java。我非常喜歡編程,但有一件事我絕對(duì)討厭:面對(duì)新項(xiàng)目的空白屏幕。特別是在使用Java時(shí)!甚至僅僅是讓程序編譯一個(gè)hello world程序——這個(gè)“public static void main string args”到底是做什么的?括號(hào)應(yīng)該怎么放?哪些字母應(yīng)該大寫?為什么這里用花括號(hào),那里用方括號(hào)?

所以我做了任何孩子都會(huì)做的事——我讓我父親幫我做了。

二十年過(guò)去了,我仍然不喜歡使用我不熟悉的框架開始新項(xiàng)目。僅僅是為了搞定樣板代碼就需要花費(fèi)大量時(shí)間,而且我對(duì)我在做的事情毫無(wú)頭緒。

例如,我最近想嘗試編寫一些CUDA代碼,來(lái)評(píng)估一種簡(jiǎn)單的貪婪搜索在GPU上的性能與某人的高效優(yōu)化的CPU實(shí)現(xiàn)相比。

但我不懂CUDA編程。我會(huì)寫C語(yǔ)言,了解GPU的工作原理、內(nèi)核的功能以及內(nèi)存布局等,但實(shí)際編寫向GPU發(fā)送任務(wù)的代碼?我不知道該從哪里開始。因此,我直接請(qǐng)求模型為我編寫CUDA程序的初稿。完美嗎?當(dāng)然不是!但這是一個(gè)起點(diǎn)。這正是我需要的。你會(huì)注意到這里的代碼有很多錯(cuò)誤!實(shí)際上,我完全可以接受。我不是在尋找完美的解決方案,而是一個(gè)起點(diǎn),我可以從那里繼續(xù)。如果未來(lái)的模型能做得更好,那將是驚人的。但我現(xiàn)在擁有的已經(jīng)大有幫助了。

另一方面,對(duì)于我在家進(jìn)行的一些其他個(gè)人項(xiàng)目,我正在使用一個(gè)樹莓派Pico W。這是我第一次使用它。我希望它能為我做一些事情,特別是一些網(wǎng)絡(luò)相關(guān)的事情。再次,我確信我可以在網(wǎng)上找到有人描述如何做我想做的事情的好教程。但你最近看過(guò)互聯(lián)網(wǎng)嗎?前5個(gè)結(jié)果通常只是一些垃圾內(nèi)容農(nóng)場(chǎng),它們有2008年的有缺陷的代碼,僅為了搜索引擎優(yōu)化而更新,但仍然不起作用。

因此,我直接請(qǐng)求一個(gè)語(yǔ)言模型教我如何做我想做的事情。我之前已經(jīng)和微控制器打過(guò)交道,所以我或多或少了解它們的工作方式。但我之前從未使用過(guò)Pico W。我只需要一些幫助來(lái)開始處理所有的依賴關(guān)系,然后我可以弄清楚剩下的部分。

我為新的微控制器編寫的第一個(gè)“hello world”程序總是讓一個(gè)LED閃爍。這可以讓我測(cè)試我是否能夠編譯并上傳代碼到設(shè)備,是否正確設(shè)置了所有的引腳,并且基本上知道我在做什么。所以,讓我們只是請(qǐng)求一個(gè)閃爍程序。(再次:這在互聯(lián)網(wǎng)上存在嗎?幾乎可以肯定。但那樣我就得去搜索它了。)一旦我有了這段代碼并且運(yùn)行起來(lái),從這里我就知道該怎么做了。我知道python是如何工作的(信不信由你?。?。因此,我可以從那里直接繼續(xù)編輯東西,把特殊的Micro Python的東西處理掉。

當(dāng)我遇到另一個(gè)需要我特別處理的問(wèn)題時(shí),我可以再次請(qǐng)求模型幫助我。例如,我接著只是讓模型為我編寫一個(gè)連接到wifi的腳本。

4、代碼簡(jiǎn)化

作為安全研究員,我經(jīng)常需要處理別人的研究項(xiàng)目,這些項(xiàng)目包含數(shù)千行代碼,我必須弄懂它們的工作原理以便進(jìn)行攻擊。這聽起來(lái)并不困難,如果每個(gè)人都編寫清晰的代碼,實(shí)際上也確實(shí)不該困難,但現(xiàn)實(shí)世界并非如此。研究人員通常沒(méi)有動(dòng)力發(fā)布整潔的代碼。所以,人們往往會(huì)發(fā)布他們能用的任何雜亂代碼。(我自己也不例外。)

我無(wú)法分享與研究相關(guān)的例子,但我可以分享我正在進(jìn)行的一個(gè)個(gè)人項(xiàng)目的例子。據(jù)說(shuō)我對(duì)康威的生命游戲有種不健康的癡迷。最近,我試圖找到一種快速的方法,通過(guò)Python評(píng)估一些生命游戲模式。有一個(gè)很好的C++工具叫g(shù)olly可以做這個(gè),但我不想將我的Python代碼重寫為C++。

golly有一個(gè)CLI工具正好滿足我的需求——我所需要的只是一種正確調(diào)用它的方法。這的第一步是簡(jiǎn)化支持約50種不同命令行選項(xiàng)的C++代碼,讓它只執(zhí)行我想要的操作。所以我將所有500行的C++代碼輸入到LLM中,請(qǐng)求一個(gè)更簡(jiǎn)短的文件來(lái)完成相同的任務(wù)。

你知道嗎?這完美地奏效了。然后,我請(qǐng)求一個(gè)圍繞C++代碼的Python封裝器。這同樣有效。這是那些令人煩惱的任務(wù)之一,如果由我來(lái)做,我可能永遠(yuǎn)不會(huì)完成。但現(xiàn)在我可以請(qǐng)求別人幫我完成,我得到的東西比我原來(lái)的Python代碼快了100倍。

我發(fā)現(xiàn)自己經(jīng)常這樣做。這里還有一個(gè)例子,我在用Python做同樣的事情。

再說(shuō)一次,這些任務(wù)并不復(fù)雜。但每次這樣做,我都能節(jié)省大量時(shí)間。這就是我認(rèn)為大型語(yǔ)言模型如今驚人的原因之一:它們的用途可能不夠光鮮,也不會(huì)因?yàn)檎f(shuō)“這是我用大型語(yǔ)言模型簡(jiǎn)化日常工作的平凡方式”而贏得網(wǎng)絡(luò)贊譽(yù),但這是實(shí)實(shí)在在的幫助。

5、處理單調(diào)任務(wù)

我必須完成的許多任務(wù)都是單調(diào)無(wú)聊的,不需要太多思考,但卻必須做。

事實(shí)上,我發(fā)現(xiàn)自己之所以會(huì)拖延任務(wù),往往是因?yàn)槲抑劳瓿蛇@些任務(wù)會(huì)感到無(wú)聊和痛苦。LLMs極大地減輕了這種痛苦,讓我在開始任務(wù)時(shí)就知道自己只需要解決有趣的問(wèn)題。因此,我想逐一介紹一些通過(guò)請(qǐng)求LLMs幫忙而解決的非常普通的問(wèn)題。

例如,最近我需要拆解一個(gè)用Python 3.9編寫的程序。大多數(shù)Python反編譯器只支持到Python 3.7,但無(wú)法在我處理的3.9版本上運(yùn)行。

反編譯實(shí)際上并不難,主要是在重建控制流程時(shí)避免出錯(cuò)。因此,我沒(méi)有親自花時(shí)間為幾千個(gè)操作碼和幾百行代碼進(jìn)行這種轉(zhuǎn)換,而是讓LLM幫我做了。它做得非常好!效果遠(yuǎn)超我的預(yù)期。這里有三個(gè)不同的對(duì)話,在這些對(duì)話中我讓模型幫我完成了這項(xiàng)工作。另一個(gè)例子是,當(dāng)我需要將一些非結(jié)構(gòu)化數(shù)據(jù)轉(zhuǎn)換成結(jié)構(gòu)化格式時(shí)。比如,我在做一個(gè)項(xiàng)目,需要列出一些書名和作者名。我在網(wǎng)上找到了一些非結(jié)構(gòu)化格式的數(shù)據(jù),然后讓LLM幫我格式化。最近,我在寫一篇關(guān)于如何破解某個(gè)防護(hù)的博客文章,想展示我不得不修改的代碼完整差異。于是我粘貼了差異和之前如何將差異轉(zhuǎn)換為HTML的示例,并讓LLM按照之前的格式為我生成差異。此外,作為我的工作的一部分,我經(jīng)常需要為我使用的資源生成引用。谷歌學(xué)術(shù)很容易引用論文,我可以直接復(fù)制粘貼。但引用網(wǎng)頁(yè)稍顯麻煩;我最近開始請(qǐng)求LLM幫我生成引用。(確保這是正確的!)我可以繼續(xù)舉出至少一百個(gè)類似的例子。但我想你已經(jīng)明白了我的意思。

我完全明白這種任務(wù)可能會(huì)讓人覺(jué)得“就這?”但我們要記住,五年前這些模型幾乎不能連貫地寫出一個(gè)段落,更別說(shuō)為你解決整個(gè)問(wèn)題了。

6、使每個(gè)用戶都成為“高級(jí)用戶”

如果你曾經(jīng)看過(guò)比你不那么熟練的人使用某個(gè)工具,這可能會(huì)有點(diǎn)讓人難受。他們可能會(huì)花費(fèi)幾分鐘甚至幾小時(shí)的時(shí)間去完成一個(gè)本可以通過(guò)某種宏或在處理特定任務(wù)時(shí)巧妙使用并行應(yīng)用程序來(lái)自動(dòng)化的任務(wù)。

然而,學(xué)習(xí)執(zhí)行這些操作所需的技巧需要時(shí)間,并且具有挑戰(zhàn)性。

例如,我最近試圖編寫一個(gè)Python程序來(lái)處理來(lái)自Apple Lisa鍵盤的輸入。我在線找到了一個(gè)人用C語(yǔ)言編寫的相關(guān)代碼,其中包含許多像#define KEYNAME key_code這樣的語(yǔ)句,我想將它們轉(zhuǎn)換為一個(gè)Python字典,將整數(shù)代碼映射到對(duì)應(yīng)的字符串。

我是一個(gè)Emacs用戶。我知道如何在Emacs中解決這個(gè)問(wèn)題,這甚至并不難。這是我剛記錄的一些關(guān)鍵操作,可以達(dá)到這個(gè)效果:

C-h C-s #def [enter] M-f [delete] C-d M-f C-[space] M-f C-w C-a C-y : ' M-f ', C-g C-] } C-[ {

盡管這對(duì)我?guī)缀跏亲匀坏模侥壳盀橹?,我已?jīng)花了超過(guò)一半的生活時(shí)間在Emacs上變得足夠熟練,以至于這成為了自然反應(yīng)。但你知道現(xiàn)在我連接了LLM到我的編輯器,我會(huì)怎么做嗎?C-h C-h 請(qǐng)將這些#define重寫為{keycode: string, ...}的字典格式。

然后,文本就在我眼前被重寫了!

正是在這樣的情況下,我認(rèn)為L(zhǎng)LMs對(duì)非專家的潛在效用甚至高于專家。這個(gè)模型為每個(gè)人提高了起點(diǎn),如果你之前完全不會(huì)做,現(xiàn)在突然能做很多事情。

7、作為API參考

真正的程序員想要理解某個(gè)工具的工作原理時(shí)會(huì)閱讀參考手冊(cè)。但我是個(gè)懶惰的程序員;我更愿意直接得到答案。因此,現(xiàn)在我向語(yǔ)言模型提問(wèn)。

當(dāng)我向人們展示這些例子時(shí),有些人會(huì)變得有些防御性,他們說(shuō):“LLM沒(méi)有做任何你不能用已有工具完成的事情!”你知道嗎?他們說(shuō)得對(duì)。但是,用搜索引擎能做的事,用一本關(guān)于該主題的實(shí)體書也能做;用一本實(shí)體書能做的事,通過(guò)閱讀源代碼也能做。

然而,每一種方式比前一種都簡(jiǎn)單。當(dāng)事情變得更簡(jiǎn)單時(shí),你會(huì)更頻繁地做,而且方式上也會(huì)有所不同。

這就是我問(wèn)“哪個(gè)$命令可以傳遞所有剩余參數(shù)”并獲得答案的例子。(緊接著是另一個(gè)“我該如何使用這個(gè)東西”的問(wèn)題?。┻@實(shí)際上是我最常用LLMs的方法之一。我之所以不能給你展示更多這樣的例子,是因?yàn)槲以贓macs和我的shell中都內(nèi)置了查詢LLMs的工具。因此,當(dāng)我想要做這些事情的90%的時(shí)間,我甚至不需要離開我的編輯器。

8、搜索難以找到的內(nèi)容

在互聯(lián)網(wǎng)上搜索內(nèi)容曾經(jīng)是一項(xiàng)需要學(xué)習(xí)的技能。你想在查詢中包含哪些特定的詞匯?它們應(yīng)該是復(fù)數(shù)還是單數(shù)?過(guò)去時(shí)?你希望避免在頁(yè)面上出現(xiàn)哪些詞匯?我是想要X和Y,還是X或Y?

現(xiàn)在情況已經(jīng)不同了。我想不起上次我在Google中使用OR的時(shí)間。我也想不起上次我使用減號(hào)(-)來(lái)移除結(jié)果子集的時(shí)間。在大多數(shù)情況下,今天你只需要寫下你想要找的內(nèi)容,搜索引擎就會(huì)為你找到。

但搜索引擎仍然不是100%的自然語(yǔ)言查詢。它仍然有點(diǎn)像你在玩反向危險(xiǎn)邊緣游戲,試圖使用答案中會(huì)有的關(guān)鍵詞而不是問(wèn)題。這是一項(xiàng)我認(rèn)為我們幾乎都忘記了我們學(xué)過(guò)的技能。

對(duì)于今天的一些簡(jiǎn)單任務(wù)(隨著時(shí)間的推移會(huì)越來(lái)越多),語(yǔ)言模型只是更好。我可以直接輸入“所以我知道+對(duì)應(yīng)于__add__,但是是什么”,它會(huì)告訴我答案是__inv__。這是用標(biāo)準(zhǔn)搜索引擎很難搜索到的東西。是的,我知道有方法可以問(wèn),這樣我就能找到答案??赡苋绻逸斎搿皃ython文檔元類'add'”,我可以搜索頁(yè)面上的并得到答案。但你知道還有什么有效嗎?只要問(wèn)LLM你的問(wèn)題。

這樣做任何一次只節(jié)省幾十秒的時(shí)間,但當(dāng)你在解決某個(gè)編碼任務(wù)的過(guò)程中,已經(jīng)試圖同時(shí)記住一百萬(wàn)件事時(shí),能夠?qū)⒛阍噲D解決的問(wèn)題傾倒出來(lái)并得到一個(gè)連貫的答案是令人驚訝的。

這并不是說(shuō)他們今天在這方面已經(jīng)完美。語(yǔ)言模型只有在線上被足夠頻繁地重復(fù)時(shí)才知道事情。'足夠頻繁'是什么意思取決于模型,所以我確實(shí)需要花一些精力思考我是應(yīng)該詢問(wèn)模型還是詢問(wèn)互聯(lián)網(wǎng)。但模型只會(huì)變得更好。

或者,每當(dāng)我遇到隨機(jī)崩潰時(shí),我會(huì)將模型轉(zhuǎn)儲(chǔ)我所看到的并要求解釋,就像我在這里做的那樣,當(dāng)我只是輸入zsh沒(méi)有找到匹配的“遠(yuǎn)程通配符傳輸問(wèn)題”。或者,作為一個(gè)完全獨(dú)立的例子,我去年在寫一篇博客文章時(shí),想要第一個(gè)字母大寫,讓其余的文字環(huán)繞它,就像我在這句話中所做的那樣?,F(xiàn)在這被稱為下沉式大寫字母。但我不知道這個(gè)。我只知道我想要的效果,所以問(wèn)語(yǔ)言模型“我想讓它看起來(lái)像一本華麗的書,文字圍繞O”,它給了我我想要的東西:這個(gè)任務(wù)是另一個(gè)屬于“我只是因?yàn)長(zhǎng)LMs才做的”類別——我不會(huì)認(rèn)為花大量時(shí)間弄清楚如何做是值得的。但因?yàn)槲铱梢灾苯訂?wèn)模型,我就這樣做了,它讓我的帖子看起來(lái)更好一些。

9、解決一次性任務(wù)

有兩種類型的程序。首先,你有一些你想要正確完成的程序;它們將會(huì)存在一段時(shí)間,因?yàn)槟阈枰S護(hù)它們好幾年,所以代碼的清晰性很重要。然后,你有那些只存在大約25秒的程序;它們將幫助你完成某些任務(wù),然后立即被丟棄。

在這些情況下,我根本不關(guān)心代碼的質(zhì)量,而且程序是完全獨(dú)立的,我現(xiàn)在幾乎專門使用LLMs來(lái)為我編寫這些程序。

請(qǐng)注意:大多數(shù)這些情況再次出現(xiàn),你會(huì)看著它們說(shuō)“就這?”。但就像我之前說(shuō)的,我每天只有那么多小時(shí)來(lái)處理一個(gè)項(xiàng)目。如果我能節(jié)省編寫一次性使用的程序的時(shí)間和精力,我會(huì)選擇這樣做。

可能最常見的例子是幫助我生成一些圖表,以可視化我作為某些研究實(shí)驗(yàn)結(jié)果生成的一些數(shù)據(jù)。我有幾十個(gè)這樣的例子??赡芙咏话俣皇橇?。它們看起來(lái)基本上都一樣,這里只是一個(gè)例子:或者,另一個(gè)類似的例子,當(dāng)我有一種格式的數(shù)據(jù)并想將其轉(zhuǎn)換為另一種格式的數(shù)據(jù)時(shí)。通常這是我只需要做一次的事情,一旦完成,我就會(huì)扔掉生成的腳本。但我還可以給你舉出一千個(gè)其他例子。通常情況下,當(dāng)我有一個(gè)足夠簡(jiǎn)單的腳本想要編寫時(shí),我會(huì)直接請(qǐng)求LLM整體編寫。例如,這里我請(qǐng)求LLM為我編寫一個(gè)腳本,讓它大聲讀出我的論文,這樣我可以確保它們沒(méi)有愚蠢的語(yǔ)法問(wèn)題。在許多情況下,當(dāng)我不太清楚我想要什么時(shí),我也會(huì)從請(qǐng)求模型提供一些初始代碼開始,然后從那里進(jìn)行迭代。例如,這里有一個(gè)一次性任務(wù),我只是需要快速處理一些數(shù)據(jù)。在2022年,我會(huì)花兩分鐘用python編寫這個(gè),然后等待幾個(gè)小時(shí)因?yàn)樗贿\(yùn)行一次——優(yōu)化它所需的時(shí)間會(huì)比python程序運(yùn)行的時(shí)間還要長(zhǎng)。但現(xiàn)在呢?你敢打賭我會(huì)花同樣的兩分鐘請(qǐng)求用Rust代碼為我處理數(shù)據(jù)?;蛘哌@里是另一個(gè)例子,我請(qǐng)求模型為我下載一個(gè)數(shù)據(jù)集,并對(duì)其進(jìn)行一些初始處理。這對(duì)我來(lái)說(shuō)容易做嗎?可能是。但這不是我想要考慮的任務(wù);我想要考慮的是我將要用數(shù)據(jù)集做的研究。消除分心非常有價(jià)值,不僅僅是節(jié)省幾分鐘的時(shí)間。

另一次,我編寫了一個(gè)程序,這樣我就可以用小立方體3D打印一些像素化的圖像。為此,我想將PNG轉(zhuǎn)換為STL文件;但這不是項(xiàng)目的重點(diǎn)。這只是沿途必須發(fā)生的事情。所以我請(qǐng)求LLM為我解決這個(gè)問(wèn)題?;蛘撸鳛榱硪粋€(gè)例子,我最近想使用Docker Compose來(lái)設(shè)置一個(gè)新項(xiàng)目。我遇到了一些問(wèn)題,只想讓它運(yùn)行起來(lái),然后我會(huì)弄清楚出了什么問(wèn)題。所以我只是來(lái)回幾次,我所做的就是復(fù)制一個(gè)又一個(gè)錯(cuò)誤消息,直到它最終給我一個(gè)有效的解決方案。我還會(huì)發(fā)現(xiàn)自己在很多情況下首先請(qǐng)求一個(gè)完整的解決方案,然后請(qǐng)求如何修改它的提示。在這次對(duì)話中,我首先請(qǐng)求一個(gè)解析HTML的程序,然后請(qǐng)求API參考或其他改進(jìn)方式的提示。最近我一直在嘗試做一些電子產(chǎn)品相關(guān)的事情,我有一個(gè)在Arduino上運(yùn)行的C程序,但我希望它在樹莓派Pico上以MicroPython運(yùn)行。這個(gè)轉(zhuǎn)換過(guò)程沒(méi)有什么有趣的;它只需要完成。所以我沒(méi)有親自完成工作,只是請(qǐng)語(yǔ)言模型為我做。對(duì)于另一個(gè)項(xiàng)目,我需要用一些花哨的ML模型在一些交互循環(huán)中分類一些圖像。我本可以自己編寫,或者我可以直接請(qǐng)求模型為我做。

10、解釋事物給我聽

我最近開始對(duì)電子學(xué)產(chǎn)生了興趣。我年輕的時(shí)候做過(guò)一些電子項(xiàng)目,并在大學(xué)期間上過(guò)幾門相關(guān)課程。但現(xiàn)在我想進(jìn)行實(shí)際的電子項(xiàng)目,我發(fā)現(xiàn)有許多我不了解的細(xì)節(jié),這讓開始任何項(xiàng)目都變得困難。

我可以去讀一本關(guān)于實(shí)用電子學(xué)的書。我可能真的會(huì)在某個(gè)時(shí)候這么做,以便徹底理解這個(gè)主題。但我并不想把我的時(shí)間花在感覺(jué)自己在學(xué)習(xí)上。我從事電子學(xué)的部分原因是想從整天的閱讀和寫作中抽身而出。

這就是LLMs發(fā)揮出色的地方。它們可能不如世界上最出色的專家那樣知識(shí)淵博,但成千上萬(wàn)的人可能知道我可能會(huì)提出的任何電子問(wèn)題的答案。這意味著語(yǔ)言模型很可能也知道答案。它樂(lè)于為我提供所有問(wèn)題的答案,使我可以享受樂(lè)趣而不必糾結(jié)于細(xì)節(jié)。雖然我完全可以通過(guò)在互聯(lián)網(wǎng)上搜索來(lái)找到答案,但在忙碌一整天后,簡(jiǎn)單地讓模型為我完成這些工作的便利性使我感到非常放松。

這里是一些例子,展示了我如何詢問(wèn)語(yǔ)言模型有關(guān)電子學(xué)中事物工作原理的基本問(wèn)題。這些答案完美嗎?誰(shuí)知道呢。但你知道它們比什么更好嗎?比我什么都不知道要好。

11、解決具有已知解決方案的任務(wù)

幾乎所有事情都已經(jīng)有人做過(guò)了。你想做的事情幾乎沒(méi)有什么是真正新穎的。語(yǔ)言模型特別擅長(zhǎng)提供它們之前見過(guò)的事物的解決方案。

在最近的一個(gè)項(xiàng)目中,我需要提升一些Python代碼的性能。因此,我(1)請(qǐng)求LLM將其重寫為C語(yǔ)言,然后(2)請(qǐng)求它構(gòu)建一個(gè)接口,以便我能從Python調(diào)用C代碼。

這些任務(wù)都不是“難”的。將Python轉(zhuǎn)換為C是我確信自己能在一兩小時(shí)內(nèi)完成的。盡管我不完全知道Python到C的API如何工作,但我相信我可以通過(guò)閱讀文檔來(lái)了解。但如果需要我自己來(lái)做,我永遠(yuǎn)不會(huì)去做。它不是關(guān)鍵路徑上的一部分,我寧愿等待計(jì)算機(jī)解決問(wèn)題,也不愿花時(shí)間加速那些我不經(jīng)常需要運(yùn)行的任務(wù)。

但是,將Python轉(zhuǎn)換為C主要是簡(jiǎn)單程序的技術(shù)過(guò)程,而且有一個(gè)標(biāo)準(zhǔn)的Python到C的調(diào)用約定。所以,我直接請(qǐng)求LLM來(lái)幫我完成。

從那以后,我開始期待這是我可以做到的事情,幾乎在任何時(shí)候,當(dāng)我需要一些高速的代碼時(shí),我會(huì)用Python描述我想要的內(nèi)容,并請(qǐng)求生成優(yōu)化的C代碼。其他時(shí)候,我做同樣的事情,但如果我認(rèn)為比較Rust輸出和C輸出的正確性更容易的話,我會(huì)請(qǐng)求Rust輸出。或者,作為另一個(gè)例子,用multiprocessing庫(kù)并行化Python函數(shù)并不困難。你需要編寫一些樣板代碼,基本上它就會(huì)為你完成。但編寫代碼有點(diǎn)痛苦,會(huì)妨礙你想要完成的實(shí)際工作?,F(xiàn)在,每當(dāng)我需要做這個(gè)時(shí),我只會(huì)請(qǐng)求一個(gè)LLM來(lái)幫我。還有很多時(shí)候,當(dāng)我嘗試測(cè)試某個(gè)API時(shí),我最初會(huì)編寫一個(gè)curl請(qǐng)求來(lái)開始。一旦它開始工作,我想以編程方式重復(fù)任務(wù),我就會(huì)將它轉(zhuǎn)換為Python。以前,我通常會(huì)做些非常丑陋的事情,直接調(diào)用os.popen()運(yùn)行curl命令,但這并不理想。更好的方法是將其轉(zhuǎn)換為Python的requests庫(kù);但這需要時(shí)間,所以我不會(huì)這么做。但現(xiàn)在我可以簡(jiǎn)單地請(qǐng)求一個(gè)LLM幫我完成,并在更短的時(shí)間內(nèi)獲得一個(gè)更干凈的程序。對(duì)于即將到來(lái)的一個(gè)項(xiàng)目,我可能會(huì)在這里討論,我需要了解人們通常用作簡(jiǎn)單無(wú)線電發(fā)射器的是哪些東西。因?yàn)槲艺嬲胍氖谴蠖鄶?shù)人的答案,LLM是一個(gè)完美的選擇!

12、修復(fù)常見錯(cuò)誤

在2022年之前,當(dāng)我遇到某些流行工具或庫(kù)的錯(cuò)誤信息時(shí),我通常會(huì)采取以下步驟:

  1. 復(fù)制錯(cuò)誤信息。
  2. 將其粘貼到Google搜索。
  3. 點(diǎn)擊最頂部的Stack Overflow鏈接。
  4. 確認(rèn)問(wèn)題是否與我遇到的一致;如果不是,返回第2步。
  5. 如果無(wú)效,返回第2步,更換搜索詞,祈禱等。

因?yàn)?,坦白說(shuō),通常出問(wèn)題的工具與我最終想要解決的任務(wù)差距很大,我其實(shí)并不太關(guān)心如何使其工作,我只需要它能工作。2024年現(xiàn)在這個(gè)流程是怎樣的?

  1. 復(fù)制錯(cuò)誤信息。
  2. 向LLM詢問(wèn):“我該如何修復(fù)這個(gè)錯(cuò)誤?(錯(cuò)誤)”
  3. 如果無(wú)效,反饋“那不起作用”。

我沒(méi)有任何對(duì)話記錄來(lái)展示這些例子。(或者說(shuō),我找了一個(gè)小時(shí)也沒(méi)有找到。)但這實(shí)際上有一個(gè)很好的原因:我已經(jīng)將它整合進(jìn)我的工作流程中了。

我是一個(gè)Emacs用戶。我設(shè)置了我的環(huán)境,每當(dāng)我運(yùn)行一個(gè)程序并且它以非零狀態(tài)碼結(jié)束時(shí)(意味著有錯(cuò)誤發(fā)生),它會(huì)自動(dòng)調(diào)用最新最快的LLM,并要求它解釋答案,同時(shí)請(qǐng)求一個(gè)可以直接應(yīng)用來(lái)修復(fù)代碼中bug的補(bǔ)丁。

現(xiàn)今的模型大多數(shù)情況下還不足以在這項(xiàng)任務(wù)上勝過(guò)我,但它們正在逐漸進(jìn)步。偶爾,當(dāng)LLM修復(fù)了一個(gè)我知道如果自己追蹤可能非常困難的錯(cuò)誤時(shí),我會(huì)感到非常驚喜,尤其是當(dāng)錯(cuò)誤只是因?yàn)槟程幍男」P誤。

13、以及無(wú)數(shù)其他事情

我上面提到的所有對(duì)話只占我過(guò)去一年與LLMs互動(dòng)總數(shù)的不到2%。我沒(méi)有提供其他鏈接的原因并不是因?yàn)檫@些是模型失敗的案例(盡管有很多這樣的案例),而是因?yàn)椋海?)許多互動(dòng)重復(fù)了我已經(jīng)提到的那些模式,或(2)它們不容易解釋清楚發(fā)生了什么,也不容易讓你自己看到它們?yōu)楹螌?duì)我有用。

我完全預(yù)期未來(lái)我使用這些模型的頻率會(huì)持續(xù)增長(zhǎng)。作為一個(gè)參考,我在2024年通過(guò)網(wǎng)頁(yè)界面進(jìn)行的LLM查詢比2023年增加了30%——而且我甚至無(wú)法計(jì)算API查詢的增加,但我猜測(cè)至少增加了2到3倍。

評(píng)價(jià)LLMs的能力,而非它們的局限

我在面試求職者時(shí)獲得的最佳建議之一是,根據(jù)他們能做什么而不是不能做什么來(lái)評(píng)價(jià)他們。

我懷疑我可以問(wèn)你一些簡(jiǎn)單的問(wèn)題,這可能會(huì)讓你顯得不夠稱職。比如極端的例子:世界上有十億人講普通話;我連數(shù)到十都做不到。如果有人給我一份小學(xué)水平的普通話考試,我肯定會(huì)考得很糟糕。

即便在計(jì)算機(jī)科學(xué)領(lǐng)域內(nèi),也有我完全不了解的領(lǐng)域。我關(guān)于如何構(gòu)建SQL的知識(shí)僅限于如何編寫有效的SELECT語(yǔ)句。這——字面上——是我唯一知道如何編寫的語(yǔ)句。

因此,當(dāng)我看到人們?cè)诰W(wǎng)絡(luò)上爭(zhēng)論說(shuō)LLMs只是炒作,因?yàn)椤八鼈兩踔敛荒茏鯴XX”時(shí),我真的感到困惑。這里的XX可能是:

  • ... 計(jì)算句子中的單詞數(shù)!
  • ... 寫一首每個(gè)單詞都以字母“a”開頭的詩(shī)
  • ... 乘以兩位數(shù)
  • ... 從列表中隨機(jī)選擇一個(gè)元素

因?yàn)槟闵洗握嬲枰鲞@些事情,并且真誠(chéng)地認(rèn)為L(zhǎng)LM是合適的工具是什么時(shí)候?

我不會(huì)因?yàn)槲覀儾荒茉陬^腦中分割64位整數(shù)而認(rèn)為人類完全無(wú)用——這對(duì)計(jì)算機(jī)來(lái)說(shuō)是極其簡(jiǎn)單的任務(wù)——我也不認(rèn)為因?yàn)槟憧梢詷?gòu)造出LLMs無(wú)法解決的任務(wù)就應(yīng)該拋棄LLMs。顯然這很容易——關(guān)鍵是你能找到它們能夠提供價(jià)值的任務(wù)嗎?

程序員已經(jīng)很清楚,某些事物對(duì)不同的目的可能有用。想要編寫操作系統(tǒng)?也許你應(yīng)該使用C而不是Python。沒(méi)有人會(huì)說(shuō)“看Python多么愚蠢,你甚至不能強(qiáng)制變量對(duì)齊到32字節(jié)邊界!”這只是在錯(cuò)誤的抽象級(jí)別上。語(yǔ)言模型也是一樣。它們?cè)诜浅8叩某橄蠹?jí)別上操作;你不能期待它們解決甚至最簡(jiǎn)單的程序都能解決的任務(wù)。但你可以期望它們解決不同種類的任務(wù)。

結(jié)論

撰寫這篇文章的初衷有兩個(gè)。首先,正如我在文章開頭所述,我想證明LLMs已經(jīng)為我提供了大量的價(jià)值。此外,我注意到很多人表示喜歡使用LLMs的想法,但不知道它們能如何幫助自己。因此,如果你是這些人之一,希望通過(guò)我的使用案例能看到一些示例。

因?yàn)橹辽賹?duì)我來(lái)說(shuō),LLMs能做很多事。它們不能做所有事情,甚至不能做大多數(shù)事情。但當(dāng)前的模型,正如它們現(xiàn)在存在的樣子,為我提供了可觀的價(jià)值。

在展示這些示例后,我經(jīng)常收到的一種反駁是:“但這些任務(wù)很簡(jiǎn)單!任何計(jì)算機(jī)科學(xué)的本科生都能學(xué)會(huì)如何做到!”確實(shí),本科生可以通過(guò)幾小時(shí)的搜索來(lái)告訴我如何正確地診斷CUDA錯(cuò)誤以及可以重新安裝哪些包。本科生可以通過(guò)幾小時(shí)的工作重寫那個(gè)程序?yàn)镃語(yǔ)言。本科生可以通過(guò)幾小時(shí)的學(xué)習(xí)相關(guān)教科書來(lái)教我任何我想知道的關(guān)于那個(gè)主題的內(nèi)容。不幸的是,我沒(méi)有一個(gè)隨時(shí)可以回答我任何問(wèn)題的神奇本科生。但我有語(yǔ)言模型。所以,雖然語(yǔ)言模型還不夠好,不能解決我作為程序員工作中的有趣部分,而且當(dāng)前模型只能解決簡(jiǎn)單的任務(wù)。

但五年前,LLM最好的能做的就是寫出看起來(lái)像英語(yǔ)的段落。當(dāng)它們能從一個(gè)句子到下一個(gè)形成連貫的思想時(shí),我們都感到驚訝。它們的實(shí)際用途幾乎為零。然而,今天,它們已經(jīng)提高了我在項(xiàng)目中編程方面的生產(chǎn)力至少50%,并消除了足夠多的繁瑣工作,讓我能夠創(chuàng)建一些我否則永遠(yuǎn)不會(huì)嘗試的東西。

因此,當(dāng)人們說(shuō)“LLMs只是炒作”和“所有LLM都沒(méi)有為任何人提供實(shí)際價(jià)值”時(shí),很明顯他們是錯(cuò)誤的,因?yàn)樗鼈優(yōu)槲姨峁┝藘r(jià)值?,F(xiàn)在,也許我是個(gè)例外。也許我是唯一找到了讓這些模型有用的方法的人。

我只能代表我自己。

但考慮到LLMs顯著提高了我的生產(chǎn)力——一個(gè)在使用LLM之前已經(jīng)有20年編程經(jīng)驗(yàn)的人——我相信還有其他人也能從使用AI中受益。

原文鏈接:https://nicholas.carlini.com/writing/2024/how-i-use-ai.html#intro

素材來(lái)源官方媒體/網(wǎng)絡(luò)新聞


本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
大模型下一站,OpenAI 萬(wàn)字長(zhǎng)文解讀AI Agents
如何看待目前的語(yǔ)言模型還無(wú)法識(shí)別Python中的標(biāo)識(shí)符交換
Python有哪些優(yōu)缺點(diǎn)?
Python Docker 還是 Rust Wasm?這并不難選
微軟最強(qiáng)小模型:打敗大模型,你只需要'教科書' I
AIGC:大語(yǔ)言模型開放平臺(tái)OpenLLM簡(jiǎn)介(提供簡(jiǎn)易的模型部署體驗(yàn))
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服