3D聲音國際象棋
使用有限的詞彙模型使用Coqui STT學習和教學語音AI的多語音驅動的3D國際象棋遊戲。
請注意:此存儲庫還沒有準備好生產。截至2022年4月1日,它在Alpha和Beta版本之間。
當前功能:
- 單用戶服務器用於文本STT推理(nodejs)的語音服務(即它在單個核心免費節點上工作 - 但我們支持服務器池)
- 3D前端(僅具有某些按鈕和輸出區域的多語言界面)
- 目前支持的語言:de(德語),EN(英語),TR(土耳其語)
- 你與自己對抗:)

我們已經打開了一個由服務器池支持的測試站點,用於我們的測試。
內容摘要
- 聲學模型創造:示例筆記本模型(TODO)
- 語言模型創作:所有用於創建域特定語言模型的文件
- 語音總結反應:前端 - react&three.js實施
- 語音總容 - 服務器:服務器 - 簡單的單個連接nodejs實現
如何安裝
托多
如何貢獻
- 用您的語言創建新的聲學和語言模型
- 如果需要
- 翻譯資源文件(Messages.json)
- 測試;想法,問題的反饋;提交和公關
如何添加我的語言?
- 獲取有關您語言的國際象棋術語的信息(如果您還不知道 - Wikipedia和YouTube會有所幫助)。
- 在國際象棋句子發生器中檢查現有的句子/編程。
- 複製適當的句子生成器,將其重命名為您的語言代碼,然後翻譯/適應。
- 查找兼容的Coqui STT聲學模型(.tflite文件)或從Mozilla Common Voice數據集中訓練一個模型。
- 翻譯資源文件(Messages.json)
- 測試您在本地分叉的服務器/客戶端上測試結果,並在需要時改進模型。
- 提出拉動請求(PR)以添加您的聲學模型(.tflite),語言模型(.scorer)到Voice-Chess-Server/voice DIR,添加生成的JSON語言文件和翻譯的消息。
如果您不能做些,請打開一個問題,以便我們可以提供幫助。
其他信息
當前的聲學和語言模型
詳細信息可以在此處找到。
使用的開源項目
- 語音:Coqui Stt,Coqui示例,Kenlm,Mozilla Common語音數據集。
- 3D UI:三。 js&React三纖維(帶Drei和Zustand)
- 國際象棋:國際象棋數據和控件(無AI或GUI)。
客戶端和服務器語音相關的代碼是從COQUI示例Web_microphone_websocket改編的。
歷史信息
該項目的第一個版本是在3月8日至15日之間在2022年Mozilla Festival的Coqui.ai的“ hack the Planet” Hackathon中創建的。
主要想法是在一周內實施啟用演講的應用程序。一群人投票贊成實施語音控制的遊戲(TIC-TAC-TOE),但這個想法成為了多種語音驅動的3D國際象棋。組成了一個團隊,實施國際象棋申請成為目標。團隊成員是Bö,JF,KM,MK。
這是一開始的兩部分申請:
- 服務器部件是一個node.js應用程序,它可以執行實際的stt
- 客戶端是一個react.js應用程序,它記錄句子並通過socket.io傳達到服務器進行轉錄,驗證它,用三個。 JS在瀏覽器上顯示,並在Chess.js的幫助下。
由於時間範圍有限和個人時間限制,該小組保持期望也有限。
- UI部分保持最低,但起作用。例如,沒有手動播放,增強的UI功能等。
- 選擇了一種語言樣本,但可以通過其他語言進行擴展。
- 國際象棋有許多指揮格式。為了簡化整個工作流程,用戶被迫在此版本中使用單一格式:
"Move <piece> from <fromCell> to <targetCell>".
這裡的“零件”是國際象棋名稱,例如King,Bishop等,“ Cell”是董事會坐標Col Row(列:AZ,行:1-8)。
- 經過幾次英語和土耳其語的試驗後,我們發現對單個字母字符的認可不夠強大(幾乎不可能),因此我們使用了北約字母:Alpha,Bravo,... Hotel。除北約命名外,其他措辭被翻譯成各自的語言。
- 包括對以下語言的支持: - 德語,英語,法語,印地語,俄羅斯,土耳其語
在項目持續時間結束時,已經為英語和土耳其語提供了一個半工程軟件。
您可以在此處觀看初始項目演示視頻。
而且,正如演講結束時所承諾的那樣,我們繼續在這裡開發並將其開源。