登録して招待リンクを共有すると、動画再生報酬と紹介報酬を獲得できます。

検索結果 OpenAI。
OpenAI。 コミュニティ
1つのキーワードが1つのコミュニティです。
コミュニティ作成
アカウント
見つかりません
OpenAI。 を含む検索結果
# OpenAI Agent SDKの便利で実践的な使い方 🌍 長大なコンテキストも安定運用へ。ModelSettings の高度な設定とリトライ戦略で、本番環境でも安心してエージェントを動かしましょう。 モデルの挙動を細かく制御する ModelSettings と、API エラーに自動対応する ModelRetrySettings を組み合わせることで、プロダクションレベルの堅牢なエージェントを構築できます。 📌 タイトル:高度なModelSettings / リトライ 🔗 URL: 🧩 概要 ModelSettings は Agent のモデル呼び出し時のパラメータを一括制御するクラスです。`truncation="auto"` でコンテキスト溢れを自動処理し、`context_management` で 200k トークン閾値のコンパクション(要約圧縮)を設定し、`prompt_cache_retention="24h"` でキャッシュを長時間保持してコストを削減できます。さらに `ModelRetrySettings` で 429/503 などの一時的エラーに対する指数バックオフリトライを宣言的に設定でき、`provider_suggested()` ポリシーでリプレイ安全性も確保します。 🛠 使い方 `Agent`, `ModelSettings`, `ModelRetrySettings` を `agents` からインポートし、`retry_policies` も合わせてインポートします。`Agent` の `model_settings` に `ModelSettings` を渡し、`truncation="auto"`、`context_management` に `[{"type": "compaction", "compact_threshold": 200000}]`(リスト形式)を指定、`prompt_cache_retention="24h"` でキャッシュ保持を設定します。`retry` には `ModelRetrySettings` を使い、`max_retries=4`、`backoff` に `initial_delay=0.5`、`max_delay=5.0`、`multiplier=2.0`、`jitter=True` を設定します。`policy` には `retry_policies.any()` で `provider_suggested()`、`retry_after()`、`network_error()`、`http_status([429, 503])` を組み合わせます。 🏗 実践的な使い方 **コンテキスト溢れへの防御的設定** 長い会話や大量のツール出力でコンテキストが溢れると、API がエラーを返します。`truncation="auto"` を設定すると、古い会話アイテムを自動的に落として処理を続行できます。 `Agent` の `model_settings` に `ModelSettings(truncation="auto", context_management=[{"type": "compaction", "compact_threshold": 200000}])` を設定します。 **コスト最適化のためのキャッシュ保持** 同じプロンプトプレフィックスを繰り返し使うワークフローでは、`prompt_cache_retention` を設定することでキャッシュヒット率を上げ、コストとレイテンシを削減できます。 `Agent` に `ModelSettings(prompt_cache_retention="24h")` を設定した `batch_agent` を作成し、`for doc in documents` ループで `await f"分析対象:\n{doc}")` を繰り返し呼び出します。 **本番向けリトライ戦略** `provider_suggested()` を最初のポリシーに置くことで、プロバイダが「リトライ不可」と判断したリクエスト(abort エラーやストリーミング出力開始後など)を誤ってリトライすることを防ぎます。 `ModelRetrySettings` で `max_retries=3`、`backoff` に `initial_delay=1.0`、`max_delay=10.0`、`multiplier=2.0`、`jitter=True` を設定します。`policy` には `retry_policies.any()` で `provider_suggested()`(常に最初に配置)、`retry_after()`、`http_status([429, 500, 502, 503])` を組み合わせます。 💡 ユースケース 📚 大量ドキュメント分析で `truncation="auto"` + `context_management` を設定し、コンテキスト溢れを自動回避 💰 バッチ処理で `prompt_cache_retention="24h"` を設定し、同一プレフィックスのキャッシュヒットでコスト削減 🔄 429/503 エラーに `ModelRetrySettings` の指数バックオフで自動リトライし、一時的な API 障害を乗り越える 🛡 `provider_suggested()` を最優先ポリシーに置き、リプレイ不安全なリクエストの誤リトライを防止 ⚠️ 注意点 - `truncation="auto"` は古いメッセージを暗黙的に落とすため、重要な初期コンテキストが失われる可能性があります。重要情報は instructions に含めるか、最新メッセージとして再送してください。 - `context_management` のコンパクションは API レベルで行われ、`OpenAIResponsesCompactionSession` とは異なるメカニズムです。両方を同時に使う場合は挙動の違いを理解しておきましょう。 - `provider_suggested()` は `previous_response_id` や `conversation_id` を使うステートフルな呼び出しで特に重要です。汎用ポリシーだけでは安全性が不十分な場合があります。 ✨ ModelSettings のきめ細やかな設定とリトライ戦略を組み合わせれば、本番環境でも安定して動作するエージェントを実現できます。まずは `truncation` と `retry` から始めてみましょう! #OpenAIAgentSDK# #AIAgent#
もっと見る
# OpenAI Agent SDKの便利だけど知られていない機能 🌍 ハンドオフ先のエージェントに、不要なツール呼び出し履歴まで渡していませんか? input_filterとhandoff_filtersを使えば、ハンドオフ時の入力を整理し、受信側エージェントを関連コンテキストに集中させることができます。 📌 タイトル:handoff の input_filter と handoff_filters 🔗 URL: 🧩 概要 `handoff()` の `input_filter` パラメータに関数を指定すると、ハンドオフ時に渡される入力データを変換できます。`HandoffInputData`(`input_history` / `pre_handoff_items` / `new_items` / `input_items` / `run_context`)を受け取り、加工した `HandoffInputData` を返す関数を定義します。SDK組み込みの `handoff_filters.remove_all_tools` を使えば、会話履歴から構造化されたツール項目を全て除去できます。これにより、受信側エージェントが関連するコンテキストだけに集中でき、より的確な応答が可能になります。 🛠 使い方 ```python from agents import Agent, handoff, HandoffInputData from agents.extensions import handoff_filters # 組み込みフィルタ:ツール呼び出し履歴を除去 specialist = Agent(name="Specialist", instructions="専門的な回答を行います") handoff_to_specialist = handoff( agent=specialist, input_filter=handoff_filters.remove_all_tools, ) # カスタムフィルタ:直近N件のメッセージのみ渡す def keep_recent_messages(data: HandoffInputData) -> HandoffInputData: recent = data.input_history[-5:] # 直近5件のみ # clone() なら run_context などの他フィールドを保ったまま差し替えられます return data.clone(input_history=recent) handoff_to_specialist = handoff( agent=specialist, input_filter=keep_recent_messages, ) coordinator = Agent( name="Coordinator", handoffs=[handoff_to_specialist], ) ``` 🏗 本番システムへの組み込み方 ・`remove_all_tools` を使って、専門エージェントに不要なツール実行履歴を渡さない ・カスタムフィルタで機密情報を含むメッセージを除外してからハンドオフする ・コンテキスト量を制限することで、受信側エージェントのトークン消費を削減する ・フィルタの組み合わせで、エージェントごとに最適な入力を設計する 💡 ユースケース 🧹 ツール呼び出し履歴のクリーンアップで専門エージェントの精度向上 🔒 機密データを含む会話履歴のフィルタリング 📏 長い会話のコンテキストを要約・圧縮してハンドオフ 🎯 エージェントの専門領域に関連するメッセージだけを選択的に渡す ⚠️ 注意点 フィルタで必要な情報まで除去すると、受信側エージェントが文脈を失い適切に応答できなくなります。特に `remove_all_tools` は、ツールの結果が後続の会話に重要な場合は注意が必要です。なお `remove_all_tools` が取り除くのは構造化されたツール項目だけで、通常のメッセージやネスト履歴の要約にコピー済みの引数・結果は残るため、それらを消すには独自の input_filter が必要です。また、サーバー管理の会話(`conversation_id` / `previous_response_id` など)ではハンドオフの input_filter は利用できません。フィルタの適用結果をログで確認し、必要な情報が保持されているか検証しましょう。 ✨ input_filterで、各エージェントに最適なコンテキストだけを渡す洗練されたハンドオフを実現しましょう。 #OpenAIAgentSDK# #AIAgent#
もっと見る
OpenAI、日本からの投資10兆円でFPGAゲームボーイ互換機を開発し200ドルで発売 書き込み可能なカートリッジが1本付きます。
# OpenAI Agent SDKの便利で実践的な使い方 🌍 トレースの送信先を自由にカスタマイズしましょう。OpenAI バックエンドと並行して Langfuse や Datadog に送ったり、完全に置き換えたり -- 既存の観測基盤にシームレスに統合できます。 カスタムプロセッサで、トレースデータの送信先・加工・フィルタリングを完全にコントロールできます。 📌 タイトル:Tracing -- Custom processors / Ecosystem 🔗 URL: 🧩 概要 OpenAI Agent SDK のトレーシングは、カスタムプロセッサを追加・置換することで柔軟に拡張できます。`add_trace_processor()` で OpenAI バックエンドと並行して独自の処理を追加し、`set_trace_processors()` で送信先を Langfuse・Datadog・MLflow・Arize・Braintrust などに完全置換できます。OpenAI 以外のモデルを使用する場合でも、`set_tracing_export_api_key()` で無料のトレース可視化を利用できます。 🛠 使い方 `agents` から `add_trace_processor` と `TracingProcessor` をインポートします。`TracingProcessor` を継承した `MyProcessor` クラスを定義し、`on_trace_start`、`on_trace_end`、`on_span_start`、`on_span_end`、`shutdown` の各メソッドを実装します。` や `trace.duration_ms`、` などの情報にアクセスできます。`add_trace_processor(MyProcessor())` で登録すると、OpenAI バックエンドと並行してカスタム処理が実行されます。 🏗 実践的な使い方 **add_trace_processor() で OpenAI と並行して外部送信** OpenAI の Traces ダッシュボードはそのまま使いつつ、自社の観測基盤にもデータを送るパターンです。 `TracingProcessor` を継承して `DatadogProcessor` を作成します。`on_trace_start` で `dd_client.start_span(operation_name="agent.trace", resource= を呼び出し、`on_trace_end` で `dd_client.finish_span(metadata={"duration_ms": trace.duration_ms})` で完了を記録します。`on_span_start` では `operation_name=f"agent.{span.type}"` でスパンを開始し、`shutdown` で `dd_client.flush()` を呼びます。`add_trace_processor(DatadogProcessor(dd_client))` で登録すると、OpenAI と並行して Datadog にもトレースが送信されます。 **set_trace_processors() で送信先を完全置換** OpenAI にトレースを送らず、Langfuse や MLflow だけに送る場合はプロセッサを置き換えます。 `agents` から `set_trace_processors` をインポートし、送信先を完全に置換します。`set_trace_processors([LangfuseTracingProcessor()])` で Langfuse に、`[MLflowTracingProcessor()]` で MLflow に、`[ArizeTracingProcessor()]` で Arize に、`[BraintrustTracingProcessor()]` で Braintrust にそれぞれ切り替えられます。OpenAI バックエンドを含む既存のプロセッサはすべて置き換わります。 **set_tracing_export_api_key() で非 OpenAI モデルのトレースを無料で可視化** OpenAI 以外のモデル(Gemini、Claude 等)を使っている場合でも、トレース機能を無料で利用できます。 `agents` から `set_tracing_export_api_key` をインポートし、`set_tracing_export_api_key("your-tracing-export-key")` を呼び出します。OpenAI 以外のモデル(Gemini、Claude 等)を使っている場合でも、この設定でトレース機能を無料で利用できます。 **複数プロセッサの組み合わせ** 本番環境では、複数の観測ツールにトレースを送るのが一般的です。 `set_trace_processors` にリストで複数のプロセッサを渡します。`LangfuseTracingProcessor()` で詳細な LLM 分析、`DatadogProcessor(dd_client)` でインフラ監視との統合、`CustomAuditProcessor()` で社内監査ログを同時に実現できます。 💡 ユースケース 📡 add_trace_processor() で OpenAI ダッシュボードを維持しつつ Datadog にもトレースを並行送信 🔀 set_trace_processors() で Langfuse/MLflow/Arize/Braintrust に送信先を完全切り替え 🆓 set_tracing_export_api_key() で非 OpenAI モデル(Gemini、Claude)のトレースを無料で可視化 🔧 複数プロセッサ(Langfuse + Datadog + 監査ログ)を組み合わせた本番観測パイプラインの構築 ⚠️ 注意点 - `set_trace_processors()` は既存のプロセッサを**すべて置換**します。OpenAI バックエンドも含めて消えるので、残したい場合は `add_trace_processor()` を使ってください。 - カスタムプロセッサの `shutdown()` メソッドは必ず実装し、バッファに残ったデータをフラッシュしてください。 - 複数プロセッサを使う場合、各プロセッサの処理時間がトレース送信のオーバーヘッドになります。非同期送信を検討してください。 ✨ カスタムプロセッサを使えば、トレースデータを既存の観測スタックにそのまま流し込めます。まずは add で並行送信を試し、安定したら set で送信先を最適化していきましょう! #OpenAIAgentSDK# #AIAgent#
もっと見る
OpenAI、サイバー特化モデル「GPT-6 Cyber」を発表! 脆弱性の発見や修正内容の検証を支援するモデル。 Mozilla、Ciscoなどのセキュリティチームが既に活用中。 まずは、攻撃側の視点からセキュリティ検証を行うプログラム「Daybreak Red」の一部顧客向けに展開しています
もっと見る
OpenAIは11月5日、責任あるAIインフラ整備の新基準を示すブログ記事を公開し、データセンターを受け入れる地域への支援策を発表した →OpenAIがデータセンターを「コンピュート・キャンパス」に改称、電力費用の全額負担など新基準を発表
もっと見る
OpenAIのAI司令塔「dots」、驚異の実力 企画作業の全自動化で検証
OpenAIのアルトマン氏、RAM発言を釈明 「PCに好きなだけ搭載してほしい」 先週は大量搭載を「ひどい」と批判しました。
# OpenAI Agent SDKの便利だけど知られていない機能 🌍 トレースデータをOpenAI以外の観測基盤にも送りたいと思ったことはありませんか? カスタムトレースプロセッサを使えば、W&B、Arize、DataDogなど好みのプラットフォームにトレースを送信できます。 📌 タイトル:カスタムトレースプロセッサ 🔗 URL: 🧩 概要 `add_trace_processor()` を使うと、デフォルトのトレースプロセッサに加えて独自のプロセッサを追加できます。一方、`set_trace_processors()` を使うとデフォルトのプロセッサを完全に置き換えることができます。これにより、Weights & Biases、Arize、DataDog、独自のログ基盤など、任意のバックエンドにトレースデータを送信するカスタム連携が実現できます。 🛠 使い方 ```python from agents.tracing import ( add_trace_processor, set_trace_processors, TracingProcessor, ) # カスタムプロセッサを定義 class DataDogProcessor(TracingProcessor): def on_trace_start(self, trace): dd_tracer.start_span( def on_trace_end(self, trace): dd_tracer.finish_span() def on_span_start(self, span): dd_tracer.start_child_span( def on_span_end(self, span): dd_tracer.finish_child_span() # shutdown と force_flush も抽象メソッドなので実装が必要 def shutdown(self): dd_tracer.shutdown() def force_flush(self): dd_tracer.flush() # デフォルトに追加(OpenAIとDataDog両方に送信) add_trace_processor(DataDogProcessor()) # または、デフォルトを置き換え(DataDogのみに送信) set_trace_processors([DataDogProcessor()]) ``` 🏗 本番システムへの組み込み方 ・`add_trace_processor()` で既存のOpenAIトレースを維持しつつ、社内の観測基盤にも並行送信する ・障害調査用に独自のログストレージにトレースを保存するプロセッサを追加する ・環境変数でプロセッサの切り替えを制御し、開発/本番で送信先を変える ・プロセッサ内でのエラーが本体処理に影響しないよう、例外ハンドリングを適切に行う 💡 ユースケース 📊 Weights & Biasesでエージェント実行のメトリクスを可視化 🔍 Arize AIでLLM出力の品質モニタリング 📈 DataDogでエージェントのパフォーマンスダッシュボードを構築 🗄 社内データレイクへのトレースデータのアーカイブ ⚠️ 注意点 `set_trace_processors()` を使うとデフォルトのOpenAIトレースプロセッサが無効になります。OpenAIダッシュボードでのトレース確認も必要な場合は `add_trace_processor()` を使いましょう。カスタムプロセッサのパフォーマンスがエージェント全体の速度に影響する可能性があるため、軽量な実装を心がけてください。 ✨ カスタムトレースプロセッサで、既存の観測基盤とシームレスに統合しましょう。 #OpenAIAgentSDK# #AIAgent#
もっと見る
# OpenAI Agent SDKの便利で実践的な使い方 🌍 エージェントの「中で何が起きているか」を可視化しましょう。組み込みトレーシングで LLM 呼び出し・ツール実行・ハンドオフ・ガードレールの全フローを追跡できます。 トレーシングはデフォルトで有効。Traces ダッシュボードでエージェントの動作を視覚的に確認し、デバッグと品質改善を加速します。 📌 タイトル:Tracing 🔗 URL: 🧩 概要 OpenAI Agent SDK の組み込みトレーシングは、エージェント実行の全ステップ(LLM 呼び出し、ツール実行、ハンドオフ、ガードレール評価)を自動的に記録します。デフォルトで有効になっており、OpenAI の Traces ダッシュボードでフローを視覚的に確認できます。`with trace("name")` で関連する複数の実行をグループ化し、`flush_traces()` でワーカー環境でのトレース送信を確実にし、`RunConfig(trace_include_sensitive_data=False)` や環境変数でプライバシーを制御できます。 🛠 使い方 `agents` から `Agent`, `Runner`, `trace` をインポートします。`Agent` を作成して ` "AIの最新トレンドは?")` で実行するだけで、トレーシングはデフォルトで自動的に有効になり、LLM 呼び出しやツール実行が記録されます。 🏗 実践的な使い方 **with trace() で関連する実行をグループ化** 複数のエージェント実行をひとつのトレースにまとめて、ワークフロー全体を俯瞰できるようにします。 `agents` から `trace` をインポートし、`with trace("Joke workflow"):` ブロック内で複数の ` 呼び出しを実行します。ジョーク生成、評価、スコアが7未満なら改善という一連のフローが、ひとつのトレースにグループ化されてダッシュボードで俯瞰できるようになります。 **flush_traces() でワーカー環境のトレース送信を確実に** Celery/RQ/FastAPI のバックグラウンドワーカーでは、プロセス終了前にトレースを送信する必要があります。 `agents` から `flush_traces` をインポートします。Celery タスク内では ` message))` の後に `flush_traces()` を呼び出してトレースを送信します。FastAPI では `@app.on_event("shutdown")` フックで `flush_traces()` を呼び出し、プロセス終了前のトレース送信を保証します。 **プライバシー制御で機密データを保護** ZDR(Zero Data Retention)環境や個人情報を扱う場合のトレース制御パターンです。 ` に `run_config=RunConfig(trace_include_sensitive_data=False)` を渡すと(既定値は `True`)、LLM の入出力や関数呼び出しのデータがトレースに含まれなくなります。既定値は環境変数 `OPENAI_AGENTS_TRACE_INCLUDE_SENSITIVE_DATA` でも切り替えられます。トレーシング自体を完全に無効化するには、環境変数 `OPENAI_AGENTS_DISABLE_TRACING=1` を設定するか、`RunConfig(tracing_disabled=True)` を指定します。 💡 ユースケース 📊 デフォルト有効のトレーシングで、LLM/ツール/ハンドオフ/ガードレールのフローを Traces ダッシュボードで可視化 🔗 with trace("Joke workflow") で複数のエージェント実行をグループ化し、ワークフロー全体を俯瞰 🔄 Celery/RQ/FastAPI ワーカーで flush_traces() を呼び出し、プロセス終了前のトレース送信を保証 🔒 trace_include_sensitive_data=False で医療・金融データのプライバシーを保護 ⚠️ 注意点 - トレーシングはデフォルトで有効のため、意図せず機密データがトレースに含まれる可能性があります。本番環境では `trace_include_sensitive_data` の設定を確認してください。 - `flush_traces()` はブロッキング処理のため、リクエストのクリティカルパスには入れず、シャットダウンフックやタスク終了時に呼び出してください。 - トレースデータは OpenAI に送信されます。コンプライアンス要件がある場合は `OPENAI_AGENTS_DISABLE_TRACING=1` で無効化するか、カスタムプロセッサ(次セクション参照)で送信先を変更してください。 ✨ 組み込みトレーシングは「設定ゼロで動く」のが最大の強みです。まずはそのままダッシュボードを確認し、ワークフローのグループ化やプライバシー設定を必要に応じて追加していきましょう! #OpenAIAgentSDK# #AIAgent#
もっと見る