跳至内容

推出 ElevenLabs CLI v1

发布时间

收听收听本文

今天,我们推出 ElevenLabs CLI v1,将 ElevenLabs API 直接带到终端。

编程智能体本就在终端中运行命令、读取结果,甚至订午餐。ElevenLabs CLI 以智能体优先为设计理念,提供文档完善的命令和易于解析、串联的结构化 JSON 结果。它提供 --dry-run 模式,可在操作影响工作区前预览。

CLI 还将“以代码管理智能体”带到 ElevenAgents。将工作区中的所有智能体拉取为本地配置文件,像编辑代码库的其他部分一样编辑它们,预览精确差异,再手动或通过编程智能体推送到生产环境。

在 macOS 上安装

brew install elevenlabs/tap/elevenlabs

Windows

scoop bucket add elevenlabs https://github.com/elevenlabs/scoop-bucket
scoop install elevenlabs

cURL

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/elevenlabs/cli/releases/latest/download/elevenlabs-cli-installer.sh | sh

一个界面,使用整个平​​台

我们在 OpenAPI 规范 中发布的所有 ElevenLabs API 端点,均可作为子命令使用:

# list every agent in your workspace as structured JSON 
elevenlabs agents list --format json

# compose a song from a prompt
elevenlabs music compose --prompt "lo-fi track for a rainy afternoon" --output track.mp3

# speak a sentence and save the audio
elevenlabs text-to-speech convert --voice-id gPPH6SLdL8XSX6GNJ40G --text "Hello from the CLI" --output hello.mp3

以代码管理智能体

以代码管理智能体,就是像管理应用代码一样管理智能体配置。你在本地文件中操作,CLI 会将其与工作区保持同步。整个流程只需 3 条命令。

elevenlabs agents pull              # every agent in your workspace becomes a local config file
# edit a config: change the greeting, swap the voice, update the prompt
elevenlabs agents push --dry-run    # preview exactly what would change, without changing anything
elevenlabs agents push              # apply

同样的流程也适用于生产环境。分支可将开发和生产环境分开:开发分支可以使用测试电话号码和成本更低的 LLM,而生产环境使用真实号码和前沿模型。对于新项目,elevenlabs agents init 可搭建完整项目结构,并提供客服等常见配置的起始模板。

只有少量智能体时,仪表板足以管理。但如果要管理分布在数百个客户组织中的大量智能体,或从其他平台批量迁移智能体,只有文件和版本控制这一工作方式能实现扩展。

为编程智能体和开发者打造

智能体使用 CLI 的失败方式与人不同。它无法回答交互式提示,会不断重试,并从错误信息中学习。CLI 围绕这一现实设计。

--help 面向人,--schema 面向智能体。每条 API 命令都会输出机器可读的约定,包括带类型的输入、各项输入的位置、必填项以及响应的确切结构。智能体无需猜测,就能构建有效调用。

$ elevenlabs text-to-speech convert --schema
{
  "operation": "text-to-speech.convert",
  "description": "Create speech",
  "binaryResponse": true,
  "input": {
    "properties": {
      "text": { "location": "body", "type": "string" },
      "voice_id": { "location": "path", "type": "string" },
      ...
    },
    "required": ["text", "voice_id"]
  }
}

错误信息也能为智能体提供可用线索。智能体收到的是可解析的 JSON 错误;通过 TTY 检测到真人用户时,则显示纯文本错误信息。两者都包含修复错误的说明。

以下是一条无效命令:

$ elevenlabs text-to-speech convert --text "Hello from the CLI"

智能体会收到以下错误信息:

$ elevenlabs text-to-speech convert --text "Hello from the CLI"
{
  "error": {
    "code": 400,
    "message": "Required parameter 'voice_id' is missing. Provide it via --voice-id or --params",
    "reason": "validationError"
  }
}

而真人用户会看到更易读、并附带解决提示的错误信息:

error[validation]:
 Required parameter 'voice_id' is missing. Provide it via --voice-id or --params
 Try `elevenlabs text-to-speech convert --help`

Skills 开箱即用

--help--schema 是 CLI 的内置指南。但 skills 更进一步,可教会编程智能体完整 workflow,例如如何构建智能体、生成语音或转写通话。

将它们安装到项目中:

elevenlabs generate-skills

智能体本就在终端中工作,现在整个 ElevenLabs 也是如此。安装 CLI,将 skills 交给智能体,看看它能交付什么。通过 文档 开始。

相关内容

用高质量 AI 音频创作