跳到主要内容

EVA Gateway 接入文档

EVA Gateway 为不同模型提供统一的 OpenAI Compatible 接口。使用一套鉴权信息,即可调用 LLM(大语言模型)、ASR(语音识别)和 TTS(语音合成)三类能力。

本页将帮助你在几分钟内完成首次调用。不同模型支持的参数、取值范围和能力可能不同,具体信息请参阅模型广场中对应模型的信息页。


前置准备

1. Base URL

https://eva-gateway.autoarkai.com

注意:LLM 与音频服务使用不同的路径前缀。

  • LLMhttps://eva-gateway.autoarkai.com/llm/v1
  • ASR/TTS(音频)https://eva-gateway.autoarkai.com/v1
  • 实时 ASR(WebSocket)wss://eva-gateway.autoarkai.com/v1/realtime

使用 OpenAI SDK 时,需要分别为 LLM 和音频服务初始化客户端,详见下文。

2. 获取 API Key

控制台创建并获取 API Key,格式如 ak-xxxxxxxx...

3. 鉴权

所有请求均须通过 HTTP 请求头携带 API Key。三种接入方式的鉴权方法完全一致:

Authorization: Bearer <你的 API_KEY>

4. 请求追踪

EVA Gateway 会为每个请求自动生成 Trace ID,并通过以下响应头返回:

autoark-trace-id: <TRACE_ID>

方式一:EVA API

无需安装任何 SDK,使用任意 HTTP 客户端即可调用。以下分别提供每项能力的 Shell、Python 和 TypeScript 示例。

LLM

调用接口:POST /llm/v1/chat/completions。LLM 请求体、响应体和错误格式均使用标准 OpenAI 格式,不同模型保持一致的调用体验。不同 LLM 模型支持的参数和取值范围可能不同,具体信息请参阅模型广场中对应模型的信息页。在请求体中添加 "stream": true,即可使用标准 OpenAI SSE 流式响应。

curl https://eva-gateway.autoarkai.com/llm/v1/chat/completions \
-H "Authorization: Bearer $EVA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "volcengine-doubao-seed-2.0-mini",
"messages": [{"role": "user", "content": "你好,用一句话介绍你自己"}]
}'

ASR(语音识别)

调用接口:POST /v1/audio/transcriptions。请求类型为 multipart/form-data,其中 file 为音频文件,model 为 ASR 模型名。参数说明与响应格式,请参阅 EVA Gateway 参数说明:ASR

curl https://eva-gateway.autoarkai.com/v1/audio/transcriptions \
-H "Authorization: Bearer $EVA_API_KEY" \
-F "model=ark-asr-flash" \
-F "file=@sample.wav" \
-F "audio_format=wav" \
-F "sample_rate=16000"

TTS(语音合成)

调用接口:POST /v1/audio/speech,默认返回原始音频字节流。参数说明与返回格式,请参阅 EVA Gateway 参数说明:TTS

curl https://eva-gateway.autoarkai.com/v1/audio/speech \
-H "Authorization: Bearer $EVA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "ark-tts-flash",
"input": "你好,欢迎使用 EVA Gateway。",
"voice": "zh_female_vivian",
"response_format": "pcm"
}' \
--output output.pcm

WebSocket API

WebSocket API 目前仅支持 ASR,兼容 OpenAI Realtime API 的转录事件子集。连接方式、事件协议、参数说明和请求/响应示例,请参阅 EVA Gateway Websocket API


方式二:OpenAI SDK

如果已有基于 OpenAI SDK 的代码,只需将 base_url 指向 EVA Gateway,即可直接复用,作为直接替代方案(drop-in replacement)。

由于 LLM 与音频服务使用不同的路径前缀,需要分别初始化两个客户端。

安装与初始化

安装依赖:

pip install openai

初始化客户端:

from openai import OpenAI

# LLM 使用 /llm/v1
llm = OpenAI(api_key="EVA_API_KEY", base_url="https://eva-gateway.autoarkai.com/llm/v1")

# 音频(ASR/TTS)使用 /v1
audio = OpenAI(api_key="EVA_API_KEY", base_url="https://eva-gateway.autoarkai.com/v1")

LLM

resp = llm.chat.completions.create(
model="volcengine-doubao-seed-2.0-mini",
messages=[{"role": "user", "content": "你好,用一句话介绍你自己"}],
)
print(resp.choices[0].message.content)

ASR(语音识别)

网关自定义参数通过 extra_body(Python)或附加字段(TypeScript)传入。

with open("sample.wav", "rb") as f:
result = audio.audio.transcriptions.create(
model="ark-asr-flash",
file=f,
extra_body={"audio_format": "wav", "sample_rate": 16000},
)
print(result.text)

TTS(语音合成)

resp = audio.audio.speech.create(
model="ark-tts-flash",
voice="zh_female_vivian",
input="你好,欢迎使用 EVA Gateway。",
response_format="pcm",
)
resp.stream_to_file("output.pcm")

下一步

  • 查看各接口参数及其含义:EVA Gateway 参数说明。模型名称、支持的参数、取值范围及能力,请参阅模型广场中的模型详情;调用时请使用其中展示的 EVA 模型名称。