Agent 연동

음성 인식을 Agent, 제품, 데스크톱 워크플로의 로컬 인프라로 연결합니다. OpenAI 호환 API, MCP server, 음성 입력, 자막 생성 흐름을 한 번에 확인할 수 있습니다.

OpenAI 호환 API 서버

funasr-server/v1/audio/transcriptions, /v1/models, /health를 제공하고 /docs에서 Swagger 문서를 보여줍니다. OpenAI audio API를 이미 지원하는 framework와 바로 연결할 수 있습니다.

pip install funasr fastapi uvicorn python-multipart
funasr-server --device cuda --port 8000

# CPU fallback
funasr-server --device cpu --model sensevoice --port 8000
Model aliasBackend적합한 사용처
sensevoiceiic/SenseVoiceSmall언어, 감정, 이벤트 태그가 필요한 빠른 다국어 ASR.
paraformerparaformer-zh + VAD + punctuation중국어 production transcription.
paraformer-enparaformer-en + VAD영어 transcription.
fun-asr-nanoFunAudioLLM/Fun-ASR-Nano-2512timestamp가 필요한 31개 언어 LLM-based ASR.

OpenAI SDK와 curl

from openai import OpenAI

client = OpenAI(base_url="http://localhost:8000/v1", api_key="not-needed")
result = client.audio.transcriptions.create(
    model="sensevoice",
    file=open("meeting.wav", "rb"),
)
print(result.text)

verbose = client.audio.transcriptions.create(
    model="sensevoice",
    file=open("meeting.wav", "rb"),
    response_format="verbose_json",
)
print(verbose.segments)
curl http://localhost:8000/v1/audio/transcriptions \
  -F file=@audio.wav \
  -F model=sensevoice \
  -F response_format=verbose_json

Dify, n8n, workflow engine

한국어 빠른 시작은 OpenAI API 예제에서 시작합니다. HTTP node나 webhook worker로 음성 API를 호출하는 low-code tool은 workflow recipes를 참고하세요. multipart upload 설정, Dify custom tool, n8n binary file field, audio URL worker, timeout, production guardrail을 다룹니다. Node.js, TypeScript, Next.js service는 JavaScript/TypeScript recipes에서 시작할 수 있습니다. GUI smoke test에는 Postman collection, CLI 확인에는 Python smoke test, 브라우저 업로드와 마이크 확인에는 Gradio demo를 사용하세요. 서비스를 공유하기 전에는 security and gateway guide를 확인하고, schema-driven import에는 OpenAPI spec을 사용합니다.

한국어 API quickstart · Workflow recipes · JS/TS recipes · Python smoke test · Gradio demo · Security guide · Postman collection · OpenAPI spec

MCP Server

MCP server는 Claude Code, Claude Desktop, Cursor, Windsurf, 기타 MCP client에 로컬 transcribe_audio tool을 제공합니다.

pip install funasr
python examples/mcp_server/funasr_mcp.py
{
  "mcpServers": {
    "funasr": {
      "command": "python",
      "args": ["/path/to/examples/mcp_server/funasr_mcp.py"],
      "env": {"FUNASR_DEVICE": "cuda"}
    }
  }
}
변수기본값설명
FUNASR_DEVICEcpucuda, cpu, mps.
FUNASR_MODELiic/SenseVoiceSmallMCP tool이 사용하는 ASR model.

Desktop 음성 입력

voice input 예제는 마이크에서 녹음하고, 오디오를 funasr-server로 보내고, 인식한 텍스트를 현재 커서 위치에 붙여넣습니다.

pip install funasr sounddevice numpy pyperclip openai pynput
funasr-server --device cuda

cd examples/voice_input
python funasr_input.py --server http://localhost:8000/v1 --model sensevoice
PlatformRecordingPaste
macOSYesAppleScript
LinuxYesxdotool
WindowsYes필요하면 수동 Ctrl+V

자막 생성

subtitle 예제는 오디오나 비디오 파일을 SRT/VTT로 변환하고, 선택적으로 speaker label을 추가합니다.

cd examples/subtitle
python generate_subtitle.py video.mp4
python generate_subtitle.py meeting.wav --spk
python generate_subtitle.py podcast.mp3 --format vtt
python generate_subtitle.py audio.wav --device cpu
OptionDefaultDescription
--formatsrtsrt 또는 vtt.
--modeliic/SenseVoiceSmallASR model.
--spkoffspeaker label 추가.
--langauto언어 hint.