Register and share your invite link to earn from video plays and referrals.

cv usk
@cv_usk
AI / Software Research Notes AI Agent, LLMOps, MLOps, Software Architecture 投稿は個人の意見です。
Joined May 2026
282 Following    431 Followers
# Claude Agent SDKの便利だけど知られていない機能 🌍 エージェントの実行コスト、ちゃんと把握できていますか?詳細なトラッキングで可視化しましょう! Claude Agent SDKは、クエリごとにトークン使用量とコストの詳細な内訳を提供します。 📌 タイトル:詳細なコスト・使用量トラッキング 🔗 URL: 🧩 概要 `ResultMessage` には `total_cost_usd`(推定コスト)、`usage`(トークン内訳)、`num_turns`(ターン数)が含まれており、成功・エラーを問わずすべての結果で取得可能です。さらに `model_usage`(Python)/ `modelUsage`(TypeScript)を使えば、モデルごとのコスト・トークン内訳も確認できます。並列ツール実行時は同一メッセージIDで重複するため、IDベースの重複排除が正確なカウントに必要です。 🛠 使い方 ```python # Python - クエリの総コストを取得 from claude_agent_sdk import query, ResultMessage async for message in query(prompt="プロジェクトを要約してください"): if isinstance(message, ResultMessage): print(f"総コスト: ${ or 0}") # モデルごとの内訳 if message.model_usage: for model, usage in message.model_usage.items(): print(f" {model}: ${usage['costUSD']:.4f}") print(f" 入力トークン: {usage['inputTokens']}") print(f" キャッシュ読取: {usage['cacheReadInputTokens']}") ``` ```typescript // TypeScript - 複数クエリのコストを累積 import { query } from "@anthropic-ai/claude-agent-sdk"; let totalSpend = 0; for (const prompt of prompts) { for await (const message of query({ prompt })) { if (message.type === "result") { totalSpend += // モデルごとの内訳 for (const [model, usage] of Object.entries(message.modelUsage)) { console.log(`${model}: $${usage.costUSD.toFixed(4)}`); } } } } console.log(`合計: $${totalSpend.toFixed(4)}`); ``` 🏗 本番システムへの組み込み方 ・`total_cost_usd` を監視システムに送信して、コスト傾向をリアルタイムで可視化します ・`model_usage` でモデル別コストを分析し、サブエージェントのコスト配分を最適化します ・`resume` で同一セッションを再開した呼び出しの結果には、そのセッションの過去の利用分も含まれます(Claude Code v2.1.277 以降)。この場合は最新の結果を読み、合算すると二重計上になります。セッションを共有しない独立した呼び出しはアプリケーション側で合算ロジックを実装します ・エラー時もコストは発生するため、失敗した `ResultMessage` からも必ずコストを記録します 💡 ユースケース 💰 マルチテナント環境でユーザーごとの利用コストをレポートする 📊 モデル別のコスト内訳を分析して、最適なモデル構成を見つける 🔍 キャッシュトークン(`cache_read_input_tokens`)の割合を監視して、プロンプトキャッシュの効果を測定する ⚠️ 注意点 ・`total_cost_usd` はクライアント側の概算値であり、実際の請求額とは異なる場合があります。正確な請求情報は Usage and Cost API を利用してください ・並列ツール呼び出し時は同一IDのメッセージが重複するため、IDで重複排除しないとトークン数が膨らみます ・`ENABLE_PROMPT_CACHING_1H` を設定すると1時間TTLのキャッシュが有効になりますが、書き込みコストが高くなります ✨ コストの可視化なくしてコスト最適化なし。まずはトラッキングを組み込んで、エージェントの「お財布事情」を把握しましょう! #ClaudeAgentSDK# #AIAgent#
Show more