Cloudflare
Mastra の CloudflareVoice クラスは、Cloudflare Workers AI を使用した Text-to-Speech 機能を提供します。この Provider は、エッジコンピューティング環境に適した、効率的で低レイテンシーの音声合成に特化しています。
使用例使用例への直接リンク
import { CloudflareVoice } from '@mastra/voice-cloudflare'
// Initialize with configuration
const voice = new CloudflareVoice({
speechModel: {
name: '@cf/meta/m2m100-1.2b',
apiKey: 'your-cloudflare-api-token',
accountId: 'your-cloudflare-account-id',
},
speaker: 'en-US-1', // Default voice
})
// Convert text to speech
const audioStream = await voice.speak('Hello, how can I help you?', {
speaker: 'en-US-2', // Override default voice
})
// Get available voices
const speakers = await voice.getSpeakers()
console.log(speakers)
設定設定への直接リンク
コンストラクターオプションコンストラクターオプションへの直接リンク
speechModel?:
CloudflareSpeechConfig
Text-to-Speech 合成の設定。
CloudflareSpeechConfig
name?:
string
TTS に使用するモデル名。
apiKey?:
string
Workers AI へのアクセス権を持つ Cloudflare API トークン。未指定の場合は CLOUDFLARE_API_TOKEN 環境変数を使用します。
accountId?:
string
Cloudflare アカウント ID。未指定の場合は CLOUDFLARE_ACCOUNT_ID 環境変数を使用します。
speaker?:
string
= 'en-US-1'
音声合成に使用するデフォルトの Voice ID。
メソッドメソッドへの直接リンク
speak()speakへの直接リンク
Cloudflare の Text-to-Speech サービスを使用してテキストを音声に変換します。
input:
string | NodeJS.ReadableStream
音声に変換するテキストまたはテキストストリーム。
options?:
Options
設定オプション。
Options
speaker?:
string
音声合成に使用する Voice ID。
format?:
string
出力音声形式。
戻り値:Promise<NodeJS.ReadableStream>
getSpeakers()getspeakersへの直接リンク
使用可能な Voice オプションの配列を返します。各要素には次の値が含まれます。
voiceId:
string
Voice の一意な識別子(例:'en-US-1')
language:
string
Voice の言語コード(例:'en-US')
注意事項注意事項への直接リンク
- API トークンは、コンストラクターオプションまたは環境変数(CLOUDFLARE_API_TOKEN と CLOUDFLARE_ACCOUNT_ID)で指定できます
- Cloudflare Workers AI は、低レイテンシーのエッジコンピューティング向けに最適化されています
- この Provider は Text-to-Speech(TTS)機能だけをサポートし、Speech-to-Text(STT)はサポートしません
- このサービスは、ほかの Cloudflare Workers 製品と適切に統合できます
- 本番環境で使用する場合は、Cloudflare アカウントに適切な Workers AI サブスクリプションがあることを確認してください
- 一部の Provider と比べると Voice オプションは限定的ですが、エッジで優れたパフォーマンスを発揮します
関連 Provider関連 Providerへの直接リンク
Text-to-Speech に加えて Speech-to-Text 機能も必要な場合は、次の Provider の使用を検討してください。