自建AI编程助手 | 本地 Yi-Coder模型 + Cursor 5分钟写一个网页

文摘   2024-09-12 18:36   北京  

Yi-Coder[1] 是一个开源的高性能代码语言大模型,为实现高效编程设计。它支持 52 种编程语言,擅长处理需要长上下文理解的任务,例如项目级代码理解和生成。该模型有两种大小(15亿 和 90亿 参数),并且提供基础版和聊天版。

本教程中,你将学习如何

  • 使用与 OpenAI 兼容的 API 在本地运行 Yi-coder 模型
  • 使用 Yi-coder 驱动 Cursor

Cursor 是最热门的 AI 代码编辑器之一。它可以用专门为编码任务训练的 LLM(如 Yi coder)来完成编码辅助任务。你可以将 Yi-coder-9B 配置为 Cursor 的私有 LLM 后端。

用与 OpenAI 兼容的 API 在本地运行 Yi-coder 模型

要获取 Cursor 所需的本地 Yi-coder-9B 的公共 HTTPs endpoint,请按照以下说明操作。

安装开源 Gaia 节点——一组轻量且可移植的 LLM 推理工具。

Gaia’s tech stack is built on top of WasmEdge[2], a WebAssembly-based runtime optimized for serverless computing and edge applications. This setup allows for efficient deployment of Yi-Coder in different environments, providing flexibility and scalability.

curl -sSfL 'https://github.com/GaiaNet-AI/gaianet-node/releases/latest/download/install.sh' | bash

然后,使用以下命令行下载并初始化模型。

gaianet init --config https://raw.githubusercontent.com/GaiaNet-AI/node-configs/main/yi-coder-9b-chat/config.json

最后,使用 gaianet start 来运行节点。

gaianet start

然后你会得到一个 HTTPS URL,像这样 https://NODE-ID.us.gaianet.network.

同时,您可以打开浏览器为 `http://localhost:8080` 来问有关编程的问题。

我们以 8k 上下文窗口启动了 Yi Coder 9b 模型。如果你的机器有较大的 GPU RAM(例如 24GB),则可以将上下文大小一直增加到 128k。较大的上下文大小在编码中特别有用,因为我们可能需要将大量源代码文件塞入 LLM 提示中才能完成复杂的任务。

将 Yi-coder-9B 集成到 Cursor

接下来,让我们使用在我们自己的机器上运行的 Yi-Coder-9B 配置 Cursor。

只需使用你的 Gaia 节点 URL 覆盖 Cursor 的默认 OpenAI URL,修复模型名称和“API 密钥”,就可以开始工作了!请参阅此处[3]的详细说明。

现在,让我们测试 Yi-coder-9b 来编写一个简单的搜索页面。

我提示模型生成了一个简单的搜索页面。

然后,我要求 Yi-coder-9b 修改按钮上的文字标签。Yi-coder-9b LLM LLM 解释了搜索按钮的工作原理。


网页如预期运行!

就这样啦!访问 LlamaEdge 文档[4]获取更多信息。加入 WasmEdge discord[5] 和我们交流吧!

参考资料
[1]

Yi-Coder: https://huggingface.co/blog/lorinma/yi-coder

[2]

WasmEdge: https://github.com/WasmEdge/WasmEdge

[3]

此处: https://docs.gaianet.ai/user-guide/apps/cursor/#configure-cursor

[4]

LlamaEdge 文档: https://llamaedge.com/docs/category/drop-in-replacement-for-openai

[5]

WasmEdge discord: https://discord.com/invite/U4B5sFTkFc

关于 WasmEdge


WasmEdge 是轻量级、安全、高性能、可扩展、兼容OCI的软件容器与运行环境。目前是 CNCF 沙箱项目。WasmEdge 被应用在 SaaS、云原生,service mesh、边缘计算、边缘云、微服务、流数据处理、LLM 推理等领域。


GitHub:https://github.com/WasmEdge/WasmEdge

官网:https://wasmedge.org/

‍‍Discord 群:https://discord.gg/U4B5sFTkFc

文档:https://wasmedge.org/docs



Second State
Rust 函数即服务
 最新文章