Stable·v0.1

原生适配你技术栈的 SDK 与集成。

一个 AI Stem Splitter API,覆盖七个第一方 SDK 和四个无代码集成——从 npm install @aistemsplitter/sdk 到一个 n8n node——背后是 OpenAPI 3.1 spec 和永不过期的积分包。

语言
7
集成
4
渠道
13
Spec
OpenAPI 3.1
/ 第一方 SDK

选择与你技术栈匹配的 SDK

Node.js
Node.js / TypeScript
@aistemsplitter/sdk · npm + JSR
$npm install @aistemsplitter/sdk
Python
Python
aistemsplitter · PyPI
$pip install aistemsplitter
Java
Java / Kotlin
org.aistemsplitter:aistemsplitter-java · Maven Central
$implementation "org.aistemsplitter:aistemsplitter-java:0.1.0"
Go
Go
github.com/aistemsplitter/aistemsplitter-go · Go module
$go get github.com/aistemsplitter/aistemsplitter-go
PHP
PHP
aistemsplitter/aistemsplitter · Packagist
$composer require aistemsplitter/aistemsplitter
Swift
Swift
aistemsplitter-swift · SPM + CocoaPods
$pod "aistemsplitter-swift"
Lua
Lua
aistemsplitter · LuaRocks
$luarocks install aistemsplitter
/ 通用 quick start

提交任务、轮询一次、拿到 6 条 stem

12 行代码就能证明接口面。提交一次分离,拿到 job id,轮询一次,收到人声、鼓、贝斯、吉他、钢琴和 other——同一个 htdemucs_ft 分离流程贯穿每个 SDK。按输入音频分钟数从永不过期的积分包扣费(按购买量不同,每分钟 $0.08–$0.14)。

# 1) Submit a split job
curl -X POST https://api.aistemsplitter.org/v1/audio/splits \
  -H "Authorization: Bearer $AISTEMSPLITTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "input": { "type": "direct_url", "url": "https://example.com/song.mp3" },
    "stemModel": "htdemucs_ft"
  }'
# → { "id": "split_01J…", "status": "queued" }

# 2) Poll for completion
curl https://api.aistemsplitter.org/v1/audio/splits/split_01J… \
  -H "Authorization: Bearer $AISTEMSPLITTER_API_KEY"
# → { "status": "succeeded", "stems": { "vocals": "...", ...x6 } }
/ 无代码与自动化

同一个 API,也给团队其他人一条无代码路径

工程师很少是唯一用户。把同一个 AI Stem Splitter API 放进 n8n、GitHub Actions、container 或 Pipedream workflow,让运营、内容和 CI 都跑在同一个 vendor 上。

教程

n8n 社区节点

从任何地方触发,输出 6 条 stem。可 self-host,也可用 n8n Cloud。

marketplace

GitHub Action

在 CI/CD 中做 stem 分离,并自动附加到 release。

🐳
ghcr.io

Docker / CLI image

一行 container 命令,适合批处理任务和本地 pipeline。

P
workspace

Pipedream actions

可直接放进 Pipedream workflow 的 steps。

/ 常见问题

开发者安装前常问的问题

  • Which SDK should I install — Node, Python, or curl?

    Pick the language your service already runs on. Node and Python ship typed clients with one-call helpers (waitForSplit, verify_signature) and full method autocomplete; curl works on the same REST endpoints if you're prototyping or scripting from a shell. The hosted API is identical across all 13 distribution channels — same job ids, same webhooks, same per-minute billing.

  • Do credits expire if I don't use them?

    No. Credit packs never expire — purchase $6.99 / 50 minutes, $15 / 150 minutes, or $39.99 / 500 minutes and the balance stays on your account until you spend it. There is no monthly subscription, no rollover cap, and no auto-renewal. The first 3 minutes are free with no card required, charged at $0.08–$0.14 per minute depending on pack size.

  • Which model do you use, and can I name it in the request?

    The default is htdemucs_ft (Demucs fine-tuned, 4-stem: vocals, drums, bass, other) — the same model variant the open-source community benchmarks at ~8.7 dB SDR. You can switch to htdemucs_6s for guitar and piano stems by passing model='htdemucs_6s' on submit. Models are named explicitly in every SDK so output quality is comparable to local Demucs runs.

  • Can I self-host the SDK or the inference?

    The SDK clients are MIT-licensed and ship to npm, JSR, PyPI, Maven Central, Packagist, LuaRocks, SPM, and CocoaPods — fork or vendor them as you like. Inference itself runs on our managed GPUs against the hosted API at api.aistemsplitter.com — there is no on-prem inference image in v1, but the GHCR Docker image wraps the SDK for self-hosted orchestration.

  • What's the rate limit, and how do I handle large files?

    Concurrent jobs and per-minute request caps live on /developers/api with the current numbers (they age, so they aren't pinned here). For large uploads, call presignUpload (Node) / presign_upload (Python) to get a direct-to-storage URL — the SDK handles retries with exponential backoff out of the box. Files up to 50 MB upload directly; larger files use multipart presigned URLs.

  • How do I receive the result without polling forever?

    Pass webhook_url on createSplit. When the job finishes, the API POSTs an HMAC-SHA256-signed event to your URL with the stem download links inline. Verify the signature with one SDK call (verifyWebhook in Node, verify_signature in Python). The Webhooks section in each per-language quickstart shows runnable Express, Hono, FastAPI, and Flask handlers.

  • 我应该安装哪个 SDK——Node、Python 还是 curl?

    选择你的服务已经在用的语言。Node 和 Python 提供 typed clients,带一键 helper(waitForSplit、verify_signature)和完整 method autocomplete;如果你只是原型验证或从 shell 写脚本,curl 也走同一套 REST endpoints。托管 API 在全部 13 个分发渠道里保持一致——同样的 job ids、同样的 webhooks、同样的按分钟计费。

  • 积分不用会过期吗?

    不会。积分包永不过期——购买 $6.99 / 50 分钟、$15 / 150 分钟或 $39.99 / 500 分钟后,余额会一直留在你的账户里直到用完。没有月订阅、没有 rollover 上限,也不会自动续费。前 3 分钟免费且无需绑卡,按包大小不同,每分钟 $0.08–$0.14。

  • 你们用哪个模型?我可以在请求里指定吗?

    默认是 htdemucs_ft(Demucs fine-tuned,4-stem:vocals、drums、bass、other)——这是开源社区 benchmark 约 8.7 dB SDR 的同一模型变体。提交时传入 model='htdemucs_6s',即可切换到支持 guitar 和 piano stem 的模型。每个 SDK 都显式命名模型,所以输出质量可以和本地 Demucs 运行结果对齐比较。

  • 我可以 self-host SDK 或推理服务吗?

    SDK clients 使用 MIT license,并发布到 npm、JSR、PyPI、Maven Central、Packagist、LuaRocks、SPM 和 CocoaPods——你可以按需 fork 或 vendor。推理本身运行在我们托管 GPU 上,通过 api.aistemsplitter.com 的 hosted API 调用——v1 没有 on-prem 推理 image,但 GHCR Docker image 会包装 SDK,供 self-hosted orchestration 使用。

  • 速率限制是多少?大文件该怎么处理?

    并发任务数和每分钟请求上限以 /developers/api 的当前数值为准(这些数字会变化,所以这里不固定写死)。大文件上传时,调用 presignUpload(Node)/ presign_upload(Python)获取 direct-to-storage URL——SDK 内置 exponential backoff retry。50 MB 以内文件可直接上传;更大的文件使用 multipart presigned URLs。

  • 怎样不用一直轮询也能收到结果?

    在 createSplit 里传 webhook_url。任务完成后,API 会向你的 URL POST 一个 HMAC-SHA256 签名事件,并在 payload 中直接带上 stem 下载链接。用一次 SDK 调用验证签名(Node 里 verifyWebhook,Python 里 verify_signature)。每个语言 quickstart 的 Webhooks 部分都提供可运行的 Express、Hono、FastAPI 和 Flask handlers。

今天就开始用 stem 分离构建。

创建一个 key,把它粘进 Quick Start,1 分钟内就能拿回分离好的 stem。前 3 分钟免费赠送——之后使用永不过期的积分包,按包大小不同,每分钟 $0.08–$0.14。