偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

使用GPT和Whisper打造個性化語音助手

譯文 精選
人工智能
本文旨在指導(dǎo)您創(chuàng)建一個簡單而強大的語音助手,以滿足您的喜好。我們將使用兩個強大的工具——Whisper和GPT來實現(xiàn)這一點。你可能已經(jīng)知道GPT及其功能,但你知道Whisper是什么嗎?

譯者 | 朱先忠

審校 | 重樓

簡介

本文旨在指導(dǎo)您創(chuàng)建一個簡單而強大的語音助手,以滿足您的喜好。我們將使用兩個強大的工具——Whisper和GPT來實現(xiàn)這一點。你可能已經(jīng)知道GPT及其功能,但你知道Whisper是什么嗎?

其實,Whisper是OpenAI公司開發(fā)的一種高級語音識別模型,可提供準確的音頻到文本轉(zhuǎn)錄。

我們將帶您完成示例工程構(gòu)建的每一步,包括編碼說明。最后,您將擁有一款可啟動并正常運行的語音助手。

準備工作

打開AI API密鑰

如果你已經(jīng)有了OpenAI API密鑰,你可以跳過這一節(jié)。

Whisper和GPT API都需要訪問OpenAI API密鑰。與ChatGPT的訂閱需要支持固定費用不同,API密鑰是根據(jù)您使用服務(wù)的數(shù)量進行支付的。

價格還算是比較合理的。在撰寫本文時,Whisper的價格為0.006美元/分鐘,GPT(模型為GPT-3.5-turbo)的價格為0.002/1K代幣(代幣約為0.75個單詞)。

OpenAI的網(wǎng)站(作者自己的圖片)

要獲取密鑰,請首先在OpenAI網(wǎng)站上創(chuàng)建一個帳戶。登錄后,單擊右上角的姓名并選擇查看API密鑰。單擊按鈕“創(chuàng)建新密鑰(Create new secret key)”后,將顯示您的密鑰。請確保保存此密鑰,因為您將無法再次看到它。

示例工程依賴的第三方庫

本小節(jié)介紹項目所需的開源代碼庫。本文示例項目包括使用OpenAI開發(fā)的Python庫執(zhí)行各種AI任務(wù),以及使用pyttsx3生成語音,使用SoundDevice錄制和播放音頻,使用numpy和scipy進行數(shù)學(xué)運算等。和往常一樣,在啟動新項目時,您應(yīng)該在安裝包之前創(chuàng)建一個新的虛擬環(huán)境。

示例工程代碼結(jié)構(gòu)

我們的代碼將圍繞一個類構(gòu)建,總共占用大約90行代碼。在此,假設(shè)您對Python類語法知識已經(jīng)有了基本的理解。整個類結(jié)構(gòu)如下:

其中,Listen方法負責(zé)捕獲用戶的語音輸入,并使用Whisper將其轉(zhuǎn)換為文本。Think方法負責(zé)將文本發(fā)送到GPT,然后由GPT生成自然語言響應(yīng)。speak方法負責(zé)將響應(yīng)文本轉(zhuǎn)換為可播放的音頻。

注意:上圖中最右邊代表系統(tǒng)中的GPT助理部分(負責(zé)給出自然語言響應(yīng))。

下面這個過程是可以重復(fù)執(zhí)行的,即用戶可以通過發(fā)出另一個請求在對話中進行交互。

示例類對應(yīng)的代碼結(jié)構(gòu)(作者自己的圖片)

__init__函數(shù)

此函數(shù)負責(zé)初始化歷史記錄和設(shè)置API密鑰。

我們需要一個歷史記錄來跟蹤以前的消息。這基本上對應(yīng)于我們助理的短期記憶,可以讓它記住你在談話中早些時候說的話。

listen函數(shù)

listen函數(shù)工作流程

這個方法相當于我們助理的耳朵功能。

listen函數(shù)允許接收來自用戶的輸入。此函數(shù)負責(zé)記錄麥克風(fēng)中的音頻并將其轉(zhuǎn)錄為文本。

listen函數(shù)的具體作用如下:

  • 錄制音頻時打印出“Listening…”信息。
  • 使用聲音設(shè)備以44100 Hz的采樣率錄制3秒的音頻(或您想要的任何持續(xù)時間)。
  • 將錄制的音頻保存為臨時WAV文件中的NumPy數(shù)組。
  • 使用OpenAI API的轉(zhuǎn)錄方法將音頻發(fā)送給Whisper,由Whisper將其轉(zhuǎn)錄。
  • 將轉(zhuǎn)錄后的文本打印到控制臺,以確認轉(zhuǎn)錄成功。
  • 以字符串形式返回轉(zhuǎn)錄后的文本。

在本例中,助理的監(jiān)聽時長為3秒鐘,但您可以根據(jù)需要更改時間。

think函數(shù)

think函數(shù)工作流程

其實,我們系統(tǒng)中助理的大腦是由GPT驅(qū)動的。think函數(shù)負責(zé)接收助理聽到的內(nèi)容,并詳細闡述回應(yīng)內(nèi)容。

值得注意的是,響應(yīng)內(nèi)容不是在您的本地計算機上創(chuàng)建的。文本需要發(fā)送到OpenAI的服務(wù)器,以便通過API進行處理。然后,響應(yīng)內(nèi)容被保存在響應(yīng)變量中,用戶消息和響應(yīng)都被添加到歷史記錄中,即助手的短期記憶,負責(zé)為GPT模型提供上下文以生成響應(yīng)。

speak函數(shù)

speak函數(shù)工作流程

speak函數(shù)負責(zé)將文本轉(zhuǎn)換為語音,并將其回放給用戶。此函數(shù)只接受一個參數(shù):text。此參數(shù)應(yīng)該是一個字符串,表示要轉(zhuǎn)換為語音的文本。

當用文本字符串作為參數(shù)調(diào)用函數(shù)時,它會用命令engine=pyttsx3.init()初始化pyttsx3語音引擎。這個對象是引擎用來將文本轉(zhuǎn)換為語音的主要接口。

然后,該函數(shù)指示語音引擎使用命令引擎將提供的文本轉(zhuǎn)換為語音。這會將提供的要speak(由引擎讀出)的文本排隊。命令engine.runAndWait則負責(zé)告訴引擎處理排隊的命令。

值得注意的是,Pyttsx3是在本地處理所有文本到語音的轉(zhuǎn)換,這在系統(tǒng)的延遲方面是一個顯著的優(yōu)勢。

最后的潤色

到此,系統(tǒng)中助理部分已經(jīng)準備好了。接下來,我們只需要創(chuàng)建一個輔助對象,然后開始對話。

對話是一個無限循環(huán),當用戶說出包含“Goodbye(再見)”的句子時,對話就結(jié)束了。

個性化體驗技巧

總體來看,自定義GPT助手是輕而易舉的事情!我們構(gòu)建的代碼是極具模塊化的,它允許您通過添加各種功能進行自定義。以下是一些幫助您進行定制的參考想法:

  • 給助理一個角色:改變最初的提示,讓你的助理扮演你的英語老師、勵志演說家或你能想到的任何其他角色!這方面定制,請查看Awesome ChatGPT Prompts了解更多想法。
  • 更改語言:想使用另一種語言嗎?沒問題!只需將代碼中的英語更改為您想要的語言即可。
  • 構(gòu)建應(yīng)用程序:您可以輕松地將助手集成到任何應(yīng)用程序中。
  • 添加個性:通過添加自定義回復(fù)或使用不同的語調(diào)和語言風(fēng)格,讓你的助手擁有獨特的個性。
  • 與其他API集成:將您的助手與其他API進行集成,以提供更高級的功能,如天氣預(yù)報或新聞更新等。

結(jié)論

在本文中,我們解釋了如何檢索OpenAI API密鑰,并提供了用于捕獲用戶輸入、生成響應(yīng)以及將文本轉(zhuǎn)換為語音以進行播放的listen、think和speak等函數(shù)的代碼示例。

有了這些知識,您可以開始創(chuàng)建一款適合您自己特定需求的獨特語音助手??傊?,存在無限的可能性:從創(chuàng)建一個個人助理來幫助完成日常任務(wù),到構(gòu)建一個語音控制的自動化系統(tǒng)……有關(guān)本文示例的所有代碼,您可以訪問鏈接的GitHub存儲庫。

譯者介紹

朱先忠,51CTO社區(qū)編輯,51CTO專家博客、講師,濰坊一所高校計算機教師,自由編程界老兵一枚。

原文標題:Creating Your Personalized Voice Assistant with GPT and Whisper,作者:Donato Riccio

責(zé)任編輯:華軒 來源: 51CTO
相關(guān)推薦

2024-03-25 07:57:10

ChatGPTPromote人工智能

2018-10-25 14:21:22

Oracle數(shù)字化助手

2022-11-01 07:19:45

推薦系統(tǒng)非個性化

2011-08-18 18:53:30

win7

2020-06-28 07:00:00

推薦系統(tǒng)智能商務(wù)服務(wù)平臺

2023-10-17 08:42:13

ChatGPT定制指令

2023-09-25 15:54:28

Canvas國慶

2023-05-17 15:01:04

iOS 17蘋果系統(tǒng)

2023-10-10 15:21:51

人工智能

2025-02-11 10:30:00

2014-12-19 10:02:33

華為智慧城市

2011-01-20 10:19:21

PowerShell個性化

2012-03-28 14:58:37

手機推送移動應(yīng)用

2015-04-17 15:36:50

Teradata數(shù)字化

2010-01-11 17:41:26

MXN旅游頻道

2019-09-20 09:06:27

物聯(lián)網(wǎng)個性化客戶體驗

2011-05-04 14:38:53

海爾江山帝景一體機

2013-11-07 16:42:34

Windows 8.1個性化

2014-06-03 17:11:39

FM數(shù)據(jù)挖掘數(shù)據(jù)處理

2018-05-14 12:48:04

大數(shù)據(jù)銷售企業(yè)
點贊
收藏

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