The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何在 Docker 執行 Playwright 自動化測試腳本

上周微軟的 Playwright 團隊推出了 v1.48 版本,我的 實戰 E2E 測試:使用 Playwright 測試框架 課程有位學員在我們的 Discord 課程專屬頻道中反應,說他沒辦法成功執行 Playwright 腳本,請我幫忙看看。因為要執行學員的程式,而我通常不喜歡在本機執行程式 (安全考量),所以我就藉此玩了一下 Playwright 新版的 Docker 容器,順手寫了份筆記給大家參考。

... 繼續閱讀 ...

如何用 Docker 搭配 NVIDIA CUDA 執行 OpenAI Whisper 的最新 turbo 模型

前幾天 OpenAI 悄悄的發佈了 Whisper 的最新 turbo 模型,這是一個多國語言的模型 (Multilingual model),而且這個 turbo 模型是 large-v3 模型的優化版本,提供更快的轉錄速度,但準確性卻只有輕微下降,整體參數數量只比 medium 模型稍微大一點點而已。我特別為此打造了一個可以利用 NVIDIA 的 CUDA 加速執行的 Docker 映像檔,讓大家可以輕鬆的在自己的電腦上執行這個模型。

... 繼續閱讀 ...

當購買 Zoom Meetings 的 1,000 個與會者授權應該如何正確啟用

我今天舉辦了一場 最強大的 AI 搜尋引擎:Felo Search PRO 直播活動,由於報名人數超過 1,000 人,我還特別升級了我的 Zoom Meetings 方案到 1,000 個與會者授權,但是今天的 Zoom 會議室最多就只有 500 人能加入,那我不是白買了嗎?活動結束後我立刻 Contact Support 發了個支援請求,這才理解 Zoom 的授權架構。今天這邊文章我打算記錄一下這些細節,因為很難得有購買 1,000 個與會者授權的經驗。

... 繼續閱讀 ...

撰寫不用 async await 的 C# 非同步方法並使用 Unwrap 方法簡化程式碼

BenchmarkDotNet 實測驗證發現,只要在現有的非同步方法加上 async/await 關鍵字,其方法的執行效能就有可能會降低 2,700 倍之多。這是因為 async/await 關鍵字會讓 C# 編譯器在編譯程式時,會將非同步方法轉換成一種狀態機的實作,這樣的轉換會增加程式的執行時間。因此,我們在大多數「函式庫」中的程式碼,幾乎都不會使用 async/await 關鍵字來撰寫程式。然而我們在函式庫中實作程式時,是有可能遇到多次非同步等待的情況,此時我們就可以使用 TaskExtensions.Unwrap 擴充方法來簡化寫法,今天這篇文章我就來說說這個開發技巧。

... 繼續閱讀 ...

使用 C# 8.0 Async Streams 實現非同步串流 ASP.NET Core Web API

C# 8.0 引入了一個 Async Streams (非同步串流) 的語言特性,這個特性讓我們可以做到許多以前做不到的事,若用在 ASP.NET Core Web API 上面,你就可以很輕鬆的實現 API 資料串流功能,讓你可以透過「非同步」的方式有效率的處理大量資料。由於這個概念太過前衛,所以我們先從基本的語法開始,然後再來看看如何應用在 ASP.NET Core Web API 上面。

... 繼續閱讀 ...

使用 Cloudflare Tunnel 需要建立跨帳號通道時該如何正確設定

我今天被要求要設定一個臨時的網站讓客戶測試,但我的電腦已經設定好了一個通道,當時建立時是使用我在 Cloudflare 的 A 帳號,然而客戶想要連接的域名在我的另一個 Cloudflare 帳號下,設定的過程就卡關了,突然 cloudflared 變的沒有那麼方便。今天我就來記錄一下我如何解決這個問題。

... 繼續閱讀 ...

如何在 GitHub Pages 設定自訂域名並啟用免費的 TLS 憑證

我最近都在準備 實戰 E2E 測試:使用 Playwright 測試框架 課程,也為這堂課特別精心翻譯了整個 playwright.dev 網站,甚至還買了一個 playwright.tw 域名,並把翻譯好的網站部署到 GitHub Pages 上面。GitHub Pages 是 GitHub 提供的免費靜態網頁服務,使用者可以透過 GitHub Pages 建立個人網站、部落格、文件網站等。今天這篇文章我將介紹如何在 GitHub Pages 設定自訂域名與啟用免費的 TLS 憑證。

... 繼續閱讀 ...

如何對 PowerShell 腳本檔案進行數位簽章

我個人寫過的 PowerShell 腳本可能有數百到上千支,數不清了,由於大部分的腳本都是自己個人使用為主,所以大多都不會特別對這些腳本進行數位簽章。但是對於金融業這種高度管制的企業或組織來說,其實 PowerShell 腳本是被嚴格禁止的,此時對你的 PowerShell 腳本進行數位簽章就顯的十分重要。除此之外,若你要發佈腳本給其他人使用,對腳本進行數位簽章也是一個很好的選擇,不但可以增加可信度,也可以確保腳本的完整性,不會被惡意竄改後重新散佈有問題的版本。這篇文章我將介紹如何對 PowerShell 腳本檔案進行數位簽章。

... 繼續閱讀 ...

如何在 Azure DevOps 的 Wikis 頁面中遮蔽敏感的資料內容

由於我們公司所有專案都採用 Azure DevOps Services 來做管理,所有專案的文件也都寫在 Wikis 頁面中,但我經常會看到許多人會把一些敏感的資料也寫在裡面,例如服務的帳號密碼、金鑰等等。其實這些資料不是不能寫在 Wikis 頁面中,畢竟就是專案會需要參考的文件,但這麼直白的寫在文件中,開會時若有外人在場,或是線上會議有人截圖或錄影,一不小心機密資訊就外洩了。這篇文章我來分享一個小技巧,教大家怎樣在 Azure DevOps 的 Wikis 頁面中遮蔽敏感的資料內容。

... 繼續閱讀 ...