使用 continue 自定义 AI 编程环境

        一直在使用github 的 copilot 来编程,确实好用,对编码效率有很大提升。

        但是站在公司角度,因为它只能对接公网(有代码安全问题)。另外,它的扩展能力也不强,无法适配公司特定领域的知识库,无法最大化作用,所以不太能大规模推广,当然,还有成本问题(每月每人70多元,不是个小数目)。

        于是,想尝试选型 开源的Continue插件来试试,是否可以替代github copilot,完成公司内部的AI 编程。试用了一下,总如如下:

一、Continue介绍:

它是一款开源的领先的AI编程助手,主要作用是代码自动生成和在编码中问答。因为是完全开源的,可定制性也非常好,一些企业级的大模型产品,也采用类似的方案。它作为插件,支持VS Code 和 JetBrains 两种较通用的IDE。

主要的功能一览:

1:快速理解选中的代码,为你解释代码。通过问答(解释选中代码)

2:自动补全代码,提供编码的提示。使用 tab 来选择提示的代码。

3:对选定的代码进行重构。问题(可提出重构的要求)

4:针对当前项目/代码库的代码进行提问。使用 @codebase 进行范围限定后的提问。

还有一些默认范围。如:@Git Diff    @Terminal  @Problems 

5:快速引用上下文。针对上下文进行提问。上下文有一些默认值,也可以自行定义。如:@a1.cpp 这是针对代码  @React 代码框架 ……

6:使用 / 快速执行命令,完成固定的任务。预置任务:

/comment 加注释,/edit 编辑修改代码,/share 将代码按指定格式输出用于分享,/cmd 执行命令,/test 生成单元测试。

命令可以自行定义(定义的执行是提示词)

7:进一步解释/解决调试终端中的错误

二、安装初始化:

2.1:Configuration

        配置主要是配使用的聊天模型,补齐代码模型,嵌入式索引算法模型,排序算法模型。

免费试用(在线):

{
  "models": [
    {
      "title": "GPT-4o (trial)",
      "provider": "free-trial",
      "model": "gpt-4o"
    }
  ],
  "tabAutocompleteModel": {
    "title": "Codestral (trial)",
    "provider": "free-trial",
    "model": "AUTODETECT"
  },
  "embeddingsProvider": {
    "provider": "free-trial"
  },
  "reranker": {
    "name": "free-trial"
  }
}

使用的都是公网提供的代理服务,在时间,速度,性能,功能上都是有限制的。所以,对于企业级应用是基本不能用。

最佳配置(在线):

chatting:使用 Claude 3.5

autocomplete:Codestral

embeddings:Voyage AI

remark:Voyage AI

{
  "models": [
    {
      "title": "Claude 3.5 Sonnet",
      "provider": "anthropic",
      "model": "claude-3-5-sonnet-20240620",
      "apiKey": "[ANTHROPIC_API_KEY]"
    }
  ],
  "tabAutocompleteModel": {
    "title": "Codestral",
    "provider": "mistral",
    "model": "codestral-latest",
    "apiKey": "[CODESTRAL_API_KEY]"
  },
  "embeddingsProvider": {
    "provider": "openai",
    "model": "voyage-code-2",
    "apiBase": "https://api.voyageai.com/v1/",
    "apiKey": "[VOYAGE_AI_API_KEY]"
  },
  "reranker": {
    "name": "voyage",
    "params": {
      "apiKey": "[VOYAGE_AI_API_KEY]"
    }
  }
}

这虽然是最佳配置,但因为涉及apikey,所以需要去相应的完成注册。

本地配置(离线):

主要使用ollama来完成本地服务的部署。可以保证使用中不会有什么内容外泄。

  • For chat: ollama pull llama3:8b
  • For autocomplete: ollama pull starcoder2:3b
  • For embeddings: ollama pull nomic-embed-text

{
  "models": [
    {
      "title": "Ollama",
      "provider": "ollama",
      "model": "AUTODETECT"
    }
  ],
  "tabAutocompleteModel": {
    "title": "Starcoder 2 3b",
    "provider": "ollama",
    "model": "starcoder2:3b"
  },
  "embeddingsProvider": {
    "provider": "ollama",
    "model": "nomic-embed-text"
  }
}

注意:为了保证完全私密性,对于VSCode的插件安装需要单独下载后安装。

对于遥测监控功能需要关闭:将 "allowAnonymousTelemetry" 设置为 false。这将阻止 Continue 插件向 PostHog 发送匿名遥测数据。

验权配置:

验权方式:通过apikey

        "apiKey": "xxx"

上下文长度配置:

设置模型的上下文长度,确定了chat时能返回的长度

       "contextLength": 8192

定制对话模板

如果你采用的模型,对于提示词有特殊的要求,可以通过定制对话模板,来统一不同模型造成的差异。这个需要你对采用的模型非常熟悉。

~/.continue/config.ts

function modifyConfig(config: Config): Config {
  const model = config.models.find(
    (model) => model.title === "My Alpaca Model",
  );
  if (model) {
    model.templateMes

### 如何在 VSCode 中安装和使用 Continue 插件 #### 安装过程 为了确保最佳兼容性和功能体验,建议先确认已安装最新版本的 Visual Studio Code (VSCode)[^1]。 通过访问官方网址 [https://code.visualstudio.com/Download](https://code.visualstudio.com/Download),可以根据操作系统选择合适的版本进行下载与安装。对于 Windows 用户来说,在安装过程中需依次完成许可协议同意、指定安装位置等步骤[^3]。 一旦 VSCode 更新完毕或初次安装完成后,即可着手准备安装 Continue 插件: - **启动 VSCode** - **进入扩展管理器** 使用快捷键 `Ctrl+Shift+X` 或者点击左侧活动栏中的方块图标来打开扩展视图区域。 - **查找并安装 Continue 插件** 在搜索框内输入 "Continue" 并按回车键执行查询命令;从列表中识别出由 DeepSeek 提供的那个插件条目后单击右侧绿色按钮 “Install” 来触发安装流程[^2]。 #### 配置与初始化 成功安装之后,可通过组合键 `Ctrl+L` 调用命令面板,尝试调用一些基础指令验证是否正常工作。不过更详细的自定义设置通常涉及编辑配置文件 `config.json`: ```json { // 示例配置项 } ``` 具体参数取决于个人需求及项目环境的要求,因此推荐查阅官方文档获取最权威指导说明。 #### 功能特性概览 作为一款专为程序员打造的人工智能助手工具,Continue 不仅限于简单的自动补全提示,还具备以下亮点特征[^4]: - 基于上下文感知机制实现智能化代码预测; - 支持多种主流编程语言及其生态体系下的语法解析; - 及时发现潜在逻辑漏洞并向用户提供改进建议; - 协助重构现有程序结构使之更加简洁优雅; - 加速日常开发任务处理速度的同时保障产出物品质。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值