Agent Skills by ALSEL
Anthropic ClaudeLLM・AI開発⭐ リポ 0品質スコア 50/100

whisper

OpenAIの汎用音声認識モデルで、99言語に対応し、文字起こし・英語への翻訳・言語識別が可能です。tinyからlargeまで6種類のモデルサイズ(39M〜1550M パラメータ)を提供し、音声テキスト変換・ポッドキャストの文字起こし・多言語音声処理などに活用できます。堅牢な多言語ASRを必要とする場面に最適です。

description の原文を見る

OpenAI's general-purpose speech recognition model. Supports 99 languages, transcription, translation to English, and language identification. Six model sizes from tiny (39M params) to large (1550M params). Use for speech-to-text, podcast transcription, or multilingual audio processing. Best for robust, multilingual ASR.

SKILL.md 本文

Whisper - ロバストな音声認識

OpenAIのマルチリンガル音声認識モデル。

Whisper を使用する場合

使用するべき場合:

  • 音声テキスト変換の文字起こし(99言語)
  • ポッドキャスト/動画の文字起こし
  • 会議記録の自動化
  • 英語への翻訳
  • ノイズのある音声の文字起こし
  • マルチリンガル音声処理

指標:

  • GitHub スター 72,900+
  • 99言語対応
  • 680,000時間の音声データで学習
  • MIT ライセンス

代わりに使用検討:

  • AssemblyAI: マネージド API、スピーカー識別対応
  • Deepgram: リアルタイムストリーミング ASR
  • Google Speech-to-Text: クラウドベース

クイックスタート

インストール

# Python 3.8-3.11が必要
pip install -U openai-whisper

# ffmpeg が必要
# macOS: brew install ffmpeg
# Ubuntu: sudo apt install ffmpeg
# Windows: choco install ffmpeg

基本的な文字起こし

import whisper

# モデルをロード
model = whisper.load_model("base")

# 文字起こし
result = model.transcribe("audio.mp3")

# テキストを出力
print(result["text"])

# セグメントにアクセス
for segment in result["segments"]:
    print(f"[{segment['start']:.2f}s - {segment['end']:.2f}s] {segment['text']}")

モデルサイズ

# 利用可能なモデル
models = ["tiny", "base", "small", "medium", "large", "turbo"]

# 特定のモデルをロード
model = whisper.load_model("turbo")  # 最速、良好な品質
ModelParametersEnglish-onlyMultilingualSpeedVRAM
tiny39M~32x~1 GB
base74M~16x~1 GB
small244M~6x~2 GB
medium769M~2x~5 GB
large1550M1x~10 GB
turbo809M~8x~6 GB

推奨: 速度と品質のバランスは turbo、プロトタイピング用は base

文字起こしオプション

言語指定

# 言語を自動検出
result = model.transcribe("audio.mp3")

# 言語を指定(高速化)
result = model.transcribe("audio.mp3", language="en")

# 対応: en, es, fr, de, it, pt, ru, ja, ko, zh、他89言語

タスク選択

# 文字起こし(デフォルト)
result = model.transcribe("audio.mp3", task="transcribe")

# 英語に翻訳
result = model.transcribe("spanish.mp3", task="translate")
# 入力: スペイン語の音声 → 出力: 英語テキスト

初期プロンプト

# コンテキストで精度向上
result = model.transcribe(
    "audio.mp3",
    initial_prompt="This is a technical podcast about machine learning and AI."
)

# 以下に有効:
# - 専門用語
# - 固有名詞
# - ドメイン特有の語彙

タイムスタンプ

# 単語レベルのタイムスタンプ
result = model.transcribe("audio.mp3", word_timestamps=True)

for segment in result["segments"]:
    for word in segment["words"]:
        print(f"{word['word']} ({word['start']:.2f}s - {word['end']:.2f}s)")

温度のフォールバック

# 信頼度が低い場合、異なる温度で再試行
result = model.transcribe(
    "audio.mp3",
    temperature=(0.0, 0.2, 0.4, 0.6, 0.8, 1.0)
)

コマンドラインの使用

# 基本的な文字起こし
whisper audio.mp3

# モデルを指定
whisper audio.mp3 --model turbo

# 出力形式
whisper audio.mp3 --output_format txt     # プレーンテキスト
whisper audio.mp3 --output_format srt     # 字幕
whisper audio.mp3 --output_format vtt     # WebVTT
whisper audio.mp3 --output_format json    # JSONでタイムスタンプ付き

# 言語
whisper audio.mp3 --language Spanish

# 翻訳
whisper spanish.mp3 --task translate

バッチ処理

import os

audio_files = ["file1.mp3", "file2.mp3", "file3.mp3"]

for audio_file in audio_files:
    print(f"Transcribing {audio_file}...")
    result = model.transcribe(audio_file)

    # ファイルに保存
    output_file = audio_file.replace(".mp3", ".txt")
    with open(output_file, "w") as f:
        f.write(result["text"])

リアルタイム文字起こし

# ストリーミング音声の場合、faster-whisper を使用
# pip install faster-whisper

from faster_whisper import WhisperModel

model = WhisperModel("base", device="cuda", compute_type="float16")

# ストリーミング文字起こし
segments, info = model.transcribe("audio.mp3", beam_size=5)

for segment in segments:
    print(f"[{segment.start:.2f}s -> {segment.end:.2f}s] {segment.text}")

GPU アクセラレーション

import whisper

# 利用可能な場合、自動的に GPU を使用
model = whisper.load_model("turbo")

# CPU を強制
model = whisper.load_model("turbo", device="cpu")

# GPU を強制
model = whisper.load_model("turbo", device="cuda")

# GPU で 10-20倍高速化

他のツールとの統合

字幕生成

# SRT 字幕を生成
whisper video.mp4 --output_format srt --language English

# 出力: video.srt

LangChain との連携

from langchain.document_loaders import WhisperTranscriptionLoader

loader = WhisperTranscriptionLoader(file_path="audio.mp3")
docs = loader.load()

# RAG で文字起こしを使用
from langchain_chroma import Chroma
from langchain_openai import OpenAIEmbeddings

vectorstore = Chroma.from_documents(docs, OpenAIEmbeddings())

動画から音声を抽出

# ffmpeg を使用して音声を抽出
ffmpeg -i video.mp4 -vn -acodec pcm_s16le audio.wav

# その後、文字起こし
whisper audio.wav

ベストプラクティス

  1. turbo モデルを使用 - 英語の速度と品質のバランスが最適
  2. 言語を指定 - 自動検出より高速
  3. 初期プロンプントを追加 - 専門用語を改善
  4. GPU を使用 - 10-20倍高速化
  5. バッチ処理 - より効率的
  6. WAV に変換 - 互換性向上
  7. 長い音声を分割 - <30分チャンク
  8. 言語対応を確認 - 言語により品質が異なる
  9. faster-whisper を使用 - openai-whisper より 4倍高速
  10. VRAM を監視 - ハードウェアに合わせてモデルサイズをスケール

パフォーマンス

ModelReal-time factor (CPU)Real-time factor (GPU)
tiny~0.32~0.01
base~0.16~0.01
turbo~0.08~0.01
large~1.0~0.05

Real-time factor: 0.1 = リアルタイムより 10倍高速

言語対応

主要対応言語:

  • 英語 (en)
  • スペイン語 (es)
  • フランス語 (fr)
  • ドイツ語 (de)
  • イタリア語 (it)
  • ポルトガル語 (pt)
  • ロシア語 (ru)
  • 日本語 (ja)
  • 韓国語 (ko)
  • 中国語 (zh)

完全リスト: 全99言語

制限事項

  1. ハルシネーション - テキストが繰り返されたり、作成される可能性あり
  2. 長時間音声の精度 - 30分以上の音声で低下
  3. スピーカー識別 - 話者分離非対応
  4. アクセント - 品質が異なる
  5. 背景ノイズ - 精度に影響可能性
  6. リアルタイム遅延 - ライブキャプション非対応

リソース

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
davila7
リポジトリ
davila7/claude-code-templates
ライセンス
MIT
最終更新
不明

Source: https://github.com/davila7/claude-code-templates / ライセンス: MIT

関連スキル

OpenAILLM・AI開発⭐ リポ 6,054

agent-browser

AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。

by JimmyLv
汎用LLM・AI開発⭐ リポ 1,982

anyskill

AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。

by LeoYeAI
汎用LLM・AI開発⭐ リポ 1,982

engram

AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。

by LeoYeAI
汎用LLM・AI開発⭐ リポ 21,584

skyvern

AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。

by Skyvern-AI
汎用LLM・AI開発⭐ リポ 1,149

pinchbench

PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。

by pinchbench
汎用LLM・AI開発⭐ リポ 4,693

openui

OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。

by thesysdev
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: davila7 · davila7/claude-code-templates · ライセンス: MIT