3DCellForge 开发者扩展指南:5 步接入你自己的 Image-to-3D 提供商

发布时间:2026/10/4 1:24:48
3DCellForge 开发者扩展指南:5 步接入你自己的 Image-to-3D 提供商 3DCellForge 开发者扩展指南5 步接入你自己的 Image-to-3D 提供商【免费下载链接】3DCellForgeAI-powered interactive 3D model generation, inspection, and presentation studio.项目地址: https://gitcode.com/gh_mirrors/3d/3DCellForge3DCellForge 是一个 AI 驱动的交互式 3D 模型生成与展示工作台上传一张参考图它就能调用 Image-to-3D 云服务把图片变成可旋转、可检查、可导出的 GLB 模型。目前它已内置 Hyper3D Rodin、Tripo、Fal.ai、Hunyuan3D 四个生成提供商。如果你想接入自己的模型生成服务自建推理服务、公司内部的 Image-to-3D 平台等只需理解它清晰的 Provider 插件架构——本文带你用 5 步完成接入全程几乎没有前端改动。一、先看懂架构一个提供商就是一个模块整个生成后端只有一个入口 server.mjs它通过两个调度函数把请求分发给具体的提供商createGenerationTask(provider, payload) # 创建生成任务 getGenerationTask(provider, taskId) # 轮询任务状态每个提供商都是 server/providers/ 下独立的一个文件并统一导出 3 个函数函数作用createXxxTask(payload)把图片提交给你的生成服务返回任务 IDgetXxxTask(taskId)查询任务进度成功后返回 GLB 地址getXxxHealth()健康检查用于/api/3d/health接口参考实现可以看 server/providers/hunyuan.mjs它是最简单的一个本地服务 两个 HTTP 端点非常适合照抄。二、第 1 步复制模板新建你的提供商模块在 server/providers/ 目录下新建mystudio.mjs模块名即提供商 ID。任务生命周期只有两个阶段你的服务需要能支持创建任务和查询状态两次调用。三、第 2 步实现三个导出函数以 server/providers/hunyuan.mjs 为模板核心逻辑如下概念示意非完整代码createMystudioTask(payload)payload.imageDataUrl是前端传来的图片 Data URL用parseDataUrl()解出二进制后 POST 给你的服务从响应里取出task_id返回{ provider: mystudio, taskId, status: queued, modelUrl: , raw }getMystudioTask(taskId)GET 你的状态接口把原始状态归一化为queued / running / success / failed四种之一参考 normalizeHunyuanStatus成功时通过findModelUrl()提取 GLB 地址并返回。getMystudioHealth()返回{ configured: Boolean(你的密钥) }即可前端用它判断提供商是否可用。两个实用技巧模型本地缓存成功后调用 server/model-store.mjs 中的saveLocalModel()/cacheRemoteModel()把 GLB 缓存到.generated-models/后续访问直接走本地不再消耗你的 API 配额参考 getTripoTask 的缓存逻辑。状态轮询间隔是前端固定的 3.5 秒超时 8 分钟配置在 src/config/appConfig.js无需改动。四、第 3 步在入口注册你的提供商打开 server.mjs做两处最小改动顶部 import 你模块里的三个函数在createGenerationTask()和getGenerationTask()两个函数里各加一行provider mystudio的分发判断。同时把你新提供商的健康检查挂进/api/3d/health的providers对象server.mjs#L36-L49方便前端诊断。五、第 4 步配置环境变量 前端选项密钥放后端。复制 .env.example 为.env.local添加你的密钥变量然后在 server/config.mjs 中导出对应的MYSTUDIO_API_KEY、MYSTUDIO_API_BASE等常量。密钥由 loadLocalEnv() 自动加载永远不会进入前端打包产物。前端加一个选项。在 src/config/appConfig.js 的GENERATION_PROVIDER_OPTIONS和GENERATION_MODE_OPTIONS数组里各加一项{ id: mystudio, label: MyStudio, description: ... }上传面板会自动出现你的提供商。前端调用链src/services/modelApi.js 的create3dGeneration()和waitFor3dModel()完全按provider字符串透传零改动即可工作。六、第 5 步启动并验证npm run dev:api # 启动后端默认 http://127.0.0.1:8787 npm run dev # 启动前端验证清单访问http://127.0.0.1:8787/api/3d/health确认providers.mystudio.configured为true前端 New Upload 中选择MyStudio上传一张参考图左侧 Generation Queue 应显示queued → running → success成功后模型出现在模型库中刷新页面仍可加载IndexedDB 持久化用 npm run test 和npm run test:visual跑一遍回归测试确保新选项没有破坏现有布局。常见问题Q不想走云端可以接纯本地服务吗可以。Hunyuan3D 就是本地模式你的服务只要能响应创建 查状态两个端点甚至直接返回 base64 GLB就能按 hunyuan.mjs 的方式接入。QAuto 模式会用到我的提供商吗Auto 的降级链是rodin → tripo → fal → hunyuan → cinematic见 getProviderPlan。想让 Auto 兜底到你的服务在该函数里把mystudio插入队列即可。Q如何排查任务失败后端每次请求都会写结构化日志/api/3d/logs可查看最近 100 条日志落在.logs/目录由 server/logger.mjs 管理error.detail里会保留你服务返回的原始响应。总结接入一个新 Image-to-3D 提供商 1 个新模块 入口 2 行分发 1 行环境配置 2 行前端选项。得益于 3DCellForge 的 Provider 插件架构你的自定义服务会和 Tripo、Fal 一样享受本地 GLB 缓存、任务队列、健康检查和持久化模型库等全套能力。动手试试吧 【免费下载链接】3DCellForgeAI-powered interactive 3D model generation, inspection, and presentation studio.项目地址: https://gitcode.com/gh_mirrors/3d/3DCellForge创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询