> ## Documentation Index
> Fetch the complete documentation index at: https://enterprise-docs.dify.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 语音转文字

> **适用于**：Chatflow、Workflow、聊天助手、Agent、文本生成应用。

使用应用配置的语音转文字模型，将上传的音频文件转写为文字。



## OpenAPI

````yaml /zh/3.11.x/develop/api/openapi_service.json post /audio-to-text
openapi: 3.0.1
info:
  title: Dify 服务 API
  description: 用于 Dify 应用与知识库的 REST API。应用类接口使用应用 API 密钥认证，知识库类接口使用知识库 API 密钥认证。
  version: 1.0.0
servers:
  - url: https://{api_base_url}
    description: Dify 服务 API 的基础 URL。替换为你部署的 API 基础 URL。
    variables:
      api_base_url:
        default: api.example.com/v1
        description: API 基础 URL 的主机与路径，不含 `https://` 前缀。
security:
  - ApiKeyAuth: []
tags:
  - name: 对话消息
    description: 与聊天消息和交互相关的操作。
  - name: 文件操作
    description: 文件上传和预览操作。
  - name: 终端用户
    description: 终端用户信息相关操作。
  - name: 消息反馈
    description: 用户反馈操作。
  - name: 会话管理
    description: 与管理会话相关的操作。
  - name: 语音与文字转换
    description: 文字转语音和语音转文字操作。
  - name: 应用配置
    description: 获取应用设置和信息的操作。
  - name: 标注管理
    description: 与管理标注直接回复相关的操作。
  - name: 人工介入
    description: 暂停等待人工输入的工作流恢复操作。
  - name: 工作流运行
    description: 用于执行和管理工作流的操作。
  - name: 文本生成消息
    description: 文本生成相关操作。
  - name: 知识库
    description: 用于管理知识库的操作，包括创建、配置和检索。
  - name: 文档
    description: 用于在知识库中创建、更新和管理文档的操作。
  - name: 分段
    description: 用于管理分段和子分段的操作。
  - name: 元数据
    description: 用于管理知识库元数据字段和文档元数据值的操作。
  - name: 标签
    description: 用于管理知识库标签和标签绑定的操作。
  - name: 模型
    description: 用于获取可用模型的操作。
  - name: 知识流水线
    description: 用于管理和运行知识流水线的操作，包括数据源插件和流水线执行。
paths:
  /audio-to-text:
    post:
      tags:
        - 语音与文字转换
      summary: 语音转文字
      description: |-
        **适用于**：Chatflow、Workflow、聊天助手、Agent、文本生成应用。

        使用应用配置的语音转文字模型，将上传的音频文件转写为文字。
      operationId: basicChatAudioToTextCn
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/AudioToTextRequest'
      responses:
        '200':
          description: 语音转文字成功。
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AudioToTextResponse'
              examples:
                audioToTextSuccess:
                  summary: 响应示例
                  value:
                    text: >-
                      Hello, I would like to know more about the iPhone 13 Pro
                      Max.
        '400':
          description: |-
            - `app_unavailable` : 应用不可用或配置错误。
            - `invalid_param` : 此应用未启用语音转文字。
            - `provider_not_support_speech_to_text` : 模型供应商不支持语音转文字。
            - `provider_not_initialize` : 未配置有效的模型供应商凭据。
            - `completion_request_error` : 语音识别请求失败。
          content:
            application/json:
              examples:
                app_unavailable:
                  summary: app_unavailable
                  value:
                    status: 400
                    code: app_unavailable
                    message: App unavailable, please check your app configurations.
                invalid_param:
                  summary: invalid_param
                  value:
                    status: 400
                    code: invalid_param
                    message: Speech to text is not enabled
                provider_not_support_speech_to_text:
                  summary: provider_not_support_speech_to_text
                  value:
                    status: 400
                    code: provider_not_support_speech_to_text
                    message: Provider not support speech to text.
                provider_not_initialize:
                  summary: provider_not_initialize
                  value:
                    status: 400
                    code: provider_not_initialize
                    message: >-
                      No valid model provider credentials found. Please go to
                      Settings -> Model Provider to complete your provider
                      credentials.
                completion_request_error:
                  summary: completion_request_error
                  value:
                    status: 400
                    code: completion_request_error
                    message: Completion request failed.
        '413':
          description: '`audio_too_large` : 音频文件超出 `30 MB` 大小限制。'
          content:
            application/json:
              examples:
                audio_too_large:
                  summary: audio_too_large
                  value:
                    status: 413
                    code: audio_too_large
                    message: Audio size larger than 30 mb
        '415':
          description: '`unsupported_audio_type` : 文件的 MIME 类型不在接受的音频类型之列（见 `file` 字段）。'
          content:
            application/json:
              examples:
                unsupported_audio_type:
                  summary: unsupported_audio_type
                  value:
                    status: 415
                    code: unsupported_audio_type
                    message: Audio type not allowed.
        '500':
          description: '`internal_server_error` : 内部服务器错误。'
          content:
            application/json:
              examples:
                internal_server_error:
                  summary: internal_server_error
                  value:
                    status: 500
                    code: internal_server_error
                    message: >-
                      The server encountered an internal error and was unable to
                      complete your request. Either the server is overloaded or
                      there is an error in the application.
      x-codeSamples:
        - lang: bash
          label: cURL
          source: |-
            curl --request POST \
              --url 'https://{api_base_url}/audio-to-text' \
              --header 'Authorization: Bearer {api_key}' \
              --form 'file=@meeting-question.mp3' \
              --form 'user={user}'
components:
  schemas:
    AudioToTextRequest:
      type: object
      description: 语音转文字的请求体。
      required:
        - file
      properties:
        file:
          type: string
          format: binary
          description: >-
            要转写的音频文件。接受的 MIME
            类型：`audio/mp3`、`audio/m4a`、`audio/wav`、`audio/amr`、`audio/mpga`。其他类型（包括常见的
            `audio/mpeg`）会返回 `unsupported_audio_type` 错误。最大 `30 MB`。
        user:
          type: string
          description: >-
            终端用户标识，由你的应用定义，需在应用内唯一。参见
            [终端用户身份](/zh/3.11.x/develop/api/guides/end-user-identity)。
    AudioToTextResponse:
      type: object
      properties:
        text:
          type: string
          description: 语音识别输出的文字。
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: API_KEY
      description: >-
        每个请求都通过 API Key 认证：`Authorization: Bearer {API_KEY}`。应用接口使用应用 API
        Key，知识库接口使用知识库 API
        Key（[快速开始](/zh/3.11.x/develop/api/guides/get-started)）。


        API Key 应保存在服务端，切勿嵌入客户端代码。缺失或无效的 Key 会返回 HTTP `401`（`unauthorized`）。

````