사용자 지정 매개변수
기본 매개변수 세트 선택하기
기본적으로 librechat.yaml 설정 파일에서 사용자 지정 endpoint를 지정하면 OpenAI API의 기본 매개변수가 사용됩니다. 하지만 사용자 지정 endpoint 정의 내에 customParams.defaultParamsEndpoint 필드를 지정하여 이러한 기본값을 재정의할 수 있습니다. 예를 들어, 사용자 지정 endpoint에 Google 매개변수를 사용하려면 다음과 같이 설정합니다:
endpoints:
custom:
- name: 'Google Gemini'
apiKey: ...
baseURL: ...
customParams:
defaultParamsEndpoint: 'google'이제 새 에이전트나 프리셋을 생성할 때 "Google Gemini" endpoint에서 Google API용 매개변수가 표시됩니다.
매개변수 정의 재정의(Overriding)
그 외에도 사용자 지정 endpoint에 제공되는 매개변수를 미세 조정할 수 있습니다. 예를 들어, google endpoint의 temperature 매개변수는 0.0에서 1.0 사이의 범위를 가진 슬라이더이며 기본값은 1.0입니다. librechat.yaml 파일을 업데이트하여 이러한 값을 재정의할 수 있습니다:
endpoints:
custom:
- name: 'Google Gemini'
apiKey: ...
baseURL: ...
customParams:
defaultParamsEndpoint: 'google'
paramDefinitions:
- key: temperature
range:
min: 0
max: 0.7
step: 0.1
default: 0.5결과적으로 Temperature 슬라이더는 0.0에서 0.7 범위로 제한되며, 0.1 단위로 조정 가능하고 기본값은 0.5로 설정됩니다. 나머지 매개변수는 기본값으로 설정됩니다.
기본 매개변수 값 설정
API 요청 시 자동으로 적용될 매개변수의 기본값을 지정할 수 있습니다. 이는 사용자가 매번 수동으로 구성할 필요 없이 사용자 지정 endpoint에 대한 기준 매개변수 값을 설정하는 데 유용합니다.
paramDefinitions의 default 필드를 사용하면 매개변수가 정의되지 않았을 때 적용되는 기본값을 설정할 수 있습니다. 이러한 기본값은 적절한 재정의(override) 동작을 보장하기 위해 다음 우선순위를 따릅니다:
우선순위 (낮음에서 높음 순):
paramDefinitions의 기본값 - 매개변수가 정의되지 않았을 때 가장 먼저 적용됩니다.addParams- 기본값을 재정의할 수 있습니다.- 사용자가 구성한
modelOptions- 최우선 순위, 모든 설정을 재정의함
endpoints:
custom:
- name: 'My Custom LLM'
apiKey: ...
baseURL: ...
customParams:
defaultParamsEndpoint: 'openAI'
paramDefinitions:
- key: temperature
default: 0.7
- key: topP
default: 0.9
- key: maxTokens
default: 2000이 예시에서:
- 사용자가
temperature를 지정하지 않으면 기본값은0.7로 설정됩니다. - 사용자가
temperature를 명시적으로0.5로 설정하면, 해당 값(0.5)이 우선순위를 갖습니다. addParams필드(설정된 경우)는 이러한 기본값을 재정의할 수 있습니다.- UI에서의 사용자 선택이 항상 가장 높은 우선순위를 갖습니다.
Anthropic
Anthropic 관련 커스텀 endpoint 모드에는 두 가지가 있습니다:
- 커스텀 endpoint의
provider: 'anthropic'은 네이티브 Anthropic/v1/messages클라이언트를 사용합니다. Anthropic 자체 서비스나 Anthropic Messages API를 지원하는 게이트웨이에 이 설정을 사용하세요. customParams.defaultParamsEndpoint: 'anthropic'은(는) Anthropic 스타일의 파라미터 메타데이터와 요청 적응(request adaptation)을 적용하면서 커스텀 엔드포인트를 OpenAI 호환 경로로 유지합니다.
defaultParamsEndpoint: 'anthropic'를 사용할 때, 시스템은 단순히 Anthropic 매개변수 세트를 표시하고 사용하는 것을 넘어 특별한 처리를 제공합니다:
Anthropic API 호환성
defaultParamsEndpoint: 'anthropic'를 설정하면 사용자 지정 엔드포인트 경로에서 Anthropic 형태의 요청에 맞게 매개변수, 헤더 및 페이로드 형식이 조정됩니다:
- 매개변수는 Anthropic API가 예상하는 방식 그대로 사용자 지정 endpoint로 전송됩니다.
- 이는 LiteLLM과 같이 OpenAI 사양 이외의 매개변수를 기본 제공업체로 직접 전달하는 프록시 서비스에 필수적입니다.
thinking과 같은 Anthropic 전용 매개변수가 올바르게 형식화되었습니다.messages페이로드는 Anthropic의 요구 사항(thinking 블록 및 프롬프트 캐싱)에 따라 형식이 지정됩니다.- Anthropic을 직접 사용할 때와 마찬가지로, 모델에 따라 적절한 베타 헤더가 자동으로 추가됩니다.
이는 주로 OpenAI와 호환되지 않는 thinking 매개변수의 형식을 올바르게 지정하기 위해 필요합니다:
{
"thinking": {
"type": "enabled",
"budget_tokens": 10000
}
}또한, 시스템은 다음과 같은 모델별 Anthropic 베타 헤더를 자동으로 추가합니다:
anthropic-beta: prompt-caching-2024-07-31(프롬프트 캐싱 지원용)- 확장된 컨텍스트 모델을 위한
anthropic-beta: context-1m-2025-08-07 - 사용 중인 Claude 모델에 기반한 모델별 기능 플래그
네이티브 Anthropic 호환 endpoint의 경우, 커스텀 endpoint에서 provider: 'anthropic'을 사용하는 것을 권장합니다. 이를 통해 에이전트, 요약, 토큰/컨텍스트 예산 관리 및 매개변수 기본값이 Anthropic 공급자 경로를 통해 라우팅됩니다.
추론 리플레이 (Reasoning replay)
일부 OpenAI 호환 추론 게이트웨이는 어시스턴트 도구 호출 턴에서 공급자의 reasoning_content가 재생되도록 요구합니다. 이 동작이 필요한 공급자에 대해서만 선택적으로 적용하려면 사용자 지정 엔드포인트 플래그를 사용하세요:
customParams:
reasoningFormat: reasoning_object
reasoningKey: reasoning_content
includeReasoningContent: trueincludeReasoningHistory: true는 공급자가 이후 턴에서 지속된 대화 기록으로부터 reasoning_content를 재구성하도록 LibreChat에 요구하는 경우에만 설정하십시오. 이는 includeReasoningContent를 포함함을 의미합니다.
구현 상태
현재 이 자동 매개변수 및 헤더 처리는 Anthropic 스타일의 사용자 지정 endpoint에 대해 완전히 구현되었습니다. 다른 defaultParamsEndpoint 값(예: google, bedrock)에 대한 유사한 동작은 향후 업데이트에서 지원될 예정입니다.
이 가이드는 어떤가요?