Skip to content

ASR Provider Setup

This page covers how to register, obtain credentials, and configure ASR providers in BiBi Keyboard (说点啥).

Before you start

  • Open Settings → Smart → Speech Recognition Settings and select your provider under "Speech Recognition Provider".
  • Cloud providers usually require an API Key / Access Token.
  • Local models require downloading/importing model files (first load may take a few seconds).

Security

API keys and access tokens are sensitive. Do not share them publicly. If you suspect leakage, revoke the key/token immediately and create a new one.

Provider overview

ProviderTypeStreamingBest for
SiliconFlowCloudBeginner-friendly, low cost
VolcengineCloud✅/❌Low-latency, real-time streaming
ElevenLabsCloud✅/❌High accuracy (model-dependent)
OpenAI (compatible)Cloud✅/❌OpenAI/compatible file or Realtime transcription
OpenRouterCloudUse an OpenRouter API key with compatible ASR models
DashScope (Alibaba)Cloud✅/❌Balanced accuracy and cost
GeminiCloudSmall usage / file-based recognition
MiMo (Xiaomi)CloudMiMo v2.5 ASR / audio-understanding models
SonioxCloud✅/❌Stable streaming, international usage
StepAudioCloudStepFun online ASR, Chinese/English and ITN
Zhipu GLMCloudSimple integration, lower cost
CohereCloudCohere Transcribe file-based multilingual ASR
Local models (SenseVoice / FunASR Nano / Qwen3-ASR / Parakeet / FireRedASR V2 / X-ASR)LocalPartial ✅Privacy-first, offline usage

SiliconFlow

SiliconFlow provides a built-in free ASR option (no key required) and paid models (own key).

Quick start (no API key required)

  1. In Settings → Smart → Speech Recognition Settings, select SiliconFlow
  2. Keep the “Free ASR” toggles enabled
  3. Switch between the free models as needed: FunAudioLLM/SenseVoiceSmall, TeleAI/TeleSpeechASR, and the XingChen series (XingChenAGI/XingChenASR-V3.2, XingChenASR-V3.2-Ultra, XingChenGSR-V1.0)

Use your own API key (optional)

With your own SiliconFlow API key, paid models are also available: Qwen/Qwen3-Omni-30B-A3B-Instruct, Qwen/Qwen3-Omni-30B-A3B-Thinking, and Qwen/Qwen3-ASR-1.7B.

  1. Sign up / log in: https://cloud.siliconflow.cn/
  2. Create an API key in the console
  3. Paste it into the SiliconFlow section in BiBi Keyboard

SiliconFlow API key

Volcengine

Volcengine (Doubao Voice) has strong Chinese recognition and supports both streaming and non-streaming.

1. Create an app and enable ASR services

  1. Open the console: https://console.volcengine.com/speech/app?opt=create
  2. Enable these capabilities:
    • Streaming Speech Recognition Large Model
    • Audio File Recognition Large Model (Express)

Create app and enable capabilities

2. Get APP ID and Access Token

  1. Open the service page: https://console.volcengine.com/speech/service/10011
  2. Copy APP ID and Access Token under the credential section

APP ID and Access Token

3. Configure in BiBi Keyboard

  1. Open Settings → Smart → Speech Recognition Settings
  2. Select Volcengine
  3. Paste APP ID into X-Api-App-Key
  4. Paste Access Token into X-Api-Access-Key
  5. Pick a Doubao model directly under Recognition model:
    • Streaming (live results, needs a stable network): Doubao streaming speech recognition 2.0 (default), Doubao streaming speech recognition 1.0
    • Non-streaming (uploads the full recording after you stop): Doubao standard file recognition 2.0, Doubao standard file recognition 1.0, Doubao turbo file recognition 1.0 (fastest)

Configure Volcengine in app

Note

If you enabled both streaming and audio-file recognition when creating the app, they share the same credentials.

ElevenLabs

ElevenLabs scribe_v1 is non-streaming only; scribe_v2 is streaming only.

Get an API key

  1. Open: https://elevenlabs.io/app/settings/api-keys
  2. Create an API key
  3. Enable Speech to Text permission for the key

Create ElevenLabs keyEnable Speech to Text permission

OpenAI (compatible endpoints)

The OpenAI provider supports OpenAI-format transcription endpoints, plus compatible third-party Audio Transcriptions, Chat Completions, or Realtime endpoints.

  1. In Settings → Smart → Speech Recognition Settings, select OpenAI
  2. Use "Add channel" to create one or more OpenAI ASR configurations, for separating official endpoints, proxy endpoints, or different models
  3. Fill in:
    • ASR Endpoint (e.g. https://api.openai.com/v1/audio/transcriptions, https://api.openai.com/v1/chat/completions, or a compatible endpoint)
    • API Key (sent automatically with requests; no extra configuration needed)
    • Model name (e.g. gpt-4o-mini-transcribe / whisper-1)
  4. If the endpoint is a multimodal Chat Completions API, enable Use Completions API and optionally fill in a custom prompt
  5. If the endpoint supports the Realtime API, enable "Streaming (Realtime)" for live partial results

OpenAI settings example

Which OpenAI API should I use?

Use audio/transcriptions for standard transcription models, chat/completions for multimodal models that accept audio input, and Realtime when you need live partial results. You should check the API format with your OpenAI provider.

Custom compatible endpoints

For custom compatible audio/transcriptions endpoints, BiBi Keyboard uploads WAV audio to improve compatibility. In this case, "Compress audio before upload" does not apply to that custom OpenAI transcription endpoint.

OpenRouter

OpenRouter lets BiBi Keyboard call compatible ASR / multimodal transcription models through OpenRouter. It is currently used in non-streaming mode.

  1. Create an API key in OpenRouter Keys
  2. In Settings → Smart → Speech Recognition Settings, select OpenRouter
  3. Fill in:
    • ASR Endpoint (usually keep the default or use a compatible /audio/transcriptions endpoint)
    • OpenRouter API Key
    • Model (for example qwen/qwen3-asr-flash-2026-02-10)
  4. Save, then use Settings → Input → Recording Test to verify the setup

DashScope (Alibaba Bailian / Qwen)

DashScope offers good accuracy and cost efficiency, with partial streaming support.

1. Create an API key

  1. Open: https://bailian.console.aliyun.com/?tab=model#/api-key
  2. Create and copy an API key

DashScope API key

2. Configure in BiBi Keyboard

  1. Open Settings → Smart → Speech Recognition Settings and select DashScope
  2. Paste the API key and save
  3. Choose a model:
    • Streaming: Qwen-Audio-3.0-ASR-Flash-Streaming (default), Fun-ASR-Realtime, or Qwen3-ASR-Flash-Realtime
    • Non-streaming: Qwen-Audio-3.0-ASR-Flash (default), Fun-ASR-Flash, Qwen3-ASR-Flash, Qwen3.5-Omni-Flash, or Qwen3.5-Omni-Plus

Gemini

Gemini is commonly used for file-based recognition and small usage.

  1. Open: https://aistudio.google.com/api-keys
  2. Create and copy a key
  3. Paste it into the Gemini section in BiBi Keyboard

Gemini API key

Call mode

Call mode offers two transcription paths, both non-streaming (audio is uploaded once after recording stops):

  • Gemini: multimodal audio understanding with a Gemini model; enable "Reduce thinking" for faster, closer-to-verbatim results.
  • Transcribe: the dedicated Gemini Transcribe API, sending the audio inline in a single request. The default model is gemini-3.5-transcribe. Extra options:
    • Recognition language: Automatic, Mandarin Chinese, Traditional Cantonese, US English, Japanese, Korean, or a custom BCP-47 code
    • Smart transcription: when enabled, removes fillers, resolves speech corrections, and restructures formatting (may change the verbatim content); when disabled, keeps verbatim transcription including fillers, repetitions, and false starts

MiMo (Xiaomi)

MiMo supports mimo-v2.5-asr and mimo-v2.5 audio-understanding models.

  1. Prepare a MiMo API key
  2. In Settings → Smart → Speech Recognition Settings, select MiMo
  3. Choose an endpoint preset:
    • Token Plan (Mainland China / Singapore / Europe)
    • Pay-as-you-go
    • Custom endpoint
  4. Fill in the MiMo API key for the current endpoint. API keys are stored separately per endpoint preset, so re-check the active slot after switching endpoints
  5. Choose a model and recognition language (Auto / Chinese / English)
  6. For the mimo-v2.5 audio-understanding model, you can fill in a System Prompt; enable "Disable thinking" if you do not need reasoning output

Soniox

Soniox supports both streaming and non-streaming; streaming is relatively stable.

Get an API key

  1. Log in: https://console.soniox.com
  2. In your project, go to API keys
  3. Create and copy the API key, then paste it into BiBi Keyboard

Soniox API keys

Recognition mode

In Soniox settings, choose the endpoint detection behavior under "Recognition mode":

  • Low latency: faster endpoint detection, best for realtime input
  • Default: balances latency and accuracy
  • High accuracy: more sensitive endpoint detection, best for accuracy-sensitive scenarios

StepAudio

StepAudio is StepFun's online ASR service. In BiBi Keyboard it is currently used in non-streaming mode.

  1. Create an API key in the StepFun console: https://platform.stepfun.com/
  2. In Settings → Smart → Speech Recognition Settings, select StepAudio
  3. Choose an endpoint preset:
    • Pay-as-you-go
    • Coding Plan
    • Custom
  4. Paste the StepFun API Key for the current endpoint. API keys are stored separately per endpoint preset, so re-check it after switching endpoints
  5. Choose the stepaudio-2.5-asr model, language (Chinese / English / Auto), and enable ITN if needed

Zhipu GLM

Zhipu GLM is simple to integrate and usually used as non-streaming.

  1. Get an API key: https://bigmodel.cn/usercenter/proj-mgmt/apikeys
  2. Paste it into the Zhipu section in BiBi Keyboard

Cohere

Cohere Transcribe is used as a non-streaming file recognizer in BiBi Keyboard.

  1. Sign in to the Cohere Dashboard and create/copy a Trial API key
  2. Open Settings → Smart → Speech Recognition Settings and select Cohere
  3. Enter the Cohere API Key
  4. Choose a model:
    • cohere-transcribe-03-2026: general multilingual model
    • cohere-transcribe-arabic-07-2026: Arabic/English model
  5. Select the language spoken in the recording. If you enter a custom model ID, also verify that the model accepts the selected language code

Free limit

Cohere Trial API Key is limited to 5 RPM (requests per minute).

Language selection

The general model offers Chinese, English, Arabic, Japanese, Korean, and several European languages. The Arabic model offers Arabic and English only.

Local model setup

Local models are ideal for offline usage and privacy. Each model trades off speed, quality, and streaming support.

Model selection tips

  • SenseVoice(recommended): non-streaming; lightweight fast and balanced; supports language settings
  • FunASR Nano: non-streaming; language selection, native ITN, and MLT Nano multilingual variant
  • Qwen3-ASR(recommended): non-streaming; local 0.6B / 1.7B models, good Chinese recognition, optional rule-based ITN
  • Parakeet: non-streaming; V3 for several European languages, V2 for English
  • FireRedASR V2: non-streaming / pseudo-streaming; replaces the old TeleSpeech local engine
  • X-ASR(recommended): local streaming; Chinese/English 480ms model with thread count, unload policy, and optional ITN
  1. Select a local provider (e.g. SenseVoice / X-ASR)
  2. In the model manager, choose a variant and download
  3. If notification permission is granted, you can track download/unzip progress in notifications

If the download is canceled or interrupted, the incomplete download task is cached locally. Downloading the same model again attempts to resume from that point. Partial downloads are kept for up to 7 days with a total cache limit of about 2 GB; older files are removed first. If the source does not support resuming, the app automatically downloads the full file again.

Reduce first-recognition latency

Local models may take a few seconds on first load. Every local provider supports an "Aggressive model loading" option: when enabled, the model is preloaded as soon as the keyboard or floating ball is first shown, reducing the wait for the first recognition.

Download local models in-app

Import from local files (optional)

If you prefer adding models from local files, download the ZIP first, then choose "Import from local" in the model manager.

Direct links

The links below point to BiBi-Keyboard model ZIPs. If you see 404 or slow downloads, use the models page (Releases: models) or a GitHub mirror site.

SenseVoice (non-streaming)

X-ASR (streaming)

FireRedASR V2 (non-streaming / pseudo-streaming)

FunASR Nano (non-streaming)

Qwen3-ASR (non-streaming)

Parakeet (non-streaming)

Universal punctuation model (optional)

Released under the Apache 2.0 License.