跳到主要内容
此页面记录了已弃用的功能。 要创建斜杠命令和自定义 Continue,请使用请参阅 config.yaml 参考和迁移指南 此处
以下是可在 config.json 中设置的每个属性的详细信息。 配置架构代码可在 extensions/vscode/config_schema.json 中找到。 除非明确标记为必需,否则所有级别上的所有属性都是可选的

模型

您的 聊天 模型在此处定义,用于 聊天编辑 每个模型都有针对其提供程序和功能量身定制的特定配置选项,这些选项在编辑 json 时可作为建议。 属性:
  • title (必填): 分配给模型的标题,显示在下拉菜单中等。
  • provider (必填): 模型的提供程序,它决定了类型和交互方法。 选项包括 openai, ollama, xAI 等,请参阅 IntelliJ 建议。
  • model (必填): 模型的名称,用于提示模板自动检测。 使用 AUTODETECT 特殊名称以获取所有可用模型。
  • apiKey: OpenAI、Anthropic、Cohere 和 xAI 等提供程序所需的 API 密钥。
  • apiBase: LLM API 的基本 URL。
  • contextLength: 模型的最大上下文长度,通常以 token 为单位 (默认值: 2048)。
  • maxStopWords: 允许的最大停用词数量,以避免因列表过长而导致 API 错误。
  • template: 用于格式化消息的聊天模板。 大多数模型会自动检测,但可以覆盖。 请参阅 IntelliJ 建议。
  • promptTemplates: 提示模板名称 (例如 edit) 到模板字符串的映射。 有关自定义详细信息,请参阅 深入探讨部分
  • completionOptions: 特定于模型的补全选项,格式与顶级 completionOptions 相同,它们会覆盖顶级选项。
  • systemMessage: 将在 LLM 响应之前出现的系统消息。
  • requestOptions: 特定于模型的 HTTP 请求选项,格式与顶级 requestOptions 相同,它们会覆盖顶级选项。
  • apiType: 指定 API 类型 (openaiazure)。
  • apiVersion: Azure API 版本 (例如 2023-07-01-preview)。
  • engine: 用于 Azure OpenAI 请求的引擎。
  • capabilities: 覆盖自动检测到的功能
    • uploadImage: 布尔值,指示模型是否支持图像上传。
    • tools: 布尔值,指示模型是否支持工具使用。
(仅限 AWS)
  • profile: 用于授权的 AWS 安全配置文件。
  • modelArn: 导入模型的 AWS ARN (例如,对于 bedrockimport 提供程序)。
  • region: 模型托管的区域 (例如 us-east-1, eu-central-1)。
示例: config.json
{
  "models": [
    { "title": "Ollama", "provider": "ollama", "model": "AUTODETECT" },
    {
      "model": "gpt-4o",
      "contextLength": 128000,
      "title": "GPT-4o",
      "provider": "openai",
      "apiKey": "YOUR_API_KEY"
    }
  ]
}

tab自动补全模型

指定用于 tab 自动补全的模型,默认为 Ollama 实例。 此属性使用与 models 相同的格式。 可以是模型数组或单个模型的对象。 示例 config.json
{
  "tabAutocompleteModel": {
    "title": "My Starcoder",
    "provider": "ollama",
    "model": "starcoder2:3b"
  }
}

tab自动补全选项

指定 tab 自动补全行为的选项。
注意: 其中许多参数也可以通过 config.yaml 中的 autocompleteOptions 字段按模型配置。 有关详细信息,请参阅 YAML 参考
属性
  • disable: 如果为 true,则禁用 tab 自动补全 (默认值: false)。
  • maxPromptTokens: 提示的最大 token 数量 (默认值: 1024)。
  • debounceDelay: 触发自动补全之前的延迟 (以毫秒为单位) (默认值: 350)。
  • maxSuffixPercentage: 后缀的最大提示百分比 (默认值: 0.2)。
  • prefixPercentage: 前缀的输入百分比 (默认值: 0.3)。
  • template: 用于自动补全的模板字符串,使用 Mustache 模板。 您可以使用 {{{prefix}}}, {{{suffix}}}, {{{filename}}}, {{{reponame}}}{{{language}}} 变量。
  • onlyMyCode: 如果为 true,则仅包含存储库中的代码 (默认值: true)。
示例 config.json
{
  "tabAutocompleteOptions": {
    "debounceDelay": 500,
    "maxPromptTokens": 1500,
    "disableInFiles": ["*.md"]
  }
}

嵌入提供程序

嵌入模型设置 - 用于 @Codebase 和 @docs 的模型。 属性:
  • provider (必填): 指定嵌入提供程序,选项包括 transformers.js, ollama, openai, cohere, gemini 等。
  • model: 嵌入的模型名称。
  • apiKey: 提供程序的 API 密钥。
  • apiBase: API 请求的基本 URL。
  • requestOptions: 特定于嵌入提供程序的额外 HTTP 请求设置。
  • maxEmbeddingChunkSize: 每个文档块的最大 token 数量。 最小为 128 个 token。
  • maxEmbeddingBatchSize: 每个请求的最大块数量。 最小为 1 个块。
(仅限 AWS)
  • region: 指定托管模型的区域。
  • profile: AWS 安全配置文件。
示例: config.json
{
  "embeddingsProvider": {
    "provider": "openai",
    "model": "text-embedding-ada-002",
    "apiKey": "<API_KEY>",
    "maxEmbeddingChunkSize": 256,
    "maxEmbeddingBatchSize": 5
  }
}

补全选项

控制文本生成和补全设置行为的参数。 顶级 completionOptions 适用于所有模型,除非在模型级别被覆盖 属性:
  • stream: 是否流式传输 LLM 响应。 目前仅受 anthropicollama 提供程序支持;其他提供程序将始终流式传输 (默认值: true)。
  • temperature: 控制补全的随机性。 值越高,输出越多样。
  • topP: 核采样器的累积概率。 较低的值将响应限制在顶部概率质量内的 token。
  • topK: 每一步考虑的最大 token 数量。 将生成的文本限制在此概率内的 token。
  • presencePenalty: 阻止模型生成已出现在输出中的 token。
  • frequencyPenalty: 根据 token 在文本中的频率惩罚 token,减少重复。
  • mirostat: 启用 Mirostat 采样,它在文本生成过程中控制困惑度。 由 Ollama、LM Studio 和 llama.cpp 提供程序支持 (默认值: 0, 其中 0 = 禁用,1 = Mirostat,2 = Mirostat 2.0)。
  • stop: 停止 token 数组,当遇到这些 token 时,将终止补全。 允许指定多个结束条件。
  • maxTokens: 在补全中生成的最大 token 数量 (默认值: 2048)。
  • numThreads: 生成过程中使用的线程数。 仅适用于 Ollama 作为 num_thread
  • keepAlive: 对于 Ollama,此参数设置在上次请求后模型保持加载的秒数,如果处于非活动状态则将其从内存中卸载 (默认值: 1800 秒,即 30 分钟)。
  • numGpu: 对于 Ollama,此参数覆盖将用于将模型加载到 VRAM 中的 GPU 层数。
  • useMmap: 对于 Ollama,此参数允许将模型映射到内存中。 如果禁用,可以提高低端设备的响应时间,但会减慢流速。
  • reasoning: 为 Anthropic Claude 3.7+ 和某些 Ollama 模型启用思考/推理。
  • reasoningBudgetTokens: 为 Anthropic Claude 3.7+ 模型设置思考/推理的预算 token。
示例 config.json
{ "completionOptions": { "stream": false, "temperature": 0.5 } }

请求选项

默认 HTTP 请求选项,适用于所有模型和上下文提供程序,除非在模型级别被覆盖。 属性:
  • timeout: 对 LLM 的每个请求的超时时间 (默认值: 7200 秒)。
  • verifySsl: 是否验证请求的 SSL 证书。
  • caBundlePath: 自定义 CA 捆绑包的路径,用于 HTTP 请求 - .pem 文件的路径 (或路径数组)
  • proxy: 用于 HTTP 请求的代理 URL。
  • headers: HTTP 请求的自定义头部。
  • extraBodyProperties: 要与 HTTP 请求正文合并的附加属性。
  • noProxy: 应绕过指定代理的主机名列表。
  • clientCertificate: 用于 HTTP 请求的客户端证书。
    • cert: 客户端证书文件的路径。
    • key: 客户端证书密钥文件的路径。
    • passphrase: 客户端证书密钥文件的可选密码。
示例 config.json
{ "requestOptions": { "headers": { "X-Auth-Token": "xxx" } } }

重排器

用于响应排名的重排器模型的配置。 属性:
  • name (必填): 重排器名称,例如 cohere, voyage, llm, huggingface-tei, bedrock
  • 参数:
    • model: 模型名称
    • apiKey: API 密钥
    • region: 区域 (仅限 Bedrock)
示例 config.json
{
  "reranker": {
    "name": "voyage",
    "params": { "model": "rerank-2", "apiKey": "<VOYAGE_API_KEY>" }
  }
}

文档

要索引的文档站点列表。 属性:
  • title (必填): 文档站点的标题,显示在下拉菜单中等。
  • startUrl (必填): 抓取的起始页面 - 通常是文档的根页面或介绍页面
  • maxDepth: 抓取的最大链接深度。 默认 4
  • favicon: 网站 favicon 的 URL (默认值为 startUrl/favicon.ico)。
  • useLocalCrawling: 跳过默认爬虫,仅使用本地爬虫进行爬取。
示例 config.json
"docs": [    {    "title": "Continue",    "startUrl": "https://docs.continue.org.cn/intro",    "faviconUrl": "https://docs.continue.org.cn/favicon.ico",  }]

斜杠命令

通过在侧边栏中键入“/”来启动的自定义命令。 命令包括预定义功能或可以是用户定义的。 属性:
  • name: 命令名称。 选项包括“issue”、“share”、“cmd”、“http”、“commit”和“review”。
  • description: 命令的简要描述。
  • step: (已弃用) 用于内置命令;为预配置选项设置名称。
  • params: 配置命令行为的附加参数 (特定于命令 - 请参阅命令代码)
以下命令是内置的,可以添加到 config.json 中使其可见

/share

生成当前聊天历史记录的可共享 markdown 副本。 config.json
{
  "slashCommands": [
    {
      "name": "share",
      "description": "Export the current chat session to markdown",
      "params": { "outputDir": "~/.continue/session-transcripts" }
    }
  ]
}
使用 outputDir 参数指定要保存 markdown 文件的位置。

/cmd

从自然语言生成 shell 命令,并 (仅在 VS Code 中) 自动将其粘贴到终端中。 config.json
{
  "slashCommands": [
    { "name": "cmd", "description": "Generate a shell command" }
  ]
}

/commit

向 LLM 显示您当前的 git diff 并要求它生成提交消息。 config.json
{
  "slashCommands": [
    {
      "name": "commit",
      "description": "Generate a commit message for the current changes"
    }
  ]
}

/http

在您自己的 HTTP 端点编写自定义斜杠命令。 在 params 对象中设置您已设置的端点的“url”。 该端点应返回一系列字符串更新,这些更新将流式传输到 Continue 侧边栏。 请参阅我们基本的 FastAPI 示例 以供参考。 config.json
{
  "slashCommands": [
    {
      "name": "http",
      "description": "Does something custom",
      "params": { "url": "<my server endpoint>" }
    }
  ]
}

/issue

描述您要生成的问题,Continue 会将其转换为格式良好的标题和正文,然后为您提供草稿链接,以便您可以提交。 确保设置要为其生成问题的存储库的 URL。 config.json
{
  "slashCommands": [
    {
      "name": "issue",
      "description": "Generate a link to a drafted GitHub issue",
      "params": { "repositoryUrl": "https://github.com/continuedev/continue" }
    }
  ]
}

/onboard

入职斜杠命令通过分析项目结构、README 和依赖文件来帮助您熟悉新项目。 它识别关键文件夹,解释其用途,并突出显示使用的流行包。 此外,它还提供对项目架构的见解。 config.json
{
  "slashCommands": [
    {
      "name": "onboard",
      "description": "Familiarize yourself with the codebase"
    }
  ]
}
示例: config.json
{
  "slashCommands": [
    { "name": "commit", "description": "Generate a commit message" },
    { "name": "share", "description": "Export this session as markdown" },
    { "name": "cmd", "description": "Generate a shell command" }
  ]
}

自定义命令

侧边栏中用于提示快捷方式的用户定义命令,允许快速访问常用操作。 属性:
  • name: 自定义命令的名称。
  • prompt: 命令的文本提示。
  • description: 简要描述命令的功能。
示例: config.json
{
  "customCommands": [
    {
      "name": "test",
      "prompt": "Write a comprehensive set of unit tests for the selected code. It should setup, run tests that check for correctness including important edge cases, and teardown. Ensure that the tests are complete and sophisticated. Give the tests just as chat output, don't edit any file.",
      "description": "Write unit tests for highlighted code"
    }
  ]
}

上下文提供程序

在聊天中键入时将显示为选项的预定义上下文提供程序列表,以及它们通过 params 进行的自定义。 属性:
  • name: 上下文提供程序的名称,例如 docsweb
  • params: 特定于上下文提供程序的参数记录,用于配置上下文行为
示例 config.json
{
  "contextProviders": [
    { "name": "code", "params": {} },
    { "name": "docs", "params": {} },
    { "name": "diff", "params": {} },
    { "name": "open", "params": {} }
  ]
}

用户令牌

一个可选的令牌,用于识别用户,主要用于经过身份验证的服务。

系统消息

定义在语言模型每次响应之前出现的系统消息,提供指导或上下文。

实验性

有几个实验性配置参数可用,如下所述: experimental:
  • defaultContext: 定义 LLM 的默认上下文。 使用与 contextProviders 相同的格式,但包含一个附加的 query 属性来指定自定义查询参数。
  • 模型角色:
    • inlineEdit: 内联编辑的模型标题。
    • applyCodeBlock: 应用代码块的模型标题。
    • repoMapFileSelection: 仓库地图文件选择的模型标题。
  • modelContextProtocolServers: 请参阅 模型上下文协议
示例 config.json
{
  "experimental": {
    "modelRoles": { "inlineEdit": "Edit Model" },
    "modelContextProtocolServers": [
      {
        "transport": {
          "type": "stdio",
          "command": "uvx",
          "args": ["mcp-server-sqlite", "--db-path", "/Users/NAME/test.db"]
        }
      }
    ]
  }
}

完全弃用的设置

一些已弃用的 config.json 设置不再存储在 config 中,并已移至可通过用户设置进行编辑。 如果在 config.json 中找到,它们将自动迁移到用户设置并从 config.json 中删除。
  • allowAnonymousTelemetry: 此值将迁移到最安全的合并值 (如果任一为 false 则为 false)。
  • promptPath: 此值将在迁移期间覆盖。
  • disableIndexing: 此值将迁移到最安全的合并值 (如果任一为 true 则为 true)。
  • disableSessionTitles/ui.getChatTitles: 此值将迁移到最安全的合并值 (如果任一为 true 则为 true)。 如果设置为 false,则 getChatTitles 优先。
  • tab自动补全选项
    • useCache: 此值将在迁移期间覆盖。
    • disableInFiles: 此值将迁移到最安全的合并值 (文件匹配数组合并/去重)
    • multilineCompletions: 此值将在迁移期间覆盖。
  • 实验性
    • useChromiumForDocsCrawling: 此值将在迁移期间覆盖。
    • readResponseTTS: 此值将在迁移期间覆盖。
  • ui - 所有都将在迁移期间覆盖
    • 代码块工具栏位置
    • 字体大小
    • 代码换行
    • 显示原始 Markdown
    • 显示聊天滚动条