告别API Key和云账单NOOA本地模型部署Ollama/vLLM3步完全指南【免费下载链接】labs-OO-AgentsNVIDIA Object Oriented Agents: the Pythonic way to build AI Agents.项目地址: https://gitcode.com/gh_mirrors/la/labs-OO-AgentsNOOANVIDIA Object Oriented Agents是一个面向 AI Agent 开发的 Python 对象式框架。本文将带你用 Ollama 或 vLLM 在本地部署大模型并接入 NOOA——全程无需 API Key不产生任何云端账单数据也不离开你的电脑。为什么选择本地模型对于新手和个人开发者本地模型有三大优势优势说明 零调用费用每次 LLM 生成都按 token 计费的时代本地推理成本只算电费 数据不出门敏感文档、内部数据不会被发送到第三方 API 离线可用断网环境、内网服务器同样能跑 AgentNOOA 本身是模型无关的它通过 src/nooa/unifiedllm/registry.py 中的get_llm_client()统一接入任意模型包括本地服务。也就是说把云端模型换成本地模型只需要改一行客户端配置Agent 代码完全不用动。方式一用 Ollama 部署本地模型最简单Ollama 是面向本地大模型的包管理器 运行时一条命令就能拉模型、起服务非常适合新手。第 1 步启动 Ollama 服务ollama serve第 2 步拉取一个模型ollama pull qwen3.6:27b硬件不够换成更小的模型如qwen3:1.7b即可先用ollama list确认模型名。第 3 步在 NOOA 中接入from nooa.unifiedllm.registry import get_llm_client llm get_llm_client( ollama_chat/qwen3.6:27b, api_basehttp://localhost:11434, )三个要点模型字符串使用ollama_chat/前缀对应 LiteLLM 的 Ollama 适配器api_base填本地端口地址不带/v1本地 Ollama 无需 API Key。方式二用 vLLM 部署本地模型性能更强vLLM 适合追求吞吐量和并发能力的场景性能通常优于 Ollama但对 GPU 显存要求更高。第 1 步启动 vLLM 服务vllm serve Qwen/Qwen3.6-27B --host 127.0.0.1 --port 8000第 2 步验证服务是否就绪curl http://localhost:8000/v1/models能列出模型即表示服务正常。第 3 步在 NOOA 中接入llm get_llm_client( hosted_vllm/Qwen/Qwen3.6-27B, api_basehttp://localhost:8000/v1, )与 Ollama 的两个关键差异模型字符串使用hosted_vllm/前缀模型 ID 取/v1/models返回的值api_base带/v1后缀若 vLLM 以--api-key或VLLM_API_KEY启动把同一个 key 传给api_key参数即可。⚠️ 安全提示只有在你已配置身份认证和网络访问控制时才把 vLLM 绑定到0.0.0.0否则保持默认的127.0.0.1。一次配置永久生效模型别名每次写api_base很啰嗦NOOA 支持把本地配置存为别名写入用户配置目录下的llm_config.yaml例如.nooa/llm_config.yamlmodels: local-ollama: model_name: ollama_chat/qwen3.6:27b api_base: http://localhost:11434 local-vllm: model_name: hosted_vllm/Qwen/Qwen3.6-27B api_base: http://localhost:8000/v1之后任意 Agent 只需一行拿到客户端llm get_llm_client(local-ollama)更多字段的规范client_type、api_key_env、max_tokens等请参考 docs/model-configuration.md。不花一分钱验证配置保存别名后可以先做零 API 调用的本地校验确认别名已正确加载from pathlib import Path from nooa.unifiedllm.registry import reload_registry entries reload_registry(Path(llm_config.yaml)) assert local-ollama in entries print(Model configuration loaded.)如果之后想对端点做完整的连通性检查可以用nooa connect向导并加--no-probe --no-catalogue参数跳过所有会消耗模型的探测请求详见 docs/model-connect.md。接入后跑通你的第一个本地 Agent客户端就绪后把它挂到 Agent 类上即可参考官方示例 examples/quickstart/01_first_generation_method.pyclass FeedbackAgent(Agent, llmllm): You are an agent specializing in analyzing customer feedback. async def analyze_feedback(self, text: str) - str: Analyze customer feedback for sentiment and key topics in one sentence. ...方法体里的...表示由 LLM 在运行时实现——你的模型名、参数和 docstring 就是提示词返回类型注解就是输出契约。本地模型跑起来后整个 Agent 循环完全在你的机器上完成。常见坑清单问题排查方法连接被拒绝确认ollama serve/vllm serve已启动端口号一致Ollama 报 404模型名必须与ollama list输出完全一致vLLM 返回 404检查api_base是否带了/v1模型 ID 是否为/v1/models返回的 id本地模型效果差小模型能力有限可换更大规格或升级显存总结Ollama一条命令起步适合新手和轻负载场景免 API KeyvLLM更高吞吐适合生产级本地服务可选 API Key两者都通过 get_llm_client() 一行接入配置存成别名后一劳永逸本地模型让 NOOA Agent 彻底摆脱云账单隐私数据不出门。完整官方资料本地模型文档 docs/local-models.md 与项目总览 README.md。【免费下载链接】labs-OO-AgentsNVIDIA Object Oriented Agents: the Pythonic way to build AI Agents.项目地址: https://gitcode.com/gh_mirrors/la/labs-OO-Agents创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考