AkshitIreddy/Interactive-LLM-Powered-NPCs
Interactive LLM Powered NPCs, is an open-source project that completely transforms your interaction with non-player characters (NPCs) in any game! 🎮🤖🚀
它解決了什麼
此專案讓玩家能在現有的開放世界遊戲(如《電馭叛客2077》、《GTA 5》和《刺客教條》)中,與非玩家角色(NPC)進行即時、語音驅動的對話,而無需修改遊戲的原始碼。它以動態、由LLM生成的反應取代了預先編寫的靜態NPC對話,並與臉部動畫同步。
運作方式
此系統作為一個覆蓋層運作,與遊戲畫面及玩家的硬體互動:
- 輸入處理:透過麥克風(語音轉文字)捕捉玩家語音,並透過網路攝影機捕捉玩家情緒。
- 角色識別:使用臉部辨識來識別畫面上的NPC。如果是已知的次要角色,會載入特定特質;如果是背景NPC,則會生成獨特的人格。
- 對話生成:大型語言模型(LLM)根據角色人格、儲存在向量資料庫(RAG)中的世界知識,以及包含經典台詞以維持風格的
pre_conversation.json檔案,生成回應。 - 輸出生成:回應被轉換為語音(TTS),並用於驅動基於NPC臉部圖像的(透過SadTalker)臉部動畫影片。
- 整合:系統將遊戲畫面中NPC的臉部像素替換為生成的動畫,營造出NPC自然說話的錯覺。
目標對象
遊戲玩家和模組製作者,他們希望在先前發布的開放世界遊戲中,與NPC進行更沉浸式、非腳本化的互動。
亮點
- 無需修改原始碼:透過替換螢幕上的像素來運作,而非修改遊戲引擎。
- 多模態互動:結合語音輸入、臉部辨識和基於網路攝影機的情緒偵測。
- 動態記憶:使用向量儲存為NPC提供無限的遊戲世界記憶和角色特定知識。
- 廣泛相容性:設計用於任何遊戲,允許使用者定義世界和角色資料檔案。
相關
- 專案
- 專案
- 專案
- 專案