2025-02-18 11:30:38
昨天涛叔的博客 发布了一篇关于友情链接的博客,我毛遂自荐向涛叔请求添加友情链接。涛叔很快回应了我,并且在邮件中友好的提醒我,可以给博客添加一个favicon(icon)
,这样方便RSS订阅用户快速的区分博客。当时我心想 favicon
是什么?(后端程序员伤不起)
后面我咨询了DeepSeek:
在网页设计中,图标(icon)是一个小而重要的元素。它不仅帮助用户快速识别网站,还能提升用户体验。
甚至在安卓手机 上,使用chrome浏览器的将网页添加到主屏幕功能。可以显示icon图标。
设置icon 最简单的方式是在 网页的 <head>
中添加 一行。
|
|
如果您是使用 hugo 或者其他工具的话,可能会有favicon的设置。
一些大型网站 比如 google.com
、 apple.com
它们可能需要考虑的问题更多,设置也并不完全一样。
为了优化使用体验,在各个场景下都达到最佳的显示效果, icon的的尺寸也是有说法。
现代浏览器都支持根据不同的场景,屏幕的PPI 选择不同尺寸的图标,尽量做到所有场景下都达到最好的显示效果。
icon 可以使用不同的图片格式,通过 type指定即可,常见的图标格式包括:
如果觉得需要维护多个 icon 文件 比较麻烦的话,可以使用多合一icon(Multi-Resolution ICO 或 Multi-Size ICO)是一种包含多种尺寸和色深的图标文件。允许在一个文件中存储多个位图(BMP 或 PNG 格式)。每个位图可以具有不同的尺寸。
ICO 文件包含:
.ico
文件可能会比单个尺寸的文件大。manifest.json
苹果设备 apple-mobile-web-app-capable
等。 感兴趣的朋友可以继续深挖。2025-02-13 09:46:39
原文链接:https://medium.com/wise-engineering/wise-tech-stack-2025-update-d0e63fe718c7
截至2024财年,Wise已经为1280万活跃客户提供服务,每季度处理的跨境转账金额高达300亿英镑。超过60%的转账实现了即时到账,我们的Wise平台为全球银行和非银行机构提供支付服务。这一成就离不开我们以技术为核心的理念、稳健的架构以及专注的工程团队。
Wise在全球主要地点拥有850多名工程师,他们被组织成独立的小组和部落。这些团队被赋予了创新和独立决策的权力,促进了透明度、信任和协作。
本文基于我们2022年的技术栈,涵盖了Wise技术栈的最新改进,帮助我们实现无国界的资金流动——即时、便捷、透明,最终实现免费。
我们的网页应用基于CRAB(Wise特有的抽象层,构建在流行的Next.js框架之上),包含40个独立的应用程序,每个应用负责特定的产品功能,使得部署更加安全和易于管理。
在测试方法上,我们最大的变化之一是引入了Storybook,用于在开发过程中可视化单个React组件。Storybook与Chromatic配合使用,能够在每次更改后捕获快照,并突出组件的视觉差异。这些快照在代码更改过程中非常有效,帮助我们防止错误影响到客户。
Wise移动应用:更快、更智能、更高效
我们的iOS工程师通过将250多个Xcode模块从Xcodegen迁移到Tuist,并将Cocoapods切换到Swift Package Manager(SPM),升级了基础设施,从而实现了构建缓存的改进。团队还提高了灵活性,将零变更构建时间从28秒减少到2秒。借助先进的构建缓存,开发变得更加顺畅,并朝着使用SPM的Swift可组合架构方向发展。
我们的Android工程师则专注于大规模应用开发。主要Android代码库包含300多个Gradle模块和大约100万行代码,涵盖2个生产应用、6个示例应用、17个JVM模块、221个Android模块和65个多平台模块。我们提高Android开发速度的努力集中在以下几个关键领域:
在用户界面方面,我们已经全面转向Compose——首先用于设计系统,现在用于整个屏幕和导航。我们迅速采用了Kotlin 2.0和2.1版本。为了处理异步任务,我们使用协程和流,而我们的架构遵循标准的MVVM模式,并得到Google的Jetpack库的支持。
Wise总共运行超过1000个服务。在后端,我们主要使用Java和Kotlin。自上次更新以来,我们专注于通过开发内部工具来提高自动化和效率,从而加快开发速度,并提供跨不同服务使用的标准库。
更快构建优秀应用
自上次更新以来,我们一直专注于通过自动化代码更新和可扩展的依赖管理解决方案来实现大规模工程。为此,我们:
我们已在菲律宾上线了即时支付系统InstaPay,并获得了加入日本即时支付系统Zengin的许可。我们还获得了巴西PIX的接入权限。
在Wise,我们投入了大量精力来创建尽可能一致的架构,网络通过AWS Transit Gateways集中管理。英国、匈牙利和澳大利亚的物理数据中心集成的细节存在显著差异。我们的澳大利亚数据中心是AWS Outpost Servers的首次部署之一,使我们能够在尽可能多的基础设施中保持一致的AWS工具。
我们的公共API允许企业直接集成Wise的跨境支付服务,使用安全的REST API,支持OAuth认证。这为企业提供了转账、货币兑换和账户管理的功能,以及全面的文档和开发者工具,以简化集成过程。
Wise平台支持超过70种货币和多种支付路线,提供无缝的全球连接解决方案。该平台包括内置的合规功能,允许在利用Wise广泛的全球基础设施的同时,实现无缝的跨境操作。
为了适应快速增长,我们专注于重建基础设施,以确保效率和灵活性,同时减少团队的运营负担。
**计算运行时平台(CRP)**是我们新的可扩展平台,利用Kubernetes,使工程团队能够轻松托管应用程序,而无需管理复杂的基础设施设置。
发展我们的Kubernetes栈
自2018年以来,Wise一直依赖于使用Terraform、JSONNET和ConcourseCI构建的Kubernetes,以支持服务网格控制(Envoy)、PCI-DSS合规性和无摩擦的部署。虽然这一模型为我们提供了良好的服务,但我们需要一种更可扩展和标准化的方法。这就是我们引入CRP的原因:
因此,我们的Kubernetes集群数量从6个增长到超过20个,同时保持可维护性和效率。
更智能的自动扩展和成本优化
除了更好地配置和维护基础设施的能力外,我们还通过CRP引入了效率改进:
对成本优化的关注使Wise更接近于零任务。
在Wise,我们的许多工作都与数据的移动和理解有关。无论是转账、更新实时仪表板,还是为后台的机器学习模型提供动力,我们的系统都在不断处理和分发大量信息。随着我们全球足迹的扩大,我们对更快、更安全和更灵活的数据处理方式的需求也在增加。以下是我们如何发展数据技术栈,以继续为客户提供可靠、便捷和高效的体验的快速概述。
在Wise,我们的数据库是我们所有工作的基础之一,因此我们在使其既稳健又易于管理方面投入了大量精力。在幕后,我们的数据库工程师正在解决一些引人入胜的技术挑战,推动金融数据管理的可能性。
Wise各团队使用我们的商业智能工具做出战略性、数据驱动的决策,以提升客户体验——从欺诈检测到个性化营销和预测分析。
我们的机器学习架构旨在支持探索和生产,无缝集成机器学习功能到产品中,以改善客户入职和欺诈预防,并利用负责任的人工智能技术。
我们创建了一个安全的网关,连接多个大型语言模型提供商,包括Anthropic(Claude)、AWS(Bedrock)、Google(Gemini)和OpenAI(gpt和o系列)。这种方法使我们能够在不处理单独凭证或复杂合规检查的情况下实验不同的模型。一个受LangChain启发的Python库封装了这些API,以加快原型设计。
对于需要引用内部文档、知识库或用户数据的情况,我们提供了一个自定义的检索增强生成(RAG)服务。它在生成响应之前从各种数据存储中提取最新信息——这是总结复杂文档或自动化客户服务工作流的便捷功能。
我们的数据架构既庞大又复杂,因此我们建立了一个全面的库存系统和专门的治理门户,以显示数据存储的位置及其分类。
我们已在整个数据资产中实现了自动化数据发现,以了解创建了什么数据;谁创建了它;以及数据的类别是什么。我们正在利用我们的数据库存来支持数据删除、数据合规和数据发现的工作。这种设置不仅支持审计和法规的合规工作,还提高了开发者的生产力。
随着越来越多的工程师加入治理工作,我们能够推出更严格的政策、增强的隐私检查和自动化的数据生命周期管理。
为了加强我们的交付管道和开发者体验,我们不断发展我们的CI/CD平台,以使开发者能够比以往更快、更可靠地将功能交付给客户。
从CircleCI迁移到GitHub Actions带来了优化的新可能性。通过实施详细的指标跟踪,我们发现了构建性能的关键见解。例如,通过预填充常用容器的缓存,我们将构建时间缩短了15%。在我们每月50万次构建的规模下,这相当于每月节省超过1000小时。
我们一直在有条不紊地在我们的构建过程中实施SLSA框架,逐步加强我们的供应链安全。
在我们之前的文章中提到的CI/CD管道状态之后,我们的部署策略随着从Octopus(我们的内部工具)转向Spinnaker而发生了变化。这不仅仅是工具的更换——它代表了一种范式转变,从将部署视为简单的事务转变为将其视为有序事件序列。
这一转变使我们能够减少工程师在部署管理上花费的时间,并最小化缺陷到达客户的风险。这提高了开发者的交付速度,使我们能够更快地为客户提供服务,而不牺牲质量和稳定性。
Spinnaker的自动金丝雀分析已成为我们部署管道的基石。该过程在其简单性中优雅而强大:
因此,仅在2024年,这一系统自动阻止了数百次可能导致事件的部署,节省了数千小时的工程时间。
目前,Wise的超过一半服务已在Spinnaker上运行,预计到2025年中期将完成全面迁移,我们准备迈出下一步:实施托管交付,以协调整个SDLC,包括测试和数据管理。
我们改善了可观察性生态系统,以更好地监控、理解和优化Wise产品。可靠性工程师专注于构建一个更强大、高效和富有洞察力的可观察性平台,以应对我们快速扩展环境中的关键挑战。
我们实施了专用的可观察性CRP集群。这为在不同环境中运行的服务提供了开箱即用的可观察性。因此,我们简化了监控设置,减少了手动配置的负担。
为了解决可扩展性问题,我们已从Thanos迁移到Grafana Mimir。这意味着我们现在完全运行在LGTM堆栈上:Loki用于日志,Grafana用于仪表板和可视化,Tempo用于跟踪,Mimir用于指标。作为我们在可观察性方面持续改进的一部分,我们正在试点测试Grafana Pyroscope,以对选定服务进行分析,探索性能洞察和优化的新维度。
我们的指标堆栈每秒接收约600万个指标样本,并处理我们最大指标租户的1.5亿个活动系列。
通过统一我们的堆栈,我们:
最后,我们继续投资于优化我们的可观察性堆栈。我们能够降低运营成本,提高资源利用率,并最终拥有更可持续的长期可观察性战略。请查看我们之前的文章,详细介绍了我们在这些倡议上所做的工作。
这一战略演变使我们的工程团队能够获得更深入、更具可操作性的洞察,同时确保我们的可观察性基础设施既强大又具有成本效益。
总之,我们2025年的技术栈证明了Wise如何引领潮流,为全球1280万活跃客户提供最快、最可靠和最具成本效益的资金转移方式。对标准化和集成的高度关注意味着我们的系统旨在高效扩展,同时确保稳健的风险和合规管理。
我们的工程团队继续在所有领域精炼我们的基础设施,从移动和网页应用到后端服务和机器学习。这些努力简化并加速了跨境资金流动,确保我们为当前需求和未来增长做好准备。
我们致力于长期投资,构建最佳基础设施,以无缝管理您在全球范围内的资金。随着每一次技术增强和与支付系统的新直接连接,我们正稳步朝着实现无国界资金流动的愿景迈进。
2025-02-11 11:16:36
Rhys Hiltner 在 2024 年提出了改进互斥锁的性能优化诉求。现在这个优化已经合并到即将发布的Go1.24中,在锁竞争激烈的场景下最多会提升70%的性能。
在基准测试 ChanContended 中,作者发现随着 GOMAXPROCS
的增加,mutex 的性能明显下降。
Intel i7-13700H (linux/amd64):
GOMAXPROCS=20
时,200 次channel操作平均耗时 44 微秒,平均每 220 纳秒调用一次 unlock2,每次都有机会唤醒一个睡眠线程。Wall-Clock Time
内,进程的20个线程在lock2调用中总共有27.74秒处于CPU(自旋)上。
这些 lock2 相关的线程并没有休眠,而是一直在自旋,这将消耗大量的CPU资源。
通过上述的分析,作者发现在当前的lock2实现中,虽然理论上允许线程睡眠,但实际上导致所有线程都在自旋,导致了更慢的锁传递,带来了不少的性能损耗。
于是提出了新的设计方案《Proposal: Improve scalability of runtime.lock2》
mutex 的状态字添加了一个个新的标志位,称为 “spinning”。
|
|
使用这个 spinning
位来表示是否有一个等待的线程处于 “醒着并循环尝试获取锁” 的状态。线程之间会互相排除进入 spinning
状态,但它们不会因为尝试获取这个标志位而阻塞。
metux 的介绍可以参考以前的文章
https://pub.huizhou92.com/go-source-code-sync-mutex-3082a25ef092
|
|
fast 模式跟以前变化不大。如果成功(锁之前未被持有)则快速返回。这是最理想的情况,无竞争时的快速路径。
|
|
|
|
如果自旋失败,goroutine
将进入休眠等待,然后将当前 M 加入等待队列(通过 mWaitList 链表),通过信号量(semasleep)使当前 goroutine
进入休眠,等待持有锁的 goroutine
在解锁时唤醒。
当某个线程解锁互斥锁时,如果发现已经有线程处于 “醒着并旋转” 的状态,就不会唤醒其他线程。在 Go 运行时的背景下,这种设计被称为 spinbit
。
这个设计的核心目的是:通过让一个线程负责 “旋转尝试获取锁”,避免所有线程都同时竞争资源,从而减少争用和不必要的线程切换。
|
|
source https://github.com/golang/go/issues/68578#issuecomment-2256792628
虽然在竞争较少的情况下,性能有降低,但是在竞争比较多的地方性能提升显著。平均来说,大约获得 29%的性能提升。期待后续能够优化这种情况吧。
mutex本次修改没涉及API层面改动,所以只要等 Go1.24 正式发布就能自动使用了。该特性通过GOEXPERIMENT=spinbitmutex
来控制,默认是开启的,也可以将它关闭,来使用原来的Mutex。
2025-02-08 15:05:21
œ
随着项目规模不断扩大,代码库的维护与更新变得越来越繁琐。每当某个函数、常量或包路径需要替换时,手动查找和修改不仅费时费力,还容易出错。幸运的是,Go 语言在不断进步,最新接受的提案 go:fix工具为开发者提供了一种自动化迁移的解决方案。本文将带你从浅入深地了解 go:fix 的原理、应用场景以及具体使用示例。
在日常开发过程中,API 的弃用与替换是不可避免的。举例来说,当一个函数被标记为弃用时,我们可能希望所有对该函数的调用都替换为新的实现;当一个常量被重命名或迁移到其他包中时,我们也希望工具能够自动更新所有引用。 #32816 提出的这一方案正是为了实现这样的目标——通过在代码中添加特定指令,实现简单弃用项的自动迁移。
go:fix 工具主要通过两种机制完成自动化迁移:
当一个函数被标记为需要内联时(例如通过 //go:fix inline
注释),go:fix 会自动将对该函数的调用替换为其函数体内的实现。这种机制常用于两种场景:
|
|
如果代码中存在对 Square
的调用,工具会自动替换为 Pow(x, 2)
,从而逐步淘汰旧函数。
包迁移:在包升级或重构过程中,可能需要将原先某个包中的函数调用替换为新包中的实现。例如:
|
|
这样,调用 pkg.F()
的代码将自动更新为 pkg2.F(nil)
,简化包路径更新的过程。
常量转发机制适用于常量重命名或跨包迁移的场景。只需在常量定义前添加 //go:fix forward
注释,工具便能将所有对该常量的引用替换为其目标常量。例如:
|
|
如果其他地方有如下调用:
|
|
运行 go:fix 工具后,该调用会被替换为:
|
|
此机制不仅支持单个常量,也可以对常量组同时生效。
go:fix 的引入为Go语言的自动化代码迁移带来了新的可能性。通过简单的注释指令(如 //go:fix inline
、//go:fix forward
),开发者可以轻松实现对弃用函数、常量甚至包路径的自动替换,从而保持代码库的现代性和一致性。无论是大规模重构,还是逐步淘汰旧 API,go:fix 都能为你的项目维护工作提供极大的便利。
随着工具的不断完善和更多社区反馈的积累,相信未来 go:fix 能够覆盖更多复杂场景,进一步提升 Go 开发的生产力。如果你也在为手动修改代码而烦恼,不妨期待一下这款新工具,体验自动化带来的高效与便捷。
https://github.com/golang/go/issues/32816
https://github.com/golang/tools/blob/master/gopls/internal/analysis/gofix/doc.go
2025-02-06 10:01:23
原始链接 https://blog.bytebytego.com/p/how-google-spanner-powers-trillions | 作者 ByteByteGo
免责声明:本文中的所有细节均来源于 Google 博客和研究论文,所有技术细节的原始版权均归 Google 工程团队所有。文末附有原始文章的链接。我们对这些细节进行了分析并提供了我们的解读。如果您发现任何不准确或遗漏之处,请留言,我们会尽力修正。
Google Cloud Spanner 是 Google 开发的一款革命性数据库系统,它巧妙地将传统关系型数据库的优势与 NoSQL 系统通常具备的可扩展性相结合。
专为跨多个区域处理海量工作负载而设计,Cloud Spanner 提供了一个全球分布、强一致性且高可用的数据管理平台。其独特之处在于,它既支持 SQL 查询和关系型数据结构,同时又实现了水平扩展能力,使其能够满足现代高负载应用的需求。
总体而言,Google Spanner 为需要支持全球规模操作,同时保持传统关系型系统的稳健性和可靠性的企业提供了一种极具竞争力的数据库解决方案。
在本文中,我们将深入探讨 Google Cloud Spanner 的架构,以及它如何支持构成这一出色数据库选项的各项能力。
Spanner 的架构旨在支持其作为一个全球分布、强一致性及高可用性数据库的角色。
在最高层次上,Spanner 被组织为一个被称为 “Universe” 的逻辑实体,该实体跨越多个物理或逻辑位置,这些位置被称为“区域(zones)”。
每个区域都具有一定的独立性,并包含专用的 spanservers。这些服务器负责数据存储和事务处理,基于 Google 早期分布式存储系统 Bigtable 的概念,并在此基础上进行了增强以支持复杂事务和多版本数据。
Cloud Spanner 通过将数据划分成更小的单元来进行管理,这些单元称为 tablets,并分布在多个 spanservers 上。
为了保证数据一致性,Spanner 采用了 Paxos 共识算法
来管理跨区域的复制。每个 split 都有多个副本,Paxos 算法确保这些副本保持一致性。
Spanner 实例通常跨越某一地区内的多个区域,并将副本分布在这些区域中。这样的架构提高了系统的可用性,因为即便某个区域发生故障,其他区域仍能继续处理请求。对于全球部署,还可以将数据复制到不同大陆,以便为全球用户提供低延迟访问。
所有数据均存储在 Colossus 上,该系统为分布式、复制的文件存储而设计,通过在多台物理机器间复制数据来确保高耐久性,从而在硬件故障时能够恢复数据。文件系统与计算资源分离,使得数据库可以独立扩展并高效运行。
Paxos 是 Spanner 架构中的核心组件之一。其基本原理是通过分布式共识,让一组副本(称为 Paxos 组)就一个值(例如某事务的提交或负责更新的领导者)达成一致。
Paxos 领导者的主要职责包括:
即使在分布式系统中不可避免会出现故障,Paxos 机制也能确保 Spanner 在面对这些问题时依旧保持可用性与一致性。若当前领导者因机器或区域故障而失效,Paxos 组将检测到这一情况并选举出新的领导者,从而避免系统停机。
Cloud Spanner 使用强大而稳健的事务处理方法,确保数据一致性、可靠性和高性能。下面介绍写事务和读事务的工作原理:
写事务确保了原子性(全有或全无)和一致性(所有副本数据一致),由 Paxos 领导者协调处理,即便在出现故障时也能保证数据完整性。其基本步骤如下:
对于单个 split 内的写操作,例如用户希望在表中添加一个 ID 为 7、值为 “Seven” 的行:
而对于涉及多个 split 的写操作(例如修改多个 split 中的 ID 2000、3000 和 4000),Spanner 则采用两阶段提交协议:
读事务经过优化,可在高负载下提供高性能的强一致性读取,同时无需加锁。
下面的图示展示了强一致性读取的场景:
而下图则展示了陈旧读取的场景:
为了避免死锁——即多个事务相互等待释放锁的情况——Spanner 采用了 wound-wait 算法。其基本规则如下:
Spanner 的设计确保了数据即使在故障情况下也能保持一致性和可用性。所有写操作的数据均存储于 Google 的 Colossus 分布式文件系统中,该系统通过将数据复制到多台物理机器上,即使部分机器或区域出现故障,也能从其他副本中恢复数据。TrueTime 则确保了在分布式环境中事务的全局一致排序,保证一旦某事务对一个客户端可见,则对所有客户端均可见。
TrueTime 是 Cloud Spanner 的一项关键创新,使其能够作为一个全球分布、强一致性的数据库运行。TrueTime 解决了分布式系统中最具挑战性的问题之一:如何在分布于多个区域和数据中心的节点间提供全球同步和一致的时间视图。
TrueTime 基于原子钟和 GPS 时钟的组合工作,二者协同提供高度准确和可靠的时间同步:
TrueTime 不将时间表示为单一的点,而是表示为一个时间区间,明确体现了分布式系统中固有的不确定性:
TrueTime 具有以下重要特性,使其在分布式数据库中发挥关键作用:
Google Spanner 在数据库工程领域是一项重大突破,它完美地将传统关系型数据库的可靠性和结构性与 NoSQL 系统的可扩展性和全球可用性相结合。通过创新的架构设计,依靠 Paxos 共识机制以及 TrueTime 技术,Spanner 能够高效地处理分布式事务、保证外部一致性,并在全球范围内保持高性能运行。
Google Spanner 正在重新定义分布式数据库系统的可能性,为可扩展性、可靠性和创新设定了新的标准。
2025-02-04 18:22:30
本文是最近一次关于DeepSeek在线讨论的总结,感兴趣的读者可以可以观看在线会议。
录像录制文件:https://meeting.tencent.com/crm/Nxg95wna26 密码:2PBC
最近,DeepSeek 在 AI 领域引发了广泛讨论。作为一个 AI 模型,其性能表现让整个行业为之一震,甚至被称为“AI 领域的拼多多”。这次技术突破不仅挑战了英伟达和 OpenAI 等巨头的传统叙事,也让全球 AI 产业重新评估开源模型的竞争力。
在这篇文章中,我们将深入探讨 DeepSeek 的核心技术、其带来的产业冲击,以及未来 AI 发展可能的路径。
近期AI领域最引人注目的进展之一,是推理效率的显著提升。通过KV缓存压缩、低精度计算(FP8) 等技术,模型的推理成本被压缩至传统方法的十分之一以下。这一突破并非依赖算力的简单堆砌,而是通过算法与硬件的协同设计实现。例如,动态剪裁冗余的中间状态生成、基于规则验证的奖励机制(Verifiable Reward),使得模型在长上下文推理中减少重复探索,显著提升有效token利用率。实验表明,优化后的模型在相同硬件条件下,推理速度可提升6-7倍,且错误率未出现显著波动。
这一趋势对行业产生深远影响:边缘设备部署成为可能(如手机端运行复杂COT任务),同时倒逼闭源模型重新评估其商业逻辑——当开源模型以1/10 的成本实现95% 性能时,“算力霸权"叙事面临挑战。
蒸馏(Distillation)作为追赶闭源模型的核心手段,其本质是通过模仿教师模型的输出分布快速提升小模型性能。然而会议揭示了两大隐患:
有趣的是,部分团队通过混合训练策略找到了平衡点:使用蒸馏数据冷启动模型,再通过强化学习(RL)注入自主探索能力。这种"先模仿后创新"的路径,或将成为追赶者的标准范式。
开源模型的爆发(如DeepSeek-R1)正在重构行业格局。其核心价值不仅在于技术透明性,更在于开发范式的根本转变
但闭源阵营并非被动:OpenAI等头部玩家正通过超级算力押注(如500B StarGate项目),探索下一代架构,试图在智能边界上拉开代际差距。这场竞赛的本质,是"工程优化红利"与"原始创新风险"的博弈。
尽管高效模型降低了单次训练成本,但行业对算力的渴求并未减弱,而是呈现结构性分化:
Meta等公司的资本开支指引(2025年同比增长60%)印证了这一点:算力投入正从"军备竞赛"转向"精准打击",更强调单位算力的智能产出效率。
中国AI团队的技术突破揭示了一条独特路径——在算力约束下极致优化工程能力。典型案例包括:
这种"压强式创新"虽难以突破绝对技术边界,却在应用落地上构建了独特优势。当行业进入"拼落地"阶段时,这种能力可能比单纯的技术领先更具杀伤力。
DeepSeek 的成功并非偶然,它代表了一种 AI 发展路线的变革,即更高效、低成本的 AI 训练方法。这场技术革命的核心矛盾,始终是探索者与追赶者的共生关系。 尽管短期内它无法彻底改变 AI 产业的格局,但其所引发的行业讨论,可能会对未来 AI 发展方向产生深远影响。开源 VS 闭源、高效优化 VS 极端算力派,这些问题将在未来几年持续主导 AI 产业的发展。