`defaultSettingsMiddleware()`

defaultSettingsMiddleware()

defaultSettingsMiddleware는 언어 모델 호출에 기본 설정을 적용하는 미들웨어 함수입니다. 여러 모델 호출에 걸쳐 일관된 기본 파라미터를 설정하고 싶을 때 유용합니다. 기본 시스템 지시문을 적용하려면 defaultInstructionsMiddleware를 사용하세요.

출처: 문서

본문

import { defaultSettingsMiddleware } from 'ai';

const middleware = defaultSettingsMiddleware({
  settings: {
    temperature: 0.7,
    maxOutputTokens: 1000,
    // other settings...
  },
});

Import

import { defaultSettingsMiddleware } from "ai"

API Signature

Parameters (파라미터)

미들웨어는 다음 속성을 가진 구성 객체를 받습니다.

  • settings: 언어 모델 호출에 적용할 기본 파라미터 값을 담은 객체입니다. 여기에는 유효한 LanguageModelV4CallOptions 속성들과 선택적 프로바이더 메타데이터가 포함될 수 있습니다.

Returns (반환값)

다음과 같은 동작을 하는 미들웨어 객체를 반환합니다.

  • 기본 설정을 각 모델 호출에 제공된 파라미터와 병합
  • 명시적으로 제공된 파라미터가 기본값보다 우선하도록 보장
  • 프로바이더 메타데이터 객체 병합

Usage Example (사용 예제)

import { streamText, wrapLanguageModel, defaultSettingsMiddleware } from 'ai';

// Create a model with default settings
const modelWithDefaults = wrapLanguageModel({
  model: gateway('anthropic/claude-sonnet-4.5'),
  middleware: defaultSettingsMiddleware({
    settings: {
      providerOptions: {
        openai: {
          reasoningEffort: 'high',
        },
      },
    },
  }),
});

// Use the model - default settings will be applied
const result = await streamText({
  model: modelWithDefaults,
  prompt: 'Your prompt here',
  // These parameters will override the defaults
  temperature: 0.8,
});

How It Works (동작 방식)

미들웨어는 다음과 같이 동작합니다.

  1. 구성으로 기본 설정 집합을 받습니다.
  2. 이 기본값을 각 모델 호출에 제공된 파라미터와 병합합니다.
  3. 명시적으로 제공된 파라미터가 기본값보다 우선하도록 보장합니다.
  4. 두 소스의 프로바이더 메타데이터 객체를 병합합니다.

더 알아보기 (Learn more)