硅基流动TTS简介

Assistants API是一个提供了人工只能的API。它允许开发者集成各种助手功能,如自然语言理解、对话管理和任务执行,从而创建自定义的虚拟助手

AssistantsAPI目前支持三种类型的工具:

  • 代码解释器 Code Interpreter (处理任何带有逻辑、执行步骤的需求)
  • 检索 Retrieval
  • 函数调用 Function calling

以下是使用 Assistants API 标准流程:

  1. 通过定义其自定义指令并选择 LLM 来创建一个助手(Assistant)。如果有需求,可以添加文件并启用诸如代码解释器、检索和函数调用等工具。 当用户开始对话时,创建一个线程(Thread)。
  2. 当用户提问时,向线程添加消息(Messages)。
  3. 通过调用模型和工具在线程上运行助手以生成响应。

ChatGPT Assistants API vs 硅基流动 Completions API 对比

Client 客户端的本质

无论是调用 ChatGPT 的 API 还是硅基流动的 API,创建的 client 客户端本质上是同一个 OpenAI 类的实例

from openai import OpenAI

# ChatGPT 官方 API
client_chatgpt = OpenAI(
    api_key="sk-xxx",
    base_url="https://api.openai.com/v1/"  # OpenAI 官方地址
)

# 硅基流动 API
client_silicon = OpenAI(
    api_key="sk-xxx",
    base_url="https://api.siliconflow.cn/v1/"  # 硅基流动地址
)

核心区别

特性 ChatGPT (OpenAI) 硅基流动 (SiliconFlow)
Client 类 OpenAI() OpenAI() (同一个类)
base_url https://api.openai.com/v1/ https://api.siliconflow.cn/v1/
API Key OpenAI 颁发的密钥 硅基流动颁发的密钥
chat.completions ✅ 支持 ✅ 支持
embeddings ✅ 支持 ✅ 支持
assistants ✅ 支持 不支持
threads ✅ 支持 不支持
files ✅ 支持 不支持
代码解释器 ✅ 支持 不支持
检索工具 ✅ 支持 不支持
函数调用 ✅ 支持 ⚠️ 部分支持

Assistants API vs Completions API

chat.completions - 聊天完成 API(两者都支持)

# 这是最常用的聊天接口
result = client.chat.completions.create(
    model='deepseek-ai/DeepSeek-V3',
    messages=[
        {"role": "user", "content": "你好"}
    ]
)

特点

  • 无状态的单次对话
  • 每次请求需要传递完整的对话历史
  • 简单直接,适合大多数场景

assistants - 助手 API(仅 OpenAI 支持)

# 创建持久化的 AI 助手
assistant = client.beta.assistants.create(
    name="Math Tutor",
    instructions="你是一个数学老师",
    model="gpt-4",
    tools=[{"type": "code_interpreter"}]
)

# 创建线程进行对话
thread = client.beta.threads.create()

特点

  • 有状态的会话管理
  • 支持持久化的助手对象
  • 内置工具支持(代码解释器、检索、函数调用)
  • 自动管理对话历史和上下文
  • 支持文件上传和处理

为什么硅基流动不支持 Assistants API?

Assistants API 是 OpenAI 特有的高级功能,需要服务端提供额外的基础设施支持:

  1. 持久化存储:保存助手配置、线程历史、文件等
  2. 工具执行环境:代码解释器需要安全的沙箱环境
  3. 检索系统:需要向量数据库和检索引擎
  4. 状态管理:维护复杂的会话状态

硅基流动作为一个模型推理服务平台,主要提供的是标准的模型推理接口(兼容 OpenAI SDK),并不提供 Assistants 这种高级会话管理功能。

在硅基流动中实现类似功能

如果需要在硅基流动中实现多轮对话和上下文管理,需要手动实现

from siliconflow_client import create_chat_completion

# 手动维护对话历史
message = [
    {'role': 'system', 'content': '你是一位数学老师'},
    {'role': 'user', 'content': '你好!'}
]

# 第一轮对话
result = create_chat_completion(
    model='deepseek-ai/DeepSeek-V3.2',
    messages=message,
    temperature=0.7
)
out_result = result.choices[0].message
print(out_result.content)

# 手动添加回复到历史记录
message.append({'role': out_result.role, 'content': out_result.content})

# 第二轮对话
message.append({'role': 'user', 'content': '能再详细解释一下吗?'})
result = create_chat_completion(
    model='deepseek-ai/DeepSeek-V3.2',
    messages=message,
    temperature=0.7
)

总结

  • Client 本身没有区别:都是 OpenAI 类的实例,只是 base_url 不同
  • API 端点支持不同:硅基流动只支持基础的 chat.completionsembeddings
  • 功能定位不同
    • OpenAI:提供完整的 AI 应用开发平台(包括 Assistants、Files 等高级功能)
    • 硅基流动:专注于提供高性能、低成本的模型推理服务
  • 适用场景
    • 如果需要 Assistants 的高级功能(代码解释器、检索等),使用 OpenAI
    • 如果只需要基础的对话和 Embedding 功能,硅基流动是更经济的选择

语音类模型

文字配音 API 提供了一个基于 TTS(文本到语音)模型的服务。它内置了 6 种语音,并可用于:

  • 朗读书面博客文章
  • 用多种语言制作口语音频
  • 使用流媒体实时提供音频输出
  • 配音

TTS 目前支持6个不同的配音:alloy, echo, fable, onyx, nova, and shimmer

输出格式

默认响应格式是 "mp3",但也支持其他格式,如 "opus"、"aac"、"flac" 和 "pcm"。

  • Opus:适用于互联网流媒体和通讯,低延迟。
  • AAC:用于数字音频压缩,受 YouTube、Android、iOS 的偏好。
  • FLAC:用于无损音频压缩,受音频爱好者喜爱,适用于存档。
  • WAV:未压缩的 WAV 音频,适用于低延迟应用以避免解码开销。
  • PCM:类似于 WAV,但包含未带头部的原始样本,24kHz(16位有符号,小端)。

支持语言

TTS 模型在语言支持方面非常广泛(针对英语发音做了优化): 阿非利卡语、阿拉伯语、亚美尼亚语、阿塞拜疆语、白俄罗斯语、波斯尼亚语、保加利亚语、加泰罗尼亚语、中文、

posted @ 2026-06-16 22:49  MrSponge  Views(18)  Comments(0)    收藏  举报