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

検索結果 DataAgents
DataAgents コミュニティ
1つのキーワードが1つのコミュニティです。
コミュニティ作成
アカウント
見つかりません
DataAgents を含む検索結果
データエージェントが毎回スキーマを手探りでクエリし続ける問題、実は「証拠に基づいて自己進化するオントロジー」を1枚挟むだけで大きく改善できるようです。 タイトル: EvoOntology: A Self-Evolving Ontology Layer for Data Agents URL: 📝 概要 表・ファイル・DBなど異種データを扱うエージェント向けに、MCPサーバーとして実装した「自己進化するオントロジー層」EvoOntologyを提案しています。 ❗ 解決する課題 エージェントはデータ構造への事前知識がなく探索的クエリを繰り返す必要がありました。静的なセマンティックレイヤーは手動保守が必要で、実行履歴から適応できないという限界もありました。 ⚙️ 方法論 実際にプローブクエリで検証済みの候補だけをオントロジーに採用し、その後もエージェントの実行軌跡から介入候補を抽出して、元の状態とペアで検証した上で改善が見込める場合のみ更新する仕組みです。 📊 実験結果 DDR-Benchで6バックボーン平均+17.8ポイント改善、BIRDでも平均+8.6ポイント改善し先行研究を上回りました。しかも対話ターン数は14.6→8.4、トークン数も約20%削減されています。 🔬 ユースケース 静的セマンティックレイヤーがモデルによってはむしろ性能を下げる場面でも、EvoOntologyは一貫して改善しており、実運用のデータエージェント基盤に組み込みやすい設計です。 #データエージェント# #LLM#
もっと見る
# OpenAI Agent SDKの便利で実践的な使い方 🌍 ツールの入出力にもガードレールを設定して、セキュリティを強化しましょう! ツール引数のチェックや出力のマスキングで、機密情報の漏洩や不正な操作を防止できます。 📌 タイトル:Guardrails – Tool guardrails 🔗 URL: 🧩 概要 Tool guardrailsは、ツールの実行前(引数チェック)と実行後(出力チェック)にガードレールを設定する仕組みです。APIキーの混入防止、機密データのマスキング、特定の操作のブロックなど、ツールレベルでのセキュリティ制御を実現します。マネージャーパターンやHandoff、委任を使う複雑なワークフローでも、個別のツールに対してきめ細かいチェックを適用できます。 🛠 使い方 `agents`から`Agent`, `function_tool`をインポートします。`@function_tool`デコレータでツール関数`search_api(query: str) -> str`を定義し、`Agent(name="SecureAgent", tools=[search_api], tool_guardrails=[check_tool_args])`のように`tool_guardrails`にチェック関数を設定します。 🏗 実践的な使い方 **APIキーの混入をブロック(reject_content)** ツール引数に`sk-`で始まるAPIキーが含まれていないかチェックし、検出時にツール実行をブロックします。 `re`と`GuardrailFunctionOutput`をインポートし、`reject_api_keys(context, agent, tool_call)`関数で` str(tool_call.arguments))`によりAPIキーの混入を検出します。`tripwire_triggered=has_api_key`で検出時にブロックし、`Agent(name="SecureAgent", tools=[search_api, call_external_service], tool_guardrails=[reject_api_keys])`として設定します。 **ツール出力の機密データマスキング** ツール実行後の出力に含まれる機密情報(メールアドレス、電話番号など)を自動的にマスキングします。 `mask_sensitive_output(context, agent, tool_call, tool_output)`関数でツール出力に対して`re.sub(r'[\w.+-]+@[\w-]+\.[\w.]+', '[MASKED_EMAIL]', str(tool_output))`でメールアドレスを、`re.sub(r'\d{3}-\d{4}-\d{4}', '[MASKED_PHONE]', masked)`で電話番号をマスキングします。`GuardrailFunctionOutput(output_info={"masked": True}, tripwire_triggered=False, modified_output=masked)`で加工済み出力を返し、`Agent(name="DataAgent", tools=[query_customer_db], tool_guardrails=[mask_sensitive_output])`として設定します。 **複雑なワークフローでの個別ツールチェック** マネージャーパターンやHandoff、委任を組み合わせた複雑なワークフローでも、特定のツールに対してきめ細かいガードレールを適用できます。 `check_delete_permission(context, agent, tool_call)`関数で` == "delete_record"`の場合に`context.get("user_role", "viewer")`で権限を確認し、`user_role not in ["admin", "editor"]`なら`tripwire_triggered=True`でブロックします。それ以外のツールは`tripwire_triggered=False`でスキップします。`Agent(name="Manager", tools=[query_db, update_record, delete_record], tool_guardrails=[check_delete_permission, reject_api_keys])`のように複数のガードレールを組み合わせて設定できます。 💡 ユースケース 🔑 ツール引数へのAPIキー・シークレット混入防止 🎭 ツール出力からのPII(個人情報)自動マスキング 🚫 権限に基づく特定ツール操作のブロック 🔒 複雑なマルチエージェントワークフローでのセキュリティ制御 ⚠️ 注意点 - ツールガードレールはツールの実行ごとに呼び出されるため、パフォーマンスへの影響を考慮してください - 正規表現によるチェックは完全ではありません。重要なセキュリティ要件には複数の防御層を設けてください - マスキング処理は元のデータ型を変更する可能性があるため、後続の処理に影響がないか確認してください - 複数のツールガードレールを設定した場合、すべてが順に実行されます ✨ ツールガードレールで、エージェントのツール操作をきめ細かく制御し、セキュリティを強化しましょう! #OpenAIAgentSDK# #AIAgent#
もっと見る