資料介紹
描述
Alexa太無聊了嗎?當您要求 Siri 關燈時,您有時是否希望它更刻薄一點?谷歌助理稱你不夠胖嗎?不要害怕,GPT-3 就在這里。
在這個項目中,我們將構建一個用于家庭自動化的語音助手,它利用 GPT-3 的強大功能來解析您的查詢并根據您的命令提供尖刻的、上下文相關的俏皮話。
如果你給 AI 助手一個命令,比如“你能關掉廚房燈嗎”,GPT-3 會解析該短語以提取設備名稱(廚房燈)、所需狀態(關閉),它會為你服務用一個有趣的俏皮話,比如“什么,你吃完了冰箱里的食物嗎?” 作為回應。您可以通過喚醒詞激活助手,說出命令,程序將在說出有趣的俏皮話時處理您的查詢。
這個項目完全是用 Python 編寫的,所以很容易根據自己的需要進行修改。我已經為 Lifx 智能燈泡添加了集成,但您可以與許多其他人一起進行設置。
GPT-3 入門
在我們深入研究之前,了解 GPT-3 的實際情況很重要。如果您還不熟悉它,GPT-3 是一種極其先進的語言模型,具有簡單的基于文本的查詢方法。您可以向 GPT-3 提供提示,它會選擇與提供的提示最匹配的文本響應。GPT-3 非常精通模式識別,因此您可以向它提供一些示例,說明它應該如何響應給定的查詢以構建簡單的 API。
下面是該項目將向 GPT-3 輸入的內容示例片段,以供用戶輸入“關閉廚房燈”。
Prompt: can you turn on the dining room light
Object: dining room light
Desired State: 1
Response: What, you're too busy getting fat watching TV on the couch to do it yourself?
Prompt: turn off the kitchen light
第一個提示作為示例給出,它展示了 GPT 如何構建其響應。第二個提示是完成 GPT-3 的用戶輸入。GPT-3 可能會響應以下內容:
Object: kitchen light
Desired State: 0
Response: What, you like to eat in the dark? Creep.
在實際系統中,您將提供更多 GPT-3 示例,而不僅僅是一個,但希望您能明白這一點。此外,由于模型的構造方式,您通常會針對同一查詢獲得不同的響應。對于輸入“打開臥室燈”,我已經看到了從良性到混亂再到輕浮的一切。
第 1 步:硬件和軟件要求
您只需要一臺帶麥克風和揚聲器的電腦即可嘗試。您自己的家庭自動化設置需要一些配置,但您可以在不進行設置的情況下測試語音功能并查看一些有趣的響應。
我不想讓我的筆記本電腦成為一個榮耀的家庭自動化中心,所以我創建了一個 Raspberry Pi 系統來監聽命令并處理響應。這里的大部分繁重工作都是在云中完成的,因此即使是 RPi 零也可以工作。我還訂購了一些帶有基于 LAN 的簡單 API 的智能燈泡。您可能會使用自己的,但這需要一些開發工作。以下是我使用的部件的完整列表:
- 帶電源的 Raspberry Pi 4 (幾乎任何計算機都可以工作,但您需要相應地修改以下部分)
- RASPIAUDIO 揚聲器和麥克風帽(在使用之前需要幾個步驟才能使用 Raspberry Pi 進行設置)
- DFRobot液晶顯示器
- LIFX 智能燈泡
您暫時還需要自己的 GPT-3 API 密鑰。目前有一個等候名單來獲得這些,但你可以在這里注冊一個。我需要一些時間才能將此服務包裝在它自己的 API 中,這樣您就不需要密鑰了。如果您愿意,請在下面發表評論。如果有足夠的興趣,我會抽空去做。
第 2 步:代碼設置
您可以在github.com/AlexFWulff/SnarkyHomeAutomation找到此項目的 Git 存儲庫。
- 首先將此存儲庫克隆到您的遠程計算機
-
接下來,創建一個虛擬環境來隔離此項目的所有依賴項(將示例路徑替換為您希望虛擬環境所在的位置):
python3 -m venv /path/to/virtual_env
-
激活您的虛擬環境
source /path/to/virtual_env/bin/activate
-
導航到 git 存儲庫的頂層,并安裝所有項目的需求
pip install -r requirements.txt
-
根據您的平臺,您可能會缺少一些庫。在 Raspberry Pi 上,我必須運行
sudo apt install libportaudio2 python3-tk flac ffmpeg
-
將您的 OpenAI 密鑰放入系統某處的文本文件中,然后將
key_path
字段更改config.ini
為指向該文件
你*應該*能夠通過運行來運行python Run.py
。如果您的麥克風和揚聲器配置不正確,您可能會看到如下錯誤:
OSError: [Errno -9996] Invalid input device (no default output device)
如果這困擾您,請在單獨的程序中使用它們來確保您的麥克風和揚聲器正常工作。
默認喚醒詞是“計算機”。要給系統一個命令,說“計算機”,然后說一個查詢。然后系統應該通過揚聲器給你一個響應并輸出它將采取的行動。
第 3 步:配置您的智能設備
該文件SmartDeviceInfo.xml
包含我使用 LIFX 設備所需的所有信息。如果您還使用 LIFX 燈泡,您只需在 XML 文件中添加一個新條目,其中包含您的設備名稱及其 MAC 地址。您可以使用此 Python 工具找到本地網絡上所有 LIFX 設備的 MAC 地址。確保enable_lifx
將配置文件中的字段設置為“True”以啟用此功能。
我編寫了這個軟件,以便可以輕松添加其他類型的設備。只需將 xml 文檔中的 標記設置為其他內容,然后在AutomationManager.py
. 每個設備至少需要一個名稱和一個類型標簽。
您可以讓程序僅在 GPT-3 輸出的名稱與您網絡上的設備完全匹配時更改設備的狀態,或者您可能會生活在危險之中,讓程序選擇最接近 GPT-3 輸出的設備名稱。您可以在配置文件中更改此行為。
第 4 步:提示自定義
您可以添加更多自定義提示示例來更改 GPT 的響應方式。您可以在 中找到默認提示prompts/prompt1.txt
。如果要創建新行為,請在此目錄中添加一個新文件并將prompt_file_path
值更改config.ini
為指向此新文件。
GPT-3 可以識別很多不同的語音模式。GPT-3 甚至精通各種不同的語言,因此如果您更愿意用英語以外的語言與您的家庭自動化 AI 交談,您可以創建一個提示來這樣做。
我還創建了一些使用起來非常有趣但不一定適合公開發布的提示。如果您希望我給您發送一些電子郵件,請給我發一封電子郵件(您可以在我的網站上找到)。
更多定制!
該項目還可以作為由 GPT-3 支持的其他類型的語音助手的有用模板。我以模塊化的方式編寫了軟件,所以應該很容易在你認為合適的時候交換東西。例如,您可以擴展相同的功能,將項目添加到待辦事項列表中,并為您添加的每個項目提供有趣的語音響應。事實上,您可以不斷添加模塊來構建功能齊全的語音助手,可以完成許多任務!
顯示也相當簡陋。如果你愿意,修改我的設計并用你自己的一些替換它們應該很容易。一切都是用 Tkinter 編寫的,具有對新屏幕分辨率的半響應行為。
就這樣!我希望你喜歡這個項目,并在下面的評論中告訴我你用它做了什么。
- 家庭自動化系統開源構建
- 使用語音命令的家庭自動化
- 如何構建藍牙控制的家庭自動化
- 基于物聯網的家庭自動化
- 使用物聯網的家庭自動化
- 使用谷歌助手實現家庭自動化
- 使用Node MCU的家庭自動化
- 簡單家庭自動化或工業自動化物聯網解決方案
- 使用螺栓模塊的家庭自動化
- 家庭自動化系統開源分享
- 家庭自動化能源測量系統
- 基于藍牙的家庭自動化
- 使用NodeMCU的基于物聯網的家庭自動化
- 使用Arduino模擬家庭自動化項目
- 現代家庭自動化遙控系統電路圖
- 工業自動化中的控制方式 898次閱讀
- 工業自動化和自動化區別是什么 1840次閱讀
- 過程自動化控制和運動自動化控制的原理詳解 1737次閱讀
- 用于街道照明自動化的電力線通信 1627次閱讀
- 基于PlatformIO IDE的家庭自動化系統設計方案實現 2489次閱讀
- GPT-3難以復現,為什么說PyTorch走上了一條“大彎路”? 1472次閱讀
- 基于Raspberry Pi Pico開發先進的家庭自動化系統 3004次閱讀
- GPT系列的“高仿” 最大可達GPT-3大小 自主訓練 2879次閱讀
- 如何自學PLC與自動化? 2814次閱讀
- 什么是非標自動化設備及分類介紹 4.3w次閱讀
- 非標自動化設備的分類 6671次閱讀
- ATE自動化測試系統是什么_ATE自動化測試系統介紹 3.2w次閱讀
- 自動化領域初涉水 非標自動化和自動化到底有哪些區別? 6349次閱讀
- jenkins自動化部署 4717次閱讀
- 意法半導體:家庭自動化完全解決方案 1097次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多