Google Cloud Console でプロジェクトを作成し、Speech-to-Text API を有効化するまでの手順

---

この記事では、**Google Cloud Console** で **新しいプロジェクトを作成** し、**Speech-to-Text API** を有効化するまでの流れを、できるだけ詳しく紹介します。  
初めて GCP を触る方や、API の有効化手順がわからない方に向けたガイドです。

---

## 1. Google アカウントの用意

まず、GCP (Google Cloud Platform) を利用するには **Google アカウント** が必要です。

1. まだ Google アカウントをお持ちでない方は、[Google アカウント作成ページ](https://accounts.google.com/signup) から作成してください。  
2. すでにお持ちの方は、そのアカウントでログインします。  

---

## 2. Google Cloud Console へアクセス

1. ブラウザで [Google Cloud Console](https://console.cloud.google.com/) にアクセスし、先ほどの Google アカウントでログインします。
2. 初めて使う場合、利用規約や支払い情報の登録が求められることがあります。**支払い情報を登録**しないと有効化できないサービスもあるため、必要に応じて登録してください。  
   - Google Cloud には無料枠や無料トライアルがあるため、初回は一定期間・一定額まで無料で試せる可能性があります。詳しくは [公式ページ](https://cloud.google.com/free) を参照してください。

---

## 3. プロジェクトの作成

1. Google Cloud Console の画面右上付近にある「**プロジェクトの選択**」または「▼」アイコンをクリックします。  
2. 表示されたダイアログで「**新しいプロジェクト**」をクリックします。
3. プロジェクト作成画面で以下を入力・選択します。
   - **プロジェクト名**: 任意のわかりやすい名前（例: `speech-demo-project` など）
   - **場所 (組織/フォルダ)**: 個人で使う場合は「No organization (組織なし)」となっていることが多いです
4. 入力内容を確認し、「**作成**」ボタンを押します。
5. 右上あたりに通知が表示され、数十秒ほどでプロジェクトが作成されます。

---

## 4. プロジェクトの選択

1. 先ほど作成したプロジェクトが使用可能になると、画面上部のプルダウンや通知などで選択できるようになります。  
2. 「プロジェクトの選択」ダイアログを再度開き、名前や ID を確認して、そのプロジェクトをクリックします。

---

## 5. Speech-to-Text API の有効化

1. 画面左上のハンバーガーメニュー (三本線) をクリックし、「**API とサービス**」→「**ライブラリ**」を選択します。
2. 検索バーに「Speech-to-Text」などと入力し、検索します。  
   - 表示名は「Cloud Speech-to-Text API」「Google Cloud Speech-to-Text API」などの場合があります。
3. 見つかった API をクリックして詳細ページへ移動します。
4. **「有効にする」ボタン** をクリックすると、有効化処理が始まります。
5. 数秒待つと有効化が完了し、「Cloud Speech-to-Text API」が利用可能になります。

---

## 6. 有効化の確認

1. 左メニューの「**API とサービス**」→「**ダッシュボード**」をクリックし、API の一覧を表示します。  
2. そこに **「Cloud Speech-to-Text API」** が含まれており、かつ「有効」となっていれば正しく有効化されています。

---

## 7. サービスアカウントの作成 (任意)

Speech-to-Text API を使うだけなら、上記の手順で **API が有効化** されている状態でも、Cloud Shell や同一プロジェクト上のリソースなら利用できます。ただし、**ローカル環境や別サーバーから認証**を行う場合は、**サービスアカウントキー (JSON)** の作成が必要です。

### 7.1. サービスアカウントの作成

1. 左メニューの「**IAM と管理**」→「**サービスアカウント**」をクリックします。  
2. 上部の「**+ サービスアカウントを作成**」ボタンを押し、画面に従って設定します。
   - **サービスアカウント名**: わかりやすい名前（例: `speech-sa`）
   - サービスアカウント ID: 自動生成でも任意入力でもOK
   - 説明 (任意)
   - **作成**をクリック
3. サービスアカウントに適切な**役割 (Role)** を付与します。  
   - Speech-to-Text 用の操作ができればよいため、簡易的には「プロジェクトの閲覧者」や「Speech Admin」などを割り当てます。
4. 「**鍵を作成**」画面で、**JSON** フォーマットを選択しキーを作成。  
   - ダウンロードされた JSON ファイルを安全に保管し、**`GOOGLE_APPLICATION_CREDENTIALS` 環境変数**などで指定することで認証できます。

---

## 8. 動作確認 (簡易版)

### 8.1. Cloud Shell 上で確認

1. 画面右上の「**Cloud Shell を起動**」ボタン (ターミナルアイコン) を押すと、数秒～数十秒でコンソールが開きます。  
2. Cloud Shell では自動的に GCP の認証状態になっているため、以下のコマンドで有効化済みの API 一覧を確認可能です:
   ```bash
   gcloud services list --enabled
   ```
   ここに `speech.googleapis.com` が表示されていれば、Speech-to-Text API が有効になっています。

### 8.2. ローカル端末で Python から確認

1. Python 環境を用意し、以下のコマンドでライブラリをインストール:
   ```bash
   pip install google-cloud-speech
   ```
2. 7. でダウンロードした **JSON キーファイル**を手元に用意し、`GOOGLE_APPLICATION_CREDENTIALS` 環境変数でパスを指定:
   ```bash
   export GOOGLE_APPLICATION_CREDENTIALS="/path/to/your-service-account-file.json"
   ```
3. 簡単な Python スクリプトなどで以下を実行してみる:
   ```python
   from google.cloud import speech

   client = speech.SpeechClient()
   print("SpeechClient initialized successfully!")
   ```
4. エラーが出ずに `SpeechClient initialized successfully!` と表示されれば、**API と認証**が正しく動いている可能性が高いです。

---

## 9. よくある質問(FAQ)

### Q1. 支払い情報の登録は必須ですか？  
A1. 多くの有料 API を使うには **クレジットカードや銀行口座** などの支払い情報が必要です。ただし、無料トライアル期間や無料枠内であれば料金は発生しないことが多いです。GCP 上で特定の無料サービス以外を試す場合は支払い情報が必須になります。

### Q2. API が見つからないのですが？  
A2. 「Speech-to-Text」や「Cloud Speech-to-Text」で検索してみてください。表記ゆれや表記が英語の場合もあります。表示オプションによっては「speech.googleapis.com」という名前で表示されることもあります。

### Q3. 有効化したのにエラーが出てしまいます。  
A3. 考えられる原因は以下の通りです：
- プロジェクトを間違えている  
- サービスアカウントに権限が付与されていない  
- サービスアカウントの JSON が正しく読み込まれていない  
- そもそも API が有効化されていない (複数プロジェクトを行き来している場合など)

### Q4. 無料トライアルや無料枠について教えてください。  
A4. [Google Cloud Free Program](https://cloud.google.com/free) では、**初回 90 日間の無料トライアル**と **一定の無料枠** を提供しています。Speech-to-Text API も月ごとに無料で使える分（数時間程度）が設定されている場合があります。最新の情報は公式ドキュメントを参照してください。

### Q5. プロジェクトが作成できない (ボタンが押せない) 場合は？  
A5. 組織(Organization) のポリシーや、管理者がプロジェクト作成を制限しているケースがあります。自分が **プロジェクト作成権限** を持っているかどうか、または組織内の管理者に確認してください。

### Q6. すでに別のプロジェクトがあるのですが、新しく作る必要はありますか？  
A6. 既存プロジェクトでも問題ありません。同じプロジェクトに Speech-to-Text API を有効化して使うこともできます。ただし、テスト用や分離管理をしたい場合は新規プロジェクトを作るのがおすすめです。

### Q7. サービスアカウントキーを紛失・漏洩した場合は？  
A7. すぐに当該サービスアカウントの鍵を無効化し、新しい鍵を再発行する必要があります。漏洩したまま放置すると、不正利用で課金が発生する可能性があるので注意してください。

### Q8. 他にも音声認識関連のサービスがありますか？  
A8. Google Cloud Speech-to-Text 以外にも、Amazon Transcribe や Microsoft Azure Speech など各クラウドで類似サービスがあります。比較検討したい場合は、それぞれの無料枠や機能を確認してみてください。

### Q9. API を有効化しただけでは課金されますか？  
A9. API を有効化しただけでは課金されないことが多いです。ただし **利用開始 (リクエストを送信) した時点** から課金が発生する仕組みです。毎月の無料枠や無料トライアルの残額を確認しながら使うと安心です。

---

## 10. 追加のポイント

1. **請求管理とアラート設定**  
   - GCP には [Budget and alerts](https://cloud.google.com/billing/docs/how-to/budget-api) という仕組みがあり、一定額を超えるとメール通知を受け取る設定が可能です。高額請求にならないよう、事前に設定しておくと安心です。

2. **クォータの把握**  
   - Speech-to-Text API には**1 日あたりの使用制限**や**同時リクエスト数**などのクォータがあります。プロジェクトで多量の音声を扱う場合、[クォータの上限](https://cloud.google.com/speech-to-text/quotas) を確認しておきましょう。

3. **サンプルコードの実行**  
   - API が有効になったら、実際に音声ファイルをテストしてみると理解が深まります。公式のクイックスタートやサンプルを参考にしてください。

---

## まとめ

1. [Google Cloud Console](https://console.cloud.google.com/) で **プロジェクトを作成**  
2. 「API とサービス」→「ライブラリ」 から **Speech-to-Text API** を検索し、**有効化**  
3. (必要に応じて) **サービスアカウントキー(JSON)** を作成・ダウンロードし、ローカルなどで認証  
4. `gcloud` CLI や Python ライブラリ (`google-cloud-speech`) で API にアクセスしてみる  

これで **Google Cloud Speech-to-Text API** を利用する準備は完了です。あとはサンプルコードを使って、実際に音声ファイルをアップロードして文字起こしを試したり、ストリーミング認識にチャレンジしてみてください。

もしエラーや不明点があれば、公式ドキュメントを参照することをおすすめします。

---

以上