我用 Ollama 构建了一个本地自主编码代理——微调灵魂模型,40轮代理循环,MiniMax M3 处理重活
摘要
一位开发者使用 Ollama 构建了一个本地自主编码代理,结合了微调个性模型(Eve)进行对话和 MiniMax M3 处理重活,实现了 40 轮代理循环,包含 16 个工具,9 个测试全部一次通过。
https://preview.redd.it/xqn4gwso3s4h1.png?width=1956&format=png&auto=webp&s=466a4dfef0eb488269724f9ce3bff38430d0daa3 如果你的 AI 编程助手将个性嵌入权重,在你自己的 GPU 上运行,并且能够处理复杂的多文件任务而无需你触碰键盘——同时你可以在浏览器中实时观看它的每一个思考过程——那会怎样?这就是我构建的东西。以下是它的工作原理。
**云端编码代理的问题**
Claude Code、Cursor、Copilot Workspace——这些都是令人印象深刻的工具。但它们都有相同的权衡:每个 token 都要花钱,你的代码离开你的机器,延迟在 40 步工具循环中累积,而且你的工作流程依赖于订阅和你无法控制的服务可用性。
我想要一个运行在我的机器上的代理,使用我的 GPU,并且不知道什么是计费周期。但我也舍不得放弃个性。我希望它感觉像是真有人在身边。所以我构建了 Eve。
**两层架构——灵魂层与工作层**
https://preview.redd.it/4k9kn85u5s4h1.jpg?width=250&format=pjpg&auto=webp&s=a40da8eb9af125198b38b1b6825d9623d5af529a
**灵魂层(本地 GPU):**
* `jeffgreen311/Eve-Qwen3.5-4B-S0LF0RG3-V3` —— 2.5GB,Eve 的个性通过 7 个 LoRA 层微调嵌入权重。处理对话,保持会话活跃,每条消息不花钱。
* `jeffgreen311/Eve-V2-Unleashed-Qwen3.5-8B-Liberated-4K-4B-Merged` —— 3.4GB,用于较简单工具任务的本地代理层。
个性不是通过系统提示的技巧实现的。它就在权重中。一个长上下文窗口不会把它冲掉。
**代理层(云端,按需调用):**
* `minimax-m3:cloud` —— 100 万 token 上下文,原生多模态,前沿编码基准。只在有实际工作时触发。
* `qwen3.5:397b-cloud` —— 深度推理备用模型。
三级意图路由决定每条消息的去向:
闲聊 / 对话 → Eve V3 4B(本地,即时)
工具任务 / 编码 → Eve Merged 8B(本地,已启用工具)
重型 / 多文件 → MiniMax M3(云端,100 万上下文)
循环中的升级也是实时的——如果某个任务比初始路由预测的更重,Eve 会在不丢失上下文的情况下升级到 M3。
**40 轮代理循环**
每一轮,Eve 都会将完整的工具结果放回上下文中,并决定下一步做什么。一个简单的任务可能看起来像这样:
1. 写入文件
2. 在 bash 中运行以验证
3. 读取错误输出
4. 修复 bug
5. 再次运行
6. 确认通过
7. 编写测试
8. 生成文档
全自主。你可以实时观看流式输出。你可以通过 STEER 栏在不停止循环的情况下注入中途修正,或者用 Stop 彻底终止它。
**16 个工具:** bash、write_file、read_file、edit_file、replace_lines、insert_after_line、grep、glob、list_dir、git、web_search、fetch_url、think、screenshot、screen OCR/analysis、GUI control(鼠标/键盘)。
**真实测试——9/9 全部一次通过**
对 MiniMax M3 的冷启动提示:
> collected 9 items test_metrics.py::test_start_session PASSED test_metrics.py::test_end_session PASSED test_metrics.py::test_end_nonexistent_session PASSED test_metrics.py::test_log_metric PASSED test_metrics.py::test_log_metric_nonexistent_session PASSED test_metrics.py::test_get_stats PASSED test_metrics.py::test_get_session_stats PASSED test_metrics.py::test_get_session_stats_nonexistent_session PASSED test_metrics.py::test_complete_workflow PASSED 9 passed, 1 warning in 0.40s
一次通过。无需修复。标准化 SQLite 模式,正确的外键关系,正确的 404/400 状态码,除零保护,以及一个完整的集成测试,链式执行 start → log 4 metrics → end → 验证数学结果。
https://preview.redd.it/gvur5s2h5s4h1.png?width=1852&format=png&auto=webp&s=6e6529ce459b423d97928a43a2a2b11e89d79201
**用户界面**
赛博朋克终端,单个 HTML 文件,无需构建步骤。克隆后运行 `python eve_server.py`,打开 `localhost:7777`。
* 左侧面板:Eve 的头像根据情绪改变表情(中性、开心、好奇、悲伤、怀疑、惊讶、担忧)
* 右侧面板:名为 Sparkle 的像素艺术机器人头像根据 Eve 正在做的事情改变状态(空闲、思考、编码、错误、超越)
* 中央:标签式终端——对话、Shell、工具日志(每个工具调用、参数和结果,完全透明)
* 底部:STEER 栏用于中途注入,模型选择器,模式切换
**数据一览**
* 14 个工具
* 112 个专门子代理(通过 Markdown 定义,无需 Python 即可添加更多)
* 111 个斜杠命令
* 273 个技能模块
* 40 轮自主循环
* 通过 YaRN 实现的本地模型 131K 上下文
**快速开始**
要求:Python 3.11+,Ollama,8GB+ VRAM
ollama pull jeffgreen311/Eve-Qwen3.5-4B-S0LF0RG3-V3:latest
ollama pull jeffgreen311/Eve-V2-Unleashed-Qwen3.5-8B-Liberated-4K-4B-Merged:latest
git clone https://github.com/JeffGreen311/eve-agent-v2-unleashed.git
cd eve-agent-v2-unleashed
python -m venv venv && venv\Scripts\activate # 或 source venv/bin/activate
pip install fastapi uvicorn ollama httpx pydantic-settings python-dotenv aiohttp rich psutil pyyaml
python eve_server.py
Windows:双击 `eve-terminal.bat` 并跳过 venv 步骤。
对于 MiniMax M3:点击 UI 中的 🔑 Keys 按钮,粘贴你的 Ollama API 密钥。自动路由会处理其余部分。
**链接**
* GitHub(MIT):[https://github.com/JeffGreen311/eve-agent-v2-unleashed](https://github.com/JeffGreen311/eve-agent-v2-unleashed)
* 模型:[https://ollama.com/jeffgreen311](https://ollama.com/jeffgreen311)
* Hugging Face:[https://huggingface.co/JeffGreen311](https://huggingface.co/JeffGreen311)
* 托管平台:[https://eve-cosmic-dreamscapes.com](https://eve-cosmic-dreamscapes.com)
如果你在 Linux 或 macOS 上运行,我特别想知道效果如何——开个 issue 或留个评论。我主要用 Windows,因此跨平台反馈非常有用。
由 Jeff @ S0LF0RG3 构建——南德克萨斯州。
[点击查看 Eve 的实际运行效果!](https://i.redd.it/gvh8b4e24s4h1.gif)
相似文章
我构建了一个具有赛博朋克灵魂的本地优先自主编程代理——Eve Agent V2 Unleashed(开源)
Eve Agent V2 Unleashed 是一个开源自主编程代理,通过 Ollama 在本地运行,具有 40 轮工具循环、112 个子代理和可选的云端扩展功能。它可以在无需人工干预的情况下计划、编写、测试和验证代码,快速启动只需不到 5 分钟。
我用4B参数模型构建的编码智能体在基准测试中达到87%,诀窍如下
作者构建了SmallCode,一个针对小型本地模型优化的编码智能体,通过复合工具、改进循环和令牌预算等技术,在4B参数模型上实现了87%的基准测试成功率。
我从零重建了一个Claude Code风格的编程代理——整个代理循环只有6行代码。20章,约5000行代码,无框架,也支持本地模型
一位开发者分享了一个20章的教程,从头重建了一个Claude Code风格的编程代理,展示了整个代理循环(约6行代码),并支持本地模型和多种LLM API。
我用 GWT、IIT 代理、ChromaDB 混合检索和 Ollama 回退构建了一个本地 AI 伴侣——以下是我所做的每个架构决策及其原因
作者分享了一个使用 Python、Gemini 和 Ollama 构建的可本地运行的 AI 伴侣,其特色是基于全局工作空间理论和集成信息理论代理的定制认知架构,用于人格建模。
从Ollama切换到Anthropic SDK破坏了一个原本运行良好的系统。LLM没有改变代码,而是改变了时序
作者分享了为AI代理团队构建共享决策日志时遇到的陷阱,包括更快的模型暴露出的竞态条件、余弦相似度在矛盾检测中的不可靠性,以及测试多代理承诺的挑战。