AI 构建者

AI 构建者

AI驱动的Minecraft建筑生成器模组。在聊天中描述一座建筑,AIbuilder会请AI模型生成它,然后将结果直接作为Litematica投影加载到你的世界中。

结构

AIbuilder

AI 驱动的 Minecraft 建筑生成模组。在聊天中描述建筑,AIbuilder 会请求 AI 模型生成它,然后将结果直接以 Litematica 投影的形式加载到你的世界中。

功能特性

  • 聊天驱动建筑 — 使用 /aibuilder 进入建筑模式,在聊天中描述任何建筑,AI 会为你生成它
  • Litematic 集成 — AI 输出会被转换为有效的 .litematic 原理图,并自动作为 Litematica 投影加载到你面前
  • 多提供商支持 — 支持众多 AI 提供商,以及任何兼容 OpenAI 或兼容 Anthropic 的端点(自托管、中转等)
  • 游戏内配置界面 — 通过 Mod Menu 添加、移除和切换模型配置,包括获取提供商提供的模型列表
  • 思维过程显示 — 在放置建筑之前,在聊天中显示模型的推理输出(在支持的情况下)
  • 32 种语言 — 遵循你的 Minecraft 语言设置(默认英语),包括 zh_cn、zh_tw、ja_jp、ko_kr、ru_ru、de_de、fr_fr、es_es、lzh 等

前置要求

依赖项 版本
Minecraft 1.20.6
Fabric Loader >= 0.19.3
Fabric API *
Litematica >= 0.18.0
MaLiLib >= 0.19.0
Mod Menu >= 10.0.0

需要 Java 21。

安装方法

  1. 为 Minecraft 1.20.6 安装 Fabric Loader
  2. 从 Releases 页面下载 aibuilder-*.jar(或者自行构建,见下文)
  3. 将该 jar 文件与 Fabric API、Litematica、MaLiLib 和 Mod Menu 一起放入你的 .minecraft/mods 文件夹
  4. 启动游戏

使用方法

  1. 打开 Mod Menu → AIbuilder 并添加一个 AI 模型(选择提供商,输入你的 API 密钥,获取模型列表,选择模型并保存)
  2. 在游戏中运行 /aibuilder 进入建筑模式
  3. 在聊天中输入建筑描述,例如 “a cozy wooden cottage with a chimney”(带烟囱的舒适小木屋),然后按回车
  4. 等待 AI 响应 — 完成的建筑会以 Litematica 投影的形式出现在你面前
  5. 使用 Litematica 快捷键调整放置位置,然后再次运行 /aibuilder 退出建筑模式

支持的提供商

提供商 协议
OpenAI (ChatGPT) OpenAI Chat Completions
Anthropic (Claude) Anthropic Messages
阿里云百炼 (DashScope) OpenAI 兼容
DeepSeek OpenAI 兼容
智谱 AI (GLM) OpenAI 兼容
小米 MiMo OpenAI 兼容
自定义(OpenAI 兼容) OpenAI Chat Completions — 任意端点,由你提供基础 URL
自定义(Anthropic 兼容) Anthropic Messages — 任意端点,由你提供基础 URL

模型配置存储在 config/aibuilder_models.json 中。

注意: API 密钥以明文形式存储在该文件中。请勿分享该文件或将其提交到代码仓库。

工作原理

  1. 建筑模式激活期间发送的聊天消息会被拦截,并与定义严格 JSON 建筑格式的系统提示词一起转发给配置的 AI 模型
  2. AI 回复设计说明以及 JSON 数据(size 和包含坐标与方块 ID 的 blocks 列表)
  3. AIbuilder 解析 JSON,构建一个兼容 Litematica 的 NBT 结构(调色板 + 压缩方块状态),并将其保存到 schematics/ 目录
  4. 通过 Litematica 的 API 加载该原理图,并放置在玩家前方 5 格处

从源码构建

git clone https://github.com/kaoyu555666777/AIbuilder.git
cd AIbuilder
./gradlew build

输出的 jar 文件位于 build/libs/ 目录。要启动带模组的开发客户端,请使用 ./gradlew runClient。

项目结构

src/
├── main/                          # 公共代码 + 资源
│   ├── java/.../Aibuilder.java    # 模组入口点
│   └── resources/
│       ├── assets/aibuilder/lang/ # 32 个语言文件
│       └── fabric.mod.json
└── client/                        # 仅客户端代码
    └── java/.../client/
        ├── ai/AIClient.java       # HTTP 客户端、请求/响应处理
        ├── config/                # 模型配置与提供商类型
        ├── mode/BuilderMode.java  # 建筑模式与聊天拦截逻辑
        ├── schematic/             # AI JSON → Litematic 转换
        ├── gui/                   # Mod Menu 配置界面
        └── mixin/                 # 聊天发送拦截

开源许可

LGPL-3.0