
1. 为什么要在内网里跑 DeepSeek以及 endpoint 到底改哪里先说清楚这篇要解决的事DeepSeek 离线版本地部署指的是把 DeepSeek 系列模型比如 deepseek-r1 的 1.5B、7B、14B、32B 等蒸馏版本下载到自己的机器或内网服务器上通过本地推理服务对外提供 OpenAI 兼容接口再把客户端或代码里的 endpoint 指向这个本地地址。它适合三类人一是内网/隔离环境里不能访问公网的开发者二是想把模型调用成本压到接近零、只花电费的团队三是做 Agent、RAG、代码补全这类需要低延迟反复调用的场景。很多人卡住的地方不是「怎么下载模型」而是「下载完之后我的代码、我的客户端到底该连哪个地址」。默认情况下Ollama 会在本机监听http://127.0.0.1:11434这是一个 OpenAI 兼容的 endpoint但它默认只允许本机访问。如果你在容器里、在另一台机器上、或者用某个 IDE 插件去连就会遇到连接被拒、401、model not found 之类的报错。所以「把 endpoint 改到 TaoToken」这件事本质上是两件事的组合本地推理服务负责算TaoToken 负责在需要联网或需要统一网关时提供稳定的 API 入口与鉴权。下面我会把两条路径都讲清楚你可以按自己的网络环境选。先给一个整体判断纯离线、完全不出网的场景你只需要 Ollama 本地 endpoint如果内网机器需要访问外部模型能力、或者你想用同一套 OpenAI 兼容协议同时管理本地模型和云端模型那就把 endpoint 指向 TaoToken 的 API 地址https://taotoken.net/api用 API Key 鉴权。两种方式在客户端里长得几乎一样区别只在 Base URL 和 Key。我实测下来最容易踩的坑是以为改了 Base URL 就完事结果模型名没对上、或者 Key 没带、或者端口没放开。所以这篇会按「装服务 → 拉模型 → 配 endpoint → curl 验证 → 客户端验证 → 排错」的顺序走每一步都给可复制的命令和配置。2. 前置准备Ollama 安装、模型拉取与 TaoToken 接入信息这一节把地基打好。你需要准备的东西不多一台能跑模型的机器内存至少 8G 起跑 1.5B/7B 够用14B 以上建议 16G、Ollama、以及一个可选的 TaoToken API Key。2.1 安装 Ollama 并确认服务在跑Linux 下一条命令搞定curl -fsSL https://ollama.com/install.sh | shWindows 用户下载OllamaSetup.exe右键以管理员身份运行点 Install装完开始菜单里会有 Ollama。装完后确认服务状态ollama --version ollama list如果ollama list报连接错误说明后台服务没起来。Linux 用systemctl status ollama看Windows 直接看托盘图标是否在。服务默认监听127.0.0.1:11434。2.2 拉取 DeepSeek 模型按你的内存选型号命令就是ollama run或ollama pullollama pull deepseek-r1:1.5b ollama pull deepseek-r1:7b ollama pull deepseek-r1:14bpull只下载不进入对话适合脚本化run下载完直接进交互。下载慢可以 CtrlC 中断再重来Ollama 支持断点续传。拉完用ollama list确认你会看到类似deepseek-r1:1.5b的条目这个名字后面配置 Model ID 时要一字不差地用上。2.3 拿到 TaoToken 的接入三件套如果你要走 TaoToken 这条路径需要三样东西Base URL、API Key、Model ID。Base URL 固定为https://taotoken.net/api注意不要加多余的路径后缀OpenAI 兼容客户端通常会自动拼/v1/chat/completions。API Key 去控制台创建地址是https://taotoken.net/console/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi_keysutm_campaignrewrite。Model ID 按你实际要调的模型填比如deepseek-r1或你账号下可用的具体型号。注意API Key 只显示一次创建后立刻复制保存。不要把它写进会提交到 Git 的明文文件里用环境变量或本地.env。到这里前置就齐了。接下来是核心怎么把 endpoint 配到各个地方。3. 可复制配置把 endpoint 改到 TaoToken 的完整片段这一节是全文最该收藏的部分。我给你四份可直接粘贴的配置环境变量、OpenAI SDK、Cline/Continue 这类插件、以及 Claude Code 的 settings。每份都标清楚 Base URL、Key、Model ID 三件套的位置。3.1 环境变量方式最通用export OPENAI_BASE_URLhttps://taotoken.net/api export OPENAI_API_KEYsk-你的TaoToken密钥 export OPENAI_MODELdeepseek-r1Windows PowerShell$env:OPENAI_BASE_URLhttps://taotoken.net/api $env:OPENAI_API_KEYsk-你的TaoToken密钥 $env:OPENAI_MODELdeepseek-r1很多工具会优先读这三个变量配一次到处能用。3.2 Python OpenAI SDK 配置from openai import OpenAI client OpenAI( base_urlhttps://taotoken.net/api, api_keysk-你的TaoToken密钥, ) resp client.chat.completions.create( modeldeepseek-r1, messages[{role: user, content: 用一句话解释什么是本地部署}], ) print(resp.choices[0].message.content)如果你要连的是本地 Ollama 而不是 TaoToken只改base_url和api_keyclient OpenAI( base_urlhttp://127.0.0.1:11434/v1, api_keyollama, # 本地服务不校验随便填但不能空 )3.3 Cline / Continue 插件配置JSON以 Cline 为例在设置里选 OpenAI Compatible填{ apiProvider: openai, openAiBaseUrl: https://taotoken.net/api, openAiApiKey: sk-你的TaoToken密钥, openAiModelId: deepseek-r1 }Continue 的config.json片段{ models: [ { title: DeepSeek via TaoToken, provider: openai, model: deepseek-r1, apiBase: https://taotoken.net/api, apiKey: sk-你的TaoToken密钥 } ] }3.4 Claude Code settings 配置Claude Code 走 Anthropic 兼容协议时在~/.claude/settings.json里配{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_API_KEY: sk-你的TaoToken密钥, ANTHROPIC_MODEL: deepseek-r1 } }提示三件套缺一不可。Base URL 写错会 404Key 写错会 401Model ID 写错会报 model not found 或 reading choices 相关错误。改完配置记得重启客户端很多插件不会热加载。配置这件事没有玄学就是地址、钥匙、门牌号三样对上。下面进入验证环节。4. 验证请求用 curl 和客户端确认真的通了配完不验证等于没配。这一节给你从命令行到图形界面的完整验证链路。4.1 curl 验证 TaoToken endpointcurl https://taotoken.net/api/v1/chat/completions \ -H Content-Type: application/json \ -H Authorization: Bearer sk-你的TaoToken密钥 \ -d { model: deepseek-r1, messages: [{role: user, content: 你好做个连通性测试}] }成功的话你会拿到一段 JSON里面有choices[0].message.content。如果返回 401检查 Key返回 404检查 Base URL 是不是多写或少写了/v1返回 model 相关错误检查 Model ID。4.2 curl 验证本地 Ollama endpointcurl http://127.0.0.1:11434/v1/chat/completions \ -H Content-Type: application/json \ -d { model: deepseek-r1:1.5b, messages: [{role: user, content: 本地连通性测试}] }本地服务不需要 Authorization 头。如果连接被拒说明 Ollama 没监听或端口不对如果报 model not found用ollama list核对模型名。4.3 让 Ollama 监听外部地址内网其他机器要连时默认只监听 127.0.0.1。要让内网其他机器访问设置export OLLAMA_HOST0.0.0.0:11434Linux systemd 用户改systemctl edit ollama加[Service] EnvironmentOLLAMA_HOST0.0.0.0:11434然后systemctl restart ollama。改完用另一台机器curl http://内网IP:11434/v1/models验证。注意这只在内网做别暴露到公网。4.4 图形客户端验证Chatbox、Cherry Studio 这类客户端选 OpenAI CompatibleBase URL 填https://taotoken.net/api或http://127.0.0.1:11434/v1Key 对应填模型名填对保存后发一条消息。能正常流式输出就说明链路通了。验证通过后你就有了一套可用的本地/网关双通道。接下来是排错这部分能帮你省下大量搜索时间。5. 常见报错排查401、local proxy failed、reading choices、OAuth这些报错我基本都遇到过逐个拆。401 Unauthorized最常见。原因就三个——Key 没填、Key 填错、Key 前后有空格或换行。检查Authorization: Bearer sk-xxx格式Bearer 后面有一个空格。用环境变量时确认echo $OPENAI_API_KEY输出正常。local proxy failed / connection refused客户端连不上 endpoint。如果是本地 Ollama确认服务在跑、端口 11434 没被占、OLLAMA_HOST配对了。如果是 TaoToken确认网络能出站、Base URL 没写错。容器场景常见的是容器内127.0.0.1指向容器自己而不是宿主机要改成宿主机内网 IP 或host.docker.internal。reading choices / choices 字段为空通常是响应结构和你预期的不一样。可能原因Model ID 不存在导致返回了错误对象或者你用的客户端期望 OpenAI 格式但服务返回了别的格式。先用 curl 看原始返回确认choices数组存在。如果返回的是{error: ...}那就是模型名或鉴权问题。OAuth / 鉴权失败Claude Code 这类工具如果之前登录过官方账号可能缓存了 OAuth token导致你配的 API Key 不生效。清掉旧凭据确认settings.json里的ANTHROPIC_API_KEY和ANTHROPIC_BASE_URL生效。必要时删掉~/.claude下的缓存重来。model not found本地场景核对ollama list的完整名字带:1.5b这种 tag网关场景核对 Model ID 拼写。大小写和冒号都敏感。下载中断/速度慢Ollama 支持断点续传CtrlC 后重新ollama pull即可。内网环境可以先把模型文件离线拷贝到~/.ollama/models对应目录。排错的核心思路永远是先 curl 拿到原始响应再判断是网络、鉴权还是模型名的问题。别一上来就改代码。6. 下一步把本地模型接进你的日常开发流跑通之后你可以做几件让这套环境真正产生价值的事。第一把本地 endpoint 接进你的代码补全插件日常写代码时用本地模型兜底敏感代码不出内网。第二用同一套 OpenAI 兼容协议在配置里做本地/网关的切换离线时走本地需要更强模型时切到 TaoToken。第三如果你在做 Agent 或长任务考虑用 Coding Plan 这类按量方案来承接高频调用地址是https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding_planutm_campaignrewrite。想快速对比不同模型的实际输出效果可以直接在模型对话页面试https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentmodel_chatutm_campaignrewrite。接入细节和参数说明看文档https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite。需要新建或管理 Key 就去 API Keys 页面。最后留一个我自己的习惯把 Base URL、Key、Model ID 三件套写进一个本地.env所有客户端都从环境变量读换机器时只改这一个文件。这样无论你连的是本地 Ollama 还是 TaoToken 网关切换成本都接近零。