我最近的課程因為都開始改用 Discord 來當成學員之間的互動介面,為了實現自動審核加入課程的學員,我們用 Rust 撰寫了一支程式來處理這個審核作業,並將程式跑在容器中,部署到 Azure App Service 上面執行。效能好就不用說了,主要是啟動速度快,記憶體使用量也很低,但唯一的缺點就是「可讀性」真的很差,主要是一個相對陌生的程式語言,但我今天在改功能的時候,用 GitHub Copilot 輔助我瞭解程式語法與結構,也用它來幫我完成一些任務,想不到非常順利。今天這篇文章,我打算來介紹如何在 Windows 作業系統上打造 Rust 開發環境,並透過 Visual Studio Code 來開發 Rust 程式。
... 繼續閱讀 ...
我們都知道 ChatGPT 在問答的過程中,不時會有「幻覺」的問題,也就是當 ChatGPT 在回答問題的時候,經常表現的自己很懂,但又常常被發現他其實是在胡說八道的狀況。最近 ChatGPT 正式推出了「搜尋」功能,我們終於可以讓 ChatGPT 基於「搜尋結果」來回答問題,如此一來不但可以避免 ChatGPT 的幻覺問題,也可以讓 ChatGPT 回答的更加準確。今天這篇文章,我打算來分享幾個使用 ChatGPT Search 的應用技巧,這也是我在 ChatGPT 錦囊妙計:掌握九大應用場景的創意用法 課程中跟學員分享的其中一個技巧。
... 繼續閱讀 ...
因為我所開辦的課程都會全程錄影,好讓學員可以複習課程內容,最近幾次的課程我還開始幫影片上字幕,讓大家在複習的時候,更能夠理解我在課程中提到的一些偏技術的「專有名詞」。有些不住在臺灣的學員,也有可能會聽不懂臺灣這邊經常聽到的時事或口頭禪,我時常會在課程中講一些「時事梗」來活絡氣氛,但是有些學員可能會聽不太懂,這些字幕就是為了讓大家更容易理解課程內容與笑點。我幾乎都是利用超大上下文視窗(context window)的 Google AI Studio 來幫我校正 Whisper 產生的字幕,這篇文章我就來教大家這個技巧。
... 繼續閱讀 ...
上周微軟的 Playwright 團隊推出了 v1.48
版本,我的 實戰 E2E 測試:使用 Playwright 測試框架 課程有位學員在我們的 Discord 課程專屬頻道中反應,說他沒辦法成功執行 Playwright 腳本,請我幫忙看看。因為要執行學員的程式,而我通常不喜歡在本機執行程式 (安全考量),所以我就藉此玩了一下 Playwright 新版的 Docker 容器,順手寫了份筆記給大家參考。
... 繼續閱讀 ...
前幾天 OpenAI 悄悄的發佈了 Whisper 的最新 turbo
模型,這是一個多國語言的模型 (Multilingual model),而且這個 turbo
模型是 large-v3
模型的優化版本,提供更快的轉錄速度,但準確性卻只有輕微下降,整體參數數量只比 medium
模型稍微大一點點而已。我特別為此打造了一個可以利用 NVIDIA 的 CUDA 加速執行的 Docker 映像檔,讓大家可以輕鬆的在自己的電腦上執行這個模型。
... 繼續閱讀 ...
我今天舉辦了一場 最強大的 AI 搜尋引擎:Felo Search PRO 直播活動,由於報名人數超過 1,000 人,我還特別升級了我的 Zoom Meetings 方案到 1,000 個與會者授權,但是今天的 Zoom 會議室最多就只有 500 人能加入,那我不是白買了嗎?活動結束後我立刻 Contact Support 發了個支援請求,這才理解 Zoom 的授權架構。今天這邊文章我打算記錄一下這些細節,因為很難得有購買 1,000 個與會者授權的經驗。
... 繼續閱讀 ...
經 BenchmarkDotNet 實測驗證發現,只要在現有的非同步方法加上 async
/await
關鍵字,其方法的執行效能就有可能會降低 2,700
倍之多。這是因為 async
/await
關鍵字會讓 C# 編譯器在編譯程式時,會將非同步方法轉換成一種狀態機的實作,這樣的轉換會增加程式的執行時間。因此,我們在大多數「函式庫」中的程式碼,幾乎都不會使用 async
/await
關鍵字來撰寫程式。然而我們在函式庫中實作程式時,是有可能遇到多次非同步等待的情況,此時我們就可以使用 TaskExtensions.Unwrap
擴充方法來簡化寫法,今天這篇文章我就來說說這個開發技巧。
... 繼續閱讀 ...
C# 8.0 引入了一個 Async Streams (非同步串流) 的語言特性,這個特性讓我們可以做到許多以前做不到的事,若用在 ASP.NET Core Web API 上面,你就可以很輕鬆的實現 API 資料串流功能,讓你可以透過「非同步」的方式有效率的處理大量資料。由於這個概念太過前衛,所以我們先從基本的語法開始,然後再來看看如何應用在 ASP.NET Core Web API 上面。
... 繼續閱讀 ...
我今天被要求要設定一個臨時的網站讓客戶測試,但我的電腦已經設定好了一個通道,當時建立時是使用我在 Cloudflare 的 A 帳號,然而客戶想要連接的域名在我的另一個 Cloudflare 帳號下,設定的過程就卡關了,突然 cloudflared
變的沒有那麼方便。今天我就來記錄一下我如何解決這個問題。
... 繼續閱讀 ...