공유 엔드포인트 설정
이 페이지는 모든 endpoint에 대한 공유 구성 설정을 설명합니다. 여기에 강조된 설정은 별도로 명시되지 않는 한 "Endpoints" 필드 아래의 모든 구성에서 사용할 수 있습니다.
예시 구성
endpoints:
# Individual endpoint configurations
openAI:
streamRate: 25
titleModel: 'gpt-4o-mini'
titleMethod: 'completion'
titleTiming: 'immediate'
titlePrompt: "Create a concise title for this conversation:\n\n{convo}"
headers:
X-Gateway-Metadata: '{"user_email":"{{LIBRECHAT_USER_EMAIL}}"}'
azureOpenAI:
streamRate: 35
titleModel: 'grok-3'
titleMethod: 'structured'
titlePrompt: |
Analyze this conversation and provide:
1. A concise title in the detected language (5 words or less, no punctuation or quotation)
2. Always provide a relevant emoji at the start of the title
{convo}
titleConvo: true
anthropic:
streamRate: 25
titleModel: 'claude-3-5-haiku-20241022'
titleMethod: 'completion'
headers:
X-Conversation-Id: '{{LIBRECHAT_BODY_CONVERSATIONID}}'
bedrock:
streamRate: 25
titleModel: 'us.amazon.nova-lite-v1:0'
titleEndpoint: 'anthropic'
google:
streamRate: 1
titleModel: 'gemini-2.0-flash-lite'
titlePromptTemplate: "Human: {input}\nAssistant: {output}"
headers:
X-Gateway-Metadata: '{"user_id":"{{LIBRECHAT_USER_ID}}"}'
assistants:
streamRate: 30
azureAssistants:
streamRate: 30
# Global configuration using 'all' - this applies shared settings across endpoints.
# Most defined values override endpoint defaults; headers are merged and endpoint values win on collisions.
all:
headers:
X-App: 'librechat'
titleConvo: true
titleModel: 'gpt-4.1-nano'
titleTiming: 'immediate'
titlePrompt: |
Analyze this conversation and provide:
1. The detected language of the conversation
2. A concise title in the detected language (5 words or less, no punctuation or quotation)
3. Always provide a relevant emoji at the start of the title
{convo}중요:
all구성을 사용할 때, 정의한 대부분의 공유 속성은 모든 endpoint에 적용됩니다. 위 예시에서all구성은titleConvo,titleModel,titlePrompt를 모든 endpoint에 적용하지만,streamRate는all에 정의되어 있지 않으므로 개별 설정이 유지됩니다.headers는 별도로 병합됩니다.endpoints.all.headers의 값은 전역적으로 적용되며, 키가 충돌할 경우 endpoint 수준의 헤더가 우선합니다.
streamRate
키:
| Key | Type | Description | Example |
|---|---|---|---|
| streamRate | Number | endpoint에서 데이터가 스트리밍되는 속도입니다. 스트리밍 데이터의 속도를 제어하는 데 유용합니다. | streamRate: 25 |
기본값: 1
시스템이 다음 틱(tick)을 기다리도록 허용하면서 가능한 가장 빠른 속도로 데이터를 스트리밍할 수 있게 합니다.
titleConvo
키:
| Key | Type | Description | Example |
|---|---|---|---|
| titleConvo | Boolean | 이 endpoint에 대한 자동 대화 제목 생성을 활성화합니다. | titleConvo: true |
기본값: false
참고:
- 활성화되면, 구성된 제목 설정에 따라 제목이 자동으로 생성됩니다.
titleModel과 함께 사용해야 하거나, 해당 endpoint에 기본 모델이 설정되어 있어야 합니다.
예시:
titleConvo: truetitleTiming
키:
| Key | Type | Description | Example |
|---|---|---|---|
| titleTiming | String | 대화 제목이 생성되는 시점을 제어합니다. 유효한 값: "immediate" 또는 "final". | titleTiming: "immediate" |
기본값: "immediate"
사용 가능한 값:
"immediate"- 요청이 시작되자마자 사용자의 첫 번째 메시지를 사용하여 모델 응답과 병렬로 제목을 생성합니다. 제목은 보통 1~2초 이내에 나타납니다."final"- 전체 응답이 완료될 때까지 제목 생성을 지연합니다. 이는 기존의 레거시 동작을 유지합니다.
예시:
endpoints:
all:
titleTiming: 'immediate'titleModel
키:
| Key | Type | Description | Example |
|---|---|---|---|
| titleModel | String | 제목에 사용할 모델을 지정합니다. | Defaults to system default for the current endpoint if omitted. May cause issues if the system default model is not available. You can also dynamically use the current conversation model by setting it to "current_model". |
기본값: 현재 endpoint에 대한 시스템 기본값
titleMethod
키:
| Key | Type | Description | Example |
|---|---|---|---|
| titleMethod | String | 대화 제목을 생성하는 데 사용되는 방식을 제어합니다. | Valid values: "completion" (default), "structured", "functions" (legacy alias for "structured") |
기본값: "completion"
사용 가능한 메서드:
"completion"- 도구/함수 없이 표준 completion API를 사용합니다. 대부분의 LLM과 호환됩니다."structured"- 제목 생성에 구조화된 출력(structured output)을 사용합니다. 공급자/모델의 지원이 필요합니다."functions"- "structured"에 대한 레거시 별칭입니다. 기능적으로 동일합니다.
예시:
titleMethod: 'completion'titlePrompt
키:
| Key | Type | Description | Example |
|---|---|---|---|
| titlePrompt | String | 제목 생성을 위한 사용자 지정 프롬프트입니다. {convo} 플레이스홀더를 반드시 포함해야 합니다. | Allows full control over how titles are generated. |
기본값:
Analyze this conversation and provide:
1. The detected language of the conversation
2. A concise title in the detected language (5 words or less, no punctuation or quotation)
{convo}참고:
- 항상
{convo}플레이스홀더를 포함해야 합니다. {convo}플레이스홀더는 포맷된 대화 내용으로 대체됩니다.- 프롬프트 내 어디에나 배치할 수 있습니다
예시:
titlePrompt: "Create a brief, descriptive title for the following conversation:\n\n{convo}\n\nTitle:"titlePromptTemplate
키:
| Key | Type | Description | Example |
|---|---|---|---|
| titlePromptTemplate | String | titlePrompt 내의 {convo}를 대체하는 대화 내용 서식 지정용 템플릿입니다. | Must include {input} and {output} placeholders. |
기본값: "User: {input}\nAI: {output}"
참고:
{input}및{output}자리 표시자를 모두 포함해야 합니다.{input}은(는) 사용자의 초기 메시지로 대체됩니다.{output}은(는) AI의 응답으로 대체됩니다- 형식이 지정된 결과는 titlePrompt의
{convo}를 대체합니다.
예시:
titlePromptTemplate: "Human: {input}\n\nAssistant: {output}"titleEndpoint
키:
| Key | Type | Description | Example |
|---|---|---|---|
| titleEndpoint | String | 제목 생성에 사용할 대체 endpoint를 지정합니다. | Allows using a different, potentially cheaper model/endpoint for titles. |
기본값: 현재 대화의 endpoint를 사용합니다.
허용되는 값:
openAIazureOpenAIgoogleanthropicbedrock- 사용자 지정 endpoint의 경우: 정확한 사용자 지정 endpoint 이름을 사용하세요.
예시:
# Use Anthropic for titles even when chatting with OpenAI
endpoints:
openAI:
titleEndpoint: 'anthropic'
# Will use anthropic's configuration for title generationmaxToolResultChars
키:
| Key | Type | Description | Example |
|---|---|---|---|
| maxToolResultChars | Number | 모델로 전송되는 도구 호출 결과의 최대 문자 수를 제한합니다. 양수여야 합니다. | maxToolResultChars: 50000 |
기본값: 제한 없음
참고:
- 과도하게 큰 도구 출력이 너무 많은 토큰을 소비하는 것을 방지하는 데 도움이 됩니다.
- 해당 endpoint의 모든 도구 호출 결과에 적용됩니다
예시:
endpoints:
all:
maxToolResultChars: 50000headers
키:
| Key | Type | Description | Example |
|---|---|---|---|
| headers | Object/Dictionary | 지원되는 내장 공급자 endpoint로 전달되는 사용자 지정 요청 헤더입니다. | Useful for AI gateways and reverse proxies that consume metadata headers while LibreChat keeps provider-native request formatting. |
지원되는 endpoint: openAI, anthropic, google, 및 all.
예시:
endpoints:
all:
headers:
X-App: 'librechat'
anthropic:
headers:
X-Conversation-Id: '{{LIBRECHAT_BODY_CONVERSATIONID}}'참고:
- 값은
${ENV_VAR},{{LIBRECHAT_USER_*}}및{{LIBRECHAT_BODY_CONVERSATIONID}}와 같은 요청 본문(request-body) 플레이스홀더를 지원합니다. - Endpoint 수준의 헤더는 키 충돌 시
endpoints.all.headers를 덮어씁니다. - 공급자 관리형 인증 및 필수 beta/protocol 헤더가 우선합니다. Anthropic beta 값은 병합되므로 사용자 지정 beta 플래그가 필수 공급자 플래그를 덮어쓰지 않습니다.
- 지원되는 공급자 모델 목록 요청에 대해서도 헤더가 전달됩니다.
- 게이트웨이 또는 이를 소비하는 리버스 프록시 뒤에서 메타데이터 헤더를 사용하세요. 네이티브 제공업체 API는 일반적으로 알 수 없는 헤더를 무시합니다.
참고:
- 이 페이지에 표시된 모든 설정은 각 endpoint별로 개별적으로 구성하거나
all키를 사용하여 전역적으로 구성할 수 있습니다. all구성을 사용할 경우, 모든 개별 endpoint의 해당 설정을 덮어씁니다.all키는baseURL을 허용하지 않습니다.all에 정의되지 않은 설정은 각 endpoint의 개별 값을 유지합니다.streamRate의 경우: 원활한 스트리밍 경험을 위해 25-40 사이의 값을 권장합니다.- 많은 사용자에게 대규모로 앱을 서비스할 때는 더 높은 스트림 속도를 사용하는 것이 필수적입니다.
재정의(Override) 동작 예시:
endpoints:
openAI:
streamRate: 25 # This will be preserved
titleModel: 'gpt-4' # This will be overridden
titleConvo: false # This will be overridden
all:
titleConvo: true
titleModel: 'gpt-3.5-turbo'
# streamRate not defined here, so individual values are keptEndpoint Settings
이 가이드는 어떤가요?