兩個人工智能聊天機器人走進酒吧:電視作家 Joe Toplyn 教聊天機器人講笑話
已發表: 2023-07-07我們已經談論了很多關於人工智能和聊天機器人的話題; 對工作場所和我們生活的影響,以及人類的未來。 但今天,我們問一個非常簡單的問題:聊天機器人可以開玩笑嗎?
長期以來,幽默一直被認為是人工智能係統難以掌握的。 它需要對文本進行深入的語義理解,並且依賴於上下文因素以及文化和社會的細微差別。 然而,這並沒有阻止研究人員嘗試教授人工智能笑話。 例如,Binsted 和 Ritchie 的工作,他們在 1994 年開發了一個程序,可以根據簡單的雙關語生成謎語(例如,“你可以穿哪種樹?一件冷杉外套。”)。 或者 Matthews 和 Petrovic,他們使用無監督機器學習方法按照“我喜歡我的 X 就像我喜歡我的 Y、Z”結構來生成笑話,從而產生諸如“我喜歡我的咖啡就像我喜歡我的戰爭一樣”這樣的俏皮話。 寒冷的。” 或者“我喜歡我的孩子們就像我喜歡我的部門一樣,很糟糕。”
今天的嘉賓喬·托普林(Joe Toplyn)是最有資格談論這個話題的人之一。 喬不僅獲得了工程和應用物理學學士學位以及工商管理碩士學位(均來自哈佛大學),而且還擔任傑·雷諾《今夜秀》的聯合首席編劇以及《晚間秀》的首席編劇。大衛萊特曼。 近二十年來,他編寫並製作了數千個劇本、片段和笑話,這一經歷激發了他的書《深夜電視喜劇寫作》 ,他在書中剖析了笑話,並為他所謂的笑點製作者提出了秘訣。
如果有人要教計算機擁有真正的幽默感,那一定是喬。 他將自己的笑話知識與工程知識相結合,創建了 Witscript,這是一種由 GPT-3.5 提供支持的混合人工智能係統,專為在對話中即興發揮笑話而設計。
在今天的播客節目中,喬·托普林(Joe Toplyn)帶我們踏上一段旅程,了解他作為喜劇作家和教授聊天機器人喜劇藝術的經歷。
以下是一些關鍵要點:
- 研究表明,人們在接觸具有人類品質的技術時會感到更自在。 例如,擁有一個具有幽默感的機器人可以創造令人愉快的體驗。 然而,為了用於客戶服務,它們必須遵循時間、語氣、內容以及與品牌形象的一致性方面的準則。
- Witscript 利用受深夜脫口秀獨白啟發的三部分笑話結構,通過選取任何初始主題、執行笑話編寫算法並生成笑點。
- 該系統通過一系列提示來執行笑話編寫算法的步驟,生成五個候選笑話,並選擇它認為最有趣的一個。
- 像 Witscript 這樣的工具對於各種類型的作家來說都很有價值,使他們能夠快速產生大量的想法,並為笑話寫作過程提供更有效的方法。
如果您喜歡我們的討論,請查看我們播客的更多劇集。 您可以關注 Apple 播客、Spotify、YouTube 或在您選擇的播放器中獲取 RSS 源。 以下是該集經過輕微編輯的文字記錄。
逆向工程喜劇
Liam Geraghty:您好,歡迎來到 Inside Intercom。 我是利亞姆·杰拉蒂。 在過去的幾周里,我們一直在討論聊天機器人和人工智能,但我沒有問或什至沒有想過問的一個問題是,聊天機器人可以有幽默感嗎? 聊天機器人至少能講個笑話嗎? 好吧,我今天的嘉賓喬·托普林(Joe Toplyn)非常有資格回答這個問題。 他不僅獲得了工程和應用物理學學士學位以及工商管理碩士學位(均來自哈佛大學),而且還是《傑·雷諾今夜秀》的聯合首席編劇以及《大衛·萊特曼晚間秀》的首席編劇。 他目前是 Witscript 的首席幽默工程師,Witscript 是一個混合人工智能係統,用於在對話中即興發揮笑話。 喬,非常歡迎你來到這個節目。
喬·托普林:謝謝你邀請我。 嗨,利亞姆。
Liam:那麼讓我們直接進入 Witscript。 它是什麼?它最初是如何產生的?
Joe: Witscript 是一個用於生成笑話的混合人工智能係統。 它是一種神經符號混合體,這意味著它結合了符號系統,該符號系統由我作為人類喜劇作家創建的笑話編寫算法組成,並將這些算法與大型語言模型(即神經部分)結合起來。 所以基本上,你給它一個句子,它認為這是一個笑話的主題,它使用 GPT 3.5 來執行一個笑話編寫算法中的步驟——實際上,這是我根據我的經驗創建的幾個笑話編寫算法作為一名喜劇作家。
“好吧,作者用這些話做了什麼來博人一笑? 作者是如何從主題句、笑話的主題,到角度和笑點的?”
利亞姆:我猜你是在這兩件事碰撞在一起的背景下想出這個主意的。 其背後的工程和喜劇之間是如此具體。
喬:是的,我被邀請教授喜劇寫作,我決定人們願意聽我談論如何為大衛·萊特曼和傑·雷諾節目等深夜喜劇節目寫作。 為此,我必須弄清楚如何寫喜劇,如何寫笑話、案頭作品和草圖,因為一旦我知道自己是如何做到的,我就可以教其他人這樣做。 所以我想出了一個課程大綱,在這個過程中,我認真思考了人類如何寫笑話,因為笑話是深夜喜劇談話中許多其他短片喜劇作品的基石展示。 以前沒有人真正這樣做過。 我做了很多研究,讀了很多書,但沒有人有一套系統或秘訣來寫出深夜喜劇獨白中的那種笑話。
所以,我讀了很多笑話並對它們進行了逆向工程。 我看著他們說:“好吧,作者用這些話做了什麼來博人一笑? 作者是如何從主題句、笑話的主題,到角度和笑點的?” 我還考慮了自己寫笑話的過程。 當我想寫一個笑話時我的大腦會做什麼? 我讀新聞時說:“好吧,我必須想出笑話,因為這就是我拿錢做的事。 我該如何完成這項任務?” 所以我把這個過程簡化為一堆食譜。 我稱他們為笑點製造者——還涉及其他技巧——向學生們教授這一點,並最終決定可能還有其他人對我所說的感興趣。
“最終,我決定,如果有人要教計算機擁有幽默感,那一定是我了”
因此,我寫了一本書, 《深夜電視喜劇寫作》 。 所有的算法都在那裡。 人們正在購買它,我問自己,還有誰可能對書中的內容感興趣? 我做了一些研究,發現有一個叫做“計算幽默”的學術領域。 我想,“哦,這很有趣。” 這是一個相當新的領域。 它只存在了大約20年。 我開始聯繫該領域的研究人員,介紹我的書,並說:“好吧,你可能對一本解釋人類如何寫笑話的書感興趣,因為那樣你也許可以教計算機這樣做。”
我取得了一點進步,但進展不夠快。 最終,我決定,如果有人要教計算機擁有幽默感,那一定是我了。 那時,人工智能工具開始發揮作用。 幾年前,IBM 的 Watson 在電視節目 Jeopardy 中擊敗了人類,這是人工智能以及計算機使用語言的能力的一個重要里程碑。 我讀了一篇相關論文,並認為如果沃森能夠通過執行這些任務來擊敗處於危險之中的人類,那麼它就可以寫一個笑話,因為它使用了很多相同的任務。 這給了我鼓勵。 然後,文本生成器開始出現,Word2Vec、詞嵌入、向量空間,我使用了我所擁有的一切工具來想出一種非常粗略的方法來生成涉及雙關語的笑話。
然後,人工智能工具變得越來越複雜。 當我得到一個更有才華的工具時,我會將它合併到 Witscript 軟件中。 然後,大約一年半前,GPT-3 出來了,然後是 3.5,我嘗試了一下並說:“這真的很棒。 與我以前使用的方法相比,這是一種執行笑話編寫算法步驟更簡單、更有效的方法。” 所以我插入了 GPT-3.5,這就是 Witscript 現在的樣子。 這是一種使用我現在可以訪問的最新、最有用的大型語言模型來編寫笑話的方法。
俏皮地說
利亞姆:那太好了。 為什麼聊天機器人在聊天時需要能夠生成原創的相關笑話?
喬:有大量研究表明,如果聊天機器人等技術看起來更像人類,人們會更舒服地與它們互動。 讓聊天機器人變得更像人類的一種方法是賦予它幽默感,讓它能夠識別並即興發揮笑話。 因此,在適當的情況下,聊天機器人可以根據用戶所說的內容在適當的時間偶爾講一個笑話,這會讓用戶放鬆,讓他們更舒服,體驗更愉快。 因此,在這種情況下,聊天機器人擁有幽默感可能會很有用。
“你能讓聊天機器人知道講笑話的適當時間嗎? 如果有一個憤怒的用戶對著聊天機器人尖叫,開玩笑可能不是一個好主意”
像 Witscript 這樣的系統也可以被那些只想寫笑話的人使用——喜劇作家或在社交媒體上看到一些東西並想說一些有趣的東西的人。 該人不一定具備快速寫笑話的能力,或者不想聘請喜劇作家來寫笑話,因此他們可以使用 Witscript 來想出一個笑話,並將其用於該人需要該笑話的任何地方例如,進行一次演講,或者為產品或類似的東西想出一個口號。
Liam:除此之外,您認為 Witscript 可以應用於哪些領域? 這樣的東西可以用於客戶服務聊天機器人嗎?
喬:絕對有可能。 您能讓聊天機器人知道講笑話的適當時間嗎? 如果有一個憤怒的用戶對著聊天機器人尖叫,開玩笑可能不是一個好主意。 另一個因素是確保笑話合適。 如果它完全自己產生一個笑話,沒有人為策劃,你必須確保有一定的指導方針,並且這個笑話會被觀眾接受。
“如果該品牌有一個有趣的角色,你可能會說可以通過添加像 Witscript 這樣的幽默模塊來改進聊天機器人或使其更有趣”
只要我一直在測試 Witscript,它就從來沒有真正想出過一個涉及愛希特勒或類似內容的笑話。 GPT-3.5 是在整個互聯網、書籍和維基百科上進行訓練的,因此 Witscript 對拜登總統或唐納德·特朗普的看法基本上是每個人對拜登和特朗普看法的平均值,這使得它提出的笑話相當安全且普遍可接受。
另一個需要考慮的因素是聊天機器人所代表的品牌。 如果該品牌具有有趣的角色,您可能會說可以通過添加像 Witscript 這樣的幽默模塊來改進聊天機器人或使其更有趣。
Witscript 的對話幽默秘訣
利亞姆:任何深夜脫口秀的標誌性部分之一就是獨白。 獨白笑話是 Witscript 笑話的典範。 為什麼對話要用獨白笑話?
喬:因為獨白笑話的結構是主題、角度和妙語。 主題是笑話所基於的句子。 對於深夜脫口秀來說,它就是新聞。 角度是笑話到達笑點的方向,而笑點是觀眾突然解決的最後的不協調之處。 這就是產生笑聲的原因。
Witscript 的靈感之一是,當你在對話中即興講一個笑話時,基本上就會發生這種結構。 你的朋友對你說了一些話——這可能是一個笑話的主題。 作為喜劇作家或笑話即興創作者,您所要做的就是接受該主題並執行深夜喜劇節目作家根據該主題創建笑話所採用的笑話編寫算法的步驟。 喜劇節目獨白中的新聞主題與當有人對你說一句話時你會得到的設置相同。
“當我調試系統時,我試圖弄清楚,‘好吧,為什麼這些笑話不更有趣呢?’ 我可以說,‘好吧,它選擇了錯誤的主題句柄。 我必須調整那個提示'”
Liam: Witscript 如何執行您在基本笑話編寫算法中討論的所有步驟?
喬:這是一系列七八個提示。 用戶給出輸入——它可以是一條新聞或一個有趣的觀察結果,然後 Witscript 將其視為笑話的潛在主題。 然後,幾乎從字面上看,該程序對我用作 Witscript 框架的人類笑話編寫算法中的每一步都有提示。 例如,第一步是選擇兩個主題句柄。 主題句柄是主題中兩個最重要的名詞或名詞短語。 寫笑話的第一步是識別那些——這是大型語言模型可以做的事情。 你可以給GPT-3.5一個提示,“這個話題中最有趣的兩個名詞和名詞短語是什麼?” 它將執行該步驟。 這些主題句柄將進入笑話編寫過程的下一步。
該過程的通用術語是提示鏈接——您得到的一個提示的輸出將成為下一個提示的輸入。 這是一系列步驟,使得系統非常透明。 當我調試系統時,我試圖弄清楚,“好吧,為什麼這些笑話不更有趣呢?” 我可以說:“好吧,它選擇了錯誤的主題句柄。 我必須調整這個提示,”或者,“它為湯姆·克魯斯產生的聯想並不是我作為一名喜劇作家所關注的。 我怎樣才能更好地聯想到該提示?” 這只是一系列的即時設計以及調整和調整所有這些小槓桿。
“我可以依靠該系統不僅生成可能的妙語,還可以提出作為最終選擇的妙語”
利亞姆:這很有趣。 系統如何評價自身? 它如何確定什麼是好笑話?
喬:該系統的工作原理是生成五個候選笑話。 我有五種不同的技巧來想出潛在的妙語,作為一個人,我在寫笑話時使用這些技巧,現在 Witscript 使用它們。 您可以看到五個候選笑話 - A、B、C、D、E。然後,它會選擇它認為最有趣的候選笑話。 這正是我要求 GPT-3.5 做的事情。 機器認為什麼對用戶來說最有趣? 這也是一個很大的啟示。 我可以依靠該系統不僅生成可能的妙語,還可以提出作為最終選擇的妙語。 如果是在對話系統中,它無法向用戶快速說出五個潛在的笑話並說“你選一個”,它必須選擇一個然後傳遞。
看著這五個人並說:“哦,有趣。 這種做法就產生了那個笑話。” 很多時候,這根本不是一個笑話——這是特定算法的輸出。 這很有幫助,因為如果您是喜劇作家,您可能不喜歡 Witscript 提供的最終選擇。 你可能比 E 更喜歡 B。或者你可以拿 B 來改變這個詞,那將是一個很好的笑話。 該系統還可以成為一個非常有用的寫作助手,幫助您想出自己的笑話。
利亞姆:是的,我想說在那種情況下它是完美的,你可以稍微調整一下。 您能給我們舉一些 Witscript 的笑話嗎? 你是否將它們與你可能寫的笑話進行了比較,並要求人們盲目地說哪個是哪個?
Joe:是的,我每天都會在 Twitter 上發布 Witscript 寫的笑話。 讓我讀一下最近的一些內容。 這是我昨天發的一篇。 用戶說:“今天是全國甜甜圈日,Krispy Kreme 提供免費甜甜圈。” Witscript 說:“為全國腹瀉日做好準備。” 甜甜圈會導致腹瀉。 我確實查了一下。 是的,它們確實是因為脂肪和糖。 另一條消息是,“Netflix 股東投票反對為公司高管提供巨額薪酬方案。” Witscript 說:“好吧,我想他們只能看 Netflix 放鬆一下。” 這些笑話與輸入直接相關且上下文相關。
喜劇演員的工具箱
利亞姆:喜劇寫作真是太迷人了。 關於藝術和人工智能有更廣泛的討論,我想這是你當時寫作時會使用的東西? 有些人可能會對這樣的事情產生抵觸。
“我可以很容易地看到一個作家使用 Witscript 輸入當天的新聞並說,‘好吧,給我一些想法’”
喬:深夜脫口秀節目中的獨白作家的工作量很大,尤其是在《今夜秀》中為傑·雷諾工作。 他會做一個 30 個笑話的獨白,這意味著編劇人員每天必須想出數百個笑話。 在那種數量和質量都重要的情況下,我很容易看到一個作家使用 Witscript 輸入當天的新聞並說:“好吧,給我一些想法。” 有些笑話的字面意思是完美的,你根本不需要改變它們; 他們可以直接播出。 有些需要人類做一些工作,有些則毫無用處,但你可以忽略它們。 我可以看到專業作家,當然還有非專業作家使用 Witscript,但可能不承認這一點。 如果您是專業人士,您可能不會承認您正在從機器獲得幫助。
幾年前,有一個名為 Idea Fisher 的程序,一些喜劇作家使用它。 你基本上輸入了像聖誕節這樣的詞,它就會給你帶來很多聯想。 當你想到聖誕節時你會想到什麼? 聖誕頌歌,聖誕老人,北極,精靈。 寫笑話過程的一部分就是建立關聯。 我們在萊特曼秀上列出的十大名單之一是“十大聖誕老人最討厭的事情”。 因此,擁有一個關聯列表會很有用。 當你想到聖誕老人時你會想到什麼? 然後就是關於紅鼻子馴鹿魯道夫和節日水果蛋糕或從煙囪下去的笑話。 這是軟件如何幫助專業笑話作家的早期例子。 我認為這只是它的延伸。 我就是這樣被介紹給Idea Fisher的。 有人說:“哦,這是我用的東西。” 因為,作為一個人,你無論如何都會這麼做。 這只是一種更簡單的方法。
利亞姆:我猜如果你現在正在為深夜脫口秀節目寫獨白,你會花很多時間寫關於人工智能和聊天機器人的笑話。
喬:是的。 這是 Witscript 寫的一篇相關文章。 該用戶表示,“科技專家警告人工智能給人類帶來滅絕的風險。” Witscript 表示:“如果我們能夠利用人工智能來找出擺脫人工智能的方法就好了。” 這是另一則消息,“微軟總裁表示,他預計美國政府今年將監管人工智能。” Witscript 表示:“別擔心,政府會像監管其他一切一樣監管人工智能。” 所以,很好的笑話。 如果你要為喜劇節目講笑話的話,當然是可以推銷的。
“有時我會就一個主題寫一個笑話,將同一主題交給 Witscript,Witscript 會有自己的看法”
利亞姆:當然。 Witscript 現在在哪裡? 您認為它的未來在哪裡?
Joe:我仍在進行一些內部測試和調整。 它處於有限的 Beta 測試模式。 下一步是找出允許個人訪問它的最佳方法,這意味著想出一種方法來跟踪用戶並處理付款等類似的事情。 我正在探索有效地做到這一點的方法,以便將其交到可以使用它的人手中。
Liam:人們可以去哪裡了解最新動態並了解更多相關信息?
喬:你可以訪問 witscript.com。 如果您想查看 Witscript 的最新輸出,請訪問 Twitter @witscript。 您可以查看 Witscript 對當天新聞的看法。 我還寫笑話並將其發佈在 Twitter 上。 @joetoplyn 是我的 Twitter 賬號。 有時我會就一個主題寫一個笑話,將同一主題交給 Witscript,Witscript 會有自己的看法。
利亞姆:太棒了。 緊接著,我就關注你和 Witscript。 我們現在都可以在時間表中再講幾個笑話。 喬,非常感謝你今天加入我的行列。
喬:謝謝你,利亞姆。 這很有趣。