[Python] IPython 互動界面中換行的方法簡記
前言
IPython 是一個提供互動式運算的系統,可以在各種 shell 跟視覺化界面整合在一起;比方說我們可以透過終端機使用 ipython
(前題是這個模組有裝)、或是使用如 VS Code 和 PyCharm 這類的圖形化界面編輯器/IDE。
IPython 是一個提供互動式運算的系統,可以在各種 shell 跟視覺化界面整合在一起;比方說我們可以透過終端機使用 ipython
(前題是這個模組有裝)、或是使用如 VS Code 和 PyCharm 這類的圖形化界面編輯器/IDE。
在 GitHub 上發 Pull Request (PR) 給開源項目是一件美好卻又重要的事情。簡單來說,PR 是一個當你看到開源專案時,發現有個真的很想做的功能/很想修復的 BUG,你可以嘗試將該開源專案分岔(fork)成自己的私有專案,並在上面進行開發;開發完成後,再藉由提交 PR 給原始的專案維護者做合併檢查,看是否要合併回原始專案的主分支。
Read More »[GitHub] 發 Pull Request (PR) 的流程筆記昨晚,我在改進一段將模型融合的程式碼時,由於個人設備資源不足,我採取分層合併的方法,一次只取一層的記憶體進行合併,以此減少系統同時保存的模型記憶體大小。然而,我發現模型雖然在 GPU 中的記憶體很容易被刪除、但是 CPU 中的記憶體被回收是十分不容易的。這涉及到了 Python 的資源回收器的設計。
Read More »[PyTorch] 將模型刪除後,釋放 GPU / CPU 的記憶體空間今天在閱讀 DreamBooth 訓練原始碼時,發現了 tempfile
這個模組;剛巧手邊又在做一個模型分層合併的的腳本改寫,頓時想到使用這個模組的話能夠讓程式碼優雅一些,便順手做了個紀錄。
vLLM 是加州柏克萊分校所開發的一種大型語言模型(Large Language Model, LLM)加速推理框架。它主要是利用 PagedAttention 機制提高了 GPU VRAM 的使用率,並且這一方法無須更改模型的架構。
Read More »使用 vLLM 進行大型語言模型(LLM)的高速推理今天我替一台新的 MSI 筆電嘗試安裝 Ubuntu 來取代原本的系統,然而我在安裝程序來到需要選擇磁區的地方時出了錯誤。系統訊息提醒我,在當前的裝置上找不到任何硬碟。
Read More »[已解決][Linux] MSI 筆電安裝 Ubuntu 時找不到硬碟 - 可能由於 RAID (Intel RST) 引起的異常我雖然整天都在看 AI 的東西,但是 AI 中各式各樣的『架構』、『突破』、『理論』實在是太多太多了,很多東西我都是模模糊糊地知道個大概,了解了觀念就放在一邊。大部分徹地深入的認識,通通都是等到實戰時,必須自己跳下去親手改架構時才會領悟。
Read More »[Machine Learning] LLM 架構視覺化教學網站 LLM Visualization 分享黏滯位(sticky bit)是一個 Unix 與 Unix-like 系統中的一個有趣的應用,它是一個特殊的權限設定,來提供檔案或文件更加細緻的操作。比方說,大家想必都對文件權限很熟悉吧?分別是 rwx(讀取、寫入、可執行)等三種不同的權限。而黏滯位則更進一步,設定了檔案『刪除』與『重新命名』的權利。
Read More »[Linux] 權限中黏滯位(sticky bit)的解釋(chmod 1777)在 2023 年初,PyTorch 的 2.0 版本新增了一個 torch.compile()
的新功能,讓我們能夠在模型訓練/推理時能夠進一步提昇速度。與混合精度訓練的協同工作,經常能使我的訓練速度提昇一倍左右。