很奇怪,gigabyte 的 AORUS 15X 在 ubuntu 24.04 下,dconf 的 "disable touchpad while typing" 功能竟然沒有用。
所以只好自己(請 gemini) 寫。
用 python 寫的。
停止 typing 到 re-enable touch 的時間有點太長。
但是改短threading.Timer( ) 的時間好像沒用 (resolution 好像不夠)。
叫 gemnini 用 c 寫,他說很複雜,用 kernel driver 他說最好不要。
所以只好將就用這個。
內容很簡單,就是 keyboard listener, on key press, disable touch and enable a timer.
timer timeout 的時候 re-enable touch
High Altitude Oolong
2025/3/30
2025/3/26
Implement yolov3 from scratch and training
根據 yolov3 from scratch using pytorch 的 code section 整理整合的 code:
使用pascal VOC2012 train 做 training, val 做 validating。
training 500 次:
可以看到大約 56 epochs 的時候就 overfitting 了..
training 500 次:
可以看到大約 56 epochs 的時候就 overfitting 了..
2025/3/14
Zed Editor
聽說可以免費用 Claude sonnet 3.7,所以來用用看。目前 Windows 版安裝檔還沒好,只能 build from source...
所以用 Linux 版。
都是用 keyboard Command.
第一個就是 Ctrl-I 叫出 AI Assistant.
然後問他 Zed 怎麼用..
就這樣,完了。
所以用 Linux 版。
都是用 keyboard Command.
第一個就是 Ctrl-I 叫出 AI Assistant.
然後問他 Zed 怎麼用..
就這樣,完了。
2025/3/13
miniconda in Windows -- change install, env and pkgs location
在 windows 就是麻煩,C: 沒空間,不能把新 HD mount 進來,不能建link到新 HD.然後一堆app 又一定要用 User/
像 conda 就是。
所以要改 path 很麻煩。
參考 這一篇,在自己的 user 目錄找到 .condarc,修改:
修改玩參考 這一篇,可以看conda 有沒有正確依照.condarc:
另外,因為windows 很麻煩,例如D:\Default 就是其他 user 不能寫入修改,所以記得要去 D:/miniconda (安裝目錄),和.condarc 的一堆目錄按右鍵,開啟一般user 的 write 權限。
像 conda 就是。
所以要改 path 很麻煩。
參考 這一篇,在自己的 user 目錄找到 .condarc,修改:
ssl_verify: true channels: - defaults envs_dirs: - D:/minicondaenvs pkgs_dirs: - D:/minicondapkgs這樣download 下來的 package file 和 create 的 environment 就會在 D:/mini....
修改玩參考 這一篇,可以看conda 有沒有正確依照.condarc:
>conda config --get --add channels 'defaults' # lowest priority --add envs_dirs 'D:/minicondaenvs' --add pkgs_dirs 'D:/minicondapkgs' --set ssl_verify True
另外,因為windows 很麻煩,例如D:\Default 就是其他 user 不能寫入修改,所以記得要去 D:/miniconda (安裝目錄),和.condarc 的一堆目錄按右鍵,開啟一般user 的 write 權限。
2025/2/27
Enable SSH Server in Windows
是 Windows 10,所以參考:
測試有沒有安裝,在 PowerShell 下:
如果已經裝了,但是沒有設定自動啟動,就要手動啟動:
然後linux就可以用 ssh 連回:
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'出現結果:
Name : OpenSSH.Client~~~~0.0.1.0 State : Installed Name : OpenSSH.Server~~~~0.0.1.0 State : NotPresent所以安裝 server:
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0 Path : Online : True RestartNeeded : False
如果已經裝了,但是沒有設定自動啟動,就要手動啟動:
Start-Service sshd
然後linux就可以用 ssh 連回:
$ssh loyaltec\\charko.chang@192.168.144.78
2025/2/20
Intel Ultra 7, NPU.
要注意 intel 的 ai driver, library, toolkit 有分給 GPU (Arc) 跟 NPU 用的。
要先依照 linux-npu-driver 說明,自己 build driver. so 然後 install
因為後來 run 測試程式需要 build compiler with driver. 所以依照後面那個 "Building a driver together with the compiler" 說明比較好。
我有checckout v1.13.0 然後:
記得要把自己加到 render group.
最後 的 driver test,要在 linux-npu-driver 下做這些:
readme 的 llm example 跑不起來,會說缺 config,要 run example folder 下的 tinyllm。
run example folder 下的 code,一直會出現問題,一直到把 transformers downgrade 到 4.43.0 才 OK (在某個 downgrad 的過程中出現 linux-npu-driver 需要transformers >= 4.43.0)。
使用太新版會出現 rotary .. error
太舊版光是安裝就會出現 Tokenizer compile error
如果安裝過程出現 openssl-sys error,而系統又有安裝,是因為沒有安裝 pkg-config
另外用 gpu 跑 ollama 的可能參考:
這個方法成功了,又簡單,只是不知道最後是不是成功用 GPU run 了 (還是 run 在 gpu ?) 先依照Installing Client GPU,加入 intel repo. 安裝
在 ollama server 的 output log 可以看到它有找到 intel GPU,並把一些 layer 交給 GPU.
但是還是一樣很慢...
要先依照 linux-npu-driver 說明,自己 build driver. so 然後 install
因為後來 run 測試程式需要 build compiler with driver. 所以依照後面那個 "Building a driver together with the compiler" 說明比較好。
我有checckout v1.13.0 然後:
cd linux-npu-driver git submodule update --init --recursive cmake -B build -S . -DENABLE_NPU_COMPILER_BUILD=ON cmake --build build --parallel $(nproc) # install the driver in the system sudo cmake --install build --prefix /usr # reload the intel_vpu module to load new firmware sudo rmmod intel_vpu sudo modprobe intel_vpu這樣就會 build NPU plugin 和 OpenVINO runtime
記得要把自己加到 render group.
最後 的 driver test,要在 linux-npu-driver 下做這些:
# Prepare the add_abc model in path pointed by basic.yaml mkdir -p models/add_abc curl -o models/add_abc/add_abc.xml https://raw.githubusercontent.com/openvinotoolkit/openvino/master/src/core/tests/models/ir/add_abc.xml touch models/add_abc/add_abc.bin # Run tests with add_abc.xml npu-umd-test --config=validation/umd-test/configs/basic.yaml才 run 得起來。
readme 的 llm example 跑不起來,會說缺 config,要 run example folder 下的 tinyllm。
run example folder 下的 code,一直會出現問題,一直到把 transformers downgrade 到 4.43.0 才 OK (在某個 downgrad 的過程中出現 linux-npu-driver 需要transformers >= 4.43.0)。
使用太新版會出現 rotary .. error
太舊版光是安裝就會出現 Tokenizer compile error
如果安裝過程出現 openssl-sys error,而系統又有安裝,是因為沒有安裝 pkg-config
另外用 gpu 跑 ollama 的可能參考:
這個方法成功了,又簡單,只是不知道最後是不是成功用 GPU run 了 (還是 run 在 gpu ?) 先依照Installing Client GPU,加入 intel repo. 安裝
sudo apt-get install -y libze-intel-gpu1 libze1 intel-opencl-icd clinfo intel-gsc libze-dev intel-ocloc然後 download zip,解開就可以 run 了,有一個 script 啟動 ollama server,另外用 ollama 命令就跟平常一樣。
在 ollama server 的 output log 可以看到它有找到 intel GPU,並把一些 layer 交給 GPU.
但是還是一樣很慢...
2025/2/15
modify ollama model for cline
cline 使用 ollama 的話,有些 model 會一直 repeat 說過的話,然後出現Error.例如 deepseek-r1:14b
而 cline 需要很大的 context window.
所以要修改 context window 才行。
ollama 可以用 /parameter 命令來修改。
但是 cline 啟動的 ollama model 沒辦法這樣做。
所以要用 Modelfile 修改 model 的 default config.
ref: 修改 ollama 內的 model 的方法,就寫一個 Modelfile,放進要修改的參數,然後用 ollama command create 一個新 mode.
例如:
cline 改用這個 model,就不會有 Error 了。
但是要注意改num_ctx 改大之後,ollama load model 的 vram 也變大了。
以 deepseek-r1:14b 來看,num_ctx=4090 時,varm 是 10G
換成 num_ctx=32768 之後,vram 是 17G
other ref: num_ctx 是 model 可以記住的token 長度
num_predict 是 model 可以生成的 token 長度
* cline is having trouble... Cline uses complex prompts and iterative task execution that may be challenging for less capable models. For best results, it's recommended to use Claude 3.5 Sonnet for its advanced agentic coding capabilities.這是因為 context windows 不夠大 (default 是 4096)
而 cline 需要很大的 context window.
所以要修改 context window 才行。
ollama 可以用 /parameter 命令來修改。
但是 cline 啟動的 ollama model 沒辦法這樣做。
所以要用 Modelfile 修改 model 的 default config.
ref: 修改 ollama 內的 model 的方法,就寫一個 Modelfile,放進要修改的參數,然後用 ollama command create 一個新 mode.
例如:
$ cat Modelfile-deepseek FROM deepseek-r1:14b PARAMETER num_ctx 32768然後用 ollama command:
ollama create deepseek-r1:14b-32k -f Modelfile-deepseekcreate 完,用 ollama list 就可以看到 deepseek-r1:14b-32k 這個model
cline 改用這個 model,就不會有 Error 了。
但是要注意改num_ctx 改大之後,ollama load model 的 vram 也變大了。
以 deepseek-r1:14b 來看,num_ctx=4090 時,varm 是 10G
換成 num_ctx=32768 之後,vram 是 17G
other ref: num_ctx 是 model 可以記住的token 長度
num_predict 是 model 可以生成的 token 長度
訂閱:
文章 (Atom)