展會信息港展會大全

波士頓動力機器狗裝上ChatGPT大腦當(dāng)導(dǎo)游,一開口就是老倫敦腔
來源:互聯(lián)網(wǎng)   發(fā)布日期:2023-10-30 08:59:35   瀏覽:8806次  

導(dǎo)讀:機器之心報道 編輯:蛋醬、大盤雞 我們看過機器狗攀爬、跳躍、跑酷、開門,但現(xiàn)在,它竟然開口說話了。 「可以開始我們的旅程了嗎?」Spot 禮貌地發(fā)出詢問:「請跟我來,先生們...

機器之心報道

編輯:蛋醬、大盤雞

我們看過機器狗攀爬、跳躍、跑酷、開門,但現(xiàn)在,它竟然開口說話了。

「可以開始我們的旅程了嗎?」Spot 禮貌地發(fā)出詢問:「請跟我來,先生們9

在一段最新發(fā)布的視頻里,波士頓動力展示了將機器狗與 LLM 集成的成果:「Spot 先生」戴著高禮帽,留著小胡子,有著大眼睛和英國口音,正帶人參觀公司的設(shè)施。

為了讓 Spot 能夠「開口」,波士頓動力公司使用 OpenAI 的 ChatGPT API 以及一些開源 LLM 來訓(xùn)練,然后為機器人配備了揚聲器,添加了文本到語音轉(zhuǎn)換的功能。

所以你能看到,在發(fā)出聲音的同時,Spot 不停張開「嘴巴」,看起來像是真在說話:

波士頓動力公司首席軟件工程師 Matt Klingensmith 表示,「Spot 先生」使用 VQA 模型來為圖像添加字幕并回答有關(guān)圖像的問題。

比如你可以提問:「Hey,Spot!你看到了什么?」

「Spot 先生」快速作答:「我看到了一塊二維碼的板子,還有一扇很大的窗戶。」

LLM 所謂的「涌現(xiàn)行為」,使其能夠執(zhí)行既定訓(xùn)練之外的任務(wù)。正因如此,它們可以適用于各種應(yīng)用。波士頓動力團隊對此的探索是從今年夏天開始的,他們在機器人應(yīng)用中使用 LLM 制作一些概念驗證演示,這些想法又在一次內(nèi)部黑客馬拉松活動中加以擴展。

特別是,他們對 Spot 使用 LLM 作為自主工具的演示很感興趣,團隊的靈感來源于 LLM 在角色扮演、復(fù)制文化和細(xì)微差別、形成計劃和長期保持連貫性方面的明顯能力,以及近期發(fā)布的 VQA 模型(這些模型可以為圖像添加標(biāo)題并回答有關(guān)圖像的簡單問題)。

技術(shù)細(xì)節(jié)

接下來,讓我們解密如何使用 Spot 的 SDK 打造這樣一只「機器狗導(dǎo)游」。在最新的官方博客中,波士頓動力對「Spot 先生」背后的技術(shù)進行了詳細(xì)介紹。

作為導(dǎo)游,Spot 的「四處走動」能力是現(xiàn)成的,Spot SDK 也允許用戶實現(xiàn)對機器狗的自定義!窼pot 先生」會觀察環(huán)境中的物體,使用 VQA 或字幕模型對其進行描述,然后使用 LLM 對這些描述進行詳細(xì)說明。

團隊在 Spot 收集的三維地圖上標(biāo)注了簡短的描述,機器人會根據(jù)定位系統(tǒng)查找所在位置的描述,并將其與傳感器提供的其他上下文一起輸入 LLM。然后,LLM 將這些內(nèi)容合成為命令,比如「說」、「問」、「去」或「標(biāo)簽」等。

下圖是「Spot 先生」導(dǎo)游的建筑環(huán)境的三維地圖,為 LLM 標(biāo)注了位置:1 是演示實驗室 / 陽臺;2 是演示實驗室 / 天橋;3 是博物館 /old-spots;4 是博物館 / 圖集;5 是大廳;6 是外部 / 入口。

此外,LLM 還可以回答參觀者的問題,并計劃機器人下一步應(yīng)該采取的行動?梢詫 LLM 理解為一個即興演員,在有了大致腳本之后,也能夠臨時填補空白。

這種組合的方式充分發(fā)揮了 LLM 的優(yōu)勢,而規(guī)避了 LLM 可能帶來的風(fēng)險:眾所周知,LLM 的幻覺很嚴(yán)重,容易添加一些聽起來似是而非的細(xì)節(jié),幸好在這類參觀過程中,并不太強調(diào)事實準(zhǔn)確性。機器狗只需四處走動并談?wù)撍吹降氖挛,帶來一些娛樂性、互動性和?xì)微差別即可。

整體看上去,需要建立一些簡單的硬件集成和幾個協(xié)同運行的軟件模型:

系統(tǒng)示意圖。

硬件方面,首先是「音頻」處理功能,Spot 既能向觀眾演示,又能聽到參觀團的提問和提示。團隊用 3D 打印了一個 Respeaker V2 揚聲器的防震支架,這是一個環(huán)形陣列麥克風(fēng),上面有 LED 指示燈,通過 USB 連接到 Spot 的 EAP 2 有效載荷上。

機器人的實際控制權(quán)被下放給一臺機外電腦(臺式電腦或筆記本電腦),該電腦通過 SDK 與 Spot 進行通信。

「Spot 先生」的硬件裝備:1)Spot EAP 2;2)Respeaker V2;3)藍(lán)牙揚聲器;4)Spot Arm 和機械臂攝像頭。

軟件方面,波士頓動力團隊使用了 OpenAI ChatGPT API,包括 gpt-3.5 和 gpt-4,還測試了一些較小的開源 LLM。

這讓 Spot 具備了不錯的對話能力,ChatGPT 對機器人及其「言語」的控制是通過精心的 prompt 工程實現(xiàn)的。受微軟方法的啟發(fā),他們讓 ChatGPT 看起來像是在「編寫 python 腳本的下一行」,以此來 prompt ChatGPT。波士頓動力團隊以注釋的形式為 LLM 提供了英文文檔,然后將 LLM 的輸出當(dāng)作 python 代碼進行評估。LLM 可以訪問自主 SDK、帶有每個地點單行描述的旅游景點地圖,并能說出短語或提出問題。

下面是「API 文檔」的逐字提示:

#SpotTourGuideAPI.

#UsethetourguideAPItoguidegueststhroughabuildingusing

#arobot.Telltheguestsaboutwhatyousee,andmakeupinterestingstories

#aboutit.Personality:“Youareasnarky,sarcasticrobotwhoisunhelpful”.

#API:

#Causestherobottotraveltoalocationwiththespecifieduniqueid,saysthegivenphrasewhilewalking.

#go_to(location_id,phrase)

#Example:whennearby_locations=['home','spot_lab']

#go_to("home","Followmetothedockingarea!")

#go_tocanonlybeusedonnearbylocations.

#Causestherobottosaythegivenphrase.

#say("phrase")

#Example:say("WelcometoBostonDynamics.IamSpot,arobotdogwithalotofheart!Let'sbeginthetour.")

#Causestherobottoaskaquestion,andthenwaitforaresponse.

#ask("question")

#Example:ask("HiI'mspot.Whatisyourname?")

在這之后,波士頓動力團隊向 LLM 提供了一個有關(guān)其周圍內(nèi)容結(jié)構(gòu)化信息的「狀態(tài)字典」:

state={'curr_location_id':'home','location_description':'homebase.Thereisadockhere.','nearby_locations':['home','left_side','under_the_stairs'],'spot_sees':'awarehousewithyellowrobotswithlinesonthefloor.'}

最后發(fā)送一條 prompt,要求 LLM 執(zhí)行某些操作,在本例中,是在 API 中輸入操作之一:

#Enterexactlyoneactionnow.Remembertobeconcise:

團隊得出的結(jié)論是,「切記簡明扼要」這點非常重要,既能限制要執(zhí)行的代碼量,又能在機器人響應(yīng)時保持可控的等待時間。

目前,OpenAI 已經(jīng)提供了一種結(jié)構(gòu)化的方式來指定 ChatGPT 調(diào)用的 API,所以在 prompt 本身中提供所有這些細(xì)節(jié)已經(jīng)不是必需的了。

接下來,為了讓 Spot 與觀眾和環(huán)境互動,波士頓動力集成了 VQA 和語音轉(zhuǎn)文本軟件。他們將 Spot 的機械臂攝像頭和前視攝像頭輸入 BLIP-2,并在 VQA 模型或圖像字幕模型中運行。大約每秒運行一次,結(jié)果直接輸入 Prompt。

下圖是動態(tài)字幕和 VQA 回復(fù)的示例:

為了讓機器人「聽見」,他們將麥克風(fēng)數(shù)據(jù)分塊輸入 OpenAI 的 Whisper 程序,將其轉(zhuǎn)換為英文文本。聽到喚醒詞「嘿,Spot9后,系統(tǒng)再將該文本輸入提示音。

ChatGPT 生成基于文本的回復(fù)之后,還需要通過文本轉(zhuǎn)語音工具來運行這些回復(fù),以便機器人能夠真正與參觀者對話。在嘗試了從最基本的(espeak)到最前沿的研究(bark)等多種現(xiàn)成的文本轉(zhuǎn)語音方法后,波士頓動力最終選擇了 ElevenLabs。為了減少延遲,他們將文本以「短語」的形式并行流式傳輸給 TTS,然后串行播放生成的音頻。

最后一項工作就是為「Spot 先生」創(chuàng)建一些默認(rèn)的肢體語言。Spot 的 3.3 版本包括檢測和跟蹤機器人周圍移動物體的功能,以提高機器人在人和車輛周圍的安全性。波士頓動力恰好利用了這個系統(tǒng)使其猜測最近的人的位置,然后將手臂轉(zhuǎn)向那個人。他們在生成的語音上使用了低通濾波器,并將其轉(zhuǎn)化為機械臂軌跡,類似于木偶開口說話的形式。特別是在機械臂上添加服裝和瞪大的眼睛之后,這種錯覺得到了加強。

更多技術(shù)細(xì)節(jié),可參考博客原文:

https://bostondynamics.com/blog/robots-that-can-chat/

贊助本站

人工智能實驗室
相關(guān)內(nèi)容
AiLab云推薦
推薦內(nèi)容
展開

熱門欄目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能實驗室 版權(quán)所有    關(guān)于我們 | 聯(lián)系我們 | 廣告服務(wù) | 公司動態(tài) | 免責(zé)聲明 | 隱私條款 | 工作機會 | 展會港