Model Specs 객체 구조
개요
modelSpecs 객체는 애플리케이션 내의 AI 모델에 대해 더 간편한 UI 경험을 제공하도록 돕습니다.
modelSpecs 아래에는 3개의 주요 필드가 있습니다:
enforce(선택 사항; 기본값: false)prioritize(선택 사항; 기본값: true)list(필수)addedEndpoints(선택 사항)
참고:
enforce가 true로 설정된 경우, Model Specs는modelSelect,presets,parameters와 같은 다른 인터페이스 설정과 잠재적으로 충돌할 수 있습니다.list배열에는 각 모델에 대한 상세 구성이 포함되어 있으며, 여기에는 특정 동작, 외관 및 기능을 결정하는 프리셋이 포함됩니다.- interface 필드가 구성에 지정되지 않은 경우, Model Specs 목록이 있으면 다음 인터페이스 요소가 비활성화됩니다:
modelSelectparameterspresets
- Model Specs와 함께 이러한 인터페이스 요소를 활성화하려면
interface객체에서 해당 값을true로 설정하면 됩니다.
Model Specs를 사용하여 사용자 제공 API 키 관리하기
Model Specs에서 modelSelect를 비활성화하면 엔드포인트 드롭다운과 Set API Key 대화 상자를 여는 톱니바퀴 아이콘이 숨겨집니다. 사용자는 Settings → Data controls → API keys에서 apiKey: "user_provided"로 구성된 모든 엔드포인트에 대한 키를 설정하거나 교체할 수 있습니다.
해당 목록은 사용자가 실제로 접근할 수 있는 endpoint로 범위가 제한됩니다. 이는 Model Specs에서 참조하는 endpoint와 addedEndpoints에 추가된 항목을 포함합니다. agents endpoint에 접근 가능한 경우, agent의 allowedProviders도 포함됩니다(allowedProviders가 설정되지 않은 경우에는 구성된 모든 provider가 포함됩니다).
예시
modelSpecs:
enforce: true
prioritize: true
list:
- name: 'meeting-notes-gpt4'
label: 'Meeting Notes Assistant (GPT4)'
softDefault: true
description: 'Generate meeting notes by simply pasting in the transcript from a Teams recording.'
iconURL: 'https://example.com/icon.png'
showOnLanding: true
conversation_starters:
- 'Summarize this meeting transcript'
- 'Extract action items and owners'
hideBadgeRow: true
skills:
- 'brand-guidelines'
- 'meeting-notes'
subagents:
enabled: true
allowSelf: true
agent_ids: []
preset:
endpoint: 'azureOpenAI'
model: 'gpt-4-turbo-1106-preview'
maxContextTokens: 128000 # Maximum context tokens
max_tokens: 4096 # Maximum output tokens
temperature: 0.2
modelLabel: 'Meeting Summarizer'
greeting: |
This assistant creates meeting notes based on transcripts of Teams recordings.
To start, simply paste the transcript into the chat box.
promptPrefix: |
Based on the transcript, create coherent meeting minutes for a business meeting. Include the following sections:
- Date and Attendees
- Agenda
- Minutes
- Action Items
Focus on what items were discussed and/or resolved. List any open action items.
The format should be a bulleted list of high level topics in chronological order, and then one or more concise sentences explaining the details.
Each high level topic should have at least two sub topics listed, but add as many as necessary to support the high level topic.
- Do not start items with the same opening words.
Take a deep breath and be sure to think step by step.최상위 필드
enforce
| Key | Type | Description | Example |
|---|---|---|---|
| enforce | Boolean | 모델 사양이 다른 구성 설정을 엄격하게 재정의해야 하는지 여부를 결정합니다. | Setting this to `true` can lead to conflicts with interface options if not managed carefully. |
기본값: false
예시:
modelSpecs:
enforce: trueprioritize
| Key | Type | Description | Example |
|---|---|---|---|
| prioritize | Boolean | Model Specs가 적용 가능한 경우 기본 구성보다 우선순위를 가질지 여부를 지정합니다. | When set to `true`, it ensures that a modelSpec is always selected in the UI. Doing this may prevent users from selecting different endpoints for the selected spec. |
기본값: true
예시:
modelSpecs:
prioritize: falseaddedEndpoints
| Key | Type | Description | Example |
|---|---|---|---|
| addedEndpoints | Array of Strings | UI에서 정의된 Model Specs와 함께 특정 endpoint(예: "openAI", "google")를 선택할 수 있도록 허용합니다. | Requires `interface.modelSelect` to be `true`. If this field is used and `interface.modelSelect` is not explicitly set, `modelSelect` will default to `true`. |
기본값: [] (빈 목록)
참고: 다음 중 하나여야 합니다:
openAI, azureOpenAI, google, anthropic, assistants, azureAssistants, bedrock, agents
예시:
modelSpecs:
# ... other modelSpecs fields
addedEndpoints:
- openAI
- googlelist
필수
| Key | Type | Description | Example |
|---|---|---|---|
| list | Array of Objects | 다양한 구성 및 동작을 상세히 설명하는 개별 Model Specs 목록을 포함합니다. | Each object in the list details the configuration for a specific model, including its behaviors, appearance, and capabilities related to the application's functionality. |
Model Spec (목록 항목)
각 Model Spec 또는 각 list 항목 내에서 다음 필드를 구성할 수 있습니다:
name
| Key | Type | Description | Example |
|---|---|---|---|
| name | String | 모델의 고유 식별자입니다. | No default. Must be specified. |
설명: 모델의 고유 식별자입니다.
label
| Key | Type | Description | Example |
|---|---|---|---|
| label | String | 헤더 드롭다운에 표시되는 모델의 사용자 친화적인 이름 또는 라벨입니다. | No default. Optional. |
설명: 헤더 드롭다운에 표시되는 모델의 사용자 친화적인 이름 또는 라벨입니다.
default
| Key | Type | Description | Example |
|---|---|---|---|
| default | Boolean | 이 모델 spec이 기본 선택 항목인지 여부를 지정하며, 모든 새 채팅에서 자동으로 선택되도록 합니다. |
설명:
이 Model Specs가 기본 선택 항목인지 여부를 지정하며, 새 채팅을 시작할 때마다 자동으로 선택되도록 합니다.
softDefault
| Key | Type | Description | Example |
|---|---|---|---|
| softDefault | Boolean | 이 모델 spec을 아직 모델, 모델 spec 또는 에이전트를 선택하지 않은 신규 사용자에게만 적용할지 여부를 지정합니다. |
설명:
사용자의 이후 선택을 덮어쓰지 않으면서 초기 실행 기본값을 지정합니다. 사용자가 다른 모델, spec 또는 에이전트를 선택한 후에도 해당 선택을 유지하면서 신규 사용자에게 선별된 spec을 안내하고 싶을 때 softDefault를 사용하세요.
소프트 기본값(soft-default) spec을 사용한 이전 대화를 조회할 때, 사용자가 다른 선택을 한 이후에는 해당 spec이 사용자의 기본값으로 다시 설정되지 않습니다.
예시:
modelSpecs:
list:
- name: 'general-assistant'
label: 'General Assistant'
softDefault: true
preset:
endpoint: 'openAI'
model: 'gpt-4o-mini'iconURL
| Key | Type | Description | Example |
|---|---|---|---|
| iconURL | String | 선택기, 헤더 및 대화 브랜딩에서 모델 아이콘으로 사용할 URL 또는 미리 정의된 endpoint 이름입니다. | No default. Optional. |
설명:
모델 선택기, 헤더 및 대화 브랜딩에서 모델 아이콘으로 사용할 URL 또는 미리 정의된 endpoint 이름입니다. 아이콘이 표시될 위치를 제어하려면 showIconInMenu 및 showIconInHeader를 사용하세요.
description
| Key | Type | Description | Example |
|---|---|---|---|
| description | String | 모델 선택기 및 선택적으로 채팅 랜딩 페이지에 표시되는 모델과 해당 모델의 의도된 용도 또는 역할에 대한 간략한 설명입니다. | No default. Optional. |
Description:
모델과 해당 모델의 의도된 용도 또는 역할에 대한 간략한 설명으로, 모델 선택기(model selector)에 표시됩니다. showOnLanding이 true인 경우, 동일한 설명이 채팅 랜딩 페이지의 사양 레이블 아래에도 표시됩니다.
일반 텍스트 설명은 텍스트로 렌더링됩니다. <로 시작하는 설명은 구성 HTML 살균기(sanitizer)를 통해 렌더링되므로, 안전한 인라인 마크업과 작은 아이콘과 같은 미디어를 사용할 수 있습니다.
conversation_starters
| Key | Type | Description | Example |
|---|---|---|---|
| conversation_starters | Array of Strings | 이 Model Specs가 선택되었을 때 채팅 시작 화면에 클릭 가능한 카드로 표시되는 추천 시작 프롬프트입니다. | No default. Optional. |
설명:
대화 시작 문구(Conversation starters)는 사용자에게 Model Specs에 대한 엄선된 첫 번째 프롬프트를 제공합니다. 이는 선택된 spec의 빈 채팅 랜딩 페이지에 표시되며, 특히 showOnLanding 브랜딩과 함께 사용할 때 유용합니다. 시작 문구를 클릭하면 해당 문구가 새로운 대화의 첫 번째 메시지로 전송됩니다.
- 에이전트/어시스턴트 제한에 맞춰 최대 4개의 스타터가 표시됩니다.
- spec의 프리셋이 자체적인 대화 시작 문구를 정의하는 에이전트나 어시스턴트를 가리키는 경우, 해당 문구가 우선합니다.
예시:
modelSpecs:
list:
- name: 'meeting-notes'
label: 'Meeting Notes'
showOnLanding: true
conversation_starters:
- 'Summarize this meeting transcript'
- 'Create action items with owners and due dates'
preset:
endpoint: 'agents'
model: 'gpt-4o'showOnLanding
| Key | Type | Description | Example |
|---|---|---|---|
| showOnLanding | Boolean | 채팅 시작 화면에서 기본 인사말 대신 이 Model Specs의 라벨과 설명을 표시합니다. | showOnLanding: true |
기본값: false
큐레이팅된 Model Specs가 첫 빈 채팅 화면을 브랜딩해야 할 때 이 설정을 사용하세요. showOnLanding이 true로 설정되지 않는 한 기존 Model Specs는 변경되지 않습니다.
예시:
modelSpecs:
list:
- name: 'branded-assistant'
label: 'Acme Research'
description: '<span><img src="/assets/acme.svg" alt="Acme" /> Research with approved sources</span>'
showOnLanding: true
iconURL: '/assets/acme.svg'
preset:
endpoint: 'openAI'
model: 'gpt-4o'group
| Key | Type | Description | Example |
|---|---|---|---|
| group | String | UI 선택기에서 Model Specs를 구성하기 위한 선택적 그룹 이름입니다. 메뉴 계층 구조에서 사양이 표시되는 위치를 제어합니다. | No default. Optional. |
| groupIcon | String | 사용자 지정 그룹을 위한 선택적 아이콘입니다. URL 또는 내장 endpoint 키(예: "openAI", "groq")를 사용할 수 있습니다. 각 그룹에서 groupIcon이 포함된 첫 번째 spec만 사용됩니다. | No default. Optional. |
설명:
UI 선택기에서 Model Specs를 구성하기 위한 선택적 그룹 이름입니다. group 필드는 Model Specs가 구성되는 방식에 대한 유연한 제어를 제공합니다:
group이 endpoint 이름과 일치하는 경우 (예:"openAI","groq"): 모델 사양(Model Specs)이 선택기 메뉴의 해당 endpoint 아래에 중첩되어 나타납니다.group이 사용자 지정 이름인 경우 (어떤 endpoint와도 일치하지 않음): 해당 이름으로 별도의 접기 가능한 섹션을 생성합니다. 선택적으로groupIcon을 사용하여 이 섹션에 대한 사용자 지정 아이콘(URL 또는"openAI"와 같은 내장 키)을 설정할 수 있습니다.group이 생략된 경우: Model Specs는 최상위 레벨에 독립적인 항목으로 표시됩니다.
이 기능은 선택기 메뉴의 구성 구조를 유지하면서 모델에 설명을 추가하고 싶을 때 특히 유용합니다.
hideBadgeRow
| Key | Type | Description | Example |
|---|---|---|---|
| hideBadgeRow | Boolean | 채팅 작성기에서 이 Model Specs에 대한 도구 배지 행을 숨깁니다. | hideBadgeRow: true |
기본값: false
큐레이팅된 Model Specs에서 컴포저 아래에 도구/기능 배지 행을 표시하지 않아야 할 때 이를 사용하세요.
예시:
modelSpecs:
list:
- name: 'general-assistant'
label: 'General Assistant'
hideBadgeRow: true
preset:
endpoint: 'openAI'
model: 'gpt-4o-mini'예시:
modelSpecs:
list:
# Example 1: Nested under an endpoint
# When group matches an endpoint name, the spec appears under that endpoint
- name: 'gpt-4o-optimized'
label: 'GPT-4 Optimized'
description: 'Most capable GPT-4 model with multimodal support'
group: 'openAI' # Appears nested under the OpenAI endpoint
preset:
endpoint: 'openAI'
model: 'gpt-4o'
# Example 2: Custom group section with icon
# When group is a custom name, it creates a separate collapsible section
- name: 'coding-assistant'
label: 'Coding Assistant'
description: 'Specialized for coding tasks'
group: 'My Assistants'
groupIcon: 'https://example.com/icons/assistants.png' # Custom icon for the group
preset:
endpoint: 'openAI'
model: 'gpt-4o'
# Multiple specs with the same group name are grouped together
- name: 'writing-assistant'
label: 'Writing Assistant'
description: 'Specialized for creative writing'
group: 'My Assistants' # Grouped with coding-assistant, uses its icon
preset:
endpoint: 'anthropic'
model: 'claude-sonnet-4'
# Example 3: Custom group using built-in icon
- name: 'fast-model'
label: 'Fast Model'
group: 'Fast Models'
groupIcon: 'groq' # Uses built-in Groq icon
preset:
endpoint: 'groq'
model: 'llama3-8b-8192'
# Example 4: Standalone (no group)
# When group is omitted, the spec appears at the top level
- name: 'general-assistant'
label: 'General Assistant'
description: 'General purpose assistant'
# No group field - appears as standalone item at top level
preset:
endpoint: 'openAI'
model: 'gpt-4o-mini'showIconInMenu
| Key | Type | Description | Example |
|---|---|---|---|
| showIconInMenu | Boolean | 헤더 드롭다운 메뉴에 모델 아이콘을 표시할지 여부를 제어합니다. |
설명:
헤더 드롭다운 메뉴에 모델 아이콘을 표시할지 여부를 제어합니다. 기본값은 true입니다.
showIconInHeader
| Key | Type | Description | Example |
|---|---|---|---|
| showIconInHeader | Boolean | 헤더 드롭다운 버튼에서 모델 이름 왼쪽에 모델 아이콘을 표시할지 여부를 제어합니다. |
설명:
모델의 아이콘이 헤더 드롭다운 버튼의 이름 왼쪽에 표시될지 여부를 제어합니다. 기본값은 true입니다.
authType
| Key | Type | Description | Example |
|---|---|---|---|
| authType | String | Model Specs에 필요한 인증 유형입니다. | Optional. Possible values: "override_auth", "user_provided", "system_defined" |
설명:
Model Specs에 필요한 인증 유형입니다. 인증이 재정의되는지, 사용자가 제공하는지, 또는 시스템에 의해 정의되는지를 결정합니다.
webSearch
| Key | Type | Description | Example |
|---|---|---|---|
| webSearch | Boolean | 이 Model Specs에 대한 웹 검색 기능을 활성화합니다. | When true, the model can perform web searches. |
설명:
이 Model Specs에 대한 웹 검색 기능을 활성화합니다. true로 설정하면, 모델이 웹 검색을 수행하여 최신 정보를 가져올 수 있습니다.
예시:
modelSpecs:
list:
- name: 'research-assistant'
label: 'Research Assistant'
webSearch: true
preset:
endpoint: 'openAI'
model: 'gpt-4o'fileSearch
| Key | Type | Description | Example |
|---|---|---|---|
| fileSearch | Boolean | 이 Model Specs에 대한 파일 검색 기능을 활성화합니다. | When true, the model can search through uploaded files. |
설명:
이 Model Specs에 대한 파일 검색 기능을 활성화합니다. true로 설정하면, 모델이 업로드된 파일을 검색하고 참조할 수 있습니다.
예시:
modelSpecs:
list:
- name: 'document-analyst'
label: 'Document Analyst'
fileSearch: true
preset:
endpoint: 'openAI'
model: 'gpt-4o'executeCode
| Key | Type | Description | Example |
|---|---|---|---|
| executeCode | Boolean | 이 Model Specs에 대한 코드 실행 기능을 활성화합니다. | When true, the model can execute code. |
설명:
이 Model Specs에 대한 코드 실행 기능을 활성화합니다. true로 설정하면 모델이 샌드박스 환경에서 코드를 실행할 수 있습니다.
예시:
modelSpecs:
list:
- name: 'code-assistant'
label: 'Code Assistant'
executeCode: true
preset:
endpoint: 'openAI'
model: 'gpt-4o'mcpServers
| Key | Type | Description | Example |
|---|---|---|---|
| mcpServers | Array of Strings | 이 모델 사양에 대해 활성화할 Model Context Protocol (MCP) 서버 이름 목록입니다. | Each string should match a configured MCP server name. |
설명:
이 Model Specs에 대해 활성화할 MCP(Model Context Protocol) 서버 이름 목록입니다. MCP 서버는 사용자 지정 도구 및 리소스를 통해 모델의 기능을 확장합니다.
예시:
modelSpecs:
list:
- name: 'enhanced-assistant'
label: 'Enhanced Assistant'
mcpServers:
- 'filesystem'
- 'sequential-thinking'
- 'fetch'
preset:
endpoint: 'openAI'
model: 'gpt-4o'skills
| Key | Type | Description | Example |
|---|---|---|---|
| skills | Boolean or Array of Strings | 이 Model Specs에 대한 Skills를 제어합니다. 사용자의 활성 접근 가능 카탈로그를 사용하려면 true, Skills를 강제로 끄려면 false, 또는 엄격한 허용 목록으로 Skill 이름 배열을 사용하세요. | skills: ["brand-guidelines", "code-review"] |
설명:
Agents 엔드포인트의 Skills 기능이 사용 가능할 때 이 Model Specs에 대한 Skills를 제어합니다.
true: 사용자의 활성 접근 가능 Skill 카탈로그를 활성화합니다.false: 이 spec에 대해 Skills를 비활성화합니다.- Skill 이름 배열: 카탈로그 좁히기, 수동 호출, 그리고 명명된 Skill에 대한 항상 적용(always-apply) 해결.
예시:
modelSpecs:
list:
- name: 'brand-assistant'
label: 'Brand Assistant'
skills:
- 'brand-guidelines'
- 'approved-claims'
preset:
endpoint: 'agents'
model: 'gpt-4o'subagents
| Key | Type | Description | Example |
|---|---|---|---|
| subagents.enabled | Boolean | 이 Model Specs에서 생성된 일회성 에이전트에 대해 Subagents 기능을 활성화합니다. | enabled: true |
| subagents.allowSelf | Boolean | 일시적 에이전트가 집중적인 작업을 위해 자신과 격리된 복사본을 생성할 수 있도록 허용합니다. | allowSelf: true |
| subagents.agent_ids | Array of Strings | 이 Model Specs가 생성할 수 있는 추가적인 에이전트 ID의 비공개 서버 측 허용 목록입니다. | agent_ids: [] |
설명:
이 모델 사양(Model Spec)에서 생성된 일회성 에이전트에 대한 하위 에이전트(Subagents)를 제어합니다. 사용자가 영구적인 상위 에이전트를 생성하거나 선택할 필요 없이, 선별된 모델 사양이 위임 동작을 노출하도록 하려는 경우에 사용하세요.
enabled: 이 Model Specs에 대한 하위 에이전트 생성(subagent spawn) 도구를 추가합니다.allowSelf: 일시적 에이전트가 자신과 동일한 새로운 격리된 복사본을 생성할 수 있도록 허용합니다.agent_ids: 특정 지속형 에이전트를 추가 하위 에이전트로 허용합니다. 이 목록은MAX_SUBAGENTS에 의해 제한되며 서버 측에 유지됩니다. 클라이언트로 전송되는 시작 구성에는 공개enabled및allowSelf플래그만 포함됩니다.
Model Specs가 적용되면, 해당 Model Spec의 subagents 설정이 요청 페이로드 값보다 우선합니다.
예시:
modelSpecs:
list:
- name: 'research-assistant'
label: 'Research Assistant'
subagents:
enabled: true
allowSelf: true
agent_ids: []
preset:
endpoint: 'agents'
model: 'gpt-4o'artifacts
| Key | Type | Description | Example |
|---|---|---|---|
| artifacts | String | Boolean | 이 Model Specs에 대해 Artifacts 기능을 활성화하고 선택적으로 아티팩트 모드를 설정합니다. | Set to `true` to enable with the default mode, `false` or omit to disable, or a specific mode string (e.g., `"default"`) to enable with that mode. |
설명:
이 Model Specs에 대한 Artifacts 기능을 활성화하여, 모델이 React 컴포넌트, HTML, Mermaid 다이어그램과 같은 대화형 아티팩트를 생성하고 표시할 수 있도록 합니다. true로 설정하면 기본 아티팩트 모드가 사용됩니다. 모드 문자열을 직접 지정할 수도 있습니다.
예시:
modelSpecs:
list:
- name: 'artifact-assistant'
label: 'Artifact Assistant'
artifacts: true
preset:
endpoint: 'openAI'
model: 'gpt-4o'preset
| Key | Type | Description | Example |
|---|---|---|---|
| preset | Object | 모델의 동작과 기능을 정의하는 상세 프리셋 구성입니다. | See "Preset Object Structure" below. |
설명:
모델의 동작과 기능을 정의하는 상세한 프리셋 구성입니다(아래의 Preset Object Structure 참조).
Preset 필드
modelSpecs.list 항목의 preset 필드는 시스템 내 AI 모델을 위한 포괄적인 구성 청사진으로 이루어져 있습니다. 이는 AI 모델의 운영 설정을 지정하여, 모델의 동작, 출력, 그리고 다른 시스템 구성 요소 및 endpoint와의 상호작용을 조정하도록 설계되었습니다.
시스템 옵션
endpoint
필수
허용되는 값:
openAIazureOpenAIgoogleanthropicassistantsazureAssistantsbedrockagents
참고: 사용자 지정 endpoint를 사용하는 경우, endpoint 값은 정의된 사용자 지정 endpoint 이름과 정확히 일치해야 합니다.
| Key | Type | Description | Example |
|---|---|---|---|
| endpoint | Enum (EModelEndpoint) or String (nullable) | 모델이 작업을 실행하기 위해 통신하는 endpoint를 지정합니다. 이 설정은 모델이 인터페이스하는 외부 또는 내부 서비스를 결정합니다. |
예시:
preset:
endpoint: 'openAI'modelLabel
| Key | Type | Description | Example |
|---|---|---|---|
| modelLabel | String (nullable) | 사용자 인터페이스나 로그에서 모델을 식별하는 데 사용되는 레이블입니다. UI에 표시되고 AI에게도 전달되는 모델의 사람이 읽을 수 있는 이름을 제공합니다. | None |
기본값: None
예시:
preset:
modelLabel: 'Customer Support Bot'greeting
| Key | Type | Description | Example |
|---|---|---|---|
| greeting | String | 새로운 채팅을 시작하기 전에 UI에 표시되는 사전 정의된 메시지입니다. 이는 사용자에게 지침을 제공하거나 인터페이스를 더 친숙하고 접근하기 쉽게 만드는 좋은 방법입니다. |
기본값: None
예시:
preset:
greeting: 'This assistant creates meeting notes based on transcripts of Teams recordings. To start, simply paste the transcript into the chat box.'promptPrefix
| Key | Type | Description | Example |
|---|---|---|---|
| promptPrefix | String (nullable) | 모델로 전송되는 모든 프롬프트 앞에 추가되는 정적 텍스트로, 응답을 위한 일관된 컨텍스트를 설정합니다. | When using "assistants" as the endpoint, this becomes the OpenAI field `additional_instructions`. |
기본값: None
예시 1:
preset:
promptPrefix: 'As a financial advisor, ...'예시 2:
preset:
promptPrefix: |
Based on the transcript, create coherent meeting minutes for a business meeting. Include the following sections:
- Date and Attendees
- Agenda
- Minutes
- Action Items
Focus on what items were discussed and/or resolved. List any open action items.
The format should be a bulleted list of high level topics in chronological order, and then one or more concise sentences explaining the details.
Each high level topic should have at least two sub topics listed, but add as many as necessary to support the high level topic.
- Do not start items with the same opening words.
Take a deep breath and be sure to think step by step.resendFiles
| Key | Type | Description | Example |
|---|---|---|---|
| resendFiles | Boolean | 지속적인 세션이 유지되지 않는 시나리오에서 파일을 다시 전송해야 하는지 여부를 나타냅니다. |
기본값: true
예시:
preset:
resendFiles: trueimageDetail
허용되는 값:
- 낮음
- 자동
- 높음
| Key | Type | Description | Example |
|---|---|---|---|
| imageDetail | Enum (eImageDetailSchema) | 이미지 분석 작업에 필요한 세부 정보 수준을 지정하며, 시각적 기능을 갖춘 모델(OpenAI spec)에 적용됩니다. |
기본값: "auto"
예시:
preset:
imageDetail: 'high'maxContextTokens
| Key | Type | Description | Example |
|---|---|---|---|
| maxContextTokens | Number | 모델에 제공할 최대 컨텍스트 토큰 수입니다. | Useful if you want to limit the maximum context for this preset. |
예시:
preset:
maxContextTokens: 4096Agent Options
이 옵션들은 agents endpoint를 사용할 때만 적용 가능하다는 점에 유의하세요.
모델 옵션은 제외하고 UI에 정의된 에이전트 구성을 따르도록 해야 합니다.
에이전트 액세스 필터링 (v0.8.0+)
v0.8.0부터 LibreChat은 에이전트에 대해 ACL(Access Control List) 기반 권한 시스템을 사용합니다. Model Specs가 에이전트를 사용하도록 구성된 경우, 사용자가 액세스 권한을 가지지 않은 에이전트는 Model Specs에 구성되어 있더라도 자동으로 필터링됩니다. 이를 통해 사용자는 적절한 권한을 가진 에이전트만 보고 사용할 수 있습니다.
ACL 권한 시스템에 대한 자세한 내용은 Agents 문서를 참조하세요.
agent_id
| Key | Type | Description | Example |
|---|---|---|---|
| agent_id | String | 어시스턴트 식별. |
예시:
preset:
agent_id: 'agent_someUniqueId'Assistant 옵션
이 옵션들은 assistants 또는 azureAssistants endpoint를 사용할 때만 적용된다는 점을 유의하세요.
Agents와 유사하게, 모델 옵션은 제외하고 어시스턴트의 구성에 따르는 것이 좋습니다.
assistant_id
| Key | Type | Description | Example |
|---|---|---|---|
| assistant_id | String | 어시스턴트 식별. |
예시:
preset:
assistant_id: 'asst_someUniqueId'instructions
참고: 이는 promptPrefix와는 다르며, 현재 실행 중인 어시스턴트의 기존 지침을 재정의합니다.
어시스턴트의 핵심 지침을 재정의하려는 경우에만 사용하세요.
additional_instructions에는 promptPrefix를 사용하세요.
추가 정보:
- https://platform.openai.com/docs/api-reference/models#runs-createrun-instructions
- https://platform.openai.com/docs/api-reference/runs/createRun#runs-createrun-additional_instructions
| Key | Type | Description | Example |
|---|---|---|---|
| instructions | String | 어시스턴트의 기본 지침을 재정의합니다. |
예시:
preset:
instructions: 'Please handle customer queries regarding order status.'append_current_datetime
각 실행에 대해 현재 날짜와 시간을 additional_instructions에 추가합니다. promptPrefix를 덮어쓰지 않고, 해당 내용에 추가합니다.
| Key | Type | Description | Example |
|---|---|---|---|
| append_current_datetime | Boolean | `promptPrefix`에 정의된 대로 현재 날짜와 시간을 `additional_instructions`에 추가합니다 |
예시:
preset:
append_current_datetime: true모델 옵션
참고: 아래의 각 매개변수에는 이를 지원하는 endpoint에 대한 참고 사항이 포함되어 있습니다.
OpenAI / AzureOpenAI / Custom은 일반적으로temperature,presence_penalty,frequency_penalty,stop,top_p,max_tokens를 지원합니다.
Google / Anthropic은 일반적으로topP,topK,maxOutputTokens를 지원하며, Google은 지원되는 Gemini 텍스트 모델에서url_context도 지원합니다. **Anthropic / OpenRouter / Bedrock (Anthropic 및 Nova 모델)**은promptCache및promptCacheTtl을 지원합니다. Bedrock은region,maxTokens및 기타 몇 가지 매개변수를 지원합니다.
model
지원 대상: 모든 endpoint (
agents제외)
| Key | Type | Description | Example |
|---|---|---|---|
| model | String (nullable) | 프리셋에 사용할 모델 이름으로, 선택한 endpoint 아래에 구성된 모델과 일치해야 합니다. | None |
기본값: None
예시:
preset:
model: 'gpt-4-turbo'temperature
지원 대상:
openAI,azureOpenAI,temperature로 사용),anthropic(temperature로 사용), 그리고 사용자 지정(OpenAI 유사)
| Key | Type | Description | Example |
|---|---|---|---|
| temperature | Number | 모델 응답의 결정론적 성향 또는 "창의성"을 제어합니다. |
예시:
preset:
temperature: 0.7presence_penalty
지원 대상:
openAI,azureOpenAI, custom (OpenAI-like)
일반적으로 Google/Anthropic/Bedrock에서는 사용되지 않음
| Key | Type | Description | Example |
|---|---|---|---|
| presence_penalty | Number | 반복되는 토큰에 대한 페널티로, 새로운 주제에 대한 탐색을 장려합니다. |
예시:
preset:
presence_penalty: 0.3frequency_penalty
지원 대상:
openAI,azureOpenAI, custom (OpenAI-like)
일반적으로 Google/Anthropic/Bedrock에서는 사용되지 않음
| Key | Type | Description | Example |
|---|---|---|---|
| frequency_penalty | Number | 반복되는 토큰에 대한 페널티로, 응답의 중복을 줄입니다. |
예시:
preset:
frequency_penalty: 0.5stop
지원 대상:
openAI,azureOpenAI, custom (OpenAI-like)
일반적으로 Google/Anthropic/Bedrock에서는 사용되지 않음
| Key | Type | Description | Example |
|---|---|---|---|
| stop | Array of Strings | 모델에 대한 정지 토큰(Stop tokens)으로, 발견 시 응답을 종료하도록 지시합니다. |
예시:
preset:
stop:
- 'END'
- 'STOP'top_p
지원 대상:
openAI,azureOpenAI, custom (OpenAI-like)
Google/Anthropic은 종종top_p대신topP(대문자 “P”)를 사용합니다.
| Key | Type | Description | Example |
|---|---|---|---|
| top_p | Number | 토큰의 무작위성을 제어하는 Nucleus sampling 파라미터(0-1)입니다. |
예시:
preset:
top_p: 0.9topP
지원 대상:
anthropic
(top_p와 유사한 목적이지만, 해당 API들에서는 다르게 명명됨)
| Key | Type | Description | Example |
|---|---|---|---|
| topP | Number | Google/Anthropic endpoint를 위한 Nucleus sampling 파라미터입니다. |
예시:
preset:
topP: 0.8topK
지원 대상:
anthropic
(다음 토큰 분포에 대한 k-샘플링 제한)
| Key | Type | Description | Example |
|---|---|---|---|
| topK | Number | 다음 토큰 선택을 상위 K개의 토큰으로 제한합니다. |
예시:
preset:
topK: 40max_tokens
지원 대상:
openAI,azureOpenAI, custom (OpenAI-like)
Google/Anthropic의 경우, (endpoint에 따라)maxOutputTokens또는maxTokens를 사용하세요.
| Key | Type | Description | Example |
|---|---|---|---|
| max_tokens | Number | 모델 응답의 최대 토큰 수입니다. |
예시:
preset:
max_tokens: 4096maxOutputTokens
지원 대상:
anthropic
해당 제공업체의max_tokens와 동일합니다.
| Key | Type | Description | Example |
|---|---|---|---|
| maxOutputTokens | Number | 응답의 최대 토큰 수 (Google/Anthropic). |
예시:
preset:
maxOutputTokens: 2048promptCache
지원 대상:
anthropic, OpenRouter 커스텀 엔드포인트,bedrock(Anthropic 및 Nova 모델) (공급자 프롬프트 캐싱 토글)
| Key | Type | Description | Example |
|---|---|---|---|
| promptCache | Boolean | 공급자 프롬프트 캐싱을 활성화하거나 비활성화합니다. |
기본값: true
예시:
preset:
promptCache: true참고: Bedrock endpoint의 경우, Claude 및 Nova 모델에 대해 프롬프트 캐싱이 자동으로 활성화됩니다. 이를 명시적으로 비활성화하려면 promptCache: false로 설정하세요.
promptCacheTtl
지원 대상:
anthropic, OpenRouter 커스텀 엔드포인트,bedrock(Anthropic 및 Nova 모델) (프롬프트 캐싱이 활성화되었을 때 프롬프트 캐시 수명을 설정합니다)
| Key | Type | Description | Example |
|---|---|---|---|
| promptCacheTtl | Enum | prompt-cache 수명을 설정합니다. 지원되는 값은 `5m` 및 `1h`입니다. | Provider or SDK default |
허용되는 값:
5m1h
예시:
preset:
promptCache: true
promptCacheTtl: '1h'참고: promptCacheTtl은 prompt caching이 비활성화된 경우 무시됩니다. 생략할 경우, 공급자 통합(provider integration)은 기본 prompt-cache 수명을 사용합니다.
reasoning_effort
허용되는 값:
""(빈 문자열 — 설정되지 않음, API 기본값 사용)"none""minimal""low""medium""high""xhigh"(매우 높음)
지원 대상:
openAI,azureOpenAI, custom (OpenAI-like),bedrock(ZAI, MoonshotAI 모델)
| Key | Type | Description | Example |
|---|---|---|---|
| reasoning_effort | String | 모델의 추론 노력 수준을 제어합니다. 추론 노력을 줄이면 응답 속도가 빨라지고 추론에 사용되는 토큰 수가 감소할 수 있습니다. `xhigh` 옵션은 복잡한 문제에 대해 최대 추론 능력을 제공합니다. Bedrock의 경우 허용되는 값은 `low`, `medium`, `high`입니다. |
기본값: "" (설정되지 않음)
예시:
preset:
reasoning_effort: 'low'reasoning_summary
허용되는 값:
""(빈 문자열 — 추론 요약 비활성화)"auto""concise""detailed"
지원 대상:
openAI,azureOpenAI, custom (OpenAI-like)
| Key | Type | Description | Example |
|---|---|---|---|
| reasoning_summary | String | 모델에 대한 추론 요약 기본 설정을 지정합니다. |
기본값: "" (비활성화됨)
예시:
preset:
reasoning_summary: 'detailed'useResponsesApi
지원 대상:
openAI,azureOpenAI, custom (OpenAI-like)
| Key | Type | Description | Example |
|---|---|---|---|
| useResponsesApi | Boolean | 모델에 대한 응답 API를 활성화하거나 비활성화합니다. |
기본값: false
예시:
preset:
useResponsesApi: trueverbosity
허용되는 값:
""(빈 문자열 — 설정되지 않음, API 기본값 사용)"low""medium""high"
지원 대상:
openAI,azureOpenAI, custom (OpenAI-like)
| Key | Type | Description | Example |
|---|---|---|---|
| verbosity | String | 모델 응답의 상세 수준을 제어합니다. |
기본값: "" (설정되지 않음)
예시:
preset:
verbosity: 'low'web_search
지원 대상:
openAI,azureOpenAI, custom (OpenAI-like),anthropic
| Key | Type | Description | Example |
|---|---|---|---|
| web_search | Boolean | 모델에 대한 웹 검색 기능을 활성화하거나 비활성화합니다. |
기본값: false
참고: Google endpoint의 경우, 이 매개변수는 실제 패널에는 Grounding with Google Search로 표시되지만 구현상으로는 web_search를 제어합니다.
예시:
preset:
web_search: trueurl_context
지원 대상: 지원되는 Gemini 텍스트 모델(Gemini 2.5+ 및 Gemini 3.x 포함)의
| Key | Type | Description | Example |
|---|---|---|---|
| url_context | Boolean | Google URL Context를 활성화하여 모델이 사용자 메시지에 포함된 URL을 읽을 수 있도록 합니다. YouTube 링크는 가능한 경우 기본 비디오 이해 입력으로 변환됩니다. |
기본값: false
예시:
preset:
url_context: truedisableStreaming
지원 대상:
openAI,azureOpenAI, custom (OpenAI-like)
| Key | Type | Description | Example |
|---|---|---|---|
| disableStreaming | Boolean | 모델의 스트리밍 응답을 비활성화합니다. |
기본값: false
예시:
preset:
disableStreaming: truethinkingBudget
지원 대상:
anthropic,bedrock(Anthropic 모델)
| Key | Type | Description | Example |
|---|---|---|---|
| thinkingBudget | Number or String | 모델이 내부 추론에 사용할 수 있는 thinking 토큰의 수를 제어합니다. 예산이 클수록 복잡한 문제에 대한 응답 품질이 향상될 수 있습니다. |
기본값: "Auto (-1)" (Google), 2000 (Anthropic, Bedrock (Anthropic 모델))
예시:
preset:
thinkingBudget: '2000'thinkingLevel
지원 대상:
| Key | Type | Description | Example |
|---|---|---|---|
| thinkingLevel | String | Gemini 3+ 모델의 사고 노력 수준을 제어합니다. Gemini 2.5 모델은 대신 `thinkingBudget`을 사용합니다. |
허용되는 값:
""(설정되지 않음/자동)"minimal""low""medium""high"
기본값: "" (설정되지 않음 — 모델이 결정)
예시:
preset:
thinkingLevel: 'medium'effort
지원 대상:
anthropic,bedrock(Anthropic 모델)
| Key | Type | Description | Example |
|---|---|---|---|
| effort | String | 지원되는 Anthropic 모델(예: Claude Opus 4.6+ 및 Claude Fable/Mythos급 모델)에 대한 Adaptive Thinking 노력 수준을 제어합니다. 노력 수준이 높을수록 복잡한 문제를 해결하기 위해 더 많은 사고 토큰이 할당됩니다. |
옵션: "" (설정되지 않음/자동), "low", "medium", "high", "xhigh", "max"
기본값: "" (설정되지 않음 — 모델이 결정)
예시:
preset:
effort: 'high'thinkingDisplay
지원 대상:
anthropic,bedrock(Anthropic 모델)
| Key | Type | Description | Example |
|---|---|---|---|
| thinkingDisplay | String | 모델 응답에 추론 콘텐츠를 포함할지 여부를 제어합니다. Claude Opus 4.7 이상 및 Claude Fable/Mythos급 모델은 기본적으로 사고 콘텐츠를 생략하며, 이 설정을 통해 추론 요약을 선택하거나 명시적으로 억제할 수 있습니다. |
옵션: "auto" (기본값), "summarized", "omitted"
"auto"— LibreChat이 결정합니다: 기본적으로 사고(thinking) 과정을 생략하는 모델(Opus 4.7+ 및 Fable/Mythos급)의 경우"summarized"를 선택하고, 이전 모델의 경우 해당 필드를 비워둡니다."summarized"— 항상 추론에 대한 사후 요약을 요청합니다"omitted"— 항상 추론 콘텐츠를 억제합니다 (지연 시간이 약간 더 짧음)
기본값: "auto"
예시:
preset:
thinkingDisplay: 'summarized'thinking
지원 대상:
anthropic,bedrock(Anthropic 모델)
| Key | Type | Description | Example |
|---|---|---|---|
| thinking | Boolean | 모델이 응답을 생성하기 전에 생각하는 데 시간을 할애할지 여부를 나타냅니다. |
기본값: true
예시:
preset:
thinking: trueregion
지원 대상:
bedrock
(Amazon Bedrock을 위한 AWS 리전을 지정하는 데 사용됩니다)
| Key | Type | Description | Example |
|---|---|---|---|
| region | String | Amazon Bedrock endpoint를 위한 AWS 리전. |
예시:
preset:
region: 'us-east-1'maxTokens
지원 대상:
bedrock
(max_tokens대신 사용됨)
| Key | Type | Description | Example |
|---|---|---|---|
| maxTokens | Number | Amazon Bedrock endpoint의 최대 출력 토큰 수. |
예시:
preset:
maxTokens: 1024이 가이드는 어떤가요?