注意:該專案處於測試階段,因此預計會發現故障並進行改進!為了回應人們對該專案的巨大興趣,我們現在發布了此程式碼。謝謝您,請繼續發送您的回饋和建議。
該專案是一個使用 Agents for Amazon Bedrock 框架建立的 Minecraft 機器人,以 TypeScript 編寫。它演示瞭如何創建一個可以使用返回控制代理與 Minecraft 世界交互的代理。
Amazon Bedrock Minecraft 代理程式是代理程式的 TypeScript 實現,可用於自動執行 Minecraft 世界中的任務和互動。它利用 Mineflayer 庫,該庫提供了與 Minecraft 遊戲引擎互動的高級介面。
若要在目前(測試版)狀態下安裝此解決方案,建議您了解以下知識:
此外,您還需要 Minecraft 用戶端(版本1.20.1
)和一個玩遊戲的帳戶。
部署步驟:
agent_cfn/amazon-bedrock-minecraft-agent-roc.yaml
部署到堆疊。agentId
和agentAliasId
的輸出。用法:
25565
。agent_ts/
資料夾中,開啟終端,根據需要安裝節點包npm install
。agent_ts/.env
或編輯agent_ts/config.ts
來更新設定。將agentId
和agentAliasId
設定為從代理CloudFormation 堆疊輸出的值。npm run start:dev
執行agent_ts/
中的 TypeScript 程式碼t
與遊戲中的 Rocky 互動。試著說「你好」、「到我這裡來」和「挖一個 2 × 2 的洞」。在您運行的終端機中觀察調試輸出。此儲存庫還包含一個 CDK 堆疊,該堆疊將代理客戶端程式碼部署到 ECS 內的任務(容器)。僅當您熟悉該技術並運行 Minecraft 伺服器時才應考慮使用此選項。仔細檢查代碼並至少注意:
部署步驟:
cdk/
資料夾中,打開終端,根據需要安裝節點包npm install
。agentId
和agentAliasId
從cdk/
部署 CDK 項目,例如: > cdk deploy --context agentAliasID=ABC123 --context agentID=XYZ321
用法:
Multiplayer
並選擇Add Server
。:25565
。t
與遊戲中的 Rocky 互動。試著說「你好」、「到我這裡來」和「挖一個 2 × 2 的洞」。在您運行的終端機中觀察調試輸出。“您可以選擇透過在 InvokeAgent 回應中發送訊息,將控制權傳回給代理程式開發人員,而不是將代理從使用者取得的資訊傳送到 Lambda 函數來實現。”
Mineflayer 庫是一個強大的工具,用於在遊戲世界中建立 Minecraft 代理程式和自動化任務。它提供了一組類別和函數,可以抽像出低階細節,從而更容易開發複雜的行為和互動。
該項目是一個概念驗證,不適用於生產用途。它作為如何使用 Amazon Bedrock 框架代理和 Mineflayer 庫建立退貨控制代理的範例提供。
請參閱貢獻以獲取更多資訊。
該庫根據 MIT-0 許可證獲得許可。請參閱許可證文件。