Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 19 additions & 15 deletions docs/src/content/docs/ja/extensions/ai-sdk.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@ import { Aside, Steps, Code } from '@astrojs/starlight/components';
import aiSdkSetupExample from '../../../../../../examples/docs/extensions/ai-sdk-setup.ts?raw';

<Aside type="caution">
このアダプターはまだ beta
です。一部のモデルプロバイダー、特に小規模なものでは問題が発生する場合があります。問題は
[GitHub issues](https://github.com/openai/openai-agents-js/issues)
から報告してください。迅速に修正します
このアダプターはまだベータ版です。特に小規模なモデル
プロバイダーでは問題が発生する場合があります。問題があれば [GitHub
Issues](https://github.com/openai/openai-agents-js/issues)
から報告してください。迅速に 対応します
</Aside>

標準で Agents SDK は Responses API または Chat Completions API を通じて OpenAI モデルと動作します。ただし、他のモデルを使いたい場合は、[Vercel の AI SDK](https://sdk.vercel.ai/) がこのアダプター経由で Agents SDK に組み込める多数の対応モデルを提供します
Agents SDKは標準で Responses API または Chat Completions API を通じてOpenAIのモデルと連携します。ただし、別のモデルを使いたい場合は、[Vercel の AI SDK](https://sdk.vercel.ai/) が提供する多数の対応モデルをこのアダプター経由で Agents SDKに組み込めます

## セットアップ

Expand All @@ -25,13 +25,13 @@ import aiSdkSetupExample from '../../../../../../examples/docs/extensions/ai-sdk
npm install @openai/agents-extensions
```

2. [Vercel の AI SDK](https://sdk.vercel.ai/docs/models/overview) から目的のモデルパッケージを選び、インストールします:
2. [Vercel の AI SDK](https://sdk.vercel.ai/docs/models/overview) から目的のモデルパッケージを選んでインストールします:

```bash
npm install @ai-sdk/openai@"^1.0.0"
```

3. アダプターとモデルをインポートして、エージェントに接続します:
3. アダプターとモデルをインポートしてエージェントに接続します:

```typescript
import { openai } from '@ai-sdk/openai';
Expand All @@ -47,18 +47,22 @@ import aiSdkSetupExample from '../../../../../../examples/docs/extensions/ai-sdk
</Steps>

<Aside type="caution">
Vercel の AI SDK は最近 v2 に移行しましたが、 openai agent extensions はまだ
v2 と互換性がありません。 そのため Vercel の AI SDK は v1
バージョンをインストールする必要があります
Vercel の AI SDK は最近 v2 に移行しましたが、openai agent extensions はまだ v2
に対応していません。 そのため Vercel の AI SDK は v1
をインストールする必要があります
</Aside>

## 例

<Code lang="typescript" code={aiSdkSetupExample} title="AI SDK セットアップ" />
<Code
lang="typescript"
code={aiSdkSetupExample}
title="AI SDK のセットアップ"
/>

## プロバイダーのメタデータの受け渡し
## プロバイダー メタデータの受け渡し

メッセージにプロバイダー固有のオプションを添えて送信する必要がある場合は、`providerMetadata` を通して渡します。値は基盤の AI SDK モデルにそのまま転送されます。たとえば、Agents SDK で次の `providerData` は
メッセージと一緒にプロバイダー固有のオプションを送る必要がある場合は、`providerMetadata` に渡します。値は基盤の AI SDK モデルにそのまま転送されます。例えば、Agents SDKで次の `providerData` は

```ts
providerData: {
Expand All @@ -70,7 +74,7 @@ providerData: {
}
```

AI SDK 連携を使用する場合は
次のようになります

```ts
providerMetadata: {
Expand All @@ -82,4 +86,4 @@ providerMetadata: {
}
```

になります。
AI SDK 連携を使用する場合
53 changes: 25 additions & 28 deletions docs/src/content/docs/ja/extensions/twilio.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,37 +7,39 @@ import { Aside, Steps, Code } from '@astrojs/starlight/components';
import twilioBasicExample from '../../../../../../examples/docs/extensions/twilio-basic.ts?raw';
import twilioServerExample from '../../../../../../examples/realtime-twilio/index.ts?raw';

Twilio は [Media Streams API](https://www.twilio.com/docs/voice/media-streams) を提供しており、電話の通話からの元音声を WebSocket サーバーへ送信します。これは、あなたの [音声エージェントの概要](/openai-agents-js/ja/guides/voice-agents) を Twilio に接続するために利用できます。Twilio から届くイベントを Realtime Session に接続するには、`websocket` モードのデフォルトの Realtime Session トランスポートを使えます。ただし、Web ベースの会話よりも電話では自然とレイテンシが増えるため、適切な音声フォーマットの設定や、割り込みタイミングの調整が必要になります
Twilio は [Media Streams API](https://www.twilio.com/docs/voice/media-streams) を提供しており、電話の通話音声の 元 データを WebSocket サーバーに送信します。このセットアップは、[音声エージェントの概要](/openai-agents-js/ja/guides/voice-agents) を Twilio に接続するために使用できます。Twilio から届くイベントを Realtime Session に接続するには、`websocket` モードの既定の Realtime Session トランスポートを使用できます。ただし、その場合は適切な音声フォーマットの設定や、Web ベースの会話よりも通話では自然とレイテンシが大きくなるため、独自の割り込みタイミングの調整が必要になります

セットアップ体験を向上させるために、割り込み処理や音声転送を含め、Twilio への接続を代わりに処理する専用のトランスポートレイヤーを作成しました
セットアップ体験を改善するために、割り込み処理や音声のフォワーディングも含め、Twilio への接続を処理する専用のトランスポートレイヤーを用意しました

<Aside type="caution">
このアダプターはまだベータ版です。エッジケースの問題やバグに遭遇する可能性があります。
問題は [GitHub issues](https://github.com/openai/openai-agents-js/issues)
から報告してください。迅速に修正します。
このアダプターはまだベータ版です。まれなケースの問題やバグに遭遇する可能性があります。
問題があれば [GitHub
issues](https://github.com/openai/openai-agents-js/issues)
からご報告ください。迅速に修正します。
</Aside>

## セットアップ

<Steps>

1. ** Twilio のアカウントと Twilio の電話番号を用意します **
1. **Twilio アカウントと Twilio の電話番号を用意してください**

2. ** Twilio からのイベントを受け取れる WebSocket サーバーを用意します **
2. **Twilio からのイベントを受け取れる WebSocket サーバーをセットアップします**

ローカルで開発している場合、これはローカルトンネルの設定が必要になり、
これはローカルトンネルの設定が必要になり、[`ngrok`](https://ngrok.io/) や
ローカルで開発している場合、これは [`ngrok`](https://ngrok.io/) や
[Cloudflare Tunnel](https://developers.cloudflare.com/pages/how-to/preview-with-cloudflare-tunnel/)
などを使ってローカルサーバーを Twilio からアクセス可能にします。Twilio への接続には
`TwilioRealtimeTransportLayer` を使えます。
のようなローカルトンネルを設定する必要があり、これは [`ngrok`](https://ngrok.io/) や
[Cloudflare Tunnel](https://developers.cloudflare.com/pages/how-to/preview-with-cloudflare-tunnel/)
のようなローカルトンネルを設定する必要があります。これはローカル サーバーを Twilio からアクセス可能にするためです。Twilio への接続には `TwilioRealtimeTransportLayer`
を使用できます。

3. ** 拡張パッケージをインストールして Twilio アダプターを導入します **
3. **extensions パッケージをインストールして Twilio アダプターを導入します:**

```bash
npm install @openai/agents-extensions
```

4. ** `RealtimeSession` に接続するためのアダプターとモデルをインポートします **
4. **アダプターとモデルをインポートして `RealtimeSession` に接続します:**

<Code
lang="typescript"
Expand All @@ -47,38 +49,33 @@ Twilio は [Media Streams API](https://www.twilio.com/docs/voice/media-streams)
)}
/>

5. ** `RealtimeSession` を Twilio に接続します **
5. **`RealtimeSession` を Twilio に接続します:**

```typescript
session.connect({ apiKey: 'your-openai-api-key' });
```

</Steps>

`RealtimeSession` に期待されるあらゆるイベントや動作は、ツール呼び出し、ガードレールなどを含め、想定どおりに機能します。`RealtimeSession` を音声エージェントで使う方法の詳細は、[音声エージェントの概要](/openai-agents-js/ja/guides/voice-agents) を参照してください。
`RealtimeSession` で期待されるあらゆるイベントや動作は期待どおりに機能します。ツール呼び出し、ガードレールなども含まれます。`RealtimeSession` を音声エージェントと併用する方法の詳細は、[音声エージェントの概要](/openai-agents-js/ja/guides/voice-agents) を参照してください。

## ヒントと考慮事項

1. ** スピードが命です **
1. **スピードが肝心です。**

Twilio から必要なすべてのイベントや音声を受け取るため、WebSocket 接続を参照できるようになったらすぐに
`TwilioRealtimeTransportLayer` インスタンスを作成し、その直後に `session.connect()` を呼び出してください。
Twilio から必要なイベントや音声をすべて受け取るために、WebSocket 接続の参照を取得したらすぐに `TwilioRealtimeTransportLayer` インスタンスを作成し、直ちに `session.connect()` を呼び出してください。

2. ** Twilio の元イベントにアクセスする **
2. **元 の Twilio イベントにアクセスします。**

Twilio が送信する元イベントにアクセスしたい場合は、`RealtimeSession` インスタンスで `transport_event`
をリッスンします。Twilio からのすべてのイベントは `twilio_message` という type と、元イベントデータを含む
`message` プロパティを持ちます。
Twilio が送信している 元 のイベントにアクセスしたい場合は、`RealtimeSession` インスタンスで `transport_event` イベントを監視します。Twilio からのすべてのイベントは `twilio_message` という type を持ち、 元 のイベントデータを含む `message` プロパティがあります。

3. ** デバッグログを確認する **
3. **デバッグログを確認します。**

状況をより詳しく知りたい問題に遭遇することがあります。環境変数 `DEBUG=openai-agents*` を使うと、
Agents SDK からのすべてのデバッグログが表示されます。あるいは、Twilio アダプターだけのデバッグログを有効にするには
`DEBUG=openai-agents:extensions:twilio*` を使用できます。
何が起こっているかを詳しく知りたいときがあります。環境変数 `DEBUG=openai-agents*` を使うと、Agents SDK からのすべてのデバッグログが表示されます。あるいは、`DEBUG=openai-agents:extensions:twilio*` を使って Twilio アダプターのデバッグログだけを有効にできます。

## 完全なサーバー例
## 完全なサーバーの例

以下は、Twilio からのリクエストを受け取り、`RealtimeSession` にフォワードするWebSocket サーバーの完全な end-to-end の例です
以下は、Twilio からのリクエストを受け取り、それを `RealtimeSession` にフォワードする WebSocket サーバーのエンドツーエンドの完全な例です

<Code
lang="typescript"
Expand Down
Loading