t

testaaaMCP

sorrybox/testaaaMCP
0 Stars 59 次浏览 更新于 2026-08-23

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "audio-asr-service": {
      "args": [
        "daemon"
      ],
      "command": "/root/audiodetection/bin/server.sh",
      "env": {
        "DASHSCOPE_API_KEY": "sk-3e9a31f74e6744c98662a7df5e33ffb4",
        "PYTHONPATH": "/root/audiodetection"
      }
    }
  }
}

服务介绍

Audio ASR API 接口文档

接口概述

基础信息:

  • 基础 URL: http://182.92.223.177:8000
  • 识别模型: paraformer-realtime-8k-v2
  • 支持格式: wav, mp3, m4a 等常见音频格式
  • 响应格式: NDJSON (Newline Delimited JSON)

接口列表

音频识别 (流式输出)

接口地址: POST /audio/paraformer-recognize/stream

功能描述: 上传音频文件进行语音识别,以流式方式实时返回识别结果。每当识别出完整句子时立即返回。

请求参数:

  • audio_file (file, required): 音频文件,支持常见格式 (wav, mp3, m4a等)

请求示例:

curl -X POST "http://182.92.223.177:8000/audio/paraformer-recognize/stream" \
  -F "audio_file=@/path/to/audio.wav"

响应格式: NDJSON (Newline Delimited JSON)

成功响应 (result: 1):

{"result": 1, "text": "第一个识别出的句子"}
{"result": 1, "text": "第二个识别出的句子"}  
{"result": 1, "text": "第三个识别出的句子"}

错误响应 (result: 0):

{"result": 0, "detail": "文件不存在: /tmp/test.wav"}

响应特点:

  • Content-Type: application/x-ndjson
  • 每行一个独立的JSON对象
  • 按句子边界实时输出
  • 流自然结束,无结束标记
  • 通过 result 字段区分成功/失败

客户端处理示例 (Python):

import requests
import json

files = {"audio_file": open("test.wav", "rb")}
response = requests.post(
    "http://182.92.223.177:8000/audio/paraformer-recognize/stream",
    files=files,
    stream=True
)

for line in response.iter_lines(decode_unicode=True):
    if line.strip():
        data = json.loads(line)
        if data["result"] == 1:
            print(f"识别结果: {data['text']}")
        else:
            print(f"错误: {data['detail']}")
            break

响应状态码:

  • 200: 识别成功 (流式返回)
  • 400: 请求参数错误 (缺少文件、文件为空等)
  • 404: 接口路径错误
  • 500: 服务器内部错误

错误响应示例:

{"detail": "缺少音频文件"}
{"detail": "上传文件为空"}
{"detail": "识别失败: 具体错误信息"}

常见错误类型

1. 接口使用错误 (HTTP错误响应)

  • 文件上传问题
  • 参数验证失败
  • 服务初始化错误

2. 接口内部错误 (NDJSON错误响应)

{"result": 0, "detail": "未检测到环境变量 DASHSCOPE_API_KEY,请先 export DASHSCOPE_API_KEY=\"YOUR_KEY\" 再调用。"}
{"result": 0, "detail": "未检测到 ffmpeg,可通过 'conda install -y -c conda-forge ffmpeg' 安装。"}
{"result": 0, "detail": "文件不存在: /tmp/asr_uploads/test.wav"}
{"result": 0, "detail": "ffmpeg 打开失败: 未获取到 stdout 流"}

部署和管理

服务启动

# 后台启动
cd /root/audiodetection
bin/server.sh daemon

# 查看状态
bin/server.sh status

# 查看日志
bin/server.sh log

# 停止服务
bin/server.sh stop

环境要求

  • Python 3.8+
  • ffmpeg (音频转码)
  • DASHSCOPE_API_KEY (阿里云百炼 API Key)

API 文档

  • Swagger UI: http://182.92.223.177:8000/docs
  • 健康检查: http://182.92.223.177:8000/health

相关 MCP 服务