Elasticsearch 打算要回來提供 AGPL 授權

在「Elasticsearch is open source, again (elastic.co)」這邊看到的,Elasticsearch 目前是自家的 ELv2 以及 SSPL 授權,現在打算要提供 AGPL 授權了:「Elasticsearch is Open Source, Again」。

不過應該也不會回去用了,之前 Elastic 的大小動作太多,像是直接在新版 client SDK 上擋掉所有不是 Elasticsearch 的伺服器端 (所以 OpenSearch 就被擋了):「Elasticsearch error "The client noticed that the server is not Elasticsearch and we do not support this unknown product"」。

既然 OpenSearch 堪用就繼續用?反正在雲上面大多也都不是自己架,而是用現成的。

另外這幾年 PostgreSQL 上面做 fulltext search 的套件愈來愈多,也是個常用的方案?(量大的時候 read replica 拆出去就不太會影響到 main DB 效能)

AWSOpenSearch 看起來證明了換 license 對這些大公司沒什麼用,這些大公司有的是錢跟人可以 fork 出來自己搞... 所以想要一開始沾 open source 的名字不如一開始就用 AGPL?

Mistral AI 與 NVIDIA 一起推出的 12B 開源模型 Mistral NeMo

如標題寫的,兩邊都有新聞稿:「Mistral NeMo」、「Mistral AI and NVIDIA Unveil Mistral NeMo 12B, a Cutting-Edge Enterprise AI Model」。

Mistral AI 這邊的新聞稿比較技術性一點,列出來的比較是拿 9B 的 Gemma 2 與 8B 的 Llama 3,整體看起來是還不錯:

裡面也有提到主要的特點是名為 Tekken 的 tokenizer 更有效率,不過這個部分我覺得聽聽帶過,畢竟 12B 還是比 9B 大了 1/3 左右,或是比 8B 大了 1/2 左右,優勢大不少,但看數據不知道導底是什麼地方貢獻的...

從 NVIDIA 這邊的新聞稿列出來的則比較合理,是透過硬體的觀點提到這個 12B model 可以跑在一張 4090 上 (24GB VRAM):

Designed to fit on the memory of a single NVIDIA L40S, NVIDIA GeForce RTX 4090 or NVIDIA RTX 4500 GPU, the Mistral NeMo NIM offers high efficiency, low compute cost, and enhanced security and privacy.

不過即使可以這樣跑,目前比較有效率的跑法應該是應該都會找 quantization 版本來跑,通常 model 會變小不少,而且損失應該也還在能接受的範圍。

常見的窮人跑法是拿 16GB VRAM 的 4060Ti 或是 12GB VRAM 的 3060,就看各種 tradeoff。

更重要的意義應該還是在這個區間又多了一個開源 model,而且是 NVIDIA 有出手掛名參與的?這陣子比較接近的應該是微軟的 Phi-3-medium-4k-instruct & Phi-3-medium-128k-instruct,大小是 14B。

NVIDIA 正式推出開源版本的 Linux driver 了

五月的時候有提過 NVIDIA 有計畫要使用 open-source license 的 Linux driver:「Nvidia 在 Linux 上安裝核心驅動程式時將建議使用開源版本」,現在則是正式公告了:「NVIDIA Transitions Fully Towards Open-Source GPU Kernel Modules」。

支援的 GPU 分成三塊,第一塊是只有 open-source 版本有支援,目前已經推出的產品應該是只有 GH200 是這個架構:

For cutting-edge platforms such as NVIDIA Grace Hopper or NVIDIA Blackwell, you must use the open-source GPU kernel modules. The proprietary drivers are unsupported on these platforms.

然後是 Turing 後的架構,以桌機顯卡來說的話是 2016 年出的 20 系列架構 (值得提一下的是,16 系列雖然看起來數字比較小,但是是 2019 年出的 Turing 架構,所以也支援):

For newer GPUs from the Turing, Ampere, Ada Lovelace, or Hopper architectures, NVIDIA recommends switching to the open-source GPU kernel modules.

舊的系列則是不支援,以桌機來說就是 10 系列以及更舊的卡:

For older GPUs from the Maxwell, Pascal, or Volta architectures, the open-source GPU kernel modules are not compatible with your platform. Continue to use the NVIDIA proprietary driver.

再等一兩個版本再來換過去...

話說找資料發現維基百科上面用 Nvidia,但我找資料發現官方名稱是用 NVIDIA,翻了討論頁發現 2010 年就有人幹剿過了 (在 Naming Conventions 這段),看起來是不會改?

MIT license 與 Expat license

在包新版的 dehydrated 時發現 license 的部分過不去,說沒有 mit 這個選項:

dh_make: error: argument -c/--copyright: invalid choice: 'mit' (choose from 'apache', 'artistic', 'bsd', 'gpl', 'gpl2', 'gpl3', 'isc', 'lgpl', 'lgpl2', 'lgpl3', 'expat', 'custom')

翻了程式碼也的確是被拔掉了,先從 manpage 上確認,可以看到在 20.04 上面還有看到 mit,但到了 22.04 上面就沒看到了:「focal (1) dh_make.1.gz」與「jammy (1) dh_make.1.gz」。

回到上游去找可以翻到「Rename MIT license to Expat Closes: #963141」這個 commit,裡面提到的票在「Debian Bug report logs - #963141 /usr/bin/dh_make: "MIT" license should be called Expat to be more specific」這個 bug report 可以看到。

維基百科上面的「MIT License」有提到一些名稱背景:

The MIT License has the identifier MIT in the SPDX License List. It is also known as the "Expat License".

看起來主要是避免誤會,不過我自己覺得是不太容易誤會,但反正就改了:

The name "MIT License" is potentially ambiguous. The Massachusetts Institute of Technology has used many licenses for software since its creation[.]

當初 22.04 的 package 好像是直接在網站上點一點 copy 出來的,所以沒遇到這個問題...

OpenTofu 釋出第一個 GA 版本 1.7.0

從去年八九月從 Terraform fork 出來並且改名後 (「OpenTF 宣佈從 Terraform 最後一個 Open Source 版本 fork 出來」、「OpenTF (Terraform 的 fork) 改名為 OpenTofu」),總算是推出第一個 GA 版本了:「OpenTofu 1.7.0 is out with State Encryption, Dynamic Provider-Defined Functions, and more」。

除了把 trademark 相關的東西換掉以外,還實作了一些功能,這樣化半年弄出個起頭,接下來看後續的能量?好像還行...

MS-DOS v4.0 的程式碼以 MIT license 釋出

Hacker News 上的消息「Open Sourcing DOS 4 (hanselman.com)」,原文在「Open Sourcing DOS 4」。

Hacker News 裡面的討論有拉出一些有趣的 source code 註解,不過我比較好奇為什麼是挑 v4.0 而不是其他版本,看說明應該是剛好遇到對的人與對的團體?

A young English researcher named Connor "Starfrost" Hyde recently corresponded with former Microsoft Chief Technical Officer Ray Ozzie about some of the software in his collection. Amongst the floppies, Ray found unreleased beta binaries of DOS 4.0 that he was sent while he was at Lotus. Starfrost reached out to the Microsoft Open Source Programs Office (OSPO) to explore releasing DOS 4 source, as he is working on documenting the relationship between DOS 4, MT-DOS, and what would eventually become OS/2. Some later versions of these Multitasking DOS binaries can be found around the internet, but these new Ozzie beta binaries appear to be much earlier, unreleased, and also include the ibmbio.com source.

這些程式碼主要都是考古分析用了,不知道什麼時候 MS-DOS 6.22 的 code 會冒出來...

IBM 買 HashiCorp

居然是 IBMHashiCorp 啊:「IBM to buy HashiCorp in $6.4 billion deal to expand cloud software」。

Red Hat 先前在 RHEL 上面的事情讓 open source community 頗感冒,加上 HashiCorp 先前切到 BSL (先前有提到的:「HashiCorp 將放棄 Open Source License,改採用 BSL 1.1」),看起來差不多有個概念了?

另外 IBM 這邊官方新聞稿在這:「IBM to Acquire HashiCorp, Inc. Creating a Comprehensive End-to-End Hybrid Cloud Platform」。

把 MIT license 當歌詞寫歌...?

在「AI-generated sad girl with piano performs the text of the MIT License (twitter.com/goodside)」這邊看到的推,把 MIT License 的條文當歌詞丟進去寫歌 (應該是最近很紅的 Suno.ai?):

WTF...

Redis 的眾多 fork

從「Redis 改變授權,變成非開源軟體」差不多過去一個禮拜了,瞬間冒出一卡車 Redis fork:「The race to replace Redis」。

文章裡提到的第一個是 Valkey,在 Redis 宣佈改變授權後幾天 fork 出來的。

第二個則是 KeyDB,是很久前就 fork 出來實作 multi-threading 的公司,後來公司被 Snap 買走後 open source,但因為 fork 的很早,後續 Redis 增加的功能就沒有跟上了...

第三個則是 Redict,這是 SourceHut 這邊的 fork 版本。

第四個不算是 fork,是微軟前幾天公開的 Garnet,用 C# 寫的,也因為不是 fork,相容性當然比不上前面幾個。

另外一個文章帶出來的重要資訊,是目前 Redis 的 contributor 分佈,可以看到其實 Redis 本家不算多,這樣 Redis 決定硬幹 BSL + SSPL 的決定就頗值得玩味了:

可以看看 Redis 接下來會不會有什麼重量級的功能要推出?

Redis 改變授權,變成非開源軟體

Redis 宣佈拿掉開源授權:「Redis Adopts Dual Source-Available Licensing」,對應的 git commit 在「Change license from BSD-3 to dual RSALv2+SSPLv1 (#13157)」這邊可以看到。

Starting with Redis 7.4, Redis will be dual-licensed under the Redis Source Available License (RSALv2) and Server Side Public License (SSPLv1).

算是今天蠻熱的新聞之一,不過算是在預期之內的變化,因為 Redis 在 2018 年就把很多他們自己開發的 proprietary component 變成 SSPL,現在主體也變其實不算太意外,後續就是看社群的 fork 凝聚的力量會比較大,還是 Redis 公司方的力量比較大... 尤其在 Redis 已經實作了許多 data structure 後,Redis 公司想要套現這件事情是否還有機會?

不過比較特別的反倒是微軟... 微軟早了一兩天發佈了 Redis 相容的實作 Garnet

Garnet is a remote cache-store from Microsoft Research that offers strong performance (throughput and latency), scalability, storage, recovery, cluster sharding, key migration, and replication features. Garnet can work with existing Redis clients.

會是巧合嗎?這時間點其實真的很微妙...