ToB企服应用市场:ToB评测及商务社交产业平台

标题: Continue开源AI编程助手:堪比Copilot的VSCode最强生产力插件 [打印本页]

作者: 兜兜零元    时间: 2025-2-13 05:34
标题: Continue开源AI编程助手:堪比Copilot的VSCode最强生产力插件
引言

在之前的文章里,我经常先容关于Cline的利用,不过作为开源方案,Cline主要关注的是Agent的能力,而对于Editor的功能,好比主动补全、inline编辑等,则没有关注,所以本日给各人先容另一款强大VSCode编程插件Continue。它的主要特点则是通过AI辅助来提升开辟效率,资助开辟者更快速地理解、编写和优化代码,走的是Copilot的路线,正好是对Cline的增补。本文将深入探究Continue的特性、安装方法、焦点功能及其扩展能力,资助读者全面相识并把握这款工具。

Continue的特点

Continue的主要特点包括:

除此之外,Continue支持高度的自定义和扩展性,比方通过不同的模型配置(Chat Model和Autocomplete Model)、上下文提供器(Context Providers)以及斜杠命令(Slash Commands)来满意开辟者的个性化需求。
安装方法

要开始利用Continue,用户需要按照以下步骤完成安装:

焦点功能详解

1. 聊天功能(Chat)

Continue的聊天功能允许开辟者通过天然语言与AI进行交互,资助理解复杂的代码逻辑、解决问题或天生代码片段。比方,开辟者可以在侧边栏中提问"怎样优化这段代码?"并获得详细的发起。
2. 主动补全(Autocomplete)

主动补全功能通过及时分析开辟者正在编写的代码,提供智能的补全发起。这一功能特殊适合需要快速编写标准化代码或重复性代码的场景。
3. 代码编辑(Edit)

代码编辑功能允许用户直接在当前文件中修改代码,而无需切换到其他文件或窗口。比方,用户可以通过简单的命令要求AI重构某段代码。
4. 快捷操作(Actions)

快捷操作功能提供了一系列预设的快捷方式,资助用户快速完成常见任务,比方格式化代码、天生注释或执行测试。
AI模型配置指南

Continue的强大功能离不开其背后的多样化AI模型支持。作为一个开源的AI编程助手,Continue构建了完整的模型生态系统,包括聊天模型(Chat Model)、主动补全模型(Autocomplete Model)、重排序模型(Reranking Model)和嵌入模型(Embeddings Model)。这些模型各司其职,又相互配合,为用户提供全方位的智能编程体验。更紧张的是,Continue支持机动配置各类模型,用户可以根据自己的需求选择不同的模型提供商,打造个性化的AI编程环境。
聊天模型(Chat Model)

聊天模型是一种专为对话场景筹划的大型语言模型(LLM),通常包罗405B+参数,能够回回复杂问题并天生高质量代码。在Continue中,聊天模型被广泛用于聊天、编辑和快捷操作功能。
保举的聊天模型包括:

主动补全模型(Autocomplete Model)

主动补全模型专为"中心填充"(Fill-In-The-Middle,FIM)任务筹划,能够根据代码的前缀和后缀预测中心的内容。相比聊天模型,主动补全模型的参数目更小(通常为3B),但在特定任务上表现更优。
保举的主动补全模型包括:

DeepSeek模型配置示例

DeepSeek是现在最火的开源模型之一,既然是全开源方案,天然是要支持配置开源的聊天模型和主动补全模型。下面是DeepSeek的配置示例:

  1. {
  2.   "models": [
  3.     {
  4.       "title": "DeepSeek Chat",
  5.       "provider": "deepseek",
  6.       "model": "deepseek-chat",
  7.       "apiKey": "[API_KEY]"
  8.     }
  9.   ]
  10. }
复制代码

  1. {
  2.   "tabAutocompleteModel": {
  3.     "title": "DeepSeek Coder",
  4.     "provider": "deepseek",
  5.     "model": "deepseek-coder"
  6.   }
  7. }
复制代码
重排序模型(Reranking Model)

重排序模型是一种专门训练用于评估文本相关性的模型。它接收两段文本(通常是用户问题和文档)作为输入,返回一个0到1之间的相关性分数,用于估计该文档对回答问题的资助程度。与LLM相比,重排序模型通常体积更小、运行速度更快、成本也更低。
在Continue中,重排序模型主要用于@Codebase功能,资助筛选向量搜刮后最相关的代码片段。
保举的重排序模型包括:

配置示例(利用 Voyage AI):
  1. {
  2.   "reranker": {
  3.     "name": "voyage",
  4.     "params": {
  5.       "model": "rerank-2",
  6.       "apiKey": "<VOYAGE_API_KEY>"
  7.     }
  8.   }
  9. }
复制代码
嵌入模型(Embeddings Model)

嵌入模型是专门用于将文本转换为向量表示的AI模型,这些向量可以快速比力以确定文本之间的相似度。与LLM相比,嵌入模型同样具有体积小、速度快、成本低的特点。
在Continue中,嵌入模型在索引过程中天生向量,并被@Codebase功能用于对代码库进行相似度搜刮。
保举的嵌入模型包括:

配置示例(利用 Voyage AI):
  1. {
  2.   "embeddingsProvider": {
  3.     "provider": "voyage",
  4.     "model": "voyage-code-3",
  5.     "apiKey": "<VOYAGE_API_KEY>"
  6.   }
  7. }
复制代码
别的,Continue还支持多种其他嵌入模型提供商,如 OpenAI、Cohere、Gemini、Vertex AI、Mistral 等,用户可以根据需求选择符合的模型。
Continue扩展功能详解

Continue的扩展性是其一大亮点,主要体现在上下文提供器(Context Providers)和斜杠命令(Slash Commands)两个方面。
上下文提供器(Context Providers)

上下文提供器允许用户通过输入@来选择需要提供给AI的上下文内容。每个上下文提供器都是一个插件,用户可以根据需求添加或自定义。以下是一些常见的上下文提供器及其用途:

配置示例:
  1. {
  2.   "contextProviders": [
  3.     {
  4.       "name": "file"
  5.     },
  6.     {
  7.       "name": "git-diff"
  8.     },
  9.     {
  10.       "name": "terminal"
  11.     },
  12.     {
  13.       "name": "web",
  14.       "params": { "n": 5 }
  15.     }
  16.   ]
  17. }
复制代码
用户可以根据项目需求添加更多上下文提供器,比方 @Tree(工作区布局)、@Problems(文件问题)或 @Debugger(调试器内容)。
斜杠命令(Slash Commands)

斜杠命令是Continue的另一大特色,用户可以通过输入/激活这些快捷指令。比方,内置的/edit命令可以直接将编辑内容流式传输到编辑器中。
内置的斜杠命令包括:

Continue提供了两种自定义斜杠命令的方式:
1. 利用天然语言提示(保举)

这是最简单的自定义方式,只需要在config.json中添加customCommands配置。比方,创建一个用于检查代码错误的命令:
  1. {
  2.   "customCommands": [{
  3.     "name": "check",
  4.     "description": "检查代码中的错误",
  5.     "prompt": "{{{ input }}}\n\n请检查高亮代码中的以下问题:\n- 语法错误\n- 逻辑错误\n- 安全漏洞\n- 性能问题\n- 其他潜在问题\n\n发现错误后请简明扼要地说明,每个错误用一个要点列出。"
  6.   }]
  7. }
复制代码
这种方式支持利用Handlebars模板语法,可用的变量包括:

2. 利用自定义函数(高级)

对于需要更复杂功能的场景,可以利用config.ts编写自定义函数。这种方式可以完全访问ContinueSDK的功能。比方,创建一个天生提交信息的命令:
  1. export function modifyConfig(config: Config): Config {
  2.   config.slashCommands?.push({
  3.     name: "commit",
  4.     description: "生成Git提交信息",
  5.     run: async function* (sdk) {
  6.       const diff = await sdk.ide.getDiff(false);
  7.       for await (const message of sdk.llm.streamComplete(
  8.         `${diff}\n\n为上述更改生成一个简短的提交信息,使用祈使语气(如"添加功能"而不是"添加了功能"),不超过20个token:`,
  9.         new AbortController().signal,
  10.         {
  11.           maxTokens: 20,
  12.         },
  13.       )) {
  14.         yield message;
  15.       }
  16.     },
  17.   });
  18.   return config;
  19. }
复制代码
自定义斜杠命令的应用场景非常广泛,比方,可以创建以下自定义命令来提升开辟效率:

总结与预测

Continue是一款功能强大且高度可扩展的VSCode AI编程助手,通过先进的AI模型支持、机动的上下文提供器和丰富的斜杠命令,为开辟者提供了全方位的智能编码辅助。无论是初学者还是资深开辟者,都可以通过Continue明显提升开辟效率,简化编程流程。联合之前先容的Cline,可以实现一个全开源的AI编程环境,功能不比商业版本的Cursor或者Windsurf差,是新期间程序员提升生产力的必备工具。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4