Repolode
ggml-org

ggml-org/llama.vim

为 Vim 提供基于本地 llama.cpp 服务的 LLM 代码补全与指令编辑插件。

可替代:GitHub Copilot

Star
2,191
Fork
128
未关闭 Issue
28
最近提交
22天前

这是什么?

llama.vim 是一款 Vim 插件,在插入模式下输入时提供 LLM 辅助的文本补全。它会把光标周围的代码发送到本地或其他主机上运行的 llama.cpp 服务,并以内联方式显示建议:按 Tab 接受全部,按 Shift+Tab 只接受第一行。

除了中间填充(FIM)补全,插件还支持通过快捷键触发的指令式编辑,用户描述修改需求后由模型给出编辑建议。上下文来自已打开和编辑过的文件以及复制的文本,并以环形缓冲区管理;每次请求还可显示性能统计。可以把多个 llama.cpp 服务器配置为命名 profile,用 :LlamaProfile 在运行时切换。

使用前需要运行 llama.cpp 服务并准备支持 FIM 的模型。README 按显存大小推荐了不同规模的 Qwen 系列代码模型,配置通过 g:llama_config 变量完成。

核心功能

  • 01插入模式下光标移动时自动给出补全建议
  • 02按 Tab 接受整段建议,按 Shift+Tab 只接受首行
  • 03通过快捷键触发指令式代码编辑
  • 04上下文来自已打开、编辑过的文件和复制的文本
  • 05支持配置多个命名服务器 profile 并在运行时切换
  • 06在编辑器中显示每次请求的性能统计

适用场景

  • 在 Vim 中获得代码补全,同时将代码保留在本地硬件上
  • 在局域网中共享一台 llama.cpp 服务器,供多台机器的 Vim 连接使用
  • 在 Vim 中用自然语言描述修改需求来编辑代码

快速上手

  1. 1

    在 macOS 上用 Homebrew 安装 llama.cpp 服务器

    brew install llama.cpp
  2. 2

    使用 vim-plug 安装 llama.vim 插件

    Plug 'ggml-org/llama.vim'
  3. 3

    根据显存大小启动 llama.cpp 服务器(以 8 至 16GB 显存为例)

    llama-server --fim-qwen-3b-default

使用前须知

  • 需要运行中的 llama.cpp 服务器以及支持 FIM 的模型。
  • 补全质量和速度取决于本地硬件,尤其是 GPU 显存。

标签

常见问题

llama.vim 是什么?
为 Vim 提供基于本地 llama.cpp 服务的 LLM 代码补全与指令编辑插件。 llama.vim 是一款 Vim 插件,在插入模式下输入时提供 LLM 辅助的文本补全。它会把光标周围的代码发送到本地或其他主机上运行的 llama.cpp 服务,并以内联方式显示建议:按 Tab 接受全部,按 Shift+Tab 只接受第一行。
llama.vim 可以免费使用吗?用的什么许可证?
llama.vim 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
llama.vim 还在维护吗?
活跃维护中。llama.vim 最近一次提交是在 2026年9月29日。
llama.vim 适合用来做什么?
在 Vim 中获得代码补全,同时将代码保留在本地硬件上 在局域网中共享一台 llama.cpp 服务器,供多台机器的 Vim 连接使用 在 Vim 中用自然语言描述修改需求来编辑代码
llama.vim 怎么安装和运行?
在 macOS 上用 Homebrew 安装 llama.cpp 服务器: brew install llama.cpp 使用 vim-plug 安装 llama.vim 插件: Plug 'ggml-org/llama.vim' 根据显存大小启动 llama.cpp 服务器(以 8 至 16GB 显存为例): llama-server --fim-qwen-3b-default
在哪里获取 llama.vim?
源代码和安装说明在 GitHub 上:https://github.com/ggml-org/llama.vim

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目