Agent.network()
Experimental Feature
.network() leverages the experimental feature `streamVNext()` and is only compatible with AI SDK v5 models. only compatible with AISDK v5 models.
.network()
メソッドは、複数のエージェント間の協調やルーティングを可能にします。このメソッドは、メッセージと任意の実行オプションを受け取ります。
使用例
import { Agent } from '@mastra/core/agent';
import { openai } from '@ai-sdk/openai';
import { agent1, agent2 } from './agents';
import { workflow1 } from './workflows';
import { tool1, tool2 } from './tools';
const agent = new Agent({
name: 'network-agent',
instructions: 'You are a network agent that can help users with a variety of tasks.',
model: openai('gpt-4o'),
agents: {
agent1,
agent2,
},
workflows: {
workflow1,
},
tools: {
tool1,
tool2,
},
})
await agent.network(`
東京の天気を教えて。
その天気に合わせて、できるアクティビティを計画して。
`);
パラメータ
messages:
string | string[] | CoreMessage[] | AiMessageType[] | UIMessageWithMetadata[]
エージェントへ送信するメッセージ。単一の文字列、文字列の配列、または構造化メッセージオブジェクトを指定できます。
options?:
MultiPrimitiveExecutionOptions
ネットワーク処理に関する任意の設定。
設定
maxSteps?:
number
実行時に処理する最大ステップ数。
memory?:
object
メモリの設定。メモリ管理にはこの方法を推奨します。
thread:
string | { id: string; metadata?: Record<string, any>, title?: string }
会話スレッド。文字列のID、または `id` と任意の `metadata` を持つオブジェクトとして指定します。
resource:
string
スレッドに関連付けられたユーザーまたはリソースの識別子。
options?:
MemoryConfig
メッセージ履歴やセマンティックリコールなど、メモリ動作の設定。
tracingContext?:
TracingContext
スパン階層とメタデータ用のAIトレーシングコンテキスト。
telemetry?:
TelemetrySettings
ストリーミング中のテレメトリ収集の設定。
isEnabled?:
boolean
テレメトリを有効または無効にします。実験段階ではデフォルトで無効です。
recordInputs?:
boolean
入力の記録を有効または無効にします。デフォルトで有効です。機密情報の記録を避けるため、入力記録を無効にすることもできます。
recordOutputs?:
boolean
出力の記録を有効または無効にします。デフォルトで有効です。機密情報の記録を避けるため、出力記録を無効にすることもできます。
functionId?:
string
この関数の識別子。テレメトリデータを関数単位でグループ化するために使用します。
modelSettings?:
CallSettings
temperature、maxTokens、topP などのモデル固有の設定。これらは基盤の言語モデルに渡されます。
temperature?:
number
モデル出力のランダム性を制御します。値が高い(例: 0.8)ほど出力はランダムになり、値が低い(例: 0.2)ほど焦点が定まり決定的になります。
maxRetries?:
number
失敗したリクエストの最大再試行回数。
topP?:
number
核サンプリング。0〜1 の数値です。temperature と topP はどちらか一方の設定を推奨します。
topK?:
number
以降の各トークンで、上位 K 個の選択肢からのみサンプリングします。確率の低い「ロングテール」の応答を除外するために使用します。
presencePenalty?:
number
presence penalty の設定。プロンプトに既に含まれる情報をモデルが繰り返す傾向に影響します。-1(繰り返しを増やす)から 1(最大のペナルティ、繰り返しを減らす)までの数値。
frequencyPenalty?:
number
frequency penalty の設定。同じ語やフレーズを繰り返し使用する傾向に影響します。-1(繰り返しを増やす)から 1(最大のペナルティ、繰り返しを減らす)までの数値。
stopSequences?:
string[]
停止シーケンス。設定すると、いずれかの停止シーケンスが生成された時点でモデルはテキスト生成を停止します。
runId?:
string
この生成ランの一意のID。追跡やデバッグに役立ちます。
runtimeContext?:
RuntimeContext
依存性の注入やコンテキスト情報のためのランタイムコンテキスト。
返り値
stream:
MastraAgentNetworkStream<NetworkChunkType>
ReadableStream<NetworkChunkType> を拡張し、ネットワーク固有の追加プロパティを備えたカスタムストリーム
status:
Promise<RunStatus>
現在のワークフロー実行ステータスを解決する Promise
result:
Promise<WorkflowResult<TOutput, TSteps>>
最終的なワークフロー結果を解決する Promise
usage:
Promise<{ promptTokens: number; completionTokens: number; totalTokens: number }>
トークン使用状況の統計情報を解決する Promise