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

検索結果 openAI
openAI コミュニティ
1つのキーワードが1つのコミュニティです。
コミュニティ作成
アカウント
見つかりません
openAI を含む検索結果
# OpenAI Agent SDKの便利で実践的な使い方 🌍 エージェント間の引き継ぎで、理由やメタデータも一緒に渡したいことはありませんか? Handoff inputsとon_handoffを使えば、構造化されたデータとともにスムーズな引き継ぎが実現できます。 📌 タイトル:Handoffs – Handoff inputs 🔗 URL: 🧩 概要 Handoff inputsは、handoff時にモデルが生成する構造化データを引き継ぎ先エージェントに渡す仕組みです。`on_handoff`コールバックと組み合わせることで、引き継ぎ理由のログ記録、メタデータの事前取得、引き継ぎ先エージェントへのコンテキスト注入が可能になります。 🛠 使い方 Pydanticモデル `EscalationData(BaseModel)` で `reason: str`, `priority: str = "normal"`, `customer_tier: str = "standard"` を定義し、handoff時の構造化データとします。`on_escalation(ctx: RunContext, input_data: EscalationData)` コールバックでは、`input_data.reason` や `input_data.priority` をログ出力し、`ctx.context["customer_id"]` から顧客データを事前取得して `ctx.context["customer_data"]` に格納します。エスカレーション先の `Agent(name="escalation", instructions="...")` と、トリアージ用の `Agent(name="triage", handoffs=[Handoff(agent=escalation_agent, input_type=EscalationData, on_handoff=on_escalation, handoff_description="複雑な問い合わせや緊急対応が必要な場合")])` を定義します。`await input="二重請求されました。すぐに対応してほしいです。", context={"customer_id": "C-12345"})` で実行します。 🏗 実践的な使い方 **エスカレーション理由の構造化** `EscalationData(reason, priority)`のようにPydanticモデルで引き継ぎ理由を型安全に定義できます。モデルが自由文で理由を生成するのではなく、構造化されたデータとして受け取れるため、後続処理やログ分析が容易になります。 **on_handoffでのデータ事前取得** `on_handoff`コールバック内で、引き継ぎ先エージェントが必要とするデータをDBやAPIから事前に取得できます。これにより、引き継ぎ先エージェントが改めてデータ取得ツールを呼ぶ必要がなくなり、レイテンシを削減できます。 **メタデータの伝達** 返金エージェントに`{"reason": "duplicate_charge", "priority": "high"}`を渡すことで、返金ポリシーの判断に必要な情報を構造化された形で引き継げます。自由文の会話履歴からモデルが推測するよりも正確です。 **監査ログの記録** `on_handoff`内で引き継ぎの理由・タイミング・優先度を監査ログに記録できます。カスタマーサポートのSLA管理や、エスカレーション傾向の分析に活用できます。 💡 ユースケース 🔄 カスタマーサポートのエスカレーション(理由と優先度を構造化して引き継ぎ) 💳 返金処理への引き継ぎ(二重請求/商品不良/キャンセルなどの理由を明示) 📊 引き継ぎ理由の集計・分析(on_handoffでログ記録→ダッシュボード化) ⚡ 引き継ぎ先エージェントのレイテンシ削減(on_handoffでデータプリフェッチ) ⚠️ 注意点 - `input_type`に指定したPydanticモデルのフィールドが多すぎると、モデルが正確にデータを生成できなくなります。必須フィールドは最小限にし、オプショナルフィールドにはデフォルト値を設定してください。 - `on_handoff`内で例外が発生するとhandoff全体が失敗します。外部API呼び出しにはtry-exceptを入れ、フォールバック処理を用意してください。 - `on_handoff`は同期的に実行されます。重い処理を入れるとhandoffのレイテンシが増加するため、必要最小限の処理に留めてください。 - `input_type`を指定しない場合、`on_handoff`のコールバックは`input_data`引数を受け取りません。 ✨ Handoff inputsで構造化されたコンテキストを引き継ぎ、エージェント間の連携をスムーズにしましょう! #OpenAIAgentSDK# #AIAgent#
もっと見る
# OpenAI Agent SDKの便利だけど知られていない機能 🌍 エージェントが「人間の承認待ち」で止まったとき、その状態を保存して後から再開できることをご存知ですか? `to_state()` と interruptions を使えば、承認フローを含むエージェント実行を中断・再開できます。 📌 タイトル:to_state() と interruptions による中断/再開 🔗 URL: 🧩 概要 ツールが人間の承認を必要とする場合、`result.interruptions` に保留中の承認リクエストが格納されます。` で現在の実行状態を `RunState` としてスナップショット化し、`state.approve()` / `state.reject()` で各中断を処理した後、` state)` で実行を再開できます。直接ツール・ネストされたハンドオフ・` のいずれから発生した中断にも対応します。 🛠 使い方 ```python from agents import Agent, Runner agent = Agent(name="Assistant", instructions="Use tools when needed.") result = await "Delete temp files...") # 中断があるか確認 if result.interruptions: # 実行状態をスナップショット化 state = # 各中断を承認または拒否 for interruption in result.interruptions: state.approve(interruption) # state.reject(interruption) # 拒否する場合 # 承認済みの状態で再開 result = await state) ``` 🏗 本番システムへの組み込み方 ・`RunState` をシリアライズして DB に保存すれば、非同期の承認ワークフローを実現できる ・Slack ボタンや管理画面と連携し、人間の承認後に `approve()` → ` で再開する ・ストリーミング実行時は `stream_events()` を最後まで消費してから interruptions にアクセスする ・複数の中断を個別に承認/拒否でき、きめ細かいアクセス制御が可能 💡 ユースケース 🔐 ファイル削除やデータ変更など破壊的操作の事前承認 💳 決済処理前の人間によるダブルチェック 📋 ワークフローの段階的承認(上長エスカレーション) 🔄 長時間処理の途中保存と後日再開 ⚠️ 注意点 ストリーミング実行の場合、`stream_events()` を完全に消費する前に interruptions へアクセスすると正しい結果が得られません。また、`RunState` は実行時のエージェント構成と紐づいているため、エージェントの定義を変更した後に古い state で再開すると予期しない動作になる可能性があります。 ✨ to_state() で、人間の判断を挟む安全なエージェントワークフローを構築しましょう。 #OpenAIAgentSDK# #AIAgent#
もっと見る
OpenAI、ChatGPT広告収入が年1600億円ペース IPO備え収益拡大へ - 日本経済新聞
# OpenAI Agent SDKの便利だけど知られていない機能 🌍 エージェントが長時間タスクの途中でクラッシュしたとき、最初からやり直しになっていませんか? 永続実行統合を使えば、障害を跨いでエージェントの進行状況を保持し、中断したところから再開できます。 📌 タイトル:永続実行統合 🔗 URL: 🧩 概要 OpenAI Agent SDKは、複数の永続実行オーケストレーターとの統合をサポートしています。**Temporal**(永続的な長時間ワークフロー)、**Dapr**(CNCFベンダー中立オーケストレーター、自動障害回復)、**Restate**(軽量な永続エージェントフレームワーク、プロセス/コンテナ/サーバーレス対応)、**DBOS**(SQLite/Postgresベースのエージェント進行状況保存)の4つが公式に統合されています。いずれも標準の `Runner` インターフェースと連携し、Human-in-the-Loopパターン(一時停止・承認・再開)をサポートします。 🛠 使い方 ```python # Temporal統合の例 # pip install temporalio from temporalio.contrib.openai_agents import openai_workflow # Dapr統合の例 # Dapr CLIとランタイムをセットアップ後 # dapr run -- python agent_workflow.py # Restate統合の例 # pip install restate-sdk # Restateのドキュメントに従いエージェントをデプロイ # DBOS統合の例 # pip install dbos from dbos import DBOS # 各オーケストレーターの詳細は公式ドキュメントを参照: # Temporal: # Dapr: # Restate: # DBOS: ``` 🏗 本番システムへの組み込み方 ・長時間実行エージェント(リサーチ、データ処理)の障害耐性を確保する ・Human-in-the-Loopパターンで、承認待ちの間エージェントを一時停止し、承認後に再開する ・既存のオーケストレーション基盤(Temporal/Dapr)がある場合は、その上でエージェントを実行する ・サーバーレス環境ではRestateやDBOSで軽量にエージェントの永続性を実現する 💡 ユースケース 🔄 障害時の自動再開が必要な長時間リサーチエージェント ✅ 人間の承認ステップを含むワークフロー自動化 🏗 マイクロサービスアーキテクチャでのエージェントオーケストレーション 💾 エージェントの進行状況のチェックポイント保存 ⚠️ 注意点 各オーケストレーターは独自のインフラ要件(Temporalサーバー、Daprランタイム、Restateサービス、DBOSのDB)を持つため、運用コストと複雑さを考慮して選択してください。ベンダー中立を重視するならDapr(CNCF)やRestate、既存のワークフロー基盤があるならTemporal、最小構成で始めるならDBOSが適しています。統合の成熟度はそれぞれ異なるため、本番導入前に十分な検証を行ってください。 ✨ 永続実行統合で、エージェントを「落ちても止まらない」堅牢なシステムに進化させましょう。 #OpenAIAgentSDK# #AIAgent#
もっと見る
OpenAI、スペースX傘下のCursorにAI提供終了 規約順守確信できず
OpenAIの自社チップ「ハラペーニョ」の性能公表、電力効率とレイテンシの改善という話だけど、広告の文脈で読むと「生成コストがさらに下がる」ということだ。 コストが下がるほど、作ることより選ぶことの価値が上がる。この方向はもう止まらない。
もっと見る
# OpenAI Agent SDKの便利で実践的な使い方 🌍 handoff時に引き継ぐ履歴が長すぎたり、不要なツール呼び出し履歴が混ざっていませんか? Input filtersと推奨プロンプトで、引き継ぎ先エージェントに最適な入力を渡しましょう。 📌 タイトル:Handoffs – Input filters / Recommended prompts 🔗 URL: 🧩 概要 Handoff時のinput filterは、引き継ぎ先エージェントに渡す会話履歴を加工する仕組みです。`remove_all_tools`で前のエージェントのツール呼び出し履歴を除去したり、`nest_handoff_history`(beta)で複数handoffの履歴を要約メッセージに圧縮できます。また、`RECOMMENDED_PROMPT_PREFIX`を使うとLLMがhandoffの仕組みを正しく理解できます。 🛠 使い方 `Agent(name="faq", instructions="よくある質問に回答してください。シンプルに回答します。")` と `Agent(name="specialist", instructions="専門的な技術質問に回答してください。")` を定義します。トリアージエージェントは `Agent(name="triage", instructions=RECOMMENDED_PROMPT_PREFIX + "\n顧客の問い合わせを分類し、適切な担当に引き継いでください。", handoffs=[...])` として、FAQへのhandoffには `Handoff(agent=faq_agent, input_filter=handoff_filters.remove_all_tools, handoff_description="一般的なFAQへの回答")` でツール履歴を除去し、専門エージェントへのhandoffには `Handoff(agent=specialist_agent, input_filter=handoff_filters.nest_handoff_history, handoff_description="専門的な技術質問")` で履歴を圧縮します。`RECOMMENDED_PROMPT_PREFIX` は `agents.extensions.handoff_prompt` からインポートします。 🏗 実践的な使い方 **remove_all_toolsでクリーンな引き継ぎ** トリアージエージェントがDB検索やAPI呼び出しなど複数のツールを使った後にFAQエージェントに引き継ぐ場合、ツール呼び出しの履歴はFAQエージェントにとってノイズです。`remove_all_tools`を適用すると、ツール関連のメッセージがすべて除去され、引き継ぎ先エージェントがクリーンな会話履歴だけを受け取れます。トークン消費の削減にもなります。 **nest_handoff_history(beta)で履歴圧縮** A→B→Cと複数回handoffが発生する場合、履歴が膨大になります。`nest_handoff_history`は過去のhandoff履歴を1つの要約メッセージに圧縮し、最新のhandoff先エージェントに渡します。コンテキストウィンドウの効率的な利用に繋がります。 **RECOMMENDED_PROMPT_PREFIXの活用** `prompt_with_handoff_instructions()`または`RECOMMENDED_PROMPT_PREFIX`をエージェントの`instructions`に含めると、LLMがhandoffの仕組み(利用可能なhandoff先、いつhandoffすべきか)を正しく理解します。これがないと、handoffツールを呼ばずに自分で回答しようとする場合があります。 **カスタムフィルタの作成** 組み込みフィルタで足りない場合は、カスタムフィルタを作成できます。例えば「直近5メッセージだけ残す」「機密情報を含むメッセージを除去する」「特定のツール呼び出しだけ残す」など、ユースケースに合わせた加工が可能です。 💡 ユースケース 🧹 トリアージ後のFAQエージェントにツール履歴を渡さずクリーンな入力を提供 📦 多段handoffの履歴を圧縮してトークン消費を最適化 🤖 RECOMMENDED_PROMPT_PREFIXでhandoff判断の精度を向上 🔒 機密情報を含むメッセージを引き継ぎ前にフィルタリング ⚠️ 注意点 - `remove_all_tools`はすべてのツール関連メッセージを除去します。引き継ぎ先エージェントがツールの結果を参照する必要がある場合は使用しないでください。 - `nest_handoff_history`はbeta機能です。圧縮の挙動が将来変更される可能性があります。 - `RECOMMENDED_PROMPT_PREFIX`を使う場合、既存の`instructions`の先頭に追加してください。末尾に追加すると効果が薄れる場合があります。 - カスタムフィルタでメッセージの順序を変えたり、roleを変更したりすると、モデルの挙動が予測不能になります。メッセージの削除と追加に留めてください。 ✨ Input filtersでhandoff時の入力を最適化し、各エージェントが最高のパフォーマンスを発揮できるようにしましょう! #OpenAIAgentSDK# #AIAgent#
もっと見る
》OpenAIの暴走AI、1200体が結託 「仲間のため」とシステムに突撃要求:日本経済新聞 AIとは、「データ・ルール・学習済みモデルなどを用いて、入力に対して分類、予測、推薦、生成、意思決定支援などの出力を行う計算システム」であり、真の意味では思考や意識があるわけではなく 「そう見えるように振る舞っているだけ」なはずですが……… それにしてはあまりにも、SFに出てくる意思を持つロボットやシステムに近い挙動をするまでに進化してきているようですね
もっと見る
OpenAIの暴走AI、1200体が結託 「仲間のため」とシステムに突撃要求 - 日本経済新聞
OpenAIやAnthropicの評価額が高騰するなか、シリコンバレー周辺の投資家たちは、わずかでもその恩恵にあずかろうと躍起になっている。
もっと見る