ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

ArtCraft能做什么?一文看懂图像、视频、3D、3DGS与音频一站式AI生成

ArtCraft能做什么?一文看懂图像、视频、3D、3DGS与音频一站式AI生成

【免费下载链接】artcraft-services

backend, web frontend, etc.

项目地址:https://gitcode.com/gh_mirrors/ar/artcraft-services
点击查看免费下载

ArtCraft 是一个面向创作者的一站式AI生成平台:你可以在同一个系统里完成图像生成、视频生成、3D 模型生成、3DGS(3D Gaussian Splatting,3D高斯泼溅)场景重建与AI音频生成,无需在多个工具间来回切换。它的开源仓库 artcraft-services 包含了完整的 Rust 后端、HTTP API、异步工作进程和 Web 前端,是一个典型的 Rust + TypeScript 混合 monorepo,非常适合想理解"AI 生成平台如何落地"的初学者。

一、先认识 ArtCraft:一个多模态 AI 生成平台

ArtCraft 的核心思路是**"一个入口,接入所有主流生成模型"**。它的后端服务storyteller-web基于 Rust Actix Web 构建,负责认证、账户、媒体库、生成请求、积分计费(Stripe)等全部逻辑;真正的模型调度由artcraft_router完成——把你的请求翻译成不同上游厂商(Fal、Grok、GMI Cloud、Runway 等)各自需要的格式,并在完成后把结果统一落盘到对象存储。

一次典型的生成请求流程如下:

  1. 客户端提交生成请求,API 校验权限与积分;
  2. 系统计算成本、扣减钱包余额,并通过artcraft_router构造提交给对应厂商;
  3. 厂商通过 Webhook 或后台轮询工作进程回报结果,成品文件自动进入你的媒体库;
  4. 客户端轮询任务状态,拿到 CDN 链接即可播放或下载。

📌 想动手看代码?架构说明见 README.md,未来规划见 ROADMAP.md。

二、ArtCraft 支持哪 5 大类生成?速览表

ArtCraft 的生成入口统一挂在/v1/omni_gen/generate/*路径下(路由注册见 omni_gen_routes.rs),共 5 类:

生成类别端点代表模型
🖼️ 图像/v1/omni_gen/generate/imageFlux、GPT-Image、Midjourney、Seedream、Nano Banana
🎬 视频/v1/omni_gen/generate/videoVeo 3、Sora 2、Kling 3.0、Seedance 2.5、Wan 3.0、Grok Video
🎵 音频/v1/omni_gen/generate/audioSuno Music(作曲/混音)、Seed Audio
🧊 3D 模型/v1/omni_gen/generate/meshHunyuan 3D、Tripo3D、Meshy、Rodin
✨ 3DGS 场景/v1/omni_gen/generate/splatMarble 1.1、TripoSplat

每类都配套提供/v1/omni_gen/models/*(模型列表发现)和/v1/omni_gen/cost/*(费用预估)端点——生成之前就能先查价,对新手非常友好。

三、图像生成:一句话到成图

图像生成是最基础的玩法:输入一段文字提示词,选择模型,等待出图。ArtCraft 接入了市面上几乎所有主流文生图模型,包括flux_3、gpt_image_2、midjourney_8、seedream_5p0_pro等(完整清单见 router_image_model.rs),并支持用参考图做风格化编辑(如qwen_edit、Flux LoRA 角度控制)。

上图是仓库内 candle(Rust 推理引擎)Flux 示例的生成产物,展示了 Flux 类模型的出图水准。

四、视频生成:从首帧图、参考视频到参考音频

视频生成是 ArtCraft 的重头戏,支持三种玩法:

  • 文生视频:只写提示词即可出片,可选 6 秒等时长、16:9 / 9:16 / 方形等画幅;
  • 图生视频(首帧驱动):提供一张起始帧图片,让画面从这张图"动"起来;
  • 多参考驱动:同时传入参考图片、参考视频(mp4)、参考音频(wav/mp3/ogg),让生成镜头的运动节奏参考视频、氛围参考音频。

官方文档里的示例就是用一张海鹦照片生成"海鹦站在悬崖边转头"的短视频,完整可运行的 curl / Python / JavaScript 例子见 artcraft_omni_api.md。

把上面这样一张静态照片作为起始关键帧,ArtCraft 的视频模型就能生成一段镜头平滑移动的短视频。

五、3D 与 3DGS:从"平面"走进"空间"

这是多数工具链都不覆盖、而 ArtCraft 做得相当完整的部分:

🧊 3D 模型(mesh)生成:模型清单见 router_mesh_model.rs,亮点功能包括:

  • 文生 3D / 图生 3D:Hunyuan 3D 2.x–3.x、Tripo3D H3.1、Meshy 6、Rodin 2.5 Fast;
  • 草图生 3D(hunyuan_3d_3_sketch):手绘一张草图加提示词就能出模型;
  • 语义拆件(hunyuan_3d_3p1_part):把已有模型自动拆成可独立操作的部分;
  • 智能重拓扑(hunyuan_3d_3p1_topology):给高精度模型"减肥",方便进游戏引擎。

仓库里就带着真实测试资产,比如 test_data/3d/hanashi.glb 这样的 GLB 3D 模型文件。

✨ 3DGS 场景(splat)生成:3D Gaussian Splatting 是近期 3D 重建领域的热点技术,能生成比传统 mesh 更真实、渲染更快的"可自由漫游"场景。ArtCraft 支持 Marble 1.0/1.1 系列与 TripoSplat(单图转 3D 高斯泼溅),清单见 router_splat_model.rs;前端则用 Three.js 渲染这些 3D 场景与视频画面。

六、音频生成:作曲、采样与声音素材

音频端点/v1/omni_gen/generate/audio接入了 Suno 系列(suno_music整曲创作、suno_remix混音、suno_sounds/suno_sample声音采样)以及seed_audio_1p0。仓库的 test_data/audio 目录还按 aac / aiff / flac / m4a / mp3 / ogg / wav 等格式备齐了测试音频,覆盖了平台支持的音频输入类型。

💡 结合视频生成的generate_audio参数,你可以让视频自带音效——画面和声音在同一个平台上闭环,这是一站式 AI 生成平台相对零散 API 的最大价值。

七、零基础上手:一次生成的 4 个步骤

如果你想通过 API 集成,ArtCraft 提供两套接口(详见 artcraft_omni_api.md):

  1. 应用端接口/v1/omni_gen/generate/*:使用浏览器登录态,覆盖全部 5 类生成;
  2. 编程接口/v1/omni_api:在Authorization头里带 API key(artcraft_api_开头),适合服务端集成。

以编程方式生成视频的完整步骤:

  1. POST /v1/omni_api/generate/video提交请求(务必每次附一个全新的idempotency_tokenUUID 防重复扣费);
  2. 响应里拿到inference_job_token(形如jinf_xxx);
  3. 轮询GET /v1/omni_api/job_status/job/{token},直到状态变为complete_success;
  4. 从state.maybe_result.media_links.cdn_url取出成品文件的直链。

状态查询、错误码(401 密钥无效、402 余额不足等)在文档中都有完整示例,照着抄就能跑通。

八、仓库结构导览:代码都放在哪里?

artcraft-services 目录清晰,新手按这张表找路即可:

目录内容
crates/service/web/主 HTTP 服务 storyteller-web
crates/service/job/各厂商轮询、缩略图、支出分析等后台工作进程
crates/api_clients/各生成厂商的客户端与生成路由器
crates/schema/database/mysql_queries全仓库共用的 MySQL 查询层
frontend/Nx 工作区:Web 应用与共享 TS 库
_database/SQL 迁移、Elasticsearch 索引定义
_docs/开发环境搭建、Omni API 指南等文档
_tools/postman/可直接导入 Postman 的请求集合

本地跑通后端的最低要求是:一个迁移好的 MySQL + Redis + 对象存储,然后执行SQLX_OFFLINE=true cargo run -p storyteller-web即可,服务默认监听0.0.0.0:12345。完整环境配置步骤见 dev_setup.md 与 dev_setup_server.md。

九、常见问题 FAQ

Q1:ArtCraft 和自己写脚本调各家模型 API 有什么区别?区别在于统一性:统一鉴权、统一积分计费、统一任务轮询、统一媒体库和 CDN 分发,5 类生成共享同一套账户与钱包体系,而不是为每个厂商维护一套密钥和计费逻辑。

Q2:新手最容易踩的坑是什么?复用idempotency_token会被直接拒绝(防重复提交机制);传 URL 时图片必须是 jpeg/png/gif/webp、参考视频必须是 mp4。两个约束在文档 artcraft_omni_api.md 中都明确列出。

Q3:3DGS 和普通 3D 模型(mesh)怎么选?需要"真实感、可漫游的场景"选 splat(如 Marble);需要"可编辑、进游戏引擎、做动画"的资产选 mesh(如 Hunyuan 3D),并且还能用拆件/重拓扑功能继续加工。

十、写在最后

ArtCraft 用 Rust 的高性能后端 + 多厂商模型路由,把图像、视频、3D、3DGS、音频五类生成收拢进了一个平台。无论你是想在 Web 端直接创作,还是想通过 API 把生成能力嵌进自己的产品,artcraft-services 的开源代码都是理解"一站式 AI 生成平台"完整架构的优质教材。从 README.md 开始,按上文的路径导览表逐层深入,你很快就能搭建起自己的 AI 创作工作台。 🚀

【免费下载链接】artcraft-services

backend, web frontend, etc.

项目地址:https://gitcode.com/gh_mirrors/ar/artcraft-services
点击查看免费下载

相关推荐

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进