Azure Speech(音声認識・音声合成)とテキスト分析の使い方を、未経験からまとめて解説します。これらは自分でモデルを学習させなくても、Foundry Tools(完成済みのAI機能)として、ポータルやコードからすぐ使えます。AI-901シラバスの「テキスト分析を含むアプリを構築する」「Azure Speechで音声アプリを構築する」に対応します。

Foundry Tools(完成済みのAI機能)とは
Foundry Toolsは、テキスト分析・音声・画像などすでに学習済みのAI機能を、アプリに“足せる道具”として提供するものです。コードなし(ポータル)でも、SDK(コード)でも使えます。生成AIモデルが「自分で文章を作る」のに対し、これらは「決まったタスク(分析・変換)をこなす」のが得意です。
テキスト分析(Azure AI Language)
文章を扱うAIはAzure AI Languageが担当します。代表的な手法は次の4つ(ドメイン1の復習)。

- キーワード抽出:主要な語句を取り出す
- エンティティ検出:人名・地名・組織などを見つけて分類
- センチメント分析:肯定的・否定的を判定
- 要約:長い文章の要点をまとめる
たとえば問い合わせメールを自動で「要約+感情判定」するアプリは、これらを組み合わせて作れます。
音声(Azure AI Speech)
音声はAzure AI Speechが担当します。主な機能は3つです。

- 音声認識(Speech to Text):音声を文字に変換。例:会議の文字起こし、音声入力。
- 音声合成(Text to Speech):文字を自然な(ニューラル)音声で読み上げ。例:読み上げ、音声案内。
- 音声翻訳(Speech Translation):話した言葉を別の言語にリアルタイム翻訳。
使い方:コードなしでも、コードでも
- コードなし:FoundryのポータルやSpeech Studioで、画面から試せます。
- コードで:アプリに組み込むときはSDK(テキスト=Language、音声=Speech SDK)やREST APIを使います。
AI-901では「どのタスクに、どのツール(Language/Speech)を使うか」を見分けられればOKです。
コードで見る(読めればOK)
AI-901は選択式の試験で、コードを自分で書く必要はありません。ただし「どのパッケージ・どのクラスを使うか」を読んで分かることは問われます。ここだけ押さえましょう。
① 音声(Azure AI Speech) パッケージは azure-cognitiveservices-speech。音声→文字(STT)は SpeechRecognizer、文字→音声(TTS)は SpeechSynthesizer。名前で向きが逆なので取り違えに注意です。
import azure.cognitiveservices.speech as speechsdk
speech_config = speechsdk.SpeechConfig(subscription="キー", region="japaneast")
# 音声 → 文字(STT):マイクなどの音声を認識する
recognizer = speechsdk.SpeechRecognizer(speech_config=speech_config)
result = recognizer.recognize_once()
print(result.text) # 認識した文字が入る
# 文字 → 音声(TTS):文章を自然な声で読み上げる
speech_config.speech_synthesis_voice_name = "ja-JP-NanamiNeural" # 声(ニューラルボイス)を指定
synthesizer = speechsdk.SpeechSynthesizer(speech_config=speech_config)
synthesizer.speak_text_async("こんにちは").get() # 音声合成(TTS)で再生
SpeechRecognizer:音声を文字にする(STT)。SpeechSynthesizer+speak_text_async():文字を音声にする(TTS)。声はspeech_synthesis_voice_nameで指定します。
② テキスト分析(Azure AI Language) 決まった構造(言語コード+信頼度、肯定/否定など)を安定して得たいときは、専用の azure-ai-textanalytics を使います(一般の生成モデルは表現がぶれます)。認証は AzureKeyCredential。
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient
client = TextAnalyticsClient(
endpoint="エンドポイント",
credential=AzureKeyCredential("キー"), # キーで認証
)
client.analyze_sentiment(["この製品は最高です"]) # 肯定 / 中立 / 否定 を判定
client.detect_language(["Bonjour"]) # ISO言語コード+信頼度スコアを返す
analyze_sentiment():肯定/中立/否定のセンチメント分析。detect_language():言語のISOコードと信頼度を返す。- 使い分け:決まった構造が欲しい→
azure-ai-textanalytics/自由な文章生成→一般モデル(openaiのresponses.create)。
SpeechRecognizer(音→文字)と SpeechSynthesizer(文字→音)は逆。画像生成や音声には azure-ai-textanalytics は使いません(これはテキスト専用)。確認クイズ
Q1. 会議の録音を自動で文字起こししたい。どの機能?
Q2. 文章を自然な音声で読み上げたい。どの機能?
Q3. 商品レビューが「満足」か「不満」かを判定したい。どのテキスト分析手法?
Q4. テキスト分析や音声などの「完成済みAI機能」をアプリに足せる仕組みの呼び方は?
よくある質問(FAQ)
Q. 音声認識と音声合成の違いは?
A. 音声認識=音→文字(文字起こし)、音声合成=文字→音(読み上げ)。向きが逆です。
Q. テキスト分析と音声は、どのサービスですか?
A. テキスト分析はAzure AI Language、音声はAzure AI Speechです。どちらもFoundry Toolsとして使えます。
Q. コードを書かずに試せますか?
A. はい。ポータルやSpeech Studioから、コードなしで試せます。アプリに組み込むときにSDKを使います。
まとめ
- テキスト分析=Azure AI Language(キーワード抽出・エンティティ検出・センチメント分析・要約)
- 音声=Azure AI Speech(音声認識=音→文字/音声合成=文字→音/音声翻訳)
- どちらも完成済みのFoundry Tools。コードなしでもSDKでも使える
この記事はAI-901の学習範囲の一部です。どの順番で・何時間くらい勉強すればよいかは、AI-901の勉強方法・独学ロードマップで全体像を解説しています。迷ったらここから確認するのがおすすめです。
- ➡ 前の記事:Foundryで単一エージェントを作る
- ➡ つぎは「画像の理解と画像生成」(準備中)
- ➡ AI-901対策トップ / 試験概要・受験ガイド
※本記事はMicrosoft公式ドキュメント(Azure AI Language/Azure AI Speech)に基づき、エンジニアKが作成しています。仕様は更新されるため、最新は Microsoft公式 をご確認ください。


