[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-ggml-org--llama.vim":3,"tool-ggml-org--llama.vim":62},[4,18,26,36,46,54],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",159267,2,"2026-04-17T11:29:14",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":42,"last_commit_at":43,"category_tags":44,"status":17},8272,"opencode","anomalyco\u002Fopencode","OpenCode 是一款开源的 AI 编程助手（Coding Agent），旨在像一位智能搭档一样融入您的开发流程。它不仅仅是一个代码补全插件，而是一个能够理解项目上下文、自主规划任务并执行复杂编码操作的智能体。无论是生成全新功能、重构现有代码，还是排查难以定位的 Bug，OpenCode 都能通过自然语言交互高效完成，显著减少开发者在重复性劳动和上下文切换上的时间消耗。\n\n这款工具专为软件开发者、工程师及技术研究人员设计，特别适合希望利用大模型能力来提升编码效率、加速原型开发或处理遗留代码维护的专业人群。其核心亮点在于完全开源的架构，这意味着用户可以审查代码逻辑、自定义行为策略，甚至私有化部署以保障数据安全，彻底打破了传统闭源 AI 助手的“黑盒”限制。\n\n在技术体验上，OpenCode 提供了灵活的终端界面（Terminal UI）和正在测试中的桌面应用程序，支持 macOS、Windows 及 Linux 全平台。它兼容多种包管理工具，安装便捷，并能无缝集成到现有的开发环境中。无论您是追求极致控制权的资深极客，还是渴望提升产出的独立开发者，OpenCode 都提供了一个透明、可信",144296,1,"2026-04-16T14:50:03",[13,45],"插件",{"id":47,"name":48,"github_repo":49,"description_zh":50,"stars":51,"difficulty_score":32,"last_commit_at":52,"category_tags":53,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108322,"2026-04-10T11:39:34",[14,15,13],{"id":55,"name":56,"github_repo":57,"description_zh":58,"stars":59,"difficulty_score":32,"last_commit_at":60,"category_tags":61,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[45,13,15,14],{"id":63,"github_repo":64,"name":65,"description_en":66,"description_zh":67,"ai_summary_zh":68,"readme_en":69,"readme_zh":70,"quickstart_zh":71,"use_case_zh":72,"hero_image_url":73,"owner_login":74,"owner_name":75,"owner_avatar_url":76,"owner_bio":77,"owner_company":78,"owner_location":78,"owner_email":78,"owner_twitter":79,"owner_website":80,"owner_url":81,"languages":82,"stars":87,"forks":88,"last_commit_at":89,"license":90,"difficulty_score":91,"env_os":92,"env_gpu":93,"env_ram":94,"env_deps":95,"category_tags":100,"github_topics":101,"view_count":32,"oss_zip_url":78,"oss_zip_packed_at":78,"status":17,"created_at":108,"updated_at":109,"faqs":110,"releases":141},8485,"ggml-org\u002Fllama.vim","llama.vim","Vim plugin for LLM-assisted code\u002Ftext completion","llama.vim 是一款专为 Vim 编辑器设计的本地大语言模型（LLM）辅助插件，旨在为开发者提供实时的代码与文本补全服务。它主要解决了传统自动补全功能上下文理解能力弱、依赖云端服务导致隐私泄露或网络延迟等痛点，让用户能在完全离线的本地环境中享受智能编程体验。\n\n该工具非常适合习惯使用 Vim 或 Neovim 的软件开发人员，尤其是那些对代码隐私敏感、希望在低配置硬件上也能运行大模型的用户。llama.vim 的核心亮点在于支持“中间填充”（Fill-in-Middle）技术，不仅能根据光标前的内容预测后续代码，还能结合光标后的上下文进行精准补全。此外，它还具备基于指令的代码编辑功能，用户可通过快捷键输入自然语言指令来重构或生成代码片段。\n\n技术上，llama.vim 深度集成了 llama.cpp 后端，通过智能上下文复用机制，即使在显存有限的设备上也能高效处理超长上下文窗口。插件配置灵活，支持自定义触发键、接受方式及生成时长限制，并实时显示性能统计信息。只需在本地启动 llama.cpp 服务并加载兼容的 FIM 模型，即可将 Vim 升级为具备强大 AI 辅助能力的现代化开","llama.vim 是一款专为 Vim 编辑器设计的本地大语言模型（LLM）辅助插件，旨在为开发者提供实时的代码与文本补全服务。它主要解决了传统自动补全功能上下文理解能力弱、依赖云端服务导致隐私泄露或网络延迟等痛点，让用户能在完全离线的本地环境中享受智能编程体验。\n\n该工具非常适合习惯使用 Vim 或 Neovim 的软件开发人员，尤其是那些对代码隐私敏感、希望在低配置硬件上也能运行大模型的用户。llama.vim 的核心亮点在于支持“中间填充”（Fill-in-Middle）技术，不仅能根据光标前的内容预测后续代码，还能结合光标后的上下文进行精准补全。此外，它还具备基于指令的代码编辑功能，用户可通过快捷键输入自然语言指令来重构或生成代码片段。\n\n技术上，llama.vim 深度集成了 llama.cpp 后端，通过智能上下文复用机制，即使在显存有限的设备上也能高效处理超长上下文窗口。插件配置灵活，支持自定义触发键、接受方式及生成时长限制，并实时显示性能统计信息。只需在本地启动 llama.cpp 服务并加载兼容的 FIM 模型，即可将 Vim 升级为具备强大 AI 辅助能力的现代化开发环境。","# llama.vim\n\nLocal LLM-assisted text completion.\n\n\u003Cimg width=\"485\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fggml-org_llama.vim_readme_2198b4b3b71e.png\">\n\n#### Fill-in-Middle (FIM) completions\n\n![llama vim-spec-1](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fggml-org_llama.vim_readme_23bc15eb1988.png)\n\n#### Instruction-based editing\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F641a6e72-f1a2-4fe5-b0fd-c2597c6f4cdc\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F68bff15b-2d91-4800-985d-b7f110a0ccb7\n\n---\n\n## Features\n\n- Auto-suggest on cursor movement in `Insert` mode\n- Accept a suggestion with `Tab`\n- Accept the first line of a suggestion with `Shift+Tab`\n- Instruction-based editing with `\u003Cleader>lli`\n- Control max text generation time\n- Configure scope of context around the cursor\n- Ring context with chunks from open and edited files and yanked text\n- [Supports very large contexts even on low-end hardware via smart context reuse](https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.cpp\u002Fpull\u002F9787)\n- Display performance stats\n\n## Installation\n\n### Plugin setup\n\n- vim-plug\n\n    ```vim\n    Plug 'ggml-org\u002Fllama.vim'\n    ```\n\n- Vundle\n\n    ```bash\n    cd ~\u002F.vim\u002Fbundle\n    git clone https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vim\n    ```\n\n    Then add `Plugin 'llama.vim'` to your *.vimrc* in the `vundle#begin()` section.\n\n- lazy.nvim\n\n    ```lua\n    {\n        'ggml-org\u002Fllama.vim',\n    }\n    ```\n\n### Plugin configuration\n\nYou can customize *llama.vim* by setting the `g:llama_config` variable.\n\nExamples:\n\n1. Disable the inline info:\n\n    ```vim\n    \" put before llama.vim loads\n    let g:llama_config = { 'show_info': 0 }\n    ```\n\n2. Same thing but setting directly\n\n    ```vim\n    let g:llama_config.show_info = v:false\n    ```\n\n3. Disable auto FIM (Fill-In-the-Middle) completion with lazy.nvim\n\n    ```lua\n    {\n        'ggml-org\u002Fllama.vim',\n        init = function()\n            vim.g.llama_config = {\n                auto_fim = false,\n            }\n        end,\n    }\n    ```\n\n4. Configure FIM keymaps:\n\n    ```vim\n    let g:llama_config.keymap_fim_trigger     = \"\u003Cleader>llf\"\n    let g:llama_config.keymap_fim_accept_full = \"\u003CTab>\"\n    let g:llama_config.keymap_fim_accept_line = \"\u003CS-Tab>\"\n    let g:llama_config.keymap_fim_accept_word = \"\u003Cleader>ll]\"\n    ```\n\n5. Configure instruction-based editing keymaps\n\n    ```vim\n    let g:llama_config.keymap_inst_trigger  = \"\u003Cleader>lli\"\n    let g:llama_config.keymap_inst_retry    = \"\u003Cleader>llr\"\n    let g:llama_config.keymap_inst_continue = \"\u003Cleader>llc\"\n    let g:llama_config.keymap_inst_accept   = \"\u003CTab>\"\n    let g:llama_config.keymap_inst_cancel   = \"\u003CEsc>\"\n    ```\n\nPlease refer to `:help llama_config` or the [source](.\u002Fautoload\u002Fllama.vim)\nfor the full list of options.\n\n### llama.cpp setup\n\nThe plugin requires a [llama.cpp](https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.cpp) server instance to be running at [`g:llama_config.endpoint_fim`](https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vim\u002Fblob\u002Fmaster\u002Fautoload\u002Fllama.vim#L18) and\u002For [`g:llama_config.endpoint_inst`](https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vim\u002Fblob\u002Fmaster\u002Fautoload\u002Fllama.vim#L19).\n\n#### Mac OS\n\n```bash\nbrew install llama.cpp\n```\n\n#### Windows\n\n```bash\nwinget install llama.cpp\n```\n\n#### Any other OS\n\nEither build from source or use the latest binaries: https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.cpp\u002Freleases\n\n### llama.cpp settings\n\nHere are recommended settings, depending on the amount of VRAM that you have:\n\n- More than 64GB VRAM:\n\n  ```bash\n  llama-server --fim-qwen-30b-default\n  ```\n\n- More than 16GB VRAM:\n\n  ```bash\n  llama-server --fim-qwen-7b-default\n  ```\n\n- Less than 16GB VRAM:\n\n  ```bash\n  llama-server --fim-qwen-3b-default\n  ```\n\n- Less than 8GB VRAM:\n\n  ```bash\n  llama-server --fim-qwen-1.5b-default\n  ```\n\nUse `:help llama` for more details.\n\n### Recommended LLMs\n\nThe plugin requires FIM-compatible models: [HF collection](https:\u002F\u002Fhuggingface.co\u002Fcollections\u002Fggml-org\u002Fllamavim-6720fece33898ac10544ecf9)\n\n## Examples\n\n\u003Cimg width=\"1758\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fggml-org_llama.vim_readme_304dddf49b3c.png\">\n\n### Using `llama.vim` on M1 Pro (2021) with `Qwen2.5-Coder 1.5B Q8_0`:\n\n\u003Cimg width=\"1512\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fggml-org_llama.vim_readme_4ad7591c8d08.png\">\n\nThe orange text is the generated suggestion. The green text contains performance stats for the FIM request: the currently used context is `15186` tokens and the maximum is `32768`. There are `30` chunks in the ring buffer with extra context (out of `64`). So far, `1` chunk has been evicted in the current session and there are `0` chunks in queue. The newly computed prompt tokens for this request were `260` and the generated tokens were `24`. It took `1245 ms` to generate this suggestion after entering the letter `c` on the current line.\n\n### Using `llama.vim` on M2 Ultra with `Qwen2.5-Coder 7B Q8_0`:\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F1f1eb408-8ac2-4bd2-b2cf-6ab7d6816754\n\nDemonstrates that the global context is accumulated and maintained across different files and showcases the overall latency when working in a large codebase.\n\n### Another example on a small Swift code\n\n![llama vim-swift](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fggml-org_llama.vim_readme_ee6b25583d97.png)\n\n## Implementation details\n\nThe plugin aims to be very simple and lightweight and at the same time to provide high-quality and performant local FIM completions, even on consumer-grade hardware. Read more on how this is achieved in the following links:\n\n- Initial implementation and technical description: https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.cpp\u002Fpull\u002F9787\n- Classic Vim support: https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.cpp\u002Fpull\u002F9995\n\n## Other IDEs\n\n- VS Code: https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vscode\n","# llama.vim\n\n本地 LLM 辅助文本补全。\n\n\u003Cimg width=\"485\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fggml-org_llama.vim_readme_2198b4b3b71e.png\">\n\n#### 填空式（FIM）补全\n\n![llama vim-spec-1](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fggml-org_llama.vim_readme_23bc15eb1988.png)\n\n#### 基于指令的编辑\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F641a6e72-f1a2-4fe5-b0fd-c2597c6f4cdc\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F68bff15b-2d91-4800-985d-b7f110a0ccb7\n\n---\n\n## 特性\n\n- 在 `Insert` 模式下光标移动时自动提示\n- 使用 `Tab` 接受建议\n- 使用 `Shift+Tab` 接受建议的第一行\n- 使用 `\u003Cleader>lli` 进行基于指令的编辑\n- 控制最大文本生成时间\n- 配置光标周围上下文的范围\n- 使用打开和已编辑文件以及粘贴板中的内容构建环形上下文缓冲区\n- [通过智能上下文复用，即使在低端硬件上也能支持超大上下文](https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.cpp\u002Fpull\u002F9787)\n- 显示性能统计信息\n\n## 安装\n\n### 插件设置\n\n- vim-plug\n\n    ```vim\n    Plug 'ggml-org\u002Fllama.vim'\n    ```\n\n- Vundle\n\n    ```bash\n    cd ~\u002F.vim\u002Fbundle\n    git clone https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vim\n    ```\n\n    然后在你的 *.vimrc* 文件中，在 `vundle#begin()` 部分添加 `Plugin 'llama.vim'`。\n\n- lazy.nvim\n\n    ```lua\n    {\n        'ggml-org\u002Fllama.vim',\n    }\n    ```\n\n### 插件配置\n\n你可以通过设置 `g:llama_config` 变量来自定义 *llama.vim*。\n\n示例：\n\n1. 禁用内联信息：\n\n    ```vim\n    \" 放在 llama.vim 加载之前\n    let g:llama_config = { 'show_info': 0 }\n    ```\n\n2. 同样的操作，直接设置：\n\n    ```vim\n    let g:llama_config.show_info = v:false\n    ```\n\n3. 使用 lazy.nvim 禁用自动 FIM（填空式）补全：\n\n    ```lua\n    {\n        'ggml-org\u002Fllama.vim',\n        init = function()\n            vim.g.llama_config = {\n                auto_fim = false,\n            }\n        end,\n    }\n    ```\n\n4. 配置 FIM 的快捷键：\n\n    ```vim\n    let g:llama_config.keymap_fim_trigger     = \"\u003Cleader>llf\"\n    let g:llama_config.keymap_fim_accept_full = \"\u003CTab>\"\n    let g:llama_config.keymap_fim_accept_line = \"\u003CS-Tab>\"\n    let g:llama_config.keymap_fim_accept_word = \"\u003Cleader>ll]\"\n    ```\n\n5. 配置基于指令的编辑快捷键：\n\n    ```vim\n    let g:llama_config.keymap_inst_trigger  = \"\u003Cleader>lli\"\n    let g:llama_config.keymap_inst_retry    = \"\u003Cleader>llr\"\n    let g:llama_config.keymap_inst_continue = \"\u003Cleader>llc\"\n    let g:llama_config.keymap_inst_accept   = \"\u003CTab>\"\n    let g:llama_config.keymap_inst_cancel   = \"\u003CEsc>\"\n    ```\n\n请参考 `:help llama_config` 或 [源代码](.\u002Fautoload\u002Fllama.vim) 以获取完整的选项列表。\n\n### llama.cpp 设置\n\n该插件需要一个运行中的 [llama.cpp](https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.cpp) 服务器实例，监听地址为 [`g:llama_config.endpoint_fim`](https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vim\u002Fblob\u002Fmaster\u002Fautoload\u002Fllama.vim#L18) 和\u002F或 [`g:llama_config.endpoint_inst`](https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vim\u002Fblob\u002Fmaster\u002Fautoload\u002Fllama.vim#L19)。\n\n#### Mac OS\n\n```bash\nbrew install llama.cpp\n```\n\n#### Windows\n\n```bash\nwinget install llama.cpp\n```\n\n#### 其他操作系统\n\n你可以从源码编译，或者使用最新的二进制文件：https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.cpp\u002Freleases\n\n### llama.cpp 配置\n\n以下是根据显存大小推荐的配置：\n\n- 显存大于 64GB：\n\n  ```bash\n  llama-server --fim-qwen-30b-default\n  ```\n\n- 显存大于 16GB：\n\n  ```bash\n  llama-server --fim-qwen-7b-default\n  ```\n\n- 显存小于 16GB：\n\n  ```bash\n  llama-server --fim-qwen-3b-default\n  ```\n\n- 显存小于 8GB：\n\n  ```bash\n  llama-server --fim-qwen-1.5b-default\n  ```\n\n使用 `:help llama` 获取更多详细信息。\n\n### 推荐的 LLM 模型\n\n该插件需要支持 FIM 的模型：[HF 集合](https:\u002F\u002Fhuggingface.co\u002Fcollections\u002Fggml-org\u002Fllamavim-6720fece33898ac10544ecf9)\n\n## 示例\n\n\u003Cimg width=\"1758\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fggml-org_llama.vim_readme_304dddf49b3c.png\">\n\n### 在 M1 Pro (2021) 上使用 `Qwen2.5-Coder 1.5B Q8_0` 运行 `llama.vim`：\n\n\u003Cimg width=\"1512\" alt=\"image\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fggml-org_llama.vim_readme_4ad7591c8d08.png\">\n\n橙色文字是生成的建议。绿色文字显示了 FIM 请求的性能统计信息：当前使用的上下文为 `15186` 个 token，最大值为 `32768`。环形缓冲区中有 `30` 个包含额外上下文的块（总共 `64` 个）。到目前为止，当前会话中已经驱逐了 `1` 个块，队列中没有等待处理的块。本次请求新计算的 prompt token 数为 `260`，生成的 token 数为 `24`。在当前行输入字母 `c` 后，生成此建议耗时 `1245 ms`。\n\n### 在 M2 Ultra 上使用 `Qwen2.5-Coder 7B Q8_0` 运行 `llama.vim`：\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F1f1eb408-8ac2-4bd2-b2cf-6ab7d6816754\n\n展示了全局上下文如何跨不同文件累积和维护，并演示了在大型代码库中工作的整体延迟。\n\n### 另一个 Swift 代码的小例子：\n\n![llama vim-swift](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fggml-org_llama.vim_readme_ee6b25583d97.png)\n\n## 实现细节\n\n该插件旨在保持极简和轻量级，同时提供高质量且高效的本地 FIM 补全功能，即使在消费级硬件上也能实现。有关其实现方式的更多信息，请参阅以下链接：\n\n- 初始实现和技术说明：https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.cpp\u002Fpull\u002F9787\n- 经典 Vim 支持：https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.cpp\u002Fpull\u002F9995\n\n## 其他 IDE\n\n- VS Code：https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vscode","# llama.vim 快速上手指南\n\nllama.vim 是一个轻量级的 Vim\u002FNeovim 插件，利用本地运行的大语言模型（LLM）提供实时的代码自动补全（Fill-in-Middle, FIM）和基于指令的代码编辑功能。所有数据均在本地处理，无需联网。\n\n## 环境准备\n\n### 系统要求\n- **操作系统**: macOS, Windows, Linux\n- **编辑器**: Vim 或 Neovim\n- **硬件**: 支持本地运行 LLM 的 CPU\u002FGPU（显存越大可加载的模型越大）\n  - \u003C 8GB VRAM: 推荐 1.5B 参数模型\n  - \u003C 16GB VRAM: 推荐 3B 参数模型\n  - > 16GB VRAM: 推荐 7B 参数模型\n  - > 64GB VRAM: 推荐 30B+ 参数模型\n\n### 前置依赖\n必须安装并运行 `llama.cpp` 服务端。\n\n**macOS:**\n```bash\nbrew install llama.cpp\n```\n\n**Windows:**\n```bash\nwinget install llama.cpp\n```\n\n**Linux \u002F 其他系统:**\n请从官方发布页下载二进制文件或源码编译：\nhttps:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.cpp\u002Freleases\n\n> **注意**: 国内用户若遇到 GitHub 下载慢的问题，可使用镜像站（如 `mirror.ghproxy.com`）加速下载二进制文件。\n\n## 安装步骤\n\n### 1. 配置插件管理器\n\n根据你的插件管理器选择以下一种方式安装：\n\n**vim-plug:**\n在 `.vimrc` 中添加：\n```vim\nPlug 'ggml-org\u002Fllama.vim'\n```\n\n**Vundle:**\n```bash\ncd ~\u002F.vim\u002Fbundle\ngit clone https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vim\n```\n然后在 `.vimrc` 的 `vundle#begin()` 和 `vundle#end()` 之间添加：\n```vim\nPlugin 'llama.vim'\n```\n\n**lazy.nvim (Neovim):**\n在配置文件中添加：\n```lua\n{\n    'ggml-org\u002Fllama.vim',\n}\n```\n\n### 2. 启动 llama.cpp 服务端\n\n插件需要连接正在运行的 `llama-server`。根据你的显存大小选择合适的预设命令启动服务（需先下载对应的 Qwen FIM 模型）：\n\n**显存 > 64GB:**\n```bash\nllama-server --fim-qwen-30b-default\n```\n\n**显存 > 16GB:**\n```bash\nllama-server --fim-qwen-7b-default\n```\n\n**显存 \u003C 16GB:**\n```bash\nllama-server --fim-qwen-3b-default\n```\n\n**显存 \u003C 8GB:**\n```bash\nllama-server --fim-qwen-1.5b-default\n```\n\n> **模型获取**: 推荐使用的 FIM 兼容模型集合位于 HuggingFace: [ggml-org\u002Fllamavim](https:\u002F\u002Fhuggingface.co\u002Fcollections\u002Fggml-org\u002Fllamavim-6720fece33898ac10544ecf9)。国内用户可通过镜像站下载模型文件。\n\n### 3. 基础配置（可选）\n\n默认配置即可使用。如需自定义快捷键或关闭某些功能，可在 `.vimrc` 或 `init.lua` 中设置 `g:llama_config`。\n\n**示例：禁用自动 FIM 补全 (lazy.nvim)**\n```lua\n{\n    'ggml-org\u002Fllama.vim',\n    init = function()\n        vim.g.llama_config = {\n            auto_fim = false,\n        }\n    end,\n}\n```\n\n**示例：修改快捷键 (Vim script)**\n```vim\nlet g:llama_config.keymap_inst_trigger = \"\u003Cleader>lli\" \" 触发指令编辑\nlet g:llama_config.keymap_fim_accept_full = \"\u003CTab>\"      \" 接受完整建议\n```\n\n## 基本使用\n\n确保 `llama-server` 已在后台运行，然后启动 Vim\u002FNeovim 打开代码文件。\n\n### 1. 自动代码补全 (FIM)\n- **触发**: 在 `Insert` 模式下输入代码时，插件会根据上下文自动弹出灰色建议文本。\n- **接受整段建议**: 按 `Tab` 键。\n- **仅接受第一行**: 按 `Shift + Tab`。\n- **手动触发**: 如果自动补全未出现，可按配置的快捷键（默认通常为 `\u003Cleader>llf`）手动触发。\n\n### 2. 基于指令的代码编辑\n- **触发**: 在正常模式或可视模式下，按下 `\u003Cleader>lli`（默认快捷键）。\n- **操作**:\n    1. 输入自然语言指令（例如：\"add error handling\" 或 \"convert to python\"）。\n    2. 按 `Tab` 接受生成的代码修改。\n    3. 按 `Esc` 取消操作。\n    4. 如果不满意结果，可按 `\u003Cleader>llr` 重试，或 `\u003Cleader>llc` 继续生成。\n\n### 3. 查看性能状态\n插件会在界面显示当前的上下文令牌数、生成耗时等统计信息，帮助你在低配硬件上监控资源使用情况。","资深后端工程师正在本地离线环境下重构一个遗留的 Python 数据处理模块，需要在不联网的前提下快速补全复杂的中间逻辑并优化现有代码。\n\n### 没有 llama.vim 时\n- **上下文断裂**：编写“填空式”代码（Fill-in-Middle）时，必须手动切换窗口查阅上下文件定义，打断心流，极易出错。\n- **重复劳动繁重**：修改旧函数逻辑需逐行删除重写，无法通过自然语言指令让 AI 直接理解意图并重写代码块。\n- **隐私与延迟顾虑**：依赖云端 Copilot 存在代码泄露风险，且网络波动导致建议延迟高，低配机器无法运行大型模型。\n- **配置繁琐**：传统本地 AI 插件难以智能复用上下文，导致显存占用高，生成速度慢甚至无法启动。\n\n### 使用 llama.vim 后\n- **无缝中间补全**：光标在代码中间停留时，llama.vim 自动基于前后文预测缺失逻辑，按 `Tab` 即可一键接纳整段建议。\n- **指令化编辑**：选中代码后按下 `\u003Cleader>lli` 输入“改为异步处理”，工具即刻原地重构代码，无需手动删改。\n- **本地高效运行**：结合 llama.cpp 服务端，即使在 8GB 显存笔记本上也能流畅运行量化模型，数据完全保留在本地。\n- **智能上下文管理**：自动缓存已打开文件和剪贴板内容作为背景知识，在低硬件成本下实现大上下文精准理解。\n\nllama.vim 将本地大模型深度融入 Vim 工作流，让开发者在离线环境中也能享受智能、私密且高效的编码体验。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fggml-org_llama.vim_23bc15eb.gif","ggml-org","ggml","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fggml-org_31b76164.jpg","AI inference at the edge",null,"ggml_org","https:\u002F\u002Fggml.ai","https:\u002F\u002Fgithub.com\u002Fggml-org",[83],{"name":84,"color":85,"percentage":86},"Vim Script","#199f4b",100,1955,101,"2026-04-16T11:01:16","MIT",4,"macOS, Windows, Linux","非必需（依赖 CPU 或 GPU 运行 llama.cpp），显存需求取决于模型大小：推荐 8GB+ (运行 1.5B 模型), 16GB+ (运行 7B 模型), 64GB+ (运行 30B 模型)","未说明（取决于加载的模型大小，建议与显存需求相匹配的系统内存）",{"notes":96,"python":97,"dependencies":98},"该工具是 Vim\u002FNeovim 插件，核心依赖外部运行的 llama.cpp 服务器。需安装支持 FIM (Fill-In-Middle) 功能的特定模型（如 Qwen2.5-Coder 系列）。在 macOS 上可通过 brew 安装，Windows 上可通过 winget 安装，其他系统需源码编译或使用二进制文件。插件通过配置项连接本地 llama.cpp 服务端口。","未说明",[99],"llama.cpp (需运行 server 实例)",[45,14,35],[102,103,104,105,106,107],"llama","llm","vim","vim-plugin","copilot","developer-tool","2026-03-27T02:49:30.150509","2026-04-18T00:45:30.518734",[111,116,121,126,131,136],{"id":112,"question_zh":113,"answer_zh":114,"source_url":115},38128,"为什么进入插入模式时会报错 \"Key not present in Dictionary: content\"？","这通常发生在服务器返回无效响应或 JSON 解析失败时。维护者建议检查响应内容后再将其添加到缓存中，以避免无效响应污染缓存。如果问题频繁出现，可以尝试重启编辑器或使用 `:LlamaStop` 和 `:LlamaStart` 命令重启插件服务，而不是完全重启编辑器。此外，该错误在使用浮动窗口或网络代理不稳定时更容易发生。","https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vim\u002Fissues\u002F61",{"id":117,"question_zh":118,"answer_zh":119,"source_url":120},38129,"如何在非插入模式下停止 GPU 持续满载运行？","插件已新增命令来控制服务的启用与禁用。您可以使用以下命令手动管理：\n- `:LlamaToggle`：切换服务状态\n- `:LlamaEnable`：启用服务\n- `:LlamaDisable`：禁用服务\n请确保更新到最新的主分支（master）版本以使用这些功能。","https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vim\u002Fissues\u002F42",{"id":122,"question_zh":123,"answer_zh":124,"source_url":125},38130,"建议的文本与已编写的文本重叠导致难以阅读怎么办？","这是由于最近更改了渲染逻辑，将光标位置计算从 `col` 改为了 `virtcol` 导致的兼容性问题。解决方案是回退相关代码更改。如果您使用的是 Neovim，可以将 `autoload\u002Fllama.vim` 文件中的 `virt_text_win_col` 设置改回使用 `virtcol('.') - 1` 或直接 revert 最近的提交。维护者已确认回退该更改可解决此问题。","https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vim\u002Fissues\u002F55",{"id":127,"question_zh":128,"answer_zh":129,"source_url":130},38131,"启动服务器后无法通过 Ctrl-C 或 Ctrl-D 关闭怎么办？","这通常不是插件本身的问题，而是与 tmux 会话的信号处理有关。如果您在 tmux 中运行服务器，尝试直接在 tmux 面板外操作可能无效。建议使用 Docker Compose 运行服务器（如配置示例所示），此时 Ctrl-C 可以正常停止服务。或者，直接退出当前的 tmux 面板也是有效的关闭方式。","https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vim\u002Fissues\u002F35",{"id":132,"question_zh":133,"answer_zh":134,"source_url":135},38132,"遇到 \"File Not Found\" (404) 错误，提示文件路径冲突如何解决？","该错误通常是因为插件发送的文件名是相对路径，而服务器端期望或上下文需要绝对路径，或者是其他进程干扰了请求。虽然文件名主要用于给 LLM 提供上下文信息而非实际读取磁盘文件，但您可以尝试修改插件代码，将文件名扩展从 `%`（相对路径）改为 `%:p`（绝对路径）。具体做法是在 `autoload\u002Fllama.vim` 中找到相关行并进行替换。如果问题依旧，请检查是否有其他进程占用了 llama-server 的端口或资源。","https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vim\u002Fissues\u002F44",{"id":137,"question_zh":138,"answer_zh":139,"source_url":140},38133,"如何利用服务器空闲时间预加载建议以提高响应速度？","插件已实现了“推测性 FIM（Speculative FIM）”功能。当用户正在查看当前建议时，系统会假设用户接受该建议，并提前向服务器发送下一个请求并将结果缓存。如果用户最终拒绝了当前建议，缓存中的预测结果会被丢弃。这一机制最大化了服务器利用率，显著减少了连续编码时的等待时间。该功能已在最新版本中默认启用（参考 PR #53）。","https:\u002F\u002Fgithub.com\u002Fggml-org\u002Fllama.vim\u002Fissues\u002F17",[]]