跳至主要內容

BraintrustExporter

將 Tracing 數據傳送至 Braintrust,以進行 eval 及可觀測性分析。

建構函式
建構函式 的直接連結

new BraintrustExporter(config: BraintrustExporterConfig)

BraintrustExporterConfig
braintrustexporterconfig 的直接連結

interface BraintrustExporterConfig extends BaseExporterConfig {
apiKey?: string
endpoint?: string
projectName?: string
braintrustLogger?: Logger<true>
currentSpan?: () => Span | undefined
tuningParameters?: Record<string, any>
}

擴充 BaseExporterConfig,當中包括:

  • logger?: IMastraLogger - 記錄器實例
  • logLevel?: LogLevel | 'debug' | 'info' | 'warn' | 'error' - 記錄層級(預設:INFO)

方法
方法 的直接連結

exportTracingEvent
exporttracingevent 的直接連結

async exportTracingEvent(event: TracingEvent): Promise<void>

將 tracing 事件匯出至 Braintrust。

export
export 的直接連結

async export(spans: ReadOnlySpan[]): Promise<void>

將 span 批次匯出至 Braintrust。

flush
flush 的直接連結

async flush(): Promise<void>

在不關閉 exporter 的情況下,強制將所有已緩衝的 span 清空並匯出至 Braintrust。這對 serverless 環境尤其有用,可確保 span 在 runtime 終止前完成匯出。

shutdown
shutdown 的直接連結

async shutdown(): Promise<void>

清空待處理數據並關閉 client。

用法
用法 的直接連結

零設定(使用環境變數)
零設定(使用環境變數) 的直接連結

import { BraintrustExporter } from '@mastra/braintrust'

// Reads from BRAINTRUST_API_KEY, BRAINTRUST_ENDPOINT
const exporter = new BraintrustExporter()

明確設定
明確設定 的直接連結

import { BraintrustExporter } from '@mastra/braintrust'

const exporter = new BraintrustExporter({
apiKey: process.env.BRAINTRUST_API_KEY,
projectName: 'my-ai-project',
})

Span 類型對應
Span 類型對應 的直接連結

Span 類型Braintrust 類型
MODEL_GENERATIONllm
MODEL_CHUNKllm
TOOL_CALLtool
MCP_TOOL_CALLtool
PROVIDER_TOOL_CALLtool
WORKFLOW_CONDITIONAL_EVALfunction
WORKFLOW_WAIT_EVENTfunction
所有其他類型task