Kubernetes v1.4 里程碑解析:核心特性、行为变更与升级迁移全指南
导读
本文以 CHANGELOG/CHANGELOG-1.4.md 为骨架,系统梳理 Kubernetes v1.4 这一重要版本的发布主线:从四大主题(简化用户体验、有状态应用支持、集群联邦、安全)出发,逐一拆解 API Machinery、Apps、Auth、Federation、Storage 等领域的 alpha/beta/stable 特性,重点解读由"服务端垃圾回收默认开启"引发的一组破坏性行为变更(滚动更新、删除语义、REST DELETE 异步化),并完整保留官方发布的已知问题清单与升级前必做动作(含可直接执行的迁移命令)。文章同时对照本仓库当前源码树,指出这些 v1.4 时代特性在后继版本中的延续实现位置,帮助读者既读懂历史版本为何如此演进,也能在现网升级与代码研究时快速定位对应模块。
说明:本文所述"版本事实"均出自仓库内
CHANGELOG/目录的历史发布记录;当前仓库 master 分支已远新于 v1.4,文中所有源码路径仅用于说明"该特性在现仓库中的演进落脚点",不代表 v1.4 源码本身。
一、版本范围与阅读上下文
CHANGELOG-1.4.md 覆盖从 v1.4.0-alpha.1 到 v1.4.12 的完整版本链:
- 正式版本:v1.4.0、v1.4.1 ~ v1.4.12(v1.4.1 与 v1.4.12 为分支内补丁);
- 预发布版本:v1.4.0-alpha.1 ~ alpha.3、v1.4.0-beta.1 ~ beta.11;
- 发布说明结构:每个版本含下载矩阵(client/server/node 二进制 + sha256 校验)、相对前一版本的行为变更摘要(Action Required / Other notable changes / Experimental Features)。
后续版本的历史记录可继续阅读 CHANGELOG-1.5.md 及仓库根目录 CHANGELOG.md;更早的 1.2/1.3 记录见 CHANGELOG/CHANGELOG-1.3.md 与 CHANGELOG/CHANGELOG-1.2.md。
二、v1.4.0 的四大主题(Major Themes)
v1.4.0 版本官方归纳了四条主线,后续章节的每个特性几乎都可归入其一:
- 简化用户体验(Simplified User Experience)
- 更容易快速拉起集群:引入
kubeadm、集群内(intra-cluster)引导; - 更容易理解集群状态:API 审计日志(API audit logs)、服务端默认值(server-based API defaults)。
- 更容易快速拉起集群:引入
- 有状态应用支持(Stateful Application Support)
- 增强持久化能力:
StorageClass、新存储卷插件; - 新增资源与调度特性:
ScheduledJob资源、Pod 节点/可用区亲和与反亲和(affinity/anti-affinity)。
- 增强持久化能力:
- 集群联邦(Cluster Federation)
- 跨 GCE/GKE 集群的全局多集群 HTTP(S) Ingress;
- 联邦混合云资源扩展:ReplicaSets、Secrets、Namespaces、Events。
- 安全(Security)
- 提升 Pod 级安全粒度:容器镜像策略(ImagePolicyWebhook)、AppArmor、sysctl 支持;
- 提升集群级安全粒度:Access Review API。
其中"简化用户体验"主线对应的 kubeadm 在 v1.4 为 alpha,如今已发展为仓库中独立的子命令入口(cmd/kubeadm/kubeadm.go,其完整实现位于 cmd/kubeadm/app),是当前社区主推的集群引导工具,可见该主线后续演进之深。
三、分领域新特性全景(Features by Area)
v1.4 起,Kubernetes 首次使用 kubernetes/features issues 仓库来跟踪每个 Feature,每个特性由对应 Special Interest Group(SIG)负责,因此每条发布说明均带有 alpha / beta / stable 成熟度标记。下面按领域逐条还原并补充说明。
3.1 API Machinery
| 成熟度 | 特性 | 说明 |
|---|---|---|
| alpha | API 审计日志 | 对用户访问安全 API Server 端点的每一次请求生成审计日志(后成为 --audit-log-* 一族开关的起点) |
| beta | Swagger 2.0 spec | kube-apiserver 除 swagger 1.2 外,开始发布 swagger 2.0 规范(OpenAPI 前身;同版本另有 alpha 的 OpenAPI /swagger.json) |
| beta | 服务端垃圾回收默认开启 | 见后文"行为变更"章节专项展开 |
此外 alpha 阶段还引入了 OpenAPI(Swagger 2.0)规范输出 /swagger.json(默认开启)等铺垫性工作,如今 api/openapi-spec 与 api/discovery 目录即该类生成的固化产物。
3.2 Apps
- [alpha] ScheduledJobs(定时任务):支持"指定时间运行一次 / 按指定时间点周期运行"的定时 Job,首次落在
batch/v2alpha1。- 演进:该资源后来更名为 CronJob。在当前仓库中,其控制逻辑的现代实现位于 pkg/controller/cronjob/cronjob_controllerv2.go,例如它会按
spec.schedule的解析结果将 CronJob 重新入队以等待下一个调度时刻(见该文件updateCronJob一带逻辑),正是 v1.4 ScheduledJob 控制器(PR #29137)的后继。 - v1.4 中的相关设计点:ScheduledJob 生成的 Job 名称以其名字加调度时间哈希确定性命名(PR #30420);Job 的 Replace 删除策略下会同步清理
.status.active中的条目。
- 演进:该资源后来更名为 CronJob。在当前仓库中,其控制逻辑的现代实现位于 pkg/controller/cronjob/cronjob_controllerv2.go,例如它会按
3.3 Auth(认证与授权)
- [alpha] 容器镜像策略(Container Image Policy):通过准入控制器(ImagePolicyWebhook)按策略决定 Pod 是否可被调度;
- [alpha] Access Review API:将授权引擎暴露给外部系统做委托、检查与调试,配套新增
subjectaccessreviews、tokenreviews等资源,并支持用户组模拟(group impersonation) 与"限制子资源访问"; - x509 认证增强:从证书 subject 的 organization 字段提取用户组;
- OIDC 认证插件修复:不再截断带尾斜杠的 issuer URL。
3.4 Cluster Lifecycle(集群生命周期)
- [alpha] 关键基础设施 Pod 保障:当 Heapster、DNS 等关键 add-on 需要调度时,可驱逐普通 Pod 以保证关键 Pod 能上调度(即 rescheduler 机制,GCE 上默认启用);
- [alpha] kubelet TLS 引导:简化 API Server 与 kubelet 之间 TLS 安全通信的引导(kubelet
--experimental-bootstrap-kubeconfig); - [alpha]
kubeadm:大幅简化集群引导(本节第一行已述)。
3.5 Federation(集群联邦)
v1.4 是联邦功能集中落地的一个版本,全部为联邦 API Server + 对应联邦控制器:
- [alpha] Federated Ingress:向联邦 API Server 提交一个
Ingress,联邦控制系统即在全部/部分注册集群间维护一个全局虚拟 IP,跨地域负载均衡入站 HTTP(S) 流量。GCE L7 负载均衡器为首个落地实现; - [beta] Federated ReplicaSets:在联邦内各集群创建并维护一致的 ReplicaSet,副本数可按各集群权重等分或定制分发;
- [beta] Federated Secrets:在各联邦集群间创建并保持一致;
- [beta] 联邦事件:联邦 API Server 支持 events,联邦控制器上报关键事件;
- [alpha] Federated Namespace:在联邦内所有注册集群同步创建/维护同名 Namespace。
3.6 Network
- [alpha] Service LB 客户端源 IP 保留:外部负载均衡不再二次跳转,支持保留客户端源 IP。
3.7 Node
- [alpha] 节点性能看板:对外发布 node-perf-dash;
- [alpha] sysctl 白名单:Pod 可设置安全 sysctl;不安全 sysctl 需在 kubelet 上以
--experimental-allowed-unsafe-sysctls白名单开启,v1.4 首批放行的安全项为kernel.shm_rmid_forced、net.ipv4.ip_local_port_range、net.ipv4.tcp_syncookies;- 演进:当前仓库把"安全 sysctl 集合"收敛在 pkg/kubelet/sysctl/safe_sysctls.go,配合 pkg/kubelet/sysctl/allowlist.go 的白名单校验逻辑,属于对 v1.4 该 alpha 特性安全模型的延续收紧。
- [beta] AppArmor:可为 Pod 容器指定并应用 AppArmor 配置文件;
- [beta] PodSecurityPolicy:集群级策略控制安全相关特性的访问与默认值(init container 由 alpha 转 beta 与此联动,见升级章节);
- [stable] 磁盘压力驱逐:kubelet 观察到磁盘压力时可驱逐 Pod(v1.4 起在 GCE 上当 inode 空闲 < 5% 时即触发驱逐);另有按内存驱逐默认开启(可用内存低于 100Mi 触发驱逐)等节点稳定性加固。
3.8 Scheduling
- [alpha] Pod 亲和/反亲和:允许 Pod"要求/禁止(或倾向/不倾向)"与另一组 Pod 同节点(或同可用区、其它拓扑域)共置。同期配套修复了
podsWithAffinity初始化、PodAffinityChecker 可能的 panic 等缺陷。
3.9 Storage
- [beta] StorageClass 动态供给:PV 供给支持基于 StorageClass 的多个 provisioner;StorageClass 迁入独立
storagegroup; - [stable] Quobyte 分布式文件系统卷插件;
- [stable] Azure Data Disk 卷插件;
- 其它卷相关增强:vSphere 卷插件(含 VSAN 支持与动态供给)、read-only RBD 多 Pod 挂载、Secret/ConfigMap/downwardAPI 文件权限位设置、
VolumeMount的 merge key 改为mountPath等。- 演进注记:这些 v1.4 时代的 in-tree 卷插件目录如今大多已不在 pkg/volume 中——当前该目录仅保留
csi、csimigration、flexvolume等接入框架类插件,可从目录清单推断原 in-tree 插件已逐步迁移至树外或由 CSI 承接。
- 演进注记:这些 v1.4 时代的 in-tree 卷插件目录如今大多已不在 pkg/volume 中——当前该目录仅保留
3.10 UI 与客户端体验
- [stable] Dashboard UI:1.4 版本打磨成型,宣称达到约 90% 的 CLI 功能覆盖率(按当时官方措辞);
- [stable] kubectl 默认值语义变化:
create/update请求发送对象前不再在客户端套默认值,改由服务端统一套用默认(PR #30250); - kubectl 实用项:新增
kubectl top(资源用量指标)、--all-namespaces支持describe、config get-contexts、--overwrite、create quota、-n短参、kubectl run/exec返回容器退出码、exec/attach 终端尺寸调整等。
四、已知问题清单(v1.4.0 Known Issues)
官方在 v1.4.0 发布说明中列出的已知问题(编号与现象忠实转述,供升级排障参考):
- 节点升级会丢失已完成 Pod 的日志;
- 节点升级会删除 Pod(在节点升级场景下 Pod 被删除);
- master → node 的安全通信尚未完成闭环(长期遗留项);
- 升级 master 不会自动升级 kubectl(旧版 kubectl 与新版 master 存在兼容落差);
- 旧版 kubectl 对 1.4 master 执行滚动更新失败时给出的报错信息过于笼统(1.4 已针对性改进提示,指引用户查阅发布说明);
- master CIDR 段需要从 /30 扩到 /29;
- 非 hostNetwork 的 DaemonSet 几乎必然存在一个调度失败的 Pod(当时已知行为);
- Service 的
loadBalancerSourceRanges不响应更新(且曾禁止用户更新该字段)。
以上为历史快照,多数后续已修复,此处仅作版本考古与故障对照。
五、对既有行为的重大变更(Notable Changes to Existing Behavior)
这是整份发布说明中技术含量最高、对运维影响最大的部分,起因是 server-side garbage collector(GC)在 v1.4 默认启用(对应"开启 GC 引发的行为变更"章节,内容在 v1.4.0 与 v1.4.0-beta.3 两处反复强调)。
5.1 Deployments 的伸缩语义变化
- 暂停(paused)中的 Deployment:其下 ReplicaSet 在暂停期间现在会被照常伸缩(该行为对存量 Deployment 同样追溯生效);
- 滚动过程(rollout)中伸缩 Deployment:不再只伸缩"最新"的 ReplicaSet,而是按各 ReplicaSet 现有副本数成比例伸缩所有 ReplicaSet。
这两条共同改变了 Deployment 在"暂停/滚动中"这一边界状态下的副本分布预期,自动化伸缩脚本需按新语义核对。
5.2 垃圾回收默认开启:kubectl rolling-update 兼容性
旧版(< v1.4.0)kubectl 的 rolling-update 命令只有在显式指定新 ReplicationController 名字时才与 1.4+ 集群兼容:
- 想沿用原名做滚动更新,必须把 kubectl 升到 v1.4+;否则需做两次滚动更新;
- 若仍用旧 kubectl 对 1.4 集群做 rolling-update,命令通常会失败并给出指引性报错——此时操作其实已成功,只是"把新 RC 改回旧名"这一步未完成:集群里会遗留一个"原名 + 随机后缀"的 RC,用 v1.4+ 的 kubectl 再补一次滚动更新改名即可;
- 更罕见的第二种失败模式:RC 已被改名回原名,但集群中残留一组重复 Pod,且 kubectl 因认为自己已完成任务而不报错。兜底方案:等待至多约 10 分钟让 RC 触发一次 resync 以清理多余 Pod,或手动修改该 RC spec 的
replicas以强制触发 resync。
5.3 垃圾回收默认开启:kubectl delete 兼容性
旧版 kubectl 删除 RC/ReplicaSet 时,命令返回后对象仍会在 etcd 等键值存储中存在短暂时间(<1s)。手工操作基本无感,但脚本化删除会因此出现"删除后立刻查询仍存在"的竞态,官方建议在脚本中轮询 API Server 确认对象真正消失。
5.4 DELETE 操作在 REST API 层面的语义变化
- ReplicationController 与 ReplicaSet:DELETE 请求默认变为异步。对象不会立即从键值存储消失:API Server 会为其设置
metadata.deletionTimestamp,并向metadata.finalizers追加orphanfinalizer;待 GC 将其依赖(dependents)孤儿化后,对象才真正删除; - 其它对象:除非显式请求 orphaning,否则行为不变。
源码级验证(现仓库 GC 实现):垃圾回收器现位于 pkg/controller/garbagecollector/garbagecollector.go,其中 attemptToOrphan 队列专门收纳"依赖需先被孤儿化的对象"(文件头注释),orphanDependents() 负责实际孤儿化(约 L683),完成后再移除对象上的 orphaning/orphan finalizer(约 L768)。这与发布说明描述的"先孤儿化依赖、再删除对象、finalizer 驱动"流程一一对应,也解释了 RC/RS 的异步 DELETE 究竟异步在哪里。
对运维的启示:1.4 起,凡是需要"确保对象已物理删除"的脚本,都应改为轮询直到对象消失(或检查 deletionTimestamp + finalizers 被清空),而不能假定 DELETE 返回即完成——这正是 5.3 与 5.4 两条变更背后的同一机制。
六、升级前必做动作清单(Action Required Before Upgrading)
v1.4.0 汇总了全部破坏性变更与迁移步骤,升级前务必逐条核对:
6.1 运行时与组件版本约束
- Docker 兼容矩阵:官方验证支持的版本为 docker 1.9.1、1.11.2、1.12.0;
- kubelet 滞后场景:若仅升级 apiserver 到 1.4.x 而 kubelet 停留在 1.3.x,kubelet 将无法上报 init container 状态(但 init container 仍能正常工作);升级 kubelet 到 1.4.x 即修复。
6.2 准入控制器变更
NamespaceExists 与 NamespaceAutoProvision 两个准入控制器被移除,一律改用 NamespaceLifecycle。
6.3 init container 由 alpha 升 beta(含安全联动)
- 1.3 使用注解键
pods.alpha.kubernetes.io/init-containers; - 1.4 中新旧两个键(alpha/beta)均可用,GET 对象时会同时看到两个注解键同值,因此从 1.4 回滚到 1.3 仍安全;若正运行 1.3,则只能写 alpha 注解,否则前滚时可能丢失;
- 安全强制项(仅对使用 PodSecurityPolicy 者生效,可用
kubectl get podsecuritypolicy自检):因 init container 由 alpha 转 beta,带pods.beta.kubernetes.io/init-containers键的存量 Pod 可能未经过 PodSecurityPolicy 过滤。需找出这类 Pod,删除或审计其未受策略约束的权限。
6.4 联邦(Federation)组件迁移
federation-apiserver与federation-controller-manager两个独立二进制/镜像并入hyperkube,改用 hyperkube;- 联邦集群名必须是合法 DNS label(不允许子域);
- 联邦 controller-manager 读取的 Secret 更名,迁移命令如下(原文命令,可照抄执行):
# 1) 以新名字重建 secret
kubectl --namespace=federation get secret federation-apiserver-secret -o json \
| sed 's/federation-apiserver-secret/federation-apiserver-kubeconfig/g' \
| kubectl create -f -
# 2) (可选)删除旧 secret
kubectl delete secret --namespace=federation federation-apiserver-secret
6.5 kubelet 与云端配置行为
- kubelet 的
--config已废弃,改用--pod-manifest-path; - kubelet 默认
--cloud-provider=auto-detect;如需保持"无云厂商"的旧默认,须显式设--cloud-provider=''; - 新增
--require-kubeconfig:强制从--kubeconfig读取全部客户端配置,出错即以退出码 1 退出(后续版本将默认置 true); - 其它新开关备忘:
--protect-kernel-defaults、--cni-bin-dir/--cni-conf-dir、--network-plugin-mtu等。
6.6 进程行为语义变化
Kubernetes 各组件不再吞掉 panic,而是直接崩溃退出——因此所有组件必须由能主动重启它们的进程管理器(systemd 等)托管;自定义部署环境需自行核对。
说明:6.3 中
pods.beta.kubernetes.io/init-containers这类早期注解机制与后来演进的容器字段语义(initContainers)不同,仅作版本迁移对照使用。
七、补丁版本要点速览(v1.4.1 ~ v1.4.12)
除 v1.4.0 主版本外,CHANGELOG 还记录了分支补丁的滚动安全/稳定性修复。按主题归纳如下:
7.1 版本节奏
- v1.4.1:与 v1.4.1-beta.2 相比无显著变更;
- v1.4.12 为 1.4 分支最后一个补丁版本,相对 v1.4.9 汇聚了后续安全与稳定性修复。
7.2 安全修复(CVE)
- 修补 alpine 基础镜像中的 CVE-2016-8859(波及 etcd-empty-dir-cleanup、kube-dnsmasq-amd64 等镜像);
- GCE 基础镜像滚动升级以修复 CVE-2016-9962(ContainerVM → container-vm-v20170117 / v20170201 / v20170214,GCI → gci-stable-56-9000-84-2)与 CVE-2016-5195(Dirty COW) 等。
7.3 稳定性与运行时加固(各补丁反复出现的高频主题)
- 卷/存储:修复 kubelet 重启后卷状态失步(volume reconstruction,PR #36616/#33616)、Unmount 幂等(路径不存在不应报错)、AWS 卷设备分配竞态与非法设备名、vSphere 卷路径空格/错误卷卸载/panic 与默认 SCSI 控制器类型、Detach 卷在节点不存在或关机时的处理、GCI 共享挂载导致的 unmount 问题、
getPodVolumePathListFromDisk路径存在性检查等; - Attach/Detach 控制器:引入
--attach-detach-controller相关开关以控制卷 reconcile 同步周期并可整体关闭;默认同步周期调整为 1 分钟以降低云厂商查询频率;volume reconciler 增加 sync state 循环; - kubelet 驱逐与 OOM:关键 Pod(如 kube-proxy)
oom_score_adj固定为 -998;ExperimentalCriticalPodAnnotation开启时,带scheduler.alpha.kubernetes.io/critical-pod注解的 Pod 在资源压力下仍被准入、不被驱逐并受 OOM 保护(注解语义现仍保留在仓库 pkg/api/pod/warnings.go 的兼容告警中);静态 Pod(mirror pod)不驱逐;按磁盘/内存驱逐策略细化; - 网络:kubelet hostport 逻辑修复(不再误刷 KUBE-MARK-MASQ 链)、hairpin 模式设置失败不再波及全接口、kube-proxy 增加 conntrack 下限(默认 128k,并新增按核数放大逻辑);kube-proxy 新增
TCPCloseWaitTimeout配置项,用于 sysctlnf_conntrack_tcp_timeout_time_wait(该字段至今仍存在于代理配置类型 pkg/proxy/apis/config/types.go); - 调度器:修复绑定重试后的调度 bug、缓存自修复(必要时 panic)、taint e2e 增加重试;
- NodeController:等待 informer 同步后再动作、识别删除 tombstone、修复缓存中 DeletedFinalStateUnknown 引发的 panic、zone 感知的驱逐模式与独立限速;
- etcd3 后端:v1.4 期间大量 etcd3 相关修复(watch 泄漏、错误集中处理、避免多余解码、SelectionPredicate 传递等),并引入 etcd 3.0.x;kube-apiserver 依据目标内存调节反序列化缓存大小以压低小集群内存。
7.4 特性/镜像版本推进
- Dashboard 定为 1.4 最终版;Heapster 升 v1.2.0(增加存活探针);fluentd-gcp addon 升至 1.25.2;cAdvisor 升 v0.24.0;kube-addon-manager 基础镜像切至
python:2.7-slim并内嵌 kubectl v1.3.10;GCI 镜像引入对 NFSv4/GlusterFS/rkt 的支持;influxdb 升至 0.12、grafana 3.1.1 等。
这些补丁条目在原文中以 PR 链接逐条出现(每条附作者与 PR 号),因篇幅与链接规范此处按主题合并呈现;如需逐条追溯,请直接阅读 CHANGELOG/CHANGELOG-1.4.md 原文。
八、下载与校验概览(无外链版)
原文为每个版本给出客户端/服务端/节点二进制的 tar 包清单与 sha256 校验和。命名规律如下(便于核对版本与平台,校验和以原文为准,此处不展开):
- 全量包:
kubernetes.tar.gz、kubernetes-src.tar.gz; - Client Binaries:
kubernetes-client-<os>-<arch>.tar.gz,覆盖 darwin / linux / windows × 386 / amd64,另含 linux-arm / linux-arm64; - Server Binaries:
kubernetes-server-linux-{386,amd64,arm,arm64}.tar.gz(补丁版本以 amd64/arm/arm64 为主); - Node Binaries:
kubernetes-node*.tar.gz(部分补丁版本该条目为占位空值)。
原文下载链接指向 dl.k8s.io / storage.googleapis.com 官方发布桶。当前仓库不再内嵌这些发布包,如需复现 v1.4 环境,请以官方发布的 sha256 校验和交叉核对来源物。注意 v1.4 已远超支持周期,仅建议在隔离环境做考古/教学复现。
九、把这些特性映射回当前源码
如果你在研究现仓库(master 已远超 v1.4),下表可帮助你从"1.4 引入了什么"快速跳转到"现在实现在哪":
| v1.4 引入特性 | 现仓库对照位置 |
|---|---|
| kubeadm 集群引导(alpha) | cmd/kubeadm/kubeadm.go、cmd/kubeadm/app |
| ScheduledJobs(实验) | 已演进为 CronJob:pkg/controller/cronjob/cronjob_controllerv2.go、pkg/apis/batch |
| 服务端垃圾回收(默认开启) | pkg/controller/garbagecollector(orphan finalizer、deletionTimestamp 流程见 garbagecollector.go) |
| 关键 Pod 注解保护 | 兼容性告警:pkg/api/pod/warnings.go |
| 安全 sysctl 白名单 | pkg/kubelet/sysctl/safe_sysctls.go、pkg/kubelet/sysctl/allowlist.go |
| kube-proxy conntrack/超时调优 | 配置类型 pkg/proxy/apis/config/types.go(含 TCPCloseWaitTimeout) |
| 卷插件体系 | in-tree 插件经 CSI/FlexVolume 演进,注册入口见 pkg/volume/plugins.go |
| OpenAPI / swagger 产物 | api/openapi-spec、api/discovery |
十、结语
v1.4 是 Kubernetes 由"调度编排内核"迈向"完整产品体验"的关键一跃:kubeadm 与 kubelet TLS 引导铺平了用户自助建集群的道路;StorageClass 动态供给与 ScheduledJob 把持久化与定时任务纳入一等公民;联邦家族(Ingress/ReplicaSet/Secret/Namespace/Events)与 AppArmor、sysctl、镜像策略共同把"多集群"与"细粒度安全"推向可用。而对运维影响最深的,则是服务端垃圾回收默认开启后 RC/RS 删除语义的异步化——理解 deletionTimestamp + finalizer + orphan 的协作机制,是安全跨越这一版本的分水岭,也是阅读 pkg/controller/garbagecollector/garbagecollector.go 的最佳切入点。希望本文能帮助你在升级排障或源码考古时,快速定位 v1.4 这段历史在设计上的继承与取舍。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0624
Hy4-previewHy4 preview 是由腾讯混元团队研发的新一代混合专家(MoE)旗舰模型。模型总参数量 770B,每个 token 激活 49B,主干共包含78层,第一层采用标准 FFN,其余 77 层均为 MoE 结构,每层包含 256 个路由专家与 1 个共享专家,每个 token 激活 top-8 路由专家及共享专家。主干之外原生内置 1 层 MTP(总参数量 10B,激活 0.7B)以支持投机解码。Python00
GLM-5.3GLM-5.3 与 GLM-5.2 使用相同的基座模型——所有提升均来自后训练。与 GLM-5.2 相比,它在复杂编程和长程任务上的表现显著提升。Jinja00
GLM-5.3-FlashGLM-5.3-Flash (320B-A18B),是GLM-5系列的首个原生多模态模型。320B总参数,能力超过GLM-5.2Jinja00
Spark-X2.5-4BSpark-X2.5-4B 旨在让强大的 AI 更实用、更高效、更易获得。在广泛日常任务中表现强劲,涵盖对话、写作、翻译、推理、编码、工具调用以及智能体工作流,并在同等规模的开源模型中取得领先成绩。Spark-X2.5 将面向效率的架构与最高 1M tokens 的原生上下文窗口相结合,并支持 200 多种语言。Python00
Spark-X2.5-1.7BSpark-X2.5-1.7B 旨在让强大的 AI 更加实用、高效且易于获取。这些模型在广泛的日常任务中表现出色,涵盖对话、写作、翻译、推理、编程、工具调用和智能体工作流,并在同等规模的开源模型中取得领先结果。Spark-X2.5 将面向效率的架构与最高 1M tokens 的原生上下文窗口相结合,并支持 200 多种语言。Python00