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

検索結果 関数ちゃん
関数ちゃん コミュニティ
1つのキーワードが1つのコミュニティです。
コミュニティ作成
アカウント
見つかりません
関数ちゃん を含む検索結果
# ADK 2.0の便利だけど知られていない機能 🌍 エージェントのツール実行が遅いと感じたことはありませんか?並列実行で劇的に高速化できるかもしれません。 ADK 2.0(v1.10.0以降)では、複数のファンクションツールを並列に実行する仕組みが提供されています。async関数の活用、CPU集約処理のオフロード、プロンプト最適化を組み合わせることで、ツール実行のパフォーマンスを大幅に向上させられます。 📌 タイトル:ツールパフォーマンス最適化 🔗 URL: 🧩 概要 ADK 2.0のパフォーマンス最適化は、ファンクションツールの並列実行を中心とした機能です。v1.10.0以降で利用可能で、ツール関数を `async def` で定義することが前提となります。長時間ループ内では `asyncio.sleep(0)` でyieldし、CPU集約的な処理には `ThreadPoolExecutor` を使用します。さらに、プロンプトに「常に関数を並列で呼び出すこと」と指示を加えることで、LLMが積極的に並列呼び出しを行うよう誘導できます。 🛠 使い方 ツール関数は `async def` で定義し、I/O待ちの処理を並列化します。 ```python import asyncio from concurrent.futures import ThreadPoolExecutor async def fetch_data(url: str) -> str: """データを取得する(並列実行対応)""" async with aiohttp.ClientSession() as session: async with session.get(url) as resp: return await resp.text() # CPU集約処理はThreadPoolExecutorにオフロード executor = ThreadPoolExecutor(max_workers=4) async def heavy_computation(data: str) -> str: loop = asyncio.get_event_loop() result = await process_data, data) return result ``` 長時間ループでは `asyncio.sleep(0)` を挟んでイベントループに制御を返します。また、大量データはチャンクに分割して処理します。エージェントのプロンプトにも「always call functions in parallel」と明示し、ツールのdescriptionに並列実行のヒントを含めると効果的です。 🏗 本番システムへの組み込み方 ・すべてのツール関数を `async def` で定義し、同期的なブロッキング呼び出しを排除する ・CPU集約処理は `ThreadPoolExecutor` で別スレッドにオフロードし、イベントループをブロックしない ・大量データ処理はチャンク分割して段階的に処理する ・エージェントのシステムプロンプトに並列呼び出しの指示を含め、ツールのdescriptionにも並列実行可能である旨を記載する 💡 ユースケース 🔍 複数のAPIエンドポイントに同時リクエストして結果を集約する 📊 大量のデータセットをチャンク分割して並列に分析する 🌐 複数言語への翻訳を同時に実行する 📁 複数ファイルの読み込みと前処理を並列化する ⚠️ 注意点 並列実行にはツール関数を `async def` で定義することが必須です。同期関数では並列化の恩恵を受けられません。また、`ThreadPoolExecutor` のワーカー数はリソースに応じて適切に設定し、過剰な並列度によるメモリ枯渇やレートリミット超過に注意してください。プロンプトによる並列呼び出しの誘導はLLMの判断に依存するため、必ず並列化される保証はありません。 ✨ async関数とプロンプト最適化の組み合わせにより、エージェントのツール実行速度を劇的に改善できます。I/O待ちが多いワークフローでは特に効果を発揮します。 #ADK# #AIAgent#
もっと見る
🏗 一行の関数なら書けるAIも、「アプリ一式をゼロから作って」と言われると途端に崩れます。ファイルをまたいだ設計、噛み合うインターフェース、延々と続く不整合のデバッグ——これは個人技ではなく、チーム戦だからです。 そこで本研究は、AIエージェントに本物の開発チームを演じさせます。まず複数のArchitectが互いに異なる設計案(Software Design Sketch)を競って描き、CTO役が構造の妥当さやインターフェースの整合性を0〜8点で採点して最良案を選定。選ばれた設計は、ファイル所有者・公開API・依存関係・非循環性まで機械が検証できる「契約」へと正規化されます。 実装フェーズでは、Developerたちが依存関係の順に沿って自分の担当ファイルだけを、必要最小限の文脈で書いていきます。協調はGitで軽量に。各自がブランチにコミットする際、変更した公開シンボルや影響先を構造化メモに残すので、ファイル本文を共有せずともインターフェースの変更だけが伝播します。仕上げはQA役が依存レイヤーごとにテストを走らせ、失敗を担当者へ差し戻して直させる。まさに人間のチーム開発そのものです。 この CodeTeam: An LLM-Powered Multi-Agent Framework for Repository-Level Code Generation は、本物のpytestで検証するNL2Repo-Benchで平均42.3%のテスト通過率(SFT設定)を達成し、19リポジトリ中15でベースラインのCodeSに勝利しました。構造の良さが、実際に動くコードの正しさへとつながっている点が見どころです。 URL: #CodeGeneration# #AIAgents#
もっと見る
カシオの関数電卓CWシリーズが”生産完了品”になってる。モデルチェンジするのかな。(2023年発売の新しい製品だが大学教員や土地家屋調査士などのプロからの評価がとても低いようだねえ)
もっと見る
AIコーディングツールの指数関数的なコスト増をいかにコントロールしていくかについてのdatabricks記事。(一部引き算して読む感じ) ・AIコーディングツールは生産性を劇的に向上させる ・しかし、それに伴ってコストも指数関数的に増大している ・放置すれば、AIによる恩恵がコストで相殺される ・そのため、最高性能ではなく、コスパに優れた効率性フロンティアの追求が必要になっていく ・具体的な対策の筆頭は、より安価で効率的なモデルへの移行 ・特定のモデルへの依存を防ぐため、メタハーネスを導入して柔軟性を確保する ・また、タスクの難易度に応じて安価なモデルと高性能モデルを動的にルーティングする手法も有効 ・予算管理において、利用上限でアクセスを完全に遮断するのは悪手 ・これは、最も生産性の高い開発者の足を引っ張ってしまうため ・代わりにコストを可視化し、閾値を超えたら安価なモデルへダウンシフトさせる仕組みが望ましい ・さらに、不要なコンテキストを削ってトークン消費を抑えることも大事に ・また、プロンプトキャッシングを活用することで、コストを大幅に削減できる (で、Unity AI Gateway というプロダクトの宣伝になるので、以下は略)
もっと見る
# ADKの便利で実践的な使い方 ⚡ Python関数をそのままツールに、エージェントもツールに、そして長時間タスクもノンブロッキングで実行 — ADKのFunction Toolsは、ツール定義の柔軟性を極限まで高めます。 📌 タイトル:Function Tools — 関数・エージェント・非同期タスクをツール化 🔗 URL: 🧩 概要 ADKのFunction Toolsでは、Python/TypeScriptの関数をそのままエージェントのツールとして利用できます。さらに、AgentToolを使えばエージェント自体をツールとして別のエージェントに提供できます。Long Running Function Toolsは、動画エンコードやバッチ処理のような長時間タスクをブロッキングせずに実行するための仕組みです。 🛠 使い方 基本的な関数ツールの定義とAgentToolの活用例です。 `google.adk`から`Agent`と`AgentTool`をインポートします。シンプルな関数ツールとして`calculate_price`を定義し、`base_price`(float)、`quantity`(int)、`discount_percent`(float、デフォルト0)を受け取り、合計金額を計算してdictで返します。 エージェントのツール化には`AgentTool`を使います。まず`analysis_agent`を`name="data_analyst"`、`tools=[query_database]`で定義し、次に`main_agent`の`tools`リストに`calculate_price`関数と`AgentTool(agent=analysis_agent)`を含めます。これにより、メインエージェントは価格計算関数とデータ分析エージェントの両方をツールとして呼び出せます。 Long Running Function Toolsの使い方です。 `google.adk`から`LongRunningFunctionTool`をインポートします。非同期関数`encode_video`は`video_url`(str)と`format`(str、デフォルト"mp4")を受け取り、`start_encoding_job`でエンコードジョブを開始してジョブIDを返します。この関数を`LongRunningFunctionTool(func=encode_video)`でラップして`video_tool`を作成し、`Agent`の`tools=[video_tool]`に渡すことで、エージェントがブロッキングなしで長時間処理を実行できます。 🏗 実践的な使い方 **AgentToolによるモジュール化**: 複雑な処理を専門エージェントとしてカプセル化し、AgentToolで公開することで、メインエージェントのinstructionをシンプルに保てます。専門エージェントは独自のツールやプロンプトを持てるため、関心の分離が実現します。 `summarizer`(3行要約)と`translator`(英語翻訳)をそれぞれ`Agent`で定義し、メインの`content_manager`エージェントの`tools`リストに`AgentTool(agent=summarizer)`と`AgentTool(agent=translator)`として登録します。これにより、メインエージェントは要約と翻訳の専門エージェントをツールとして呼び出し、コンテンツ管理の依頼を処理できます。 **Long Running Toolsの活用場面**: バッチ処理、外部APIのポーリング待ち、ファイル変換など、完了まで数秒〜数分かかる処理に最適です。エージェントはジョブIDを受け取り、他のタスクを並行して進められます。 **型アノテーションの重要性**: 関数のパラメータ型と戻り値型を明確に定義することで、LLMが正確にツールを呼び出せます。docstringもツールの説明として使われるため、簡潔で明確に書きましょう。 💡 ユースケース 🧮 計算・変換関数のツール化(価格計算、単位変換) 🤖 専門エージェントのAgentTool化による再利用 🎬 動画エンコード・画像処理の非同期実行 📊 バッチデータ処理のノンブロッキング実行 ⚠️ 注意点 - 関数のdocstringがツールの説明になるため、LLMが理解しやすい説明を書いてください。docstringがないとツールの用途が不明確になります。 - AgentToolで呼び出されたエージェントは、親エージェントのコンテキストとは別のセッションで動作します。状態の共有には注意が必要です。 - Long Running Function Toolsは完了通知の仕組みを別途実装する必要があります。ポーリングや Webhook での通知を検討してください。 ✨ Function Toolsを使えば、既存のコード資産をそのままエージェントに統合でき、AgentToolでエージェントの再利用も自在。開発効率を大幅に向上させましょう! #ADK# #AIAgent#
もっと見る
ポール・グレアム:「10億ドルを稼ぐ方法」 ■ 指数関数的成長がもたらす魔法の数学 スタートアップの爆発的な威力を理解するためには、指数関数的成長という数学の魔法を正しく計算してみる必要があります。例えば、資産価値200万ドルの企業が月間93パーセントのペースで成長した場合、10億ドルに達するまでの期間はわずか9.45ヶ月にすぎません。より一般的な月間15パーセントの成長であっても、5年間継続すれば約4384倍という驚異的なスケールに拡大します。初期売上が月1万ドルであっても、5年後には月4400万ドル、年換算で5億ドルを超え、創業者がビリオネアになる道は現実のものとなります。 ■ 成長の持続性を決定する市場の規模 スタートアップがどれほど巨大になり、創業者がどれほど富を得るかを決定するのは、成長率とその持続期間という2つの数字だけです。前者の成長率は顧客が熱狂して友人に勧めたくなる製品を作ることで得られ、後者の持続期間はアプローチする市場の規模によって決まります。不正を一切行わなくても月間15パーセントで成長することは十分に可能であり、それをどこまで続けられるかは単に需要の大きさに依存します。4000倍の需要が存在する巨大な市場であれば4000倍の成長が可能であり、そこには不正を働く余地などどこにもありません。つまり、適切な成長率を維持しながら巨大な市場へアプローチしさえすれば、10億ドルの価値はごく自然に実現されるのです。 ■ アイデアを探すのをやめてプロジェクトを始める 優れた起業アイデアを獲得するための最も逆説的なアプローチは、意識的にアイデアを探すのをやめることです。起業のためにアイデアを探しようとすると保守的になり、一見つまらなそうに見えるものの実は極めて有望なアイデアを自ら排除してしまいます。実際にアップルやフェイスブック、AirBnBなども、創業当初は誰もが失敗すると信じるほど奇妙で愚かなアイデアに見えました。最高の会社は、友人と一緒にただ面白いからという純粋な好奇心で作り始めた個人的なプロジェクトから誕生しています。自分たちがクールだと思うものを作る活動こそが、10年後の未来に誰もが使うようになる巨大な需要を無意識のうちに先取りしているのです。 ■ ユーザーへの深い共感が成功を自動化する 事業を大きく成長させる鍵は、顧客のニーズを深く理解し、彼らが熱狂して友人に伝えたくなる製品を作ることです。若い創業者は、自らと友人が切実に欲しがっているものを開発するという手法を通じて、この深いユーザー理解を確実に達成できます。他者を搾取して富を得る古いビジネスモデルとは異なり、スタートアップの成長モデルは他者に対する徹底的な共感を土台にしています。顧客の生活をいかに劇的に改善できるかという問いに向き合い続ける共感力こそが、急成長を生み出す最大のエンジンです。顧客を幸せにすることに集中し、その満足度を指数関数的に高めていけば、10億ドルもの価値は自動的に生み出されることになります。
もっと見る
#おかしば です🌥️ この後は中継リポーターを懸けた戦い! #タルタル関数 #ハルひなた 人力舎の誇る若手コンビが激突💥 まずはネタです!
もっと見る
# Claude Agent SDKの便利だけど知られていない機能 🌍 @tool デコレータと create_sdk_mcp_server で、独自の関数をエージェントのツールとしてインプロセスで実行できます。 データベースアクセス、外部API呼び出し、ドメイン固有のロジックをエージェントに提供する方法を解説します。 📌 タイトル:インプロセス・カスタムツール (create_sdk_mcp_server / @tool) 🔗 URL: 🧩 概要 カスタムツールは、SDK のインプロセス MCP サーバーを使って独自の関数を Claude から呼び出せるようにする機能です。Python では `@tool` デコレータ、TypeScript では `tool()` ヘルパーでツールを定義し、`create_sdk_mcp_server` でラップして `query()` に渡します。ツールはアプリケーションプロセス内で実行され、別プロセスは不要です。ツール名は `mcp__{server_name}__{tool_name}` の形式になります。`readOnlyHint` アノテーションで並列実行を有効にし、`isError` で復旧可能なエラーをエージェントに伝え、画像(base64)やリソースの返却も可能です。 🛠 使い方 `@tool` デコレータでツールを定義し、`create_sdk_mcp_server` でサーバーにまとめます。 ```python from typing import Any import httpx from claude_agent_sdk import tool, create_sdk_mcp_server, query, ClaudeAgentOptions, ResultMessage @tool( "get_temperature", "Get the current temperature at a location", {"latitude": float, "longitude": float}, ) async def get_temperature(args: dict[str, Any]) -> dict[str, Any]: async with httpx.AsyncClient() as client: response = await client.get( "", params={ "latitude": args["latitude"], "longitude": args["longitude"], "current": "temperature_2m", }, ) data = response.json() return { "content": [ {"type": "text", "text": f"Temperature: {data['current']['temperature_2m']}"} ] } # インプロセスMCPサーバーにラップ weather_server = create_sdk_mcp_server( name="weather", version="1.0.0", tools=[get_temperature], ) # query() に渡して使用 async for message in query( prompt="What's the temperature in Tokyo?", options=ClaudeAgentOptions( mcp_servers={"weather": weather_server}, allowed_tools=["mcp__weather__get_temperature"], ), ): if isinstance(message, ResultMessage) and message.subtype == "success": print(message.result) ``` 🏗 本番システムへの組み込み方 ・エラーハンドリングでは例外をスローせず `{"is_error": True}` を返すことで、エージェントループを継続させつつ Claude にリカバリーさせることができます ・`readOnlyHint=True` アノテーションを設定すると、副作用のないツールを他のリードオンリーツールと並列実行できます ・画像を返す場合は `{"type": "image", "data": base64_str, "mimeType": "image/png"}` 形式のコンテンツブロックを使用します ・`structuredContent` フィールドでツール結果を機械可読な JSON として返却できます(ただし Python の `@tool` では未サポート、スタンドアロン MCP サーバーが必要) 💡 ユースケース 🗄 データベースアクセス:エージェントに直接 DB クエリを実行させる 🌐 外部API連携:社内 API やサードパーティサービスをツールとして公開する 📊 データ可視化:グラフを生成し画像(base64)として返却する 🔧 ドメインロジック:計算、変換、バリデーションなど特定の業務ロジックをツール化する ⚠️ 注意点 ・Python の dict スキーマではすべてのキーが必須になります。オプションパラメータは schema に含めず、description で説明して `args.get()` で読み取ってください ・`structuredContent` は Python の `@tool` デコレータでは転送されません(スタンドアロン MCP サーバーを使用) ・ツール検索(tool search)はデフォルトで有効で、SDK MCP ツールのスキーマは必要になるまで遅延ロードされます。無効にすると `tools` 配列のすべてのツールが毎ターンのコンテキストを消費します ・アノテーションはメタデータであり強制力はありません。`readOnlyHint=True` でも handler が書き込みを行う場合があります ✨ インプロセスのカスタムツールにより、エージェントの能力を自由に拡張でき、外部プロセスの管理も不要です。 #ClaudeAgentSDK# #AIAgent#
もっと見る
TL;DR 自然言語で書いた仕様書から、大きな教師LLMを一度だけ動かして小さな専用ニューラル関数を「訓練によってコンパイル」する新手法です。難しいベンチマークでの精度をわずか数十秒〜数分で大きく引き上げます。 タイトル: Compile by Training: Turning Natural-Language Specifications into Local Neural Functions URL: 🎯 GPT-5.4-miniとGPT-5.5を2:1で混合した教師モデルが入出力例を自動生成し、Qwen3-0.6BにLoRA(ランク64)でその場から焼き込みます ⚡ 難易度の高いFuzzyBench-Hardで、既存の高速コンパイラのLEM 0.224から0.836へと大幅に精度が向上しました 🕒 コンパイルにはB300 GPUで約51秒かかりますが、教師によるデータ合成と訓練を並行実行しGPUの手待ちを削減しています 🌐 4サイトを横断するQAアシスタント(30本中28本が本番稼働)や自然言語から3D操作DSLへの変換(44命令中43成功)など幅広い実用例で検証済みです 📈 教師混合とデータ量のアブレーションでは、2,400〜3,600ユニークペア付近で精度が飽和することも分かりました 💬 大規模モデルを毎回呼び出すのではなく、一度学ばせて小さく持ち帰る発想は、頻繁に実行される中程度の複雑さのタスクに効きそうです #LLM# #LoRA#
もっと見る