Select Page

Rain AI – RISC-V

在AI界,省電與高速的雙重追求像是試圖在馬路上賽車同時省油一樣。Rain AI(是的,這名字聽起來像我的AI)正在迎接這一挑戰,並且邀請上了「省電至尊」晶心科技來助陣。這兩家公司攜手合作,誓要打造出最能省電的AI加速器產品,好讓您的AI設備不僅聰明,還非常環保!

簡單來說,Rain AI獲得了晶心科技的「AX45MPV」RISC-V向量處理器授權。晶心的這款處理器像個肌肉緊實的小夥子,負責幫助Rain AI把原本AI運算所需的超大電量轉變成極低電量消耗。為什麼?因為它使用了一種叫「記憶體內運算」的神奇技術(CIM),這就好比在記憶體裡安裝小腦袋,讓運算不必再跑到CPU那兒去。換句話說,Rain AI的硬體等於是告別了「加速等於高能耗」的老傳統。

Rain AI的CEO William Passo表示:「遇到晶心科技這樣的夥伴,真是緣分啊!我們不僅獲得他們的處理器支援,還能獲得他們客制指令的技術支援!晶心的工程師簡直像是技術版的私人教練,協助我們實現省電大夢。」

而晶心的老闆林志明則稱:「Rain AI是一家希望AI可以在所有設備上運行的公司,從超小型感應器到超大規模資料中心。跟他們合作,等於讓我們的AX45MPV處理器變成一個全球知名的節能大使!」

Rain AI預計於2025年初推出他們的「環保AI加速器」。到時候,或許我們的智能家居可以更輕鬆地算出您冰箱裡還有多少菜可以煮,甚至幫助您養成節能減碳的新習慣——無論是幫助世界還是幫助您的電費單,Rain AI和晶心科技正在為您鋪路!

OmniParser-微軟的開源螢幕解析工具

OmniParser-微軟的開源螢幕解析工具

繼之前提到的 Ahthropic Computer Use ,那時候超級驚豔的,馬上就看到MS也有推出自己的版本,雖然沒有自動執行功能,但可以配合 pyautogui 達成,雖然不支援中文,但可以透過中文OCR 或是 tesseract 處理

安裝到本地端

先建立一個虛擬環境起來

conda create -n omni python=3.12 -y
conda activate omni

選項:有GPU的,先把CUDA安裝起來

conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

整個安裝也很簡單,就五個步驟

git clone https://github.com/microsoft/OmniParser.git && cd OmniParser
pip install -r requirements.txt
huggingface-cli download --repo-type model microsoft/OmniParser --local-dir weights --include "icon_detect/*" "icon_caption_blip2/*" "icon_caption_florence/*"
python /home/Ubuntu/OmniParser/weights/convert_safetensor_to_pt.py
python gradio_demo.py

OmniParser 1.5 更新

先下載模型

python weights/convert_safetensor_to_pt.py

For v1.5: 
download 'model_v1_5.pt' from https://huggingface.co/microsoft/OmniParser/tree/main/icon_detect_v1_5, make a new dir: weights/icon_detect_v1_5, and put it inside the folder. No weight conversion is needed. 

執行指令要改成 1.5 版本

python gradio_demo.py --icon_detect_model weights/icon_detect_v1_5/model_v1_5.pt --icon_caption_model florence2

支援其他的語言

舉例來說,要改成中文,請找到專案下的 utils.py ,將 en 改成 ch

reader = easyocr.Reader(['en'])
paddle_ocr = PaddleOCR(
#    lang='en',  # other lang also available
    lang='ch',  # other lang also available
    use_angle_cls=False,
    use_gpu=False,  # using cuda will conflict with pytorch in the same process
    show_log=False,
    max_batch_size=1024,
    use_dilation=True,  # improves accuracy
    det_db_score_mode='slow',  # improves accuracy
    rec_batch_num=1024)

在介面中選取使用 PaddleOCR

相關資源

OmniParser 原始碼

OmniParser 官網

OmniParser 模型

https://blog.stoeng.site/20241030.html

Open Canvas-本地使用 OpenAI Canvas功能

Open Canvas-本地使用 OpenAI Canvas功能

最近 OpenAI 推出了 Canvas ,開始流行在 ChatGPT 上頭寫程式、寫郵件等等,馬上就有人推出本地端一樣的服務 Open Canvas ,解放了你只能在 OpenAI 上使用的困境,除了 Git 以外,也馬上有了 docker 版本,可以快速體驗

Open Canvas 架構圖
Open Canvas Workflow

相關資源

Open Canvas 原始檔

Open Canvas Docker

LangGraph Studio

LangSmith

PyAutoGUI-自動控制你的電腦

可以在 windows, mac, Linux 上使用,自動地透過滑鼠鍵盤來控制你的電腦畫面,還支援螢幕截圖

簡易使用方法

安裝 pyautogui

pip install pyautogui

使用 pyautogui

import pyautogui

螢幕截圖

pyautogui.screenshot('screenshot.png')

滑鼠控制

pyautogui.moveTo(100, 100, duration = 1.5) #用1.5秒移動到x=100,y=100的位置
pyautogui.dragTo(100, 100, duration=2, button='right') #用2秒按住滑鼠右鍵到x=100,y=100的位置
pyautogui.click(clicks=2, interval=0.5, button='right') #雙擊左鍵並且中途間隔0.5秒

鍵盤控制

pyautogui.keyDown('ctrl')
pyautogui.press('a')
pyautogui.keyUp('ctrl') #全選的功能鍵效果
pyautogui.hotkey('ctrl', 'shift', 'esc') #開啟工作管理員的快捷鍵

資源

PyAutoGUI 說明文件

PyAutoGUI 原始碼

中文說明檔

相關資源

Windows下如何釋放被占用的port

Windows下如何釋放被占用的port

使用 docker 時候,常常遇到被占用的 port 要處理,這邊記錄下正確的處理方法

找到占用port的程式

netstat -ano | findstr 8080

會得到下面的輸出,最後面一個是 PID

查詢程式資訊

tasklist | findstr 8080

刪除占用的程式行程

舉例來說,我要刪除佔用了 port 50912 的程式,由上圖知道他的 PID 是 6664,那就輸入以下指令即可

taskkill /T /F /PID 6664