Gemini 语音转文本:快速音频转录 - Openclaw Skills

作者:互联网

2026-03-21

AI教程

什么是 Gemini 语音转文本?

Gemini 语音转文本技能是一个以开发者为中心的实用工具,旨在利用直接的 Gemini API 或 Google Cloud Vertex AI 处理音频转录任务。通过优先使用 gemini-2.0-flash-lite 模型,该技能为实时应用提供了速度与成本效益的最佳平衡。它旨在无缝集成到 Openclaw Skills 生态系统中,提供一种可靠的方式来处理语音数据,而无需承担沉重的外部库开销。

该技能专为便携性和易用性而设计,利用 Python 标准库管理身份验证、文件编码和 API 通信。这使其成为希望在保持极小占用的同时,为其 AI 代理或自动化脚本添加强大语音转文本能力的开发者的理想选择。

下载入口:https://github.com/openclaw/skills/tree/main/skills/araa47/gemini-stt

安装与下载

1. ClawHub CLI

从源直接安装技能的最快方式。

npx clawhub@latest install gemini-stt

2. 手动安装

将技能文件夹复制到以下位置之一

全局模式 ~/.openclaw/skills/ 工作区 /skills/

优先级:工作区 > 本地 > 内置

3. 提示词安装

将此提示词复制到 OpenClaw 即可自动安装。

请帮我使用 Clawhub 安装 gemini-stt。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。

Gemini 语音转文本 应用场景

  • 自动转录来自 Telegram 等即时通讯平台的语音便签。
  • 将 .mp3 或 .wav 格式的会议或采访录音转换为可搜索的文本。
  • 在自动化的 Clawdbot 工作流中处理传入的音频媒体。
  • 使用最先进的大语言模型为播客或视频旁白生成转录本。
  • 为自定义 CLI 工具和 Openclaw Skills 启用语音命令处理。
Gemini 语音转文本 工作原理
  1. 该技能读取目标音频文件并将其转换为符合 Google API 要求的 base64 编码字符串。
  2. 它执行自动身份验证检查,首先查找 gcloud 应用默认凭据 (ADC),然后查找本地 GEMINI_API_KEY 环境变量。
  3. 根据检测到的凭据,该技能启动对 Vertex AI 或直接 Gemini API 端点的请求。
  4. 编码后的数据由所选模型(默认为超快速的 gemini-2.0-flash-lite)使用专门的转录提示词进行处理。
  5. 结果文本从 API 响应中提取,并通过标准输出 (stdout) 返回,用于后续的自动化步骤。

Gemini 语音转文本 配置指南

要在您的 Openclaw Skills 环境中部署此技能,请确保您拥有 Python 3.10+ 并选择一种身份验证方法:

Vertex AI 设置 (推荐)

gcloud auth application-default login
gcloud config set project YOUR_PROJECT_ID

直接 API 设置 将您的 API 密钥添加到环境变量中:

export GEMINI_API_KEY='your_secret_key_here'

该脚本不需要外部 pip 依赖项,可以直接从终端执行。

Gemini 语音转文本 数据架构与分类体系

该技能通过精简流程处理音频数据和元数据,无需持久化存储。数据组织结构如下:

组件 详情
支持格式 .ogg, .opus, .mp3, .wav, .m4a
MIME 处理 基于文件扩展名的自动检测
认证逻辑 优先使用 ADC (Vertex) 而非 API Key (Direct)
默认模型 gemini-2.0-flash-lite
元数据输出 纯文本转录字符串
name: gemini-stt
description: Transcribe audio files using Google's Gemini API or Vertex AI
metadata: {"clawdbot":{"emoji":"??","os":["linux","darwin"]}}

Gemini Speech-to-Text Skill

Transcribe audio files using Google's Gemini API or Vertex AI. Default model is gemini-2.0-flash-lite for fastest transcription.

Authentication (choose one)

gcloud auth application-default login
gcloud config set project YOUR_PROJECT_ID

The script will automatically detect and use ADC when available.

Option 2: Direct Gemini API Key

Set GEMINI_API_KEY in environment (e.g., ~/.env or ~/.clawdbot/.env)

Requirements

  • Python 3.10+ (no external dependencies)
  • Either GEMINI_API_KEY or gcloud CLI with ADC configured

Supported Formats

  • .ogg / .opus (Telegram voice messages)
  • .mp3
  • .wav
  • .m4a

Usage

# Auto-detect auth (tries ADC first, then GEMINI_API_KEY)
python ~/.claude/skills/gemini-stt/transcribe.py /path/to/audio.ogg

# Force Vertex AI
python ~/.claude/skills/gemini-stt/transcribe.py /path/to/audio.ogg --vertex

# With a specific model
python ~/.claude/skills/gemini-stt/transcribe.py /path/to/audio.ogg --model gemini-2.5-pro

# Vertex AI with specific project and region
python ~/.claude/skills/gemini-stt/transcribe.py /path/to/audio.ogg --vertex --project my-project --region us-central1

# With Clawdbot media
python ~/.claude/skills/gemini-stt/transcribe.py ~/.clawdbot/media/inbound/voice-message.ogg

Options

Option Description
Path to the audio file (required)
--model, -m Gemini model to use (default: gemini-2.0-flash-lite)
--vertex, -v Force use of Vertex AI with ADC
--project, -p GCP project ID (for Vertex, defaults to gcloud config)
--region, -r GCP region (for Vertex, default: us-central1)

Supported Models

Any Gemini model that supports audio input can be used. Recommended models:

Model Notes
gemini-2.0-flash-lite Default. Fastest transcription speed.
gemini-2.0-flash Fast and cost-effective.
gemini-2.5-flash-lite Lightweight 2.5 model.
gemini-2.5-flash Balanced speed and quality.
gemini-2.5-pro Higher quality, slower.
gemini-3-flash-preview Latest flash model.
gemini-3-pro-preview Latest pro model, best quality.

See Gemini API Models for the latest list.

How It Works

  1. Reads the audio file and base64 encodes it
  2. Auto-detects authentication:
    • If ADC is available (gcloud), uses Vertex AI endpoint
    • Otherwise, uses GEMINI_API_KEY with direct Gemini API
  3. Sends to the selected Gemini model with transcription prompt
  4. Returns the transcribed text

Example Integration

For Clawdbot voice message handling:

# Transcribe incoming voice message
TRANSCRIPT=$(python ~/.claude/skills/gemini-stt/transcribe.py "$AUDIO_PATH")
echo "User said: $TRANSCRIPT"

Error Handling

The script exits with code 1 and prints to stderr on:

  • No authentication available (neither ADC nor GEMINI_API_KEY)
  • File not found
  • API errors
  • Missing GCP project (when using Vertex)

Notes

  • Uses Gemini 2.0 Flash Lite by default for fastest transcription
  • No external Python dependencies (uses stdlib only)
  • Automatically detects MIME type from file extension
  • Prefers Vertex AI with ADC when available (no API key management needed)