Skip to content

Commit 7220437

Browse files
docs: update translated document pages (#2466)
1 parent f1d8923 commit 7220437

File tree

6 files changed

+335
-216
lines changed

6 files changed

+335
-216
lines changed

docs/ja/realtime/guide.md

Lines changed: 62 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -4,65 +4,65 @@ search:
44
---
55
# ガイド
66

7-
このガイドでは、OpenAI Agents SDK のリアルタイム機能を用いて音声対応の AI エージェントを構築する方法を詳しく説明します
7+
このガイドでは、OpenAI Agents SDK の realtime 機能を使用して音声対応 AI エージェントを構築する方法を詳しく解説します
88

9-
!!! warning "ベータ機能"
10-
リアルタイム エージェントはベータ版です。実装の改善に伴い、互換性のない変更が発生する可能性があります
9+
!!! warning "Beta 機能"
10+
Realtime エージェントは beta です。実装を改善するにあたり、破壊的変更が入る可能性があります
1111

1212
## 概要
1313

14-
リアルタイム エージェントは、音声とテキストの入力をリアルタイムに処理し、リアルタイム音声で応答する会話フローを可能にします。OpenAI の Realtime API との永続的な接続を維持し、低遅延で自然な音声対話と、割り込みへの柔軟な対応を実現します
14+
Realtime エージェントは会話フローを可能にし、音声およびテキスト入力をリアルタイムに処理して realtime 音声で応答します。OpenAI の Realtime API と永続的な接続を維持し、低レイテンシで自然な音声会話を実現するとともに、割り込みも適切に処理できます
1515

1616
## アーキテクチャ
1717

18-
### 中核コンポーネント
18+
### コアコンポーネント
1919

20-
リアルタイム システムは、次の主要コンポーネントで構成されます
20+
realtime システムは、いくつかの主要コンポーネントで構成されます
2121

22-
- **RealtimeAgent**: instructions、tools、handoffs で構成されたエージェント
22+
- **RealtimeAgent**: instructions、tools、handoffs で構成されたエージェントです
2323
- **RealtimeRunner**: 設定を管理します。`runner.run()` を呼び出してセッションを取得できます。
24-
- **RealtimeSession**: 単一の対話セッション。通常、ユーザーが会話を開始するたびに作成し、会話が完了するまで維持します。
25-
- **RealtimeModel**: 基盤となるモデル インターフェース(通常は OpenAI の WebSocket 実装)
24+
- **RealtimeSession**: 単一の対話セッションです。通常は ユーザー が会話を開始するたびに 1 つ作成し、会話が完了するまで維持します。
25+
- **RealtimeModel**: 基盤となるモデル インターフェース(通常は OpenAI の WebSocket 実装)です。
2626

27-
### セッションの流れ
27+
### セッションフロー
2828

29-
一般的なリアルタイム セッションは次の流れに従います
29+
一般的な realtime セッションは次のフローに従います
3030

31-
1. **RealtimeAgent を作成** し、instructions、tools、handoffs を設定します
32-
2. **RealtimeRunner をセットアップ** し、エージェントと設定オプションを渡します
33-
3. **セッションを開始** します。`await runner.run()` を使用すると RealtimeSession が返されます
34-
4. **音声またはテキスト メッセージを送信** します。`send_audio()` または `send_message()` を使用します
35-
5. **イベントをリッスン** します。セッションをイテレートしてイベント(音声出力、文字起こし、ツール呼び出し、ハンドオフ、エラー)を受け取ります
36-
6. **割り込みに対応** します。ユーザーが発話で割り込むと、現在の音声生成は自動的に停止します
31+
1. instructions、tools、handoffs を指定して **RealtimeAgent(群) を作成** します
32+
2. エージェントと設定オプションで **RealtimeRunner をセットアップ** します
33+
3. `await runner.run()` を使用して **セッションを開始** すると、RealtimeSession が返ります
34+
4. `send_audio()` または `send_message()` を使用して、セッションへ **音声またはテキストメッセージを送信** します
35+
5. セッションを反復して **イベントをリッスン** します。イベントには音声出力、文字起こし、ツール呼び出し、ハンドオフ、エラーが含まれます
36+
6. ユーザー がエージェントに被せて話す **割り込みを処理** します。これにより現在の音声生成が自動的に停止します
3737

38-
セッションは会話履歴を保持し、リアルタイム モデルとの永続接続を管理します
38+
セッションは会話履歴を維持し、realtime モデルとの永続的な接続を管理します
3939

40-
## エージェントの設定
40+
## エージェント設定
4141

42-
RealtimeAgent は、通常の Agent クラスと同様に動作しますが、いくつか重要な違いがあります。完全な API 詳細は[`RealtimeAgent`][agents.realtime.agent.RealtimeAgent] の API リファレンスをご覧ください
42+
RealtimeAgent は通常の Agent クラスと同様に動作しますが、いくつか重要な違いがあります。API の詳細は[`RealtimeAgent`][agents.realtime.agent.RealtimeAgent] の API リファレンスを参照してください
4343

44-
通常のエージェントとの主な違い:
44+
通常の エージェント との主な違い:
4545

46-
- モデルの選択はエージェント レベルではなくセッション レベルで設定します。
47-
- 構造化出力のサポートはありません`outputType` はサポートされません)。
48-
- 音声はエージェントごとに設定できますが、最初のエージェントが発話した後は変更できません
49-
- tools、handoffs、instructions など、その他の機能は同様に動作します
46+
- モデル選択はエージェント レベルではなく、セッション レベルで設定します。
47+
- structured outputs はサポートされません`outputType` はサポートされません)。
48+
- Voice はエージェントごとに設定できますが、最初のエージェントが話した後は変更できません
49+
- tools、handoffs、instructions などのその他の機能は同様に動作します
5050

51-
## セッションの設定
51+
## セッション設定
5252

5353
### モデル設定
5454

55-
セッション設定では、基盤となるリアルタイム モデルの動作を制御できます。モデル名(`gpt-realtime` など)、音声の選択(alloy、echo、fable、onyx、nova、shimmer)、サポートするモダリティ(テキストや音声)を構成できます。音声フォーマットは入力と出力の両方で設定でき、デフォルトは PCM16 です。
55+
セッション設定では、基盤となる realtime モデルの挙動を制御できます。モデル名(`gpt-realtime` など)、voice 選択(alloy、echo、fable、onyx、nova、shimmer)、対応 modality(テキスト および/または 音声)を設定できます。音声フォーマットは入力・出力の両方で設定でき、既定は PCM16 です。
5656

5757
### 音声設定
5858

59-
音声設定では、セッションが音声入力と出力をどのように処理するかを制御します。Whisper などのモデルを使った入力音声の文字起こし、言語設定、ドメイン固有用語の精度向上のための文字起こしプロンプトを設定できます。応答開始/停止の検出設定では、音声活動検知のしきい値、無音時間、検出された音声の前後パディングなどを指定できます
59+
音声設定は、セッションが音声入力と出力をどのように扱うかを制御します。Whisper などのモデルを使用した入力音声の文字起こしを設定し、言語設定を指定し、ドメイン固有の用語の精度を向上させるための文字起こしプロンプトを提供できます。ターン検出設定では、エージェントが応答を開始・停止すべきタイミングを制御し、音声アクティビティ検出の閾値、無音時間、検出された音声の前後のパディングなどのオプションがあります
6060

61-
## ツールと関数
61+
## Tools と Functions
6262

6363
### ツールの追加
6464

65-
通常のエージェントと同様に、リアルタイム エージェントは会話中に実行される 関数ツール をサポートします。
65+
通常の エージェント と同様に、realtime エージェントは会話中に実行される 関数ツール をサポートします。
6666

6767
```python
6868
from agents import function_tool
@@ -90,7 +90,7 @@ agent = RealtimeAgent(
9090

9191
### ハンドオフの作成
9292

93-
ハンドオフにより、特化したエージェント間で会話を引き継ぐことができます
93+
ハンドオフにより、会話を専門 エージェント 間で移管できます
9494

9595
```python
9696
from agents.realtime import realtime_handoff
@@ -119,22 +119,22 @@ main_agent = RealtimeAgent(
119119

120120
## イベント処理
121121

122-
セッションはイベントをストリーミングし、セッション オブジェクトをイテレートしてリッスンできます。イベントには、音声出力チャンク、文字起こし結果、ツール実行の開始と終了、エージェントのハンドオフ、エラーなどが含まれます。特に次のイベントを処理してください
122+
セッションはイベントをストリーミングし、セッション オブジェクトを反復することでリッスンできます。イベントには、音声出力チャンク、文字起こし結果、ツール実行の開始・終了、エージェントのハンドオフ、エラーが含まれます。処理すべき主要イベントは次のとおりです
123123

124-
- **audio**: エージェントの応答からの raw 音声データ
125-
- **audio_end**: エージェントが話し終えた
126-
- **audio_interrupted**: ユーザーがエージェントを割り込んだ
127-
- **tool_start/tool_end**: ツール実行のライフサイクル
124+
- **audio**: エージェント応答の Raw 音声データ
125+
- **audio_end**: エージェントの発話終了
126+
- **audio_interrupted**: ユーザー がエージェントを割り込んだ
127+
- **tool_start/tool_end**: ツール実行ライフサイクル
128128
- **handoff**: エージェントのハンドオフが発生
129129
- **error**: 処理中にエラーが発生
130130

131-
完全なイベントの詳細は[`RealtimeSessionEvent`][agents.realtime.events.RealtimeSessionEvent] を参照してください。
131+
イベントの完全な詳細は[`RealtimeSessionEvent`][agents.realtime.events.RealtimeSessionEvent] を参照してください。
132132

133133
## ガードレール
134134

135-
リアルタイム エージェントでサポートされるのは出力 ガードレール のみです。パフォーマンス問題を避けるため、これらのガードレールは(単語ごとではなく)定期的にデバウンスして実行されます。デフォルトのデバウンス長は 100 文字ですが、設定可能です。
135+
realtime エージェントでは出力ガードレールのみがサポートされます。これらのガードレールはデバウンスされ、リアルタイム生成中のパフォーマンス問題を避けるため、(各単語ごとではなく)定期的に実行されます。既定のデバウンス長は 100 文字ですが、設定可能です。
136136

137-
ガードレールは `RealtimeAgent` に直接アタッチするか、セッションの `run_config` で提供できます。両方のソースからのガードレールは併せて実行されます
137+
ガードレールは `RealtimeAgent` に直接付与するか、セッションの `run_config` 経由で提供できます。両方のソースのガードレールが一緒に実行されます
138138

139139
```python
140140
from agents.guardrail import GuardrailFunctionOutput, OutputGuardrail
@@ -152,19 +152,19 @@ agent = RealtimeAgent(
152152
)
153153
```
154154

155-
ガードレールが発火すると、`guardrail_tripped` イベントが生成され、エージェントの現在の応答を中断できます。デバウンス動作は、安全性とリアルタイム性能要件のバランスを取るのに役立ちます。テキスト エージェントと異なり、リアルタイム エージェントはガードレールが発火しても **Exception** を送出しません
155+
ガードレールがトリガーされると `guardrail_tripped` イベントが生成され、エージェントの現在の応答を割り込めます。デバウンスの挙動は、安全性とリアルタイムのパフォーマンス要件のバランスを取るのに役立ちます。テキスト エージェント と異なり、realtime エージェントではガードレールがトリップしても Exception は **送出されません**
156156

157157
## 音声処理
158158

159-
[`session.send_audio(audio_bytes)`][agents.realtime.session.RealtimeSession.send_audio] を使って音声を送信するか[`session.send_message()`][agents.realtime.session.RealtimeSession.send_message] を使ってテキストを送信します
159+
[`session.send_audio(audio_bytes)`][agents.realtime.session.RealtimeSession.send_audio] を使用して音声をセッションへ送信するか[`session.send_message()`][agents.realtime.session.RealtimeSession.send_message] を使用してテキストを送信します
160160

161-
音声出力については、`audio` イベントをリッスンし、任意の音声ライブラリで再生してください。ユーザーがエージェントを割り込んだ場合にすぐに再生を停止し、キュー済みの音声をクリアするため`audio_interrupted` イベントを必ず監視してください
161+
音声出力については、`audio` イベントをリッスンし、お使いの音声ライブラリで音声データを再生してください。ユーザー がエージェントを割り込んだときに直ちに再生を停止し、キューに溜まった音声をクリアできるよう`audio_interrupted` イベントも必ずリッスンしてください
162162

163163
## SIP 連携
164164

165-
[Realtime Calls API](https://platform.openai.com/docs/guides/realtime-sip) 経由で着信する電話にリアルタイム エージェントを接続できます。SDK は [`OpenAIRealtimeSIPModel`][agents.realtime.openai_realtime.OpenAIRealtimeSIPModel] を提供しており、SIP 上でメディアをネゴシエーションしながら同じエージェント フローを再利用します
165+
[Realtime Calls API](https://platform.openai.com/docs/guides/realtime-sip) 経由で着信する電話に realtime エージェントを紐付けられます。SDK は [`OpenAIRealtimeSIPModel`][agents.realtime.openai_realtime.OpenAIRealtimeSIPModel] を提供しており、SIP でメディアをネゴシエートしつつ同じエージェントフローを再利用します
166166

167-
使用するには、モデル インスタンスを runner に渡し、セッション開始時に SIP の `call_id` を指定します。コール ID は、着信を通知する webhook によって渡されます
167+
使用するには、runner にモデル インスタンスを渡し、セッション開始時に SIP の `call_id` を指定します。call ID は着信を通知する webhook により配信されます
168168

169169
```python
170170
from agents.realtime import RealtimeAgent, RealtimeRunner
@@ -187,19 +187,32 @@ async with await runner.run(
187187
...
188188
```
189189

190-
発信者が電話を切るとSIP セッションは終了し、リアルタイム接続は自動的にクローズされます。完全なテレフォニーの例は[`examples/realtime/twilio_sip`](https://github.com/openai/openai-agents-python/tree/main/examples/realtime/twilio_sip) を参照してください。
190+
発信者が電話を切ると SIP セッションが終了し、realtime 接続は自動的にクローズされます。完全な電話連携の例は[`examples/realtime/twilio_sip`](https://github.com/openai/openai-agents-python/tree/main/examples/realtime/twilio_sip) を参照してください。
191191

192192
## モデルへの直接アクセス
193193

194-
基盤となるモデルにアクセスして、カスタム リスナーを追加したり高度な操作を実行したりできます
194+
基盤となるモデルにアクセスして、カスタム リスナーを追加したり高度な操作を行ったりできます
195195

196196
```python
197197
# Add a custom listener to the model
198198
session.model.add_listener(my_custom_listener)
199199
```
200200

201-
これにより、接続を低レベルに制御する必要がある高度なユースケース向けに[`RealtimeModel`][agents.realtime.model.RealtimeModel] インターフェースへ直接アクセスできます。
201+
これにより、接続に対するより低レベルの制御が必要となる高度なユースケース向けに[`RealtimeModel`][agents.realtime.model.RealtimeModel] インターフェースへ直接アクセスできます。
202202

203-
## コード例
203+
##
204204

205-
完全に動作するコード例は、[examples/realtime ディレクトリ](https://github.com/openai/openai-agents-python/tree/main/examples/realtime) を参照してください。UI コンポーネントの有無それぞれのデモが含まれています。
205+
UI コンポーネントあり・なしのデモを含む、動作する完全な例については、[examples/realtime directory](https://github.com/openai/openai-agents-python/tree/main/examples/realtime) を参照してください。
206+
207+
## Azure OpenAI エンドポイント形式
208+
209+
Azure OpenAI に接続する際は、GA Realtime のエンドポイント形式を使用し、`model_config` の headers で認証情報を渡してください。
210+
211+
```python
212+
model_config = {
213+
"url": "wss://<your-resource>.openai.azure.com/openai/v1/realtime?model=<deployment-name>",
214+
"headers": {"api-key": "<your-azure-api-key>"},
215+
}
216+
```
217+
218+
トークンベースの auth では、`headers``{"authorization": f"Bearer {token}"}` を使用してください。

0 commit comments

Comments
 (0)