跳到主要内容

你好,欢迎来到我的博客

· 阅读需 1 分钟
东方赞
程序员/注册会计师

关于我

欢迎来到我的博客!这里是我分享知识、经验和见解的地方。希望通过这个平台与志同道合的朋友们交流,互相学习,共同成长。让我们一起探索技术与财务的世界,分享彼此的故事和见解!

我的公众号

为了能够获取第一手资讯,我也会在我的公众号上发布相关的内容,欢迎关注

alt text

本地部署大模型接入 Claude Code 全攻略:轻松实现不限量 Vibe Coding

· 阅读需 13 分钟
东方赞
程序员/注册会计师

2026 年,AI 编程已经成为主流趋势,而 AnthropicClaude Code 凭借其强大的代码理解和生成能力,迅速赢得了开发者的青睐。🎉

Anthropic 系列模型主要以云端服务形式提供,受限于网络和昂贵的价格,很多开发者希望能在本地部署类似能力的大模型

国内最近开源的 Kimi-K2.5 / GLM-4.7 / MiniMax-M2.1 等模型,具备强大的编程能力,可以说在一定程度上替代 Anthropic 系列模型

可以在享受不限速的本地推理体验的同时摆脱网络和费用的束缚,并保证数据的隐私安全

但是目前本地部署的开源方案中,大多数模型部署后都只支持 OpenAI 兼容格式的接口

无法直接兼容 Anthropic 的调用格式,这就给想要无缝切换到本地模型的开发者带来了不便

本篇文章,我们将分享如何利用本地部署大模型,助你轻松实现不限量的 Vibe Coding 体验!

接口之争

在介绍如何接入之前,我们可以先了解一下目前主流的 AI 接口格式,具体都有哪些区别

对这部分内容已经了解的朋友可以直接跳过到后面如何使用转换器的章节。

目前主流的 AI 接口主要有三种

1. OpenAI /chat/completions 接口

这个接口相信大家都比较熟悉,在 2022 年末,ChatGPT 发布时,OpenAI 推出了这个接口,迅速成为行业标准

几乎所有的模型厂商都兼容这个接口,这也是我们最常用的接口。

OpenAI Chat Completions

这个接口顾名思义,本质是为了对话文本生成快速做出来的接口,且非常简单易用

它的核心假设是:

  • 一次请求 = 一次文本回复
  • 你自己管理上下文
  • 工具调用是后来硬塞进去的(function calling)

这在 2023 年是非常合理的设计,因为当时大多数模型都只是对话工具

2. OpenAI /responses 接口

到了 2025 年,随着大模型能力的发展,Agent 智能体、多模态、工具调用已经越来越重要

原来的/chat/completions历史包袱太重,已经无法很好地支持这些新兴的复杂交互场景

OpenAI 在 2025 年 3 月份发布了一个新的接口 /responses,这个接口本质上是为了更好地支持复杂交互设计的

在这个全新的接口中,增加了原生的 Agent 能力:

  1. 内置 tool use:file_search、code_interpreter、image_generation、web_search、MCP 等
  2. 一次 responses 调用里可以发生多次模型-工具-模型循环

增加了 原生的状态(stateful) 支持,保持会话状态,让每次推理不再失忆

与此同时,多模态也不再是给 chat 接口加个字段,而是:

  1. text / image / audio / file 都是一等公民
  2. 输出也是多 item(text + tool_call + structured output)

这对真正做产品级应用很重要,OpenAI 也在积极的推动这个接口的生态建设

比如现在的 OpenAI 推出的编程工具 Codex 就是基于这个接口设计的

OpenAI Responses

3. Anthropic /messages 接口

Anthropic 的 /messages 接口,在原理上其实与 OpenAI 的 /chat/completions 接口更为接近

他们在文本对话的基础上,增加了多模态、工具调用的能力,并没有额外基于 Agent 去设计一套全新的接口

但有趣的是,Anthropic 是一家工程能力非常强的公司,他们在过去一年中,专注于 Agent 的落地

在 AI 编程这个领域,打造了一个非常强大的编程 Agent 工具 Claude Code

使得基于这一套 /messages 接口,利用工具调用、MCP、Agent Skills 等能力,能够实现非常高效的交互能力

OpenAI Responses

随着 Claude Code 越来越流行,越来越多的开发者希望能够直接调用兼容 Anthropic 的 /messages 接口,来利用 Claude Code 的强大能力

很多国内厂家也开始支持 Anthropic 的接口规范

虽然 OpenAI 的 /responses 接口在设计上看起来更超前,更优秀

但 Anthropic 的 /messages 接口,凭借其强大的生态和落地能力,似乎已经成了 Agent 开发的事实标准

本地部署大模型接入 Claude Code 全攻略

现在,回到我们的主题,如何将本地部署的大模型,接入到 Claude Code 体系中?

当前我们本地部署大模型,通常会采用以下三种推理引擎来运行大模型

  1. Ollama
  2. vLLM
  3. SGLang

绝大多数非自研模型的 AI 接口提供商,大体上也是基于以上的推理引擎进行修改而来的

1. Ollama

Ollama 作为目前桌面端使用最多的推理引擎,一开始就已经支持了 OpenAI 的 /chat/completions 接口

2026 年初,Ollama 也发布了对 Anthropic /messages 接口的支持

所以,如果你使用 Ollama 来部署模型,那么直接调用本地的 Ollama 服务即可

你需要升级到 Ollama 最新版本,才能支持 Anthropic 接口,至少>=v0.15.0

2. vLLM

vLLM 作为目前最流行的云端推理引擎,支持了最多类型的 API

上述我们提到的三种主流接口,vLLM 都已经支持

如果你使用 vLLM 来部署模型,在启动模型成功时,看到 vLLM 支持的 API

local-openai2anthropic

3. SGLang

SGLang 作为目前另外一款跟 vLLM 齐名的推理引擎,目前只支持 OpenAI 的 /chat/completions 接口

在当前的版本中,还没有对 Anthropic 的 /messages 接口提供支持

但在今年的 Roadmap 中,SGLang 团队已经明确表示会支持 Anthropic 接口

只是具体的发布时间还未确定,所以如果你使用 SGLang 来部署模型,目前还无法直接支持 Anthropic 接口调用

简单总结

我们总结一下,如果你使用 OllamavLLM 来部署模型

那么恭喜你,你可以直接调用本地的 Anthropic 接口来实现接入 Claude Code

如果你使用SGLang来部署模型,那就比较惨了,目前就只有干瞪眼了

那么有的同学可能会问了

我不知道我们公司是用啥部署的,只有一个/chat/completions接口

或者你像我一样,希望可以享受 SGLang 的高性能,那该怎么办呢?

Claude Code Router

github 地址: https://github.com/musistudio/claude-code-router

顾名思义,这是一款可以将各种类型的 AI 接口,转换成 Anthropic /messages 接口的转换器

同时可以对你所有的模型进行路由

目前 github 上已经积累了 25k+ stars,受到了社区的广泛关注

你可以进入他的 github 仓库,查看详细的使用说明,只需要几步配置就可以完成部署

local-openai2anthropic

Claude Code Router 是一款非常好用的软件,在很多场景下面都能派上用场

但是在当前的开源的推理引擎中,即使是兼容OpenAI接口的 OllamavLLMSGLang 也并不完美

每家实现的兼容OpenAI接口的方式各不相同,这就导致了即使是对 AI 非常熟悉的工程师,也无法完美适配每一家不同的接口

所以针对我们本地部署大模型接入 Claude Code 的场景,我自己写了一个非常轻量级的转换器 local-openai2anthropic

https://github.com/dongfangzan/local-openai2anthropic

local-openai2anthropic

这个转换器的设计目标非常简单,只考虑本地部署大模型接入 Claude Code 等编程工具的场景

主要功能:

  • 本地部署的 OpenAI 兼容接口(如 SGLang / Ollama / vLLM) 转换成 Anthropic 兼容接口
  • 完美适配了不同开源模型的思考、非思考模式的切换
  • 通过外接搜索工具,解决本地模型无法进行 WebSearch 的问题
  • 支持图像输入(Kimi-K2.5/Qwen3-VL/GLM-4.6V),实现多模态能力
  • 完美支持 token 用量估算,避免上下文超限导致的窗口溢出

使用方法

你可以直接通过 pip 安装这个包

pip install local-openai2anthropic

然后通过命令行启动这个转换器

oa2a start

启动后,通过引导输入你的本地 OpenAI 兼容接口地址和 API Key 即可

local-openai2anthropic

随后,只需要将你Claude Code 的 ANTHROPIC_BASE_URL 地址,指向这个转换器的地址即可

vi ~/.claude_code/settings.json
local-openai2anthropic

联网搜索支持

如果你需要通过搜索引擎来支持 WebSearch 功能

local-openai2anthropic

可以通过配置 tavily_api_key 来实现

vi ~/.oa2a/config.toml
local-openai2anthropic

免费版的 Tavily Search,每个月有 1000 次调用额度,基本上可以满足日常使用需求

你可以到他的官网去免费注册一个账号,来获取 API Key

官网地址:https://tavily.com

结束

感谢你看到这里,随着 AI 编程时代的全面到来,本地化部署已经成为追求极致性能与数据隐私开发者的必经之路

目前国产开源模型(如 Kimi-K2.5、GLM-4.7、MiniMax-M2.1)在能力上已经非常能打,无论你用哪种方式来实现 Vibe Coding,我们的目标都是一致的:

打破格式壁垒,释放本地算力的无限潜力。 🚀

希望这篇教程能帮助你搭建起专属的本地 AI 编程环境,享受不限速、不泄密、不掉线的 Vibe Coding 体验!

如果你在部署过程中遇到任何坑,或者有更好的玩法的,欢迎在评论区交流,或者直接去 GitHub 提 Issue!👋

重磅开源!Kimi K2.5 本地部署全攻略:手把手教你跑通 1T MoE 巨兽

· 阅读需 9 分钟
东方赞
程序员/注册会计师

最近,Kimi K2.5 模型正式开源,再一次刷新了开源大模型的能力天花板!🎉

特别是在 Agent 智能体、编程开发 和 视觉理解 领域,其表现堪称惊艳。

本篇文章,我们就最近这几天在本地部署 Kimi K2.5 模型的踩坑实践做一个全方位分享,助你一次跑通!💪


📦 一、 模型下载

你可以在 魔搭社区 或者 Hugging Face 找到这个模型。

👉 国内推荐:魔搭社区,下载速度会更快一些 🔗 链接:https://modelscope.cn/models/moonshotai/Kimi-K2.5

📊 模型参数概览

在模型卡片中我们可以看到:

  • 总参数量:1T (MoE 架构)
  • 激活参数:32B
  • 量化版本:原生 INT4
  • 实际大小:约 595.21GB (虽然听起来恐怖,但因为是 INT4,实际体量在可控范围内)

⚙️ 二、 硬件环境准备

从模型大小就能看出,这位“巨兽”对硬件的要求不低。😨

💻 最低配置门槛

8 * 96GB H20 是能摸到这个模型的底线,且需要裁剪上下文长度

✨ 推荐配置方案

为了拥有丝滑的使用体验,我们推荐以下几种配置:

方案硬件配置推荐指数备注
方案一8 * 141GB H200 (单机)⭐⭐⭐⭐⭐最推荐,省心高效
方案二2 * 8 * 96GB H20 (双机)⭐⭐⭐⭐需配置多机通信
方案三2 * 8 * 80GB H100 (双机)⭐⭐⭐⭐算力强,显存刚好

💡 小贴士:比如 H100 这种算力够但显存吃紧的卡,完全可以通过多机部署来解决。


🛠️ 三、 部署步骤

0️⃣ 前置准备

首先在你的服务器上安装好 Nvidia 驱动CUDA 环境(此处省略一万字...)。

📥 下载模型到本地
# 1. 安装 modelscope
pip install modelscope

# 2. 下载模型到指定目录
modelscope download moonshotai/Kimi-K2.5 --local-dir ./dir

⏳ 经过漫长的等待... 下载完成后,整个 Kimi K2.5 模型大约 555GB

📖 官方部署文档参考: https://modelscope.cn/models/moonshotai/Kimi-K2.5/file/view/master/docs%2Fdeploy_guidance.md?status=1


1️⃣ 方案 A:使用 vLLM 部署

vLLM 是一个高性能的大模型推理引擎,支持大规模模型的高效推理。

📍 方法一:本机直接部署

安装 vLLM(注意版本号!):

uv pip install -U vllm==0.15.0 
# ⚠️ 注意:一定要安装 0.15.0 及以上版本,才能支持 Kimi K2.5

启动脚本 (单机 8 * 141GB H200/H20):

vllm serve $MODEL_PATH -tp 8 \
--trust-remote-code \
--tool-call-parser kimi_k2 \
--reasoning-parser kimi_k2 \
--enable-auto-tool-choice \
--port 8000 \
--host 0.0.0.0
📍 方法二:Docker 部署 (推荐 🌟)

不想污染本地环境?用 Docker!

# 拉取镜像
docker pull vllm/vllm-openai:v0.15.0

启动脚本

docker run --runtime nvidia --gpus all \
-v $MODEL_PATH:$MODEL_PATH \
-p 8000:8000 \
--ipc=host \
vllm/vllm-openai:v0.15.0 \
--model $MODEL_PATH \
--trust-remote-code \
--tool-call-parser kimi_k2 \
--reasoning-parser kimi_k2 \
--enable-auto-tool-choice \
--port 8000 \
--host 0.0.0.0
🌐 多机部署补充

如果是双机部署(如 2 * 8 * 96GB H20),需确保节点间网络互通(IB 网络配置正确)。 👉 配置 IB 网络可参考我之前的 DeepSeek 部署文章: https://mp.weixin.qq.com/s/iyYap5ciQd3JtpgBNnld8Q

主节点脚本

vllm serve $MODEL_PATH \
--tool-call-parser kimi_k2 \
--reasoning-parser kimi_k2 \
--enable-auto-tool-choice \
--enable-expert-parallel \
--enable-chunked-prefill \
--host 0.0.0.0 --port 8000 \
--distributed-executor-backend mp \
--pipeline-parallel-size 2 \
--tensor-parallel-size 8 \
--nnodes 2 --node-rank 0 \
--served-model-name kimi-k2.5 \
--master-addr $HEAD_NODE_IP \
--trust-remote-code

从节点脚本

vllm serve $MODEL_PATH \
--tool-call-parser kimi_k2 \
--reasoning-parser kimi_k2 \
--enable-auto-tool-choice \
--enable-expert-parallel \
--enable-chunked-prefill \
--host 0.0.0.0 --port 8000 \
--distributed-executor-backend mp \
--pipeline-parallel-size 2 \
--tensor-parallel-size 8 \
--nnodes 2 --node-rank 1 \
--served-model-name kimi-k2.5 \
--master-addr $HEAD_NODE_IP --headless\
--trust-remote-code

(从节点脚本类似,仅需修改 --node-rank 1 并添加 --headless 参数)


2️⃣ 方案 B:使用 SGLang 部署 (🔥 作者当前在用)

截止目前,SGLang 尚未发布最新的正式版,需使用开发版本

📍 方法一:本机源码部署
# 安装依赖 (源码安装)
pip install "sglang @ git+https://github.com/sgl-project/sglang.git#subdirectory=python"
pip install nvidia-cudnn-cu12==9.16.0.29

启动脚本

sglang serve --model-path $MODEL_PATH \
--tp 8 \
--trust-remote-code \
--tool-call-parser kimi_k2 \
--reasoning-parser kimi_k2 \
--host 0.0.0.0 \
--port 8000

多机部署,同样的需要首先配置IB网络

# 主节点
sglang serve --model-path $MODEL_PATH --served-model-name kimi-k2.5 \
--tp 16 \
--trust-remote-code \
--tool-call-parser kimi_k2 \
--reasoning-parser kimi_k2 \
--dist-init-addr $HEAD_NODE_IP:$HEAD_NODE_PORT \ # 例如我的是10.0.41.2:8000
--nnodes 2 \
--node-rank 0 \
--host 0.0.0.0 \
--port 8000

# 从节点
sglang serve --model-path $MODEL_PATH --served-model-name kimi-k2.5 \
--tp 16 \
--trust-remote-code \
--tool-call-parser kimi_k2 \
--reasoning-parser kimi_k2 \
--dist-init-addr $HEAD_NODE_IP:$HEAD_NODE_PORT \ # 例如我的是10.0.41.2:8000
--nnodes 2 \
--node-rank 1 \
--host 0.0.0.0 \
--port 8000
📍 方法二:Docker 部署 (推荐 🌟)
# 1. 拉取最新开发版镜像
docker pull sglang/sglang:dev

# 2. 启动容器
docker run -d --gpus all \
--shm-size=128g \
--ipc=host \
--network=host \
--name kimi-k2.5 \
lmsysorg/sglang:dev \
bash -c "while true; do sleep 3600; done"

# 3. 进入容器
docker exec -it kimi-k2.5 bash

# 4. 在容器内执行方法一中的启动脚本即可
✅ 部署成功验证

当日志中出现如下内容,恭喜你,模型启动成功!🎊

实测性能

  • 环境2 * 8 * 80GB H100
  • Decode 速度:平均 70-80 tokens/s
  • 评价:比 GLM-4.7 和 MiniMax-M2.1 稍慢,但考虑到模型量级巨大,这个速度完全可接受!

🔮 四、 下一步:落地

相信大家本地部署 Kimi K2.5,绝不仅仅是为了简单聊聊天。🗣️

在 2026 年的今天,编程 和 Agent 才是 AI 的核心生产力

Kimi K2.5 在这两方面的能力非常强大,加上原生支持多模态,让它在视觉编程方面拥有了天然优势。

想象一下:

📸 你只需要截个图,发给 AI,它就能帮你生成一个一模一样的界面...

这种感觉有多爽?只有亲自体验过才知道!😎

然而,理想很丰满,现实却有些“骨感”。🤔

虽然直接购买官方 API 门槛最低,但在企业级实战中,我们往往面临着两座大山:网络延迟的不确定性核心数据的安全红线。把核心代码交给公网模型?很多团队心里总会犯嘀咕。

既然公有云有顾虑,那**“把能力搬回家”**就成了必然选择。

但问题来了:如何把 Kimi K2.5 这种“巨无霸”平稳落地,并像 API 一样丝滑地接入到我们的开发流中?

这正是我们下一阶段要攻克的重点——从“能跑通”到“好用”,实现真正的本地化生产力闭环。

📝 写在最后

感谢你看到这里!祝你部署顺利!🎉

下篇文章预告 🚀

我们将讨论如何将你本地部署的大模型完美接入 Claude Code,让你闲置的 GPU 转冒烟,发挥它的最大价值!🔥

关注我,不迷路! 👇

Claude Agent SDK 开发指南2 - 对话、工具调用、MCP以及如何让AI操纵你的浏览器

· 阅读需 10 分钟
东方赞
程序员/注册会计师

上篇文章中我们看到,如何用Claude Agent SDK快速搭建一个AI Agent

只用了几分钟时间,我们就快速搭建了一个可以自动修复Python代码的QuickStart

在本篇文章中我们继续来深入了解Claude Agent SDK的核心组件——query()函数和ClaudeSDKClient

Claude Agent SDK 开发指南1 - QuickStart

· 阅读需 10 分钟
东方赞
程序员/注册会计师

AI发展到了2026年,越来越多的开发者已经开始注意到,需要落地AI应用,单纯依赖大模型能力已经远远不够了

大家开始逐步开发落地AI应用,而Claude Agent SDK的出现,无疑为开发者提供了一个极其便利的工具

本系列文章,我们就来介绍Claude Agent SDK的使用方法和一些实战经验

10 天用掉 10 亿 tokens 后,我的一些 vibe coding 经验

· 阅读需 14 分钟
东方赞
程序员/注册会计师

之前,我简单体验了一下Claude Code,在一些简单的代码和工具任务里面,可以看到Vibe Coding 能带来的巨大提升

相信很多使用过人的朋友在尝试过一次后,都会被深刻的震撼到

最近也看到很多大佬的谈到,Claude Code 用 1 小时就完成了过去一年以来所构建的东西

那么在高强度的复杂工程里面,Vibe Coding 究竟能带来什么样的体验呢?

在过去的 10 天里,我消耗了10亿Tokens,就来分享一下我的一些实际体验和心得吧。

怀疑 Vibe Coding?Claude Code 实战体验:AI 现在可以真正帮你写代码吗?

· 阅读需 9 分钟
东方赞
程序员/注册会计师

在上篇文章中2025年12月26日,我不再写代码了

我讲述了我自己如何从 AI 辅助编程,转向 Vibe Coding 的心路历程

相信很多人都有类似经历,但是也会怀疑

  1. Vibe Coding 到底有没有用?如何才能真正利用 Vibe Coding 来提升编程效率?
  2. Vibe Coding 很贵,是否值得购买?有没有更便宜的方案?
  3. 受限于网络问题,国外模型不可用/公司内网环境无法对接外网,是否有解决方案?

在本篇文章中,我们就来一一解答这些问题

2025年12月26日,我不再写代码了

· 阅读需 10 分钟
东方赞
程序员/注册会计师

那个改变一切的夜晚

2025年12月26日,一个普通的冬天 ❄️

我坐在电脑前,像往常一样准备开始写代码。

但这一次,我没有打开 IDE,没有新建文件,没有敲下第一行 import

我只是打开了一个软件

然后,我开始"说话":

"帮我写一个通用后台管理系统,就像 RuoYI 一样,支持用户管理、角色管理、菜单管理、操作日志管理……"

几分钟后,一个完整的系统,出现了在我的面前。

那一刻,我意识到:我不再需要"写"代码了。