No.2507 超级马里欧

Super Mario

超级马里欧,带你出来炸街咯!难得周末好天气,带着小朋友骑车逛了趟农贸市场。

技术

Protobuf & Abseil

C++ 使用 Protobuf 时,需要注意,从 3.21.0 开始,Protobuf 依赖 Abseil。 这会到导致非常多的依赖,当然如果使用CMake 或者 Bazel 等构建工具,这些依赖会被自动解决。

Protobuf 现在在 GitHub 上的版本非常有意思,v29.0的话同时也是 v3.29.0。 当然最终 Protobuf 3.21.12 发布前,Abseil 从依赖里面摘除了,参考 !10056

所以最新的可以用到的不依赖 Abseil 的版本是 3.21.12。为什么不想用 Abseil,因为 Abseil 依赖的东西太多了,有时候嵌入式设备资源有限,不想引入太多的依赖。

但是本身来说Abseil是一个非常好的库,提供了很多 C++ 标准库没有的功能,Abseil已在Google历经十多年的开发,它的目的是为Google编程人员在各种项目上的工作需求提供支持,这些项目包括Protocol Buffers、gRPC和TensorFlow等。Google评价Abseil为:

  • 它是从Google内部代码块中抽取出来的一系列最基础的软件库。作为基本的组成部分,这些软件库支撑了几乎全部Google在运行的项目。
  • 以前这些API是零零散散地嵌入在Google的大部分开源项目中,现在我们将它们规整在一起,形成这样一个全面的项目。
  • Abseil是Google代码库的最基本构建模块,其代码经过了生产环节测试,此后还会继续得到完全的维护。

当然C++ 世界已经有了Boost,还有Facebook 的 Folly。 C++程序员真是很悲惨……

开源

超低成本私有部署大语言模型

kvcache-ai/ktransformers 一个Python 写的推理框架,兼容OpenAI和Ollama。 主打一个节约显存,DeepSeek 671b Q4的模型,最终 24GB显存就可以了,当然需要大量的Host内存。 意义:个人觉得这个方案,大大降低了个人本地跑 DeepSeek-Code-V2 的门槛,属于程序员的好搭档,大概率3000元以内的显卡就可以跑了。

Coder

Coder 最早只是用Coder Server,现在发现这个项目已经是是一个完整的提供云端的一体化开发环境。

我觉得核心的成功在于可以用Terrafom 部署,这样理论上开发环境也能方便地做到代码化管理了(Dev environments as code)。

Coder