The Will Will Web

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

如何用 Python 取得 GPT-4o 模型最新的 Tokenizer 詞彙表 (o200k_base)

昨晚 OpenAI 的 2024 春季更新發佈會,宣布了最新的 GPT-4o 模型,其中最讓我好奇的地方是,他將 Tokenizer 的詞彙表擴充了兩倍之多,理論上整體的文字處理速度會提升,且呼叫 API 的成本也會大幅降低。我就好奇到底他們增加了哪些詞彙?這篇文章將介紹如何用 Python 取得這個詞彙表的內容。

... 繼續閱讀 ...

如何透過 FFmpeg 將 MP3 音檔、圖片與 ASS 字幕寫入到 MP4 影片中

我之前寫過一篇鉅細靡遺的如何透過 FFmpeg 將 SRT 字幕檔寫入到 MP4 影片檔中文章,也寫過一篇如何使用 FFmpeg 進行圖片壓縮與製作家庭影片文章,我覺得已經涵蓋了許多應用情境了。前陣子嘗試用 Gemini API 翻譯國外知名的 Podcast 節目,想說把翻譯好的轉錄稿直接跟 MP3 聲音檔結合,配一張圖片,就可以輸出個含字幕的 MP4 影片了,方便我邊聽、邊看字幕、邊學英文,誰知道 AI 問個老半天都問不出來。最終我還是搞定了這個需求,這篇文章來記錄一下重要的背景知識與觀念。

... 繼續閱讀 ...

使用 Ollama 執行 TAIDE 的 TAIDE-LX-7B-Chat-4bit 大語言模型

我自從寫了 介紹好用工具:Ollama 快速在本地啟動並執行大型語言模型 文章後,就幾乎都在本機用 Ollama 執行各種大語言模型的推論。由於幾天前 TAIDE 團隊發表了一套符合台灣語言和文化特性的大語言模型(TAIDE-LX-7B),我當下就立刻用 Ollama 跑起來了。這篇文章我將分享幾個簡單的小步驟,幫助大家也可以很順利的在本機將 TAIDE-LX-7B-Chat-4bit 模型跑起來。

... 繼續閱讀 ...

整理開發者應該知道的 Google 最新 Gemini API 相關知識

Google 最近一年來承受著 OpenAI 帶來的極大壓力,感覺公司內部不斷重組,產品名稱也是一直在變化。由於我最近花了比較多時間在研究 Google 的 Gemini 技術,過程一直不斷被「命名」苦惱,直到最近才比較清楚整個來龍去脈。這篇文章我打算來整理一下 Google 的 Gemini 到底推出過多少「相似」的名稱,包含分類方式、產品名稱、舊名稱、新名稱、變化的名稱、套件名稱、模型名稱、工具名稱、函式庫名稱等等,坐好啊,馬上起飛!😅

... 繼續閱讀 ...

如何在 Windows 的 Docker Desktop 中啟用 NVIDIA CUDA 支援 (GPU)

由於我多年前買過一張 RTX GeForce 2070 顯卡 (GPU),雖然僅有內建 8.0 GB 的專屬 GPU 記憶體,但要跑一些小的 LLM 模型還是可以的。最近在嘗試把一些 LLM 應用程式跑在 Docker 容器中,但是發現 Docker Desktop for Windows 預設是不支援 NVIDIA CUDA 的,需要特別設定一下才能使用。這篇文章記錄一下設定的過程。

... 繼續閱讀 ...

如何快速將 OpenAI 的 API 轉換成呼叫 Azure OpenAI Service (AOAI) 的 API

在 GitHub 上面有許多可以呼叫 GPT-3.5 或 GPT-4 的開源專案,但大多都僅支援 OpenAI 提供的 API 端點。如果你想要將這些專案改成呼叫 Azure OpenAI Service (AOAI) 的 API 端點的話,沒用過 AOAI 的人就會不知道怎樣調整。今天這篇文章我打算來整理一下幾個重要的背景知識,方便你快速的轉換過去。

... 繼續閱讀 ...

如何使用 .NET 的 Azure AI Vision SDK 來替程式加上「視覺」功能

我最近寫了一個小程式,幫助我自動化審核 LINE 社群(OpenChat)的加入申請,由於 LINE 社群並沒有提供 API 可以串接,而我的審核數量又非常大,因此我就想到了透過 OCR 辨識的方式來進行自動化。不過找了幾個免費的 OCR 套件,都沒有辦法很可靠的識別截圖中的文字,直到我嘗試了 Azure AI Vision 服務才眼睛為之一亮,這套產品的 Image analysis 功能品質極高,費用也極低,實際開發出東西後,我覺得這個服務真的非常值得推薦給大家。這篇文章我就帶大家用 .NET 8 簡單上手這個好用的雲端服務!

... 繼續閱讀 ...