* feat(chat): power legacy chat from the model-management "chat" backend Legacy chat, project chat, vault QA, quick command, and quick ask now select models from the model-management "chat" backend (backends.chat.enabledModels) instead of the legacy activeModels / defaultModelKey. A new ConfiguredModel→CustomModel bridge feeds the existing ChatModelManager (the stubbed v4 ChatModelFactory is untouched), and a new "Quick Chat" curation section under the Agents settings tab lets users choose which BYOK/Plus models appear in the chat picker. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * style(skills): apply prettier formatting to builtinSkills.test.ts Collapse a multi-line expect() onto one line to satisfy the project's prettier config (surfaced when running npm run format). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * fix(chat): stabilize chat backend model selections * fix(chat): address chat backend review regressions * fix(chat): show legacy chat models in a flat list Drop the per-provider _group on chat picker entries so the legacy chat model picker renders a single flat list (provider icons inline, no section headers), matching pre-migration behavior. Agent Mode keeps its per-backend headers via its own helper. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * refactor(chat): remove dead per-model parameter editing After the model-management chat migration, per-model parameter editing is unreachable: the chat selection is now a configuredModelId UUID, so the ChatSettingsPopover editor (gated on a legacy activeModels match) never renders, and TokenLimitWarning's activeModels lookup always misses and falls back to global settings. v4 agent mode no longer supports per-model parameter editing. - ChatSettingsPopover: drop the model-param plumbing (originalModel / bridgedModel / canEditModelParameters, local-model save/debounce, ModelParametersEditor); keep System Prompt + Disable Builtin controls. - TokenLimitWarning: always open the global Copilot settings tab. - Delete the now-orphaned ModelEditDialog and ModelParametersEditor. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * refactor(chat): drop dead legacy model-key fallback in streaming session The streaming chat session's chain cache key fell back to name|provider when configuredModelId was absent. Both callers (Quick Ask, custom-command chat) now source their model from useResolvedChatBackendModel -> configuredModelToCustomModel, which always stamps configuredModelId, so the fallback was unreachable. Derive the key directly from configuredModelId; a model without one is treated as no usable model via the existing guards. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * refactor(chat): remove test-only getLegacyChatModelKey helper The singular getLegacyChatModelKey was exported but had no production callers — only the barrel re-export and one test assertion referenced it. Remove it (and its export + assertion); the load-bearing plural getLegacyChatModelKeys, which powers legacy-key resolution in isChatModelSelectionForEntry, is kept and now carries the rationale comment. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * refactor(model-management): dedupe catalog-id to provider map Drop the duplicate CATALOG_ID_TO_LEGACY_PROVIDER table in chatModelSelection and reuse the now-exported CATALOG_ID_TO_CHAT_PROVIDER from configuredModelToCustomModel (extended with anthropic/google for the legacy-key path). Single source of truth for catalog-id to ChatModelProviders. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
6.8 KiB
Models and Parameters
This guide explains how to manage chat models, embedding models, and the parameters that control how the AI behaves.
Chat Models
Built-In Models
Copilot comes with a set of built-in models across many providers. Some are always included ("core" models); others can be enabled or disabled.
| Model | Provider | Capabilities |
|---|---|---|
| copilot-plus-flash | Copilot Plus | Vision (Plus exclusive) |
| google/gemini-2.5-flash | OpenRouter | Vision |
| google/gemini-2.5-pro | OpenRouter | Vision |
| google/gemini-3.5-flash | OpenRouter | Vision, Reasoning |
| google/gemini-3.1-pro-preview | OpenRouter | Vision, Reasoning |
| openai/gpt-5.4 | OpenRouter | Vision |
| openai/gpt-5-mini | OpenRouter | Vision |
| gpt-5.4 | OpenAI | Vision |
| gpt-5-mini | OpenAI | Vision |
| gpt-4.1 | OpenAI | Vision |
| gpt-4.1-mini | OpenAI | Vision |
| claude-opus-4-6 | Anthropic | Vision, Reasoning |
| claude-sonnet-4-5-20250929 | Anthropic | Vision, Reasoning |
| gemini-2.5-pro | Vision | |
| gemini-2.5-flash | Vision | |
| gemini-3.5-flash | Vision, Reasoning | |
| grok-4-1-fast | XAI | Vision |
| deepseek-chat | DeepSeek | — |
| deepseek-reasoner | DeepSeek | Reasoning |
Model Capability Badges
Models may show capability badges:
- Reasoning — Extended internal thinking before responding; better for complex tasks
- Vision — Can process images (e.g., screenshots, diagrams embedded in notes)
- Web Search — Can access the internet directly (model-native feature)
Managing Models
Go to Settings → Copilot → Models (BYOK) to add or edit providers and choose the models available from each provider. Then go to Settings → Copilot → Agents → Quick Chat models to control which configured models appear in chat model selectors.
Adding Custom Models
If your provider offers a model that isn't in the built-in list, you can add it manually:
- Go to Settings → Copilot → Models (BYOK)
- Add a provider or custom OpenAI-compatible endpoint
- Enter the API key and base URL when required
- Select or enter the models exposed by that provider
- Save
Importing Models from Provider
You can automatically import the full list of available models from a provider:
- Go to Settings → Copilot → Models (BYOK)
- Add or edit a provider
- Copilot will fetch the provider's model list so you can select models to configure
Embedding Models
Embedding models convert text into numerical vectors, which powers semantic (meaning-based) search in Vault QA and the "Relevant Notes" feature.
Built-In Embedding Models
| Model | Provider |
|---|---|
| copilot-plus-small | Copilot Plus (Plus exclusive) |
| copilot-plus-large | Copilot Plus (Believer exclusive) |
| copilot-plus-multilingual | Copilot Plus (Plus exclusive) |
| openai/text-embedding-3-small | OpenRouter |
| text-embedding-3-small | OpenAI |
| text-embedding-3-large | OpenAI |
| embed-multilingual-light-v3.0 | Cohere |
| text-embedding-004 | |
| gemini-embedding-001 | |
| Qwen3-Embedding-0.6B | SiliconFlow |
Selecting an Embedding Model
Go to Settings → Copilot → QA → Embedding Model.
If you change embedding models, you must rebuild the vault index because the old vectors are incompatible with the new model. Copilot will prompt you to confirm before rebuilding.
What Embeddings Affect
- Vault QA mode — Uses embeddings to find relevant notes by meaning
- Semantic Search — The "Enable Semantic Search" toggle in QA settings
- Relevant Notes — Shows semantically similar notes in its own pane (command palette: Open Relevant Notes)
Model Parameters
These settings control how the AI responds. Global defaults live in Settings → Copilot → Model. You can override them per-session using the gear icon in the chat panel.
Temperature
Controls how random or creative the responses are.
- Range: 0.0–1.0
- Default: 0.1
- Low (0.0–0.2): Precise, factual, deterministic
- Medium (0.4–0.6): Balanced
- High (0.8–1.0): Creative, varied, less predictable
Max Tokens
Maximum number of tokens in the AI's response. A token is roughly ¾ of a word (so 1,000 tokens ≈ 750 words).
- Default: 6,000
- Higher values allow longer responses but cost more
Conversation Turns in Context
How many past conversation turns to include in each request. More turns = more context but larger requests.
- Default: 15 turns
- Reduce this if you hit context limits or want to lower costs
Auto-Compact Threshold
When the conversation reaches this many tokens, older messages are automatically summarized.
- Default: 128,000 tokens
- Range: 64,000–1,000,000 tokens
- See Chat Interface for details
Reasoning Effort
For reasoning-capable models (like deepseek-reasoner, claude-opus-4-6), controls how much internal reasoning the model does before responding.
- Options: minimal, low, medium, high, xhigh
- Default: low
- Higher effort = better results on complex tasks, slower responses
Verbosity
For models that support it, controls response length and detail.
- Options: low, medium, high
- Default: medium
Top P
An alternative to temperature for controlling randomness. Leave at default unless you have a specific reason to change it.
Frequency Penalty
Reduces the likelihood of the model repeating itself.
Default Model Selection
Your default model is the one Copilot uses when you open a new chat. Set it in: Settings → Copilot → Basic → Default Chat Model
The dropdown contains models enabled under Agents → Quick Chat models.
Related
- LLM Providers — Set up API keys for your provider
- Vault Search and Indexing — How embedding models are used