项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-10-31 · 当前星标 ★ 1733
技术标签
使用教程
环境要求
- Python 环境及 uv 包管理器(README 使用 uv 管理项目)
- 已在 Hugging Face 申请并通过 meta-llama/Llama-3.2-1B-Instruct 访问权限,并生成 access token
- 可选:Gurobi(README 标注为可选依赖)
- 可选:ImportLDraw 与 LDraw 零件库,用于积木结构可视化渲染
- 微调需额外依赖与可用的 GPU 训练环境
安装与启动步骤
-
1克隆仓库
把官方仓库拉到本地并进入项目目录,后续命令都在该目录执行。
git clone https://github.com/AvaLovelace1/BrickGPT.git && cd BrickGPT -
2配置模型令牌
模型为 gated 模型,先在 Hugging Face 页面申请访问权并生成 token,再写入环境变量。
export HF_TOKEN=hf_xxxxxxxxxxxxxxxxxxxx -
3安装依赖环境
先按 uv 官方文档安装 uv,然后在仓库根目录同步依赖,依赖定义在 pyproject.toml 中。
uv sync -
4初始化渲染子模块
可选步骤,运行 infer 脚本与纹理生成需要;拉取 ImportLDraw 子模块。
git submodule update --init -
5下载零件库
可选步骤,下载 LDraw 零件库并解压到家目录;如需换路径用 LDRAW_LIBRARY_PATH 指定。
(cd ~ && wget https://library.ldraw.org/library/updates/complete.zip && unzip complete.zip) -
6准备微调数据集
先执行 uv sync --extra finetuning 装微调依赖,再把 StableText2Brick 转成指令格式。
uv sync --extra finetuning uv run prepare_finetuning_dataset --input_path AvaLovelace/StableText2Brick --output_path /your/path/finetuning_dataset -
7开始微调
先用 uv run accelerate config 初始化配置,再用脚本训练,模型存到输出目录下的运行名子目录。
uv run accelerate config uv run ./scripts/finetune.zsh /your/path/llama-3.2-1b /your/path/output brickgpt_run /your/path/finetuning_dataset
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
HF_TOKEN | 是 | Hugging Face 访问令牌,用于自动下载 gated 的 Llama-3.2-1B-Instruct 模型 | hf_xxxxxxxxxxxxxxxxxxxx |
LDRAW_LIBRARY_PATH | 否 | LDraw 零件库目录路径,未解压到家目录时需设置 | /your/path/ldraw |
如何确认成功
uv sync 无报错即依赖安装完成;微调结束后模型保存在输出目录的 brickgpt_run 子目录下。
常见问题
Q:为什么必须先申请模型权限?
A:Llama-3.2-1B-Instruct 是 gated 模型,需在 Hugging Face 页面申请通过后再生成 access token,代码运行时才会自动下载权重。
Q:微调后模型不输出结束符怎么办?
A:用 finetuning_config_files 目录中的 config.json、special_tokens_map.json、tokenizer_config.json 覆盖预训练模型中的同名文件,使 pad_token 与 eos_token 不同。
Q:能用自己的积木数据集微调吗?
A:可以。数据集需包含 captions 与 bricks 字段,bricks 为论文所述的文本格式,把 prepare_finetuning_dataset 的 --input_path 换成你的数据集路径。
Q:只想在自己的 Python 项目里调用怎么办?
A:按包方式安装即可:使用 uv 时执行 uv add "https://github.com/AvaLovelace1/BrickGPT.git",使用 pip 时执行 pip install 同一地址。
注意事项
- 渲染背景 exr 文件需手动下载后放入 ImportLDraw/loadldraw 子目录,README 未给出命令行下载方式。
- 纹理生成与 mesh-to-brick 功能分别在 src/texture、src/mesh2brick 子目录,需按各自 README 操作。
- README 的交互式推理章节未给出具体命令,请以仓库内脚本与子目录说明为准。
- 微调脚本参数依次为预训练目录、输出目录、运行名、微调数据集路径,路径需替换成自己的真实路径。
核心亮点
- 首个面向玩具积木的文本生成方法,输出为可实际拼搭的离散砖块序列而非普通网格模型
- 生成过程显式考虑物理稳定性,减少外观相似但结构易倒塌的问题
- ICCV 2025 最佳论文官方实现,附带训练、推理与评估代码,复现路径清晰
不足之处
- 依赖特定积木数据集与体素化流程,环境配置和数据准备成本较高
- 生成质量与稳定性受训练数据覆盖范围限制,复杂结构仍需人工调整
适用场景
- 根据文字描述快速生成积木拼搭方案,用于玩具设计与创意原型
- 研究文本到结构化3D生成及物理约束生成模型
- 作为教学案例,演示生成式AI在实体拼搭设计中的应用
替代项目
Text2Mesh、DreamFusion、Shape-E
下一篇:没有了!
同类项目推荐
组合特征一键生成卡通头像组件
Personas, an avatar generator by Draftbit
fantasy-talking2
开源
上传音频和照片,生成唇形精准、表情自然的说话视频
[AAAI 2026] FantasyTalking2: Timestep-Layer Adaptive Preference Optimization for Aud···
DreamCraft3D
开源
上传一张图,秒变可交互的高质量 3D 模型
[ICLR 2024] Official implementation of DreamCraft3D: Hierarchical 3D Generation with···
dlp3d.ai
开源
在网页上快速创建能自主行动的3D数字人
Open-source Autonomous 3D Characters on the Web
不改原模型,一键把 VRChat 角色性能从 Poor 拉到 Good
AAO: Avatar Optimizer: Non Destructive Avatar Optimization Utilities
PhysX-3D
开源
生成能真实物理交互的3D资产,让数字人动起来更自然
PhysX: Physical-Grounded 3D Asset Generation (NeurIPS 2025, Spotlight)
reality-engine
开源
用 AI 快速搭建会演变的虚拟世界和故事
Top Dynamic AI World Simulation & Storytelling Tools 2026
Awesome-Talking-Head-Synthesis
开源
一库在手,语音驱动人脸合成资源全都有
An extensive collection of exceptional resources dedicated to the captivating world ···
MoDA
开源
一张照片加一段语音,生成口型同步的数字人视频
MoDA: Multi-modal Diffusion Architecture for Talking Head Generation
