简介
Continue 代理使用config.yaml 规范定义。 代理由模型、规则和工具(MCP 服务器)组成。配置模型、规则和工具
了解如何使用 Continue 的配置系统,包括使用中心模型、规则和工具,创建本地配置以及组织您的设置。
理解配置
了解如何构建和配置配置,理解其功能,并为您的开发工作流程进行自定义。
属性
以下是可以在config.yaml 中设置的每个属性的详细信息。 除非明确标记为必需,否则所有级别的所有属性都是可选的。 config.yaml 配置文件中的顶级属性是:
name
name 属性指定您的项目或配置的名称。
config.yaml
version
version 属性指定您的项目或配置的版本。
schema
schema 属性指定用于 config.yaml 的 schema 版本,例如 v1
models
models 部分定义了配置中使用的语言模型。模型用于聊天、编辑和摘要等功能。 属性:-
name(必需):在配置中唯一标识模型的名称。 -
provider(必需):模型的提供者(例如,openai、ollama)。 -
model(必需):具体的模型名称(例如,gpt-4、starcoder)。 -
apiBase:可用于覆盖每个模型指定的默认 API 基址 -
roles:一个数组,指定此模型可以扮演的角色,例如chat、autocomplete、embed、rerank、edit、apply、summarize。默认值为[chat, edit, apply, summarize]。请注意,目前未使用summarize角色。 -
capabilities:表示模型功能的字符串数组,它将覆盖 Continue 根据提供者和模型进行的自动检测。有关详细信息,请参阅模型功能指南。支持的功能包括tool_use:启用函数/工具调用支持(代理模式所需)image_input:启用图像上传和处理支持
-
maxStopWords:允许的最大停用词数量,以避免因列表过长导致 API 错误。 -
promptTemplates:可用于覆盖不同模型角色的默认提示模板。有效值为chat、edit、apply和autocomplete。chat属性必须是有效的模板名称,例如llama3或anthropic。 -
chatOptions:如果模型包含chat角色,这些设置适用于代理和聊天模式baseSystemMessage:可用于覆盖聊天模式的默认系统提示。baseAgentSystemMessage:可用于覆盖代理模式的默认系统提示。basePlanSystemMessage:可用于覆盖计划模式的默认系统提示。
-
embedOptions:如果模型包含embed角色,这些设置适用于嵌入maxChunkSize:每个文档块的最大标记数。最小为 128 个标记。maxBatchSize:每个请求的最大块数。最小为 1 个块。
-
defaultCompletionOptions:模型设置的默认补全选项。contextLength:模型的最大上下文长度,通常以标记为单位。maxTokens:一次补全中生成的最大标记数。temperature:控制补全的随机性。值范围从0.0(确定性)到1.0(随机)。topP:核心采样中的累积概率。topK:每一步考虑的最大标记数。stop:一个停用标记数组,将终止补全。reasoning:布尔值,用于启用 Anthropic Claude 3.7+ 和某些 Ollama 模型的思考/推理功能。reasoningBudgetTokens:Anthropic Claude 3.7+ 模型中思考/推理的预算标记数。
-
requestOptions:特定于模型的 HTTP 请求选项。-
timeout:对语言模型每个请求的超时。 -
verifySsl:是否验证请求的 SSL 证书。 -
caBundlePath:HTTP 请求的自定义 CA 捆绑包路径。 -
proxy:HTTP 请求的代理 URL。 -
headers:HTTP 请求的自定义标头。 -
extraBodyProperties:与 HTTP 请求正文合并的其他属性。 -
noProxy:应绕过指定代理的主机名列表。 -
clientCertificate:HTTP 请求的客户端证书。cert:客户端证书文件的路径。key:客户端证书密钥文件的路径。passphrase:客户端证书密钥文件的可选密码。
-
-
autocompleteOptions:如果模型包含autocomplete角色,这些设置适用于 Tab 键自动补全disable:如果为true,则禁用此模型的自动补全。maxPromptTokens:自动补全提示的最大标记数。debounceDelay:触发自动补全前的延迟(毫秒)。modelTimeout:自动补全请求的模型超时(毫秒)。maxSuffixPercentage:为后缀分配的提示的最大百分比。prefixPercentage:为前缀分配的输入百分比。transform:如果为false,则禁用多行补全的修剪。默认为true。适用于生成更好多行补全而无需转换的模型。template:使用 Mustache 语法的自定义自动补全模板。您可以使用{{{ prefix }}}、{{{ suffix }}}、{{{ filename }}}、{{{ reponame }}}和{{{ language }}}变量。onlyMyCode:仅包含仓库中的代码作为上下文。useCache:如果为true,则启用补全缓存。useImports:如果为true,则在上下文中包含导入。useRecentlyEdited:如果为true,则在上下文中包含最近编辑的文件。useRecentlyOpened:如果为true,则在上下文中包含最近打开的文件。
config.yaml
context
context 部分定义了上下文提供者,它们向语言模型提供额外的信息或上下文。每个上下文提供者都可以使用特定参数进行配置。 有关每个上下文提供者的使用/参数的更多信息可以在此处找到 属性:provider(必需):上下文提供者的标识符或名称(例如,code、docs、web)name:提供者的可选名称params:配置上下文提供者行为的可选参数。
config.yaml
rules
规则被连接到所有 代理、聊天 和 编辑 请求的系统消息中。 配置示例:config.yaml
rules.md
prompts
可以使用 / 命令调用提示。 配置示例:config.yaml
prompts.md
docs
要索引的文档站点列表。 属性:name(必需):文档站点的名称,显示在下拉菜单等中。startUrl(必需):抓取的起始页面 - 通常是文档的根页面或介绍页面favicon:站点图标的 URL(默认为startUrl的/favicon.ico)。useLocalCrawling:跳过默认爬虫,仅使用本地爬虫抓取。
config.yaml
mcpServers
Anthropic 提出的 模型上下文协议 是一个统一提示、上下文和工具使用的标准。Continue 支持任何带有 MCP 上下文提供者的 MCP 服务器。 属性:name(必需):MCP 服务器的名称。command(必需):用于启动服务器的命令。args:命令的可选参数数组。env:服务器进程的环境变量的可选映射。cwd:运行命令的可选工作目录。可以是绝对路径或相对路径。requestOptions:sse和streamable-http服务器的可选请求选项。格式与 模型 requestOptions 相同。connectionTimeout:与 MCP 服务器初始连接的可选超时
config.yaml
data
将发送开发数据的目的地。 属性:name(必需):数据目的地的显示名称destination(必需):将接收数据目的地/端点。可以是- 接收 JSON blob 的 HTTP 端点
- 将事件转储到
.jsonl文件的目录的文件 URL
schema(必需):要发送的 JSON blob 的 schema 版本。选项包括0.1.0和0.2.0events:要包含的事件名称数组。如果未指定,则默认为所有事件。level:事件字段的预定义过滤器。选项包括all和noCode;后者排除文件内容、提示和补全等数据。默认为allapiKey:随请求发送的 API 密钥(Bearer 标头)requestOptions:事件 POST 请求的选项。格式与 模型 requestOptions 相同。
config.yaml
完整的 YAML 配置示例
总而言之,以下是config.yaml 配置文件的完整示例
config.yaml
使用 YAML 锚点避免配置重复
您还可以使用节点锚点来避免属性重复。为此,需要添加 YAML 版本头%YAML 1.1,以下是使用锚点的 config.yaml 配置文件的示例
config.yaml
config.json 已弃用
config.yaml 取代了已弃用的 config.json。查看迁移指南以获取从旧格式转换的帮助。