在 NVIDIA Jetson Orin AGX 上編譯 llama.cpp 與部署 AI 應用

簡介
由於工作的緣故,需要將 llama.cpp 作為 WASI-NN 的後端所使用,來讓 WebAssembly 能具備使用 AI 模型的能力,也因此需要在各種平台上編譯 llama.cpp 作為我們的相依性函式庫。
而 NVIDIA Jetson Orin AGX 64GB 的版本,作為提供相對大的 VRAM 與支援 CUDA 的平台,自然是我們花許多力氣在上面進行測試與最佳化的目標。
本文將詳細記錄如何在 NVIDIA Jetson Orin AGX (JetPack 6.2) 上成功編譯 llama.cpp、將大型語言模型轉換成 GGUF 格式、進行模型量化以及最終部署 AI 應用的完整流程。
在 DigitalOcean 上部署 Flatcar Container Linux + LLM
前言
之前在 Flatcar 的系統擴充元件提了兩個 PRs,讓 WasmEdge 與 LlamaEdge 能以 sysext 的方式在 Flatcar 被部署時,一起被安裝在裡頭。因為跟 DigitalOcean 發生了一些事,因此決定留下筆記以後,準備遷移到 Azure 或其他友善的平台。
本文將涵蓋:
- 如何建立屬於你的 Flatcar Sysext(系統擴充元件)。
- 如何在 DigitalOcean 上新增 Flatcar Container Linux 的客製化映像檔案。
- 如何在 DigitalOcean 上部署 Flatcar Container Linux。
- 如何執行 Wasm 的應用程式(利益揭露,我是 WasmEdge 的維護者)。
- 如何部署大語言模型(LLM)在 Flatcar Container Linux 上,使用 LlamaEdge 為例。(利益揭露,這個專案會編譯成 Wasm 格式,並執行在 WasmEdge 之上)。
遊戲用設備紀錄@2024
加速 macOS 的 Time Machine 備份速度
蓋一個簡單的縮網址服務
前言
之前的縮網址服務我是使用 picsee 來做的,但在免費的方案中,並不支援 HTTPS,這個影響很大,如果在 URL 中存在 HTTPS 的話,轉址服務就會失效。
P.S. 因為我很不滿意 picsee 就不放上連結了,此外,我也非常不建議大家使用。
雖然有段時間可以使用 Cloudflare 的 Proxy 來讓他有 HTTPS 的樣子,可是某次更新後也失效了,而且我發現失效的時候是在演講前,因此當了盤子付了一千台幣買了一年的進階網址服務。
早知道這麼麻煩,當初應該在不緊急的時候先搬遷到 lihi 上面,畢竟都要付錢了,當然要找一家好一點的服務商。
然而,過了一段時間,我發現我其實不需要這麼多功能,只是想要一個簡單的縮網址服務而已,我並不需要追蹤成效,也不需要網址的統計,因為我唯一需要的功能就只是讓我的聽眾可以用短一點的網址拿到投影片或者是其他的資料。
在這時意外看到了 SITCON 的 URL-Shortener,我發現這個服務就是我想要的。
在功能上:
- 可以自訂網址
- 可以加上該網址的簡介
- 可以放圖片
- 全部都是 markdown 語法
- 可以用 GitHub workflow 來自動部署
因此我就以他的專案為基礎,自己做了一個相似的縮網址服務
每次升級 mac os 總會遇到的 xcrun error invalid active developer path, missing xcurn at ...
每次升級總會遇上一次的 xcrun error ,
為了不要每次都查資料,
來把它記錄一下吧!
發 Pull Request 該注意的事情
0. 前言
在漫長的程式旅途中,我們很容易就使用到 Free software(如 gcc) 以及
Open Source Project(如 Bootstrap) 。
身為用戶,我其實一直希望能為這些很棒的作品增加更多更棒的功能。
也許是身為工程師的浪漫吧,我很渴望能做出一款全世界都在用的軟體,
然後很自豪地說:「看呀,你在用的OOXX是我做的喔!」(燦笑)
而在這之前,我們可能更常碰到在使用 Open Source Project 的情況下遇到 Bug ,
或是想為其添加新功能。這時候,如果是在 GitHub 上頭,我們便會以 Pull Request
的方式把自己的修改發過去給 upstream 希望他們能把這樣的增進給 Merge 進去。
不過先別急著在改完就馬上送過去,不然可能很容易會被無視或是當成小白喔!