
AutoAgent 本地 LLM 接入实战使用 Ollama 与 LM Studio 搭建零成本私有模型后端【免费下载链接】AutoAgentAutoAgent: Fully-Automated and Zero-Code LLM Agent Framework项目地址: https://gitcode.com/GitHub_Trending/au/AutoAgent本文以 AutoAgent一个 Fully-Automated、Zero-Code 的 LLM Agent 框架为对象系统讲解如何将本地推理引擎 Ollama 与 LM Studio 接入框架作为对话与任务执行的后端模型。读完本文你将掌握本地模型拉取、环境变量配置、Docker 容器内联调以及 WSL 网络穿透等一整套可落地的私有化部署方案在完全本地、无需任何 API Key 的前提下跑通 AutoAgent 的完整能力。AutoAgent 的模型接入机制基于 LiteLLM 的统一抽象在进入 Ollama / LM Studio 的具体配置之前有必要先理解 AutoAgent 是如何消费模型的。与直接绑定某一家云厂商 SDK 不同AutoAgent 通过LiteLLM对底层模型做统一抽象无论模型来自 OpenAI、Anthropic、Gemini、Groq、DeepSeek还是本地 Ollama、LM Studio框架只认一套模型命名规范与两个核心环境变量。COMPLETION_MODEL指定要使用的 LLM 模型模型名需遵循 Litellm 与 constant.py。API_BASE_URLLLM Provider 的接口地址默认None即使用各厂商官方端点本地模型场景下需显式指向http://localhost:11434Ollama或http://localhost:1234/v1LM Studio。从源码看这两个变量最终汇入 autoagent/core.py 的对话执行函数create_params中同时携带model: create_model与base_url: API_BASE_URL然后交给litellm.completion完成真实请求见 autoagent/core.py 与 autoagent/core.py。也就是说只要本地服务暴露了与 LiteLLM 兼容的 OpenAI 风格接口AutoAgent 无需修改任何业务代码即可切换后端。此外 constant.py 中维护了三组模型兼容性名单决定框架自动启用的工作模式NOT_SUPPORT_FN_CALL包含o1-mini、deepseek-reasoner、deepseek-r1、llama、grok-2命中的模型默认关闭函数调用NOT_SUPPORT_SENDER包含mistral、groq命中的模型在消息中剔除sender字段MUST_ADD_USER包含deepseek-reasoner、o1-mini、deepseek-r1命中的模型会在对话中强制穿插 user 角色消息。当本地模型尤其带llama字样的模型命中上述名单时AutoAgent 会自动切换为非函数调用non-function-calling模式将工具描述拼入提示词、用特定格式约束模型输出见 autoagent/core.py这正是本地小模型也能驱动 Agent 工具链的关键机制。使用 Ollama 的本地 LLM⚠️ 使用本地 LLM 时AutoAgent 的功能表现可能受模型能力限制例如弱模型对函数调用、多步骤推理的支持度有限。启动 Ollama 服务并拉取模型首先确保本机已安装并运行 Ollama 服务。本指南默认你已通过ollama serve启动 Ollama若以其他方式运行例如 Docker 内说明需相应调整。模型名可以在 Ollama 的模型库中检索。以一个轻量示例模型为例ollama pull codellama:7b更大的模型通常表现更好但也会占用更多显存与内存。拉取完成后可像这样检查已下载的模型~$ ollama list NAME ID SIZE MODIFIED codellama:7b 8fdf8f752f6e 3.8 GB 6 weeks ago mistral:7b-instruct-v0.2-q4_K_M eb14864c7427 4.4 GB 2 weeks ago starcoder2:latest f67ae0f64584 1.7 GB 19 hours agoollama list输出的NAME列是后续配置COMPLETION_MODEL时的模型标识依据。在 AutoAgent 中配置 OllamaCLI / 环境变量方式AutoAgent 的配置入口是.env环境变量文件模板见 .env.template或命令行前缀变量。要切换为本地 Ollama 模型只需设置以下内容# .env 或命令行环境变量 COMPLETION_MODELollama/codellama:7b # 注意 LiteLLM 前缀 ollama/ API_BASE_URLhttp://localhost:11434 # Ollama 默认端口其中API_BASE_URL是可选的——设置后它还会用于在界面中展示可用的已安装模型列表OPENAI_API_KEY等云厂商 Key 均不需要填写可留空因为请求不会离开本机。随后按 README.md 的 CLI 模式说明启动即可COMPLETION_MODELollama/codellama:7b API_BASE_URLhttp://localhost:11434 auto mainauto main会启动包含 user mode、agent editor 与 workflow editor 的完整版 AutoAgent。如果你的模型命中 constant.py 中不支持函数调用的名单如llama框架会自动降级到非函数调用模式无需手动干预若确需手动控制可通过FN_CALL环境变量显式开关默认依据模型名自动判定见 README.md。使用 Docker 运行容器内访问宿主机 Ollama当 AutoAgent 以 Docker 容器方式运行时容器内访问宿主机上的 Ollama 需要做一次网络桥接。参考 README.md 的 Docker 化思路在docker run时添加额外参数docker run # ... --add-host host.docker.internal:host-gateway \ -e COMPLETION_MODELollama/codellama:7b \ -e API_BASE_URLhttp://host.docker.internal:11434 \ # ...--add-host host.docker.internal:host-gateway将host.docker.internal解析到宿主机网关容器内的 AutoAgent 即可通过该地址访问宿主机 11434 端口上的 Ollama 服务。从源码构建的开发模式如果你在开发模式下运行 AutoAgent不使用 Docker配置方式更加直接。先按项目说明准备好环境含 Python 依赖与.env文件参考 .env.template然后在.env中写入COMPLETION_MODELollama/codellama:7b API_BASE_URLhttp://localhost:11434若 Agent 流程中还涉及向量检索等能力可同步指定嵌入模型AutoAgent 通过EMBEDDING_MODEL环境变量配置默认text-embedding-3-small见 constant.pyEMBEDDING_MODELlocal保存后启动 CLI 模式即可前端默认监听本地端口。界面中的模型选择框应填写ollama list中列出的模型名并加上ollama/前缀API Key 字段可以填任意占位字符串如ollama因为本地服务不校验密钥Base URL 填写http://localhost:11434。使用 LM Studio 的本地 LLMLM Studio 是另一款流行的本地推理工具暴露 OpenAI 兼容的/v1接口AutoAgent 可通过CUSTOM_LLM_PROVIDERopenai无缝接入。启动本地服务器设置步骤如下打开 LM Studio进入Local Server选项卡点击Start Server按钮从下拉列表中选择要使用的模型。随后在 AutoAgent 的.env中设置以下配置COMPLETION_MODELopenai/lmstudio API_BASE_URLhttp://localhost:1234/v1 CUSTOM_LLM_PROVIDERopenaiDocker 部署容器化运行时将 Base URL 指向宿主机LM Studio 默认监听 1234 端口docker run # ... -e COMPLETION_MODELopenai/lmstudio \ -e API_BASE_URLhttp://host.docker.internal:1234/v1 \ -e CUSTOM_LLM_PROVIDERopenai \ # ...开发环境配置非 Docker 开发模式下直接在.env中写入COMPLETION_MODELopenai/lmstudio API_BASE_URLhttp://localhost:1234/v1 CUSTOM_LLM_PROVIDERopenai完成后启动 AutoAgent 即可连接http://localhost:3000/使用全程无需任何云端 API Key。配置 Ollama 服务WSL {#configuring-ollama-service-wsl-zh}在 WSL 环境中Ollama 的默认配置只监听 localhost这会导致 Docker 容器内的 AutoAgent 无法访问它。先验证 Ollama 是否正常运行ollama list # 获取已安装模型的列表 curl http://localhost:11434/api/generate -d {model:[NAME],prompt:hi} # 例如 curl http://localhost:11434/api/generate -d {model:codellama:7b,prompt:hi} # 例如 curl http://localhost:11434/api/generate -d {model:codellama,prompt:hi} # 若只有一个标签标签可省略再测试是否允许外部例如来自 Docker 容器内部请求docker ps # 获取运行中的容器列表为获得最准确的测试结果选择 AutoAgent 沙盒容器 docker exec [CONTAINER ID] curl http://host.docker.internal:11434/api/generate -d {model:[NAME],prompt:hi} # 例如 docker exec cd9cc82f7a11 curl http://host.docker.internal:11434/api/generate -d {model:codellama,prompt:hi}如果容器内请求失败说明 Ollama 仍只绑定在 localhost需要修改服务配置。使用 sudo 权限编辑/etc/systemd/system/ollama.service路径可能因 Linux 发行版而异sudo vi /etc/systemd/system/ollama.service或sudo nano /etc/systemd/system/ollama.service在[Service]段落中添加以下行EnvironmentOLLAMA_HOST0.0.0.0:11434 EnvironmentOLLAMA_ORIGINS*保存后重新加载配置并重启服务sudo systemctl daemon-reload sudo systemctl restart ollama最后再次从容器内验证连通性ollama list # 获取已安装模型的列表 docker ps # 获取运行中的容器列表为获得最准确的测试结果选择 AutoAgent 沙盒容器 docker exec [CONTAINER ID] curl http://host.docker.internal:11434/api/generate -d {model:[NAME],prompt:hi}兼容性与注意事项WSL 镜像网络模式对于 WSL可在 Windows 的 cmd 中运行以下命令将网络模式设置为 mirrored然后重启 WSLpython -c print([wsl2]\nnetworkingModemirrored,fileopen(r%UserProfile%\.wslconfig,w)) wsl --shutdown函数调用支持本地模型是否启用函数调用由模型名自动判定。以llama等为后缀或前缀的本地模型会命中 constant.py 的NOT_SUPPORT_FN_CALL名单AutoAgent 自动切换为非函数调用模式见 autoagent/core.py即便如此也应优先选择对工具调用支持较好的模型如较新的 instruct 系列否则 Agent 的多步骤任务效果可能受限。消息格式兼容mistral、groq系模型不识别消息中的sender字段框架会自动剔除见 constant.py本地拉取的 Mistral 模型若出现异常响应可留意该机制是否被触发。配置持久化CLI 方式的环境变量可通过.env文件固化constant.py 会在启动时自动加载.env避免每次启动重复书写.env.template中列出的云端 API Key 在纯本地部署下均可留空。端口冲突与防火墙Ollama 默认11434、LM Studio 默认1234若本地端口被占用或宿主机防火墙拦截容器访问需先排查端口监听与放行规则再按上文 WSL 一节的方法验证连通性。通过以上配置AutoAgent 可以在完全离线、零 API Key 的环境下运行本地推理引擎负责模型加载与生成LiteLLM 抽象层负责协议适配COMPLETION_MODEL/API_BASE_URL/FN_CALL三组变量即可完成全部接入工作。这套方案既适合个人开发者验证 Agent 框架也可作为数据敏感场景下私有化部署的起点。【免费下载链接】AutoAgentAutoAgent: Fully-Automated and Zero-Code LLM Agent Framework项目地址: https://gitcode.com/GitHub_Trending/au/AutoAgent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考