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

検索結果 AgentToAgent
AgentToAgent コミュニティ
1つのキーワードが1つのコミュニティです。
コミュニティ作成
アカウント
見つかりません
AgentToAgent を含む検索結果
# Claude Agent SDKの便利だけど知られていない機能 🌍 サブエージェントの会話を中断して、後から続きを再開したい?resume機能で全履歴を保持したまま再開できます! Claude Agent SDKでは、サブエージェントのセッションIDとエージェントIDを使って、完全な会話履歴を保持したまま処理を再開できます。 📌 タイトル:サブエージェントの再開(resume) 🔗 URL: 🧩 概要 サブエージェントが完了すると、Agentツールの結果に `agentId: ` が含まれます。この `agentId` とセッションの `session_id` を保存しておけば、`resume` オプションで同じセッションを再開し、`"Resume agent "` というプロンプトでサブエージェントの続きから処理を開始できます。再開されたサブエージェントは、以前のすべてのツール呼び出し、結果、推論を保持しています。なお、組み込みの `Explore` / `Plan` エージェントはワンショット(1回限り)のため再開できません。 🛠 使い方 ```python # Python - サブエージェントの再開 import re from claude_agent_sdk import query, ClaudeAgentOptions, AgentDefinition, ToolResultBlock AGENTS = { "endpoint-finder": AgentDefinition( description="APIエンドポイントを探索・カタログ化します", prompt="APIエンドポイントを見つけて文書化してください", tools=["Read", "Grep", "Glob"], ) } # 1回目: サブエージェントを実行し、IDを取得 agent_id = None session_id = None async for message in query( prompt="endpoint-finderエージェントでAPIエンドポイントを探索してください", options=ClaudeAgentOptions( allowed_tools=["Read", "Grep", "Glob", "Agent"], agents=AGENTS, ), ): if hasattr(message, "session_id"): session_id = message.session_id for block in getattr(message, "content", None) or []: if isinstance(block, ToolResultBlock): text = str(block.content) if match := "agentId:\s*([\w-]+)", text): agent_id = # 2回目: 同じセッションで再開し、フォローアップ質問 if agent_id and session_id: async for message in query( prompt=f"Resume agent {agent_id} and list the top 3 most complex endpoints", options=ClaudeAgentOptions( allowed_tools=["Read", "Grep", "Glob", "Agent"], agents=AGENTS, resume=session_id, # 同じセッションを再開 ), ): if hasattr(message, "result"): print(message.result) ``` 🏗 本番システムへの組み込み方 ・長時間の分析タスクを分割し、中間結果を確認してからフォローアップを実行するワークフローを構築します ・`session_id` と `agentId` をデータベースに保存して、後から任意のタイミングで再開できるようにします ・カスタムエージェントまたは `general-purpose` エージェントを使用します(Explore/Planは再開不可) ・再開時には同じエージェント定義を `agents` パラメータに渡す必要があります 💡 ユースケース 🔄 大規模コードベースの調査を段階的に行い、各フェーズの結果を確認してから次に進む 💬 サブエージェントの分析結果に対してフォローアップ質問を行う対話型ワークフロー 📊 初回分析後にスコープを絞った詳細分析を追加実行する ⚠️ 注意点 ・再開には同じ `session_id` が必要です。新しい `query()` はデフォルトで新規セッションを開始します ・組み込みの `Explore` / `Plan` エージェントはワンショットのため `agentId` を出力せず、再開できません ・サブエージェントのトランスクリプトは `cleanupPeriodDays`(デフォルト30日)で自動クリーンアップされます ・メイン会話のコンパクション(圧縮)はサブエージェントのトランスクリプトに影響しません ✨ resume機能を使えば、サブエージェントとの「対話」が可能になります。1回限りの使い捨てではなく、継続的な分析パートナーとして活用しましょう! #ClaudeAgentSDK# #AIAgent#
もっと見る
# ADK 2.0の便利だけど知られていない機能 🌍 エージェントが「先週の会話の内容」を覚えていてくれたら、もっと自然なやり取りができると思いませんか? ADK 2.0のメモリ機能は、セッションを超えた長期的な知識をエージェントに提供するための仕組みです。過去の会話や学習した情報を記憶し、必要に応じて呼び出すことができます。 📌 タイトル:メモリ 🔗 URL: 🧩 概要 メモリはStateとは異なり、セッション横断の長期的な知識を管理します。3つのメモリサービス実装が用意されています。InMemoryMemoryServiceは開発・テスト用のインメモリ実装、VertexAiMemoryBankServiceはセマンティック検索ベースの本番向け実装、VertexAiRagMemoryServiceはベクトルベースのRAG実装です。メモリの取得にはPreloadMemory(セッション開始時に自動ロード)とLoadMemory(オンデマンドでロード)の2つのビルトインツールが用意されており、プログラムからはtool_context.search_memory()でアクセスできます。 🛠 使い方 メモリサービスを設定し、エージェントにメモリツールを組み込みます。 ```python from google.adk.memory import InMemoryMemoryService from import PreloadMemory, LoadMemory # 開発用:インメモリ実装 memory_service = InMemoryMemoryService() # エージェントにメモリツールを追加 agent = Agent( name="assistant", tools=[PreloadMemory(), LoadMemory()], ... ) # Runnerにメモリサービスを設定 runner = Runner( agent=agent, memory_service=memory_service, ... ) ``` ツール内からプログラム的にメモリを検索する場合は以下のようにします。 ```python def my_tool(query: str, tool_context: ToolContext) -> str: results = tool_context.search_memory(query="過去の会話") return str(results) ``` 複数のメモリサービスを組み合わせる場合は、カスタムツールを作成して統合できます。 🏗 本番システムへの組み込み方 ・開発時はInMemoryMemoryServiceで素早くプロトタイプし、本番ではVertexAI系に切り替える ・PreloadMemoryで頻繁に必要な情報を自動ロードし、レスポンス品質を向上させる ・メモリに保存するデータの範囲を適切に設計し、不要なデータの蓄積を防ぐ ・カスタムツールで複数のメモリソースを統合し、包括的な知識ベースを構築する 💡 ユースケース 🧠 過去の会話履歴をもとに、ユーザーの好みに合わせた応答を生成 📚 プロジェクトの過去の議論や決定事項を長期記憶として保持 🔍 セマンティック検索で関連する過去のやり取りを自動的に取得 🤝 複数のエージェント間で共有知識ベースとしてメモリを活用 ⚠️ 注意点 InMemoryMemoryServiceはプロセス終了時にデータが失われるため、本番環境では使用しないでください。VertexAI系のサービスはGCPのセットアップが必要です。また、メモリに保存されるデータ量が増えると検索のレイテンシに影響するため、適切なデータ管理戦略を検討してください。 ✨ メモリ機能により、エージェントはセッションを超えた文脈を持つことができます。長期的なユーザー体験の向上に大きく貢献する機能です。 #ADK# #AIAgent#
もっと見る