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對話,並與臉部動畫同步。

運作方式

此系統作為一個覆蓋層運作,與遊戲畫面及玩家的硬體互動:

  1. 輸入處理:透過麥克風(語音轉文字)捕捉玩家語音,並透過網路攝影機捕捉玩家情緒。
  2. 角色識別:使用臉部辨識來識別畫面上的NPC。如果是已知的次要角色,會載入特定特質;如果是背景NPC,則會生成獨特的人格。
  3. 對話生成:大型語言模型(LLM)根據角色人格、儲存在向量資料庫(RAG)中的世界知識,以及包含經典台詞以維持風格的 pre_conversation.json 檔案,生成回應。
  4. 輸出生成:回應被轉換為語音(TTS),並用於驅動基於NPC臉部圖像的(透過SadTalker)臉部動畫影片。
  5. 整合:系統將遊戲畫面中NPC的臉部像素替換為生成的動畫,營造出NPC自然說話的錯覺。

目標對象

遊戲玩家和模組製作者,他們希望在先前發布的開放世界遊戲中,與NPC進行更沉浸式、非腳本化的互動。

亮點

  • 無需修改原始碼:透過替換螢幕上的像素來運作,而非修改遊戲引擎。
  • 多模態互動:結合語音輸入、臉部辨識和基於網路攝影機的情緒偵測。
  • 動態記憶:使用向量儲存為NPC提供無限的遊戲世界記憶和角色特定知識。
  • 廣泛相容性:設計用於任何遊戲,允許使用者定義世界和角色資料檔案。

相關

  • 專案
  • 專案
  • 專案
  • 專案