資料介紹
描述
介紹
當我們開始 Casa Jasmina 項目時,我們清楚地想到了“家的意義是什么?”這個問題,數字時代在我們生活的私人、秘密場所發生的巨大變化使這個問題變得更有意義。
在這種情況下,對話式 UI 的興起(或回歸?)為有趣的語音交互做好了準備,讓我們的眼睛從屏幕上解放出來。在語音平臺中,Snips 提供了一個強大的替代主要谷歌/亞馬遜主流產品的選擇——我們喜歡這個,因為它更透明,可以在霧計算環境中離線工作。
Casa Jasmina 是/成為一個臨時的家,一個由臨時居民居住的展覽空間,因此我們致力于為這個特定的目標群體開發解決方案。臨時住所確實是新酒店,我們在考慮短期住宿甚至老年人需求的情況下進行了這項工作。特殊需求的特殊工具。
我們以一種非常天真的方式嘗試創建一個簡單的層來滿足客人對家庭環境的可能要求。這也意味著技術驅動的解決方案,但這首先迫使我們規范存儲、保持組織的位置。我們想創建一個通用的多語言家庭標簽系統。我們從定義英語/中文/意大利語詞匯開始——請通過添加你的語言來貢獻。我們后來準備了使用磁鐵貼在家具上的標志(您可以自己做),我們希望簡化語言選擇器,讓房東可以在他的城市/家中選擇最相關的語言(柏林的房東可能會覺得意大利語不合適,并且會加上法語和西班牙語等……)
Node-Red、開放硬件和 Snips:無限機會
開源生態系統為家庭環境提供了許多具有挑戰性和強大的機會。Home Assistant、OpenHab和許多其他軟件的社區不斷擴大和壯大。作為不同解決方案的集成商,橋接行業和 DIY 標準,我們選擇在Node-Red 中實施我們的家庭自動化。
先決條件
為了完成這個項目,您將需要:
- Snips.ai 設備和帳戶
- Node-RED 實例
Node-RED 是必需的,因為該應用程序將其用作數據庫配置和自動化的 REST API。您可以將兩者安裝在同一臺設備上,但如果您也將 Node-RED 用于其他流程,我建議您將它們分開。
基本安裝
在存儲庫中,您會找到node-red-flow.json 。此文件是首次設置數據庫的基本模板。在里面你會發現數據庫 http 請求流和一些注入,可以根據你自己的需要輕松更改數據庫內容(例如更改用戶名或類別的答案)。
您可以通過復制 Node-RED 實例的 url 并在瀏覽器的搜索欄中添加/simpleuidb來檢查 http 調用是否有效,它應該會為您提供一個包含您設置的所有內容的 json 對象。
現在 Node-RED 端已完成并正常工作,我們可以切換到 Snips.ai 端。
打開您的 Web 瀏覽器并使用您的憑據連接到,在這里您將找到您到目前為止創建的所有助手。我們的應用程序在撰寫本文時僅適用于英語,因此您需要英語助手才能使用它。
打開你的助手,你會看到你安裝的應用程序;要安裝一個新的,打開應用程序商店并尋找簡單的用戶界面或點擊此鏈接。安裝該應用程序,然后通過單擊部署來部署您新培訓的助手。
將命令粘貼到您的計算機終端,讓 SAM 實用程序執行它的工作。片刻之后,安裝過程將要求您輸入數據庫 url:復制并粘貼您用于檢查數據庫是否正常工作的 url ( http://:1880/simpleuidb )。現在系統已配置好,Snips 將回答“嘿 Snips,幫幫我!”。
高級使用和配置
該應用程序支持多種多樣的用戶集成和定制。通過在控制臺上分叉它,您可以訪問我們配置的所有意圖,并且可以根據自己的需要修改它們。
簡單的用戶界面支持快捷方式。您不必每次都說“嘿 Snips ,幫幫我”,而是使用類別的關鍵字來選擇您想要的內容(例如“嘿 Snips,交通”為您提供交通信息)。您可以通過向意圖添加示例來添加任何類型的快捷方式。
您可以通過在類別中定義 url 字段來向特定類別添加操作。
"transportation":{
"categories":null
"transportation":"Check the dashboard to find the tourist guide, we are close to taxis and underground station",
"url":"http://192.168.0.115:1880/callback" //add this field to add actions
}
這樣,當 Snips 檢測到意圖時,它會向您指定的地址發出 http get 請求。
添加新類別非常簡單。在數據庫中,將您的新類別添加到類別數組中,并添加一個類別對象以明確是否存在子類別和答案。
{
...
"categories":["food","sleeping","bathroom","cleaning","temperature","emergency","transportation","NEW CATEGORY"],
...
"NEW CATEGORY":{"categories":null,
"NEW CATEGORY":"SNIPS ANSWER"
}
...
}
然后在意向控制臺中,在 WhereIs 意向中添加與您添加的類別名稱相匹配的示例。這樣 Snips 將識別類別并且應用程序將正確路由它。
添加帶有子類別的類別需要創建新意圖并編輯操作腳本。在 Simple UI 應用程序中,為您的類別添加意圖,您將子類別放在其中作為示例。參數字段必須稱為“類別”。
在腳本中使用模板回調 (food_callback) 并根據您的配置更改參數。
def NEWCATEGORY_callback(self, hermes, intent_message):
global databaseurl
#get categories from database
good_category = requests.get(
databaseurl).json().get("NEW CATEGORY").get("categories")
category = None
if intent_message.slots: #check is user request match subcategory
category = intent_message.slots.category.first().value
if category.encode("utf-8") not in good_category:
category = None
if category is None:
Answer = "Sorry I didn't understand. Say " + \
", ".join(good_category) + " to get help."
hermes.publish_continue_session(
intent_message.session_id, Answer, ["casajasmina:INTENTNAME"])
else:
#get the answer from the database
Answer = str(requests.get(
databaseurl).json().get("NEW CATEGORY").get(category))
hermes.publish_end_session(intent_message.session_id, Answer)
然后將其添加到與您的意圖名稱匹配的master_intent_callback elif 條件和whereIs_callback中。這樣,助手將能夠將您的請求路由到正確的流程。
#generic callback for every category in the database, handles single and multi category topics
def whereIs_callback(self, hermes, intent_message):
.....
#multi category handling
Answer = "You asked for " + category + \
", I can give you tips on " + ", ".join(subcategory)
#add new intent here...
hermes.publish_continue_session(intent_message.session_id, Answer, ["casajasmina:Food", "casajasmina:emergency","casajasmina:INTENTNAME])
.....
def master_intent_callback(self, hermes, intent_message):
coming_intent = intent_message.intent.intent_name
if coming_intent == 'casajasmina:WhereIs':
self.whereIs_callback(hermes, intent_message)
elif coming_intent == 'casajasmina:ConnectMe':
self.askHelp_callback(hermes, intent_message)
elif coming_intent == 'casajasmina:Food':
self.food_callback(hermes, intent_message)
elif coming_intent == 'casajasmina:emergency':
self.emergency_callback(hermes, intent_message)
elif coming_intent == 'casajasmina:INTENTNAME':
self.NEWCATEGORY_callback(hermes, intent_message)
結論
該項目正在持續開發中。我們正在添加新功能,讓助手感覺不那么機械和笨重,完善其結構和交互。下一個里程碑是發布多語言支持(最初是意大利語)并簡化標簽系統和 Snips 行為之間的集成。
- 簡單的水質分析開源分享
- 簡單的逆變器電路開源
- 簡單的擲骰子草圖開源分享
- Cosmac ELF1802 UI界面開源硬件
- 簡單的錄制和播放開源分享
- 簡單的機器人開源分享
- RC ONE KIM1副本(UI修訂版C)開源項目 0次下載
- 呼吸機UI和傳感器板5 30 2020開源
- 呼吸機UI和傳感器板開源分享
- 簡單電源開源項目
- 用于OHOS最簡單的UI驗證庫教程 1次下載
- 開源網絡協議分析器WireShark軟件下載 15次下載
- ThinkPHP 6.0完全開發手冊資源下載 13次下載
- 啟動程序臨時圖形用戶界面 3次下載
- VR設計3種UI類型介紹及房間規模VR交互式體驗設計UI技巧 10次下載
- 【AWTK開源智能串口屏方案】設計UI界面并上傳到串口屏 467次閱讀
- TMSVCL UI Pack v13.0的新特性 1314次閱讀
- 臨時用電裝置的選擇 1050次閱讀
- 臨時用電的要求事項 4415次閱讀
- Element UI的安裝 7114次閱讀
- 編寫機智云安卓開源框架的UI界面 1626次閱讀
- 方舟開發框架新增開源組件及其使用方法介紹 2479次閱讀
- 三種自定義彈窗UI組件封裝的實現 2890次閱讀
- 改善優化網站UI設計的七個技巧 2671次閱讀
- Linux UI界面:自定義 GNOME 主題 5105次閱讀
- UI設計師如何設計好圖標,需遵循這七個規則 2338次閱讀
- 數據測試:UI測試常見BUG 2420次閱讀
- UI設計基礎知識 4296次閱讀
- 谷歌開源TFGAN輕量級的工具庫 目的是讓訓練和評估GAN變得更加簡單 4811次閱讀
- ZedBoard學習手記(八) 更大的目標! 973次閱讀
下載排行
本周
- 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次下載 | 免費
評論
查看更多