阿Han的軟體技術棧 💡
201
免費公開
房間資訊
主軸圍繞於軟體科技, 除了過往經驗成章以外也持續學習新技能, 並將學習心法記錄與分享, 以期幫助相同道路之夥伴。 裡面包含著各種程式語言的疑難雜症解題技巧, 也提供資料庫、AI、認證與授權、工具庫...等技巧, 讓您自由找出您想要的解答, 如果您想要系統化的教學課程也歡迎至「🔒 阿Han的軟體心法實戰營」。
Top 5
1
【🤖 cursor AI】如何使用MCP Server
2
【語音合成技術 - GPT-SoVITS】如何微調模型
3
【💊 Python的解憂錦囊】使用python-ffmpeg即時串流轉換音檔格式
4
【🤖 cursor AI】如何在ubuntu 24.04安裝
5
【Prompt Engineering 提示工程】Ep.1 什麼是Prompt Engineering?
1
【🤖 cursor AI】如何使用MCP Server
2
【語音合成技術 - GPT-SoVITS】如何微調模型
3
【💊 Python的解憂錦囊】使用python-ffmpeg即時串流轉換音檔格式
4
【🤖 cursor AI】如何在ubuntu 24.04安裝
5
【Prompt Engineering 提示工程】Ep.1 什麼是Prompt Engineering?
全部
AI
python
Web
軟體知識
認證與授權
資料庫
工具庫
作業系統
Message Queue
javascript/nodejs
Go
區塊鏈
全部
AI
python
Web
軟體知識
認證與授權
資料庫
工具庫
作業系統
Message Queue
javascript/nodejs
Go
區塊鏈
全部類型
免費與付費
最新發佈
最新發佈
阿Han
2025/05/14
【Docker疑難雜症】python:3.11-alpine不能裝onnxruntime?
當我們在開發AI應用程式的時候, 常常會使用到onnx, ONNX 是一種開放標準格式,允許不同深度學習框架(如 PyTorch、TensorFlow、Scikit-learn)之間互通,使模型可以在不同平台上運行,而 ONNX Runtime 則是一個高效能的推理引擎,專門用來加速 ONNX
#
python
#
onnx
#
sherpaonnx
3
1
阿Han
2025/05/14
【Docker疑難雜症】python:3.11-alpine不能裝onnxruntime?
當我們在開發AI應用程式的時候, 常常會使用到onnx, ONNX 是一種開放標準格式,允許不同深度學習框架(如 PyTorch、TensorFlow、Scikit-learn)之間互通,使模型可以在不同平台上運行,而 ONNX Runtime 則是一個高效能的推理引擎,專門用來加速 ONNX
#
python
#
onnx
#
sherpaonnx
3
1
阿Han
2025/01/29
【💊 Python的解憂錦囊】Enum也可以很靈活 - 動態模板字串
🤔 簡單且靜態就足夠了? 相信我們在開發Python應用程式的過程中, 常常會借用Enum來定義我們可能的選項, 就像顏色紅、綠、黃會有這樣的結構: class Color(str, Enum): RED = 'red' GREED = 'green' YELLOW = 'yel
#
python
#
Enum
#
Key
2
2
阿Han
2025/01/29
【💊 Python的解憂錦囊】Enum也可以很靈活 - 動態模板字串
🤔 簡單且靜態就足夠了? 相信我們在開發Python應用程式的過程中, 常常會借用Enum來定義我們可能的選項, 就像顏色紅、綠、黃會有這樣的結構: class Color(str, Enum): RED = 'red' GREED = 'green' YELLOW = 'yel
#
python
#
Enum
#
Key
2
2
阿Han
2025/01/08
【💊 Python的解憂錦囊】既能管理環境變數又能驗證的pydantic
當我們的系統發展到一定程度時, 難免會面臨到正式上線的問題, 要如何讓維運更加簡易呢? 尤其隨著複雜的客製化配置的出現時, 我們應該如何有效的管理, 甚至驗證配置是否如預期資料型態、格式…, 而正好 pydantic 可以滿足這樣的需求, 就讓我們來看看怎麼使用吧! 需安裝的套件 pip i
#
python
#
pydantic
#
檔案
3
阿Han
2025/01/08
【💊 Python的解憂錦囊】既能管理環境變數又能驗證的pydantic
當我們的系統發展到一定程度時, 難免會面臨到正式上線的問題, 要如何讓維運更加簡易呢? 尤其隨著複雜的客製化配置的出現時, 我們應該如何有效的管理, 甚至驗證配置是否如預期資料型態、格式…, 而正好 pydantic 可以滿足這樣的需求, 就讓我們來看看怎麼使用吧! 需安裝的套件 pip i
#
python
#
pydantic
#
檔案
3
阿Han
2025/01/02
【💊 Python的解憂錦囊 - FastAPI】多個worker如何共享數據?
要如何使用unicorn啟動多個FastAPI服務, 歡迎參考我們的「【💊 Python的解憂錦囊 - FastAPI】如何啟動多個Workers」。 當我們試著設計帶入模組化時… 我們在「【💊 Python的解憂錦囊 - FastAPI】使用 lifespan 來共享資料與管理生命週期
#
python
#
FastAPI
#
unicorn
4
阿Han
2025/01/02
【💊 Python的解憂錦囊 - FastAPI】多個worker如何共享數據?
要如何使用unicorn啟動多個FastAPI服務, 歡迎參考我們的「【💊 Python的解憂錦囊 - FastAPI】如何啟動多個Workers」。 當我們試著設計帶入模組化時… 我們在「【💊 Python的解憂錦囊 - FastAPI】使用 lifespan 來共享資料與管理生命週期
#
python
#
FastAPI
#
unicorn
4
阿Han
2025/01/01
【💊 Python的解憂錦囊 - FastAPI】如何啟動多個Workers
我們在「【🔒 Python API框架篇 - FastAPI】Ep.1 啟航」有說明如何使用uvicorn來啟動FastAPI服務, 假設今天我們的API是一個CPU密集型的運算服務時, 通常我們會希望開啟多個行程來幫忙處理, 那麼大致上的撰寫方式會像這樣: app = FastAPI( ti
#
python
#
FastAPI
#
unicorn
3
阿Han
2025/01/01
【💊 Python的解憂錦囊 - FastAPI】如何啟動多個Workers
我們在「【🔒 Python API框架篇 - FastAPI】Ep.1 啟航」有說明如何使用uvicorn來啟動FastAPI服務, 假設今天我們的API是一個CPU密集型的運算服務時, 通常我們會希望開啟多個行程來幫忙處理, 那麼大致上的撰寫方式會像這樣: app = FastAPI( ti
#
python
#
FastAPI
#
unicorn
3
阿Han
2024/08/28
【💊 Python的解憂錦囊】如何使用Buffer流將檔案分段上傳至Minio
MinIO 是一個高性能的物件存儲系統,設計用於大規模的數據存儲需求, 甚至是各種非結構化數據也都能往這邊儲存, 也支持群集擴展, 非常適合正在尋找儲存方案的朋友們。 我們在「【💎 Message Queue - Kafka 案例篇】如何將檔案流上傳到minio - 完整檔案 」介紹了如
#
python
#
MinIO
3
阿Han
2024/08/28
【💊 Python的解憂錦囊】如何使用Buffer流將檔案分段上傳至Minio
MinIO 是一個高性能的物件存儲系統,設計用於大規模的數據存儲需求, 甚至是各種非結構化數據也都能往這邊儲存, 也支持群集擴展, 非常適合正在尋找儲存方案的朋友們。 我們在「【💎 Message Queue - Kafka 案例篇】如何將檔案流上傳到minio - 完整檔案 」介紹了如
#
python
#
MinIO
3
阿Han
2024/08/07
【💊 Python的解憂錦囊】使用python-ffmpeg即時串流轉換音檔格式
訊息的即時傳遞已然成為現代社會的趨勢了, 影音也是如此, 即時! 即時! 即時! 已經是目前使用者體驗的必要元素了, 在這邊我們要分享的主題是如何在python程式語言的情境下使用ffmpeg來將音檔串流的轉換格式, 為什麼會有這樣的需求呢? 因為我們處理音檔時可能會需要統一輸出的格式, 當然背後也
#
python
#
ffmpeg
18
阿Han
2024/08/07
【💊 Python的解憂錦囊】使用python-ffmpeg即時串流轉換音檔格式
訊息的即時傳遞已然成為現代社會的趨勢了, 影音也是如此, 即時! 即時! 即時! 已經是目前使用者體驗的必要元素了, 在這邊我們要分享的主題是如何在python程式語言的情境下使用ffmpeg來將音檔串流的轉換格式, 為什麼會有這樣的需求呢? 因為我們處理音檔時可能會需要統一輸出的格式, 當然背後也
#
python
#
ffmpeg
18
阿Han
2024/07/19
【💊 Python的解憂錦囊】使用struct把資料打包成bytes的方法
我們在學習kafka的過程中最不習慣的就是不管什麼樣的資料, 在kafka的傳輸過程都會是binary的資料格式, 因此我們在撰寫程式的過程中並不是那麼的直觀, 必須將資料從float、int…資料型態轉型成binary才能順利傳送, 那麼基於這樣的前提之下, python這套程式語言可以怎麼做
#
python
9
阿Han
2024/07/19
【💊 Python的解憂錦囊】使用struct把資料打包成bytes的方法
我們在學習kafka的過程中最不習慣的就是不管什麼樣的資料, 在kafka的傳輸過程都會是binary的資料格式, 因此我們在撰寫程式的過程中並不是那麼的直觀, 必須將資料從float、int…資料型態轉型成binary才能順利傳送, 那麼基於這樣的前提之下, python這套程式語言可以怎麼做
#
python
9
阿Han
2024/06/21
【💊 Python的解憂錦囊】kafka訊息量太大、queue竟然是空的?
情境描述 我們在「🔒 阿Han的軟體心法實戰營 - kafka」有關於kafka的教學文章, 那麼在開發過程中我們遇到了 👻 詭異事件, 那就是我們嘗試在做一個檔案串流時, 發現Producer明明傳送了大約16MB檔案大小的封包到kafka, 每一包約(1024 * 1024 ) bytes
#
python
#
Kafka
#
Python
8
2
阿Han
2024/06/21
【💊 Python的解憂錦囊】kafka訊息量太大、queue竟然是空的?
情境描述 我們在「🔒 阿Han的軟體心法實戰營 - kafka」有關於kafka的教學文章, 那麼在開發過程中我們遇到了 👻 詭異事件, 那就是我們嘗試在做一個檔案串流時, 發現Producer明明傳送了大約16MB檔案大小的封包到kafka, 每一包約(1024 * 1024 ) bytes
#
python
#
Kafka
#
Python
8
2
阿Han
2024/06/13
【💊 Python的解憂錦囊】requests 流式(stream)請求
更快、更短、更即時是串流傳輸必要的元素, 而我們常常在使用Python請求API時都是等待式回應, 也就是一個請求過去之後, 待對方處理完畢後再行回應, 但假設需要下載的檔案、內容非常大時, 是不是使用者只能傻傻的等待整個傳輸結束後才能顯示? 這樣的使用者體驗也實在太糟糕了, 對於使用者來說除了完全
#
python
#
stream
#
request
27
阿Han
2024/06/13
【💊 Python的解憂錦囊】requests 流式(stream)請求
更快、更短、更即時是串流傳輸必要的元素, 而我們常常在使用Python請求API時都是等待式回應, 也就是一個請求過去之後, 待對方處理完畢後再行回應, 但假設需要下載的檔案、內容非常大時, 是不是使用者只能傻傻的等待整個傳輸結束後才能顯示? 這樣的使用者體驗也實在太糟糕了, 對於使用者來說除了完全
#
python
#
stream
#
request
27
阿Han
2024/05/10
【💊 Python的解憂錦囊】當websockets遇到自簽證書的伺服端時
前段時間我們有介紹「【Python 軍火庫🧨 - websockets】雙向溝通的渠道」, 這種方式可以達到基本的連線沒問題,但隨著資安意識的抬頭, 我們的websocket連線也會需要在通道之上進行加密, 那麼我們將根據使用情境來教您如何選用適當的連線。 Server端 我們的Serve
22
阿Han
2024/05/10
【💊 Python的解憂錦囊】當websockets遇到自簽證書的伺服端時
前段時間我們有介紹「【Python 軍火庫🧨 - websockets】雙向溝通的渠道」, 這種方式可以達到基本的連線沒問題,但隨著資安意識的抬頭, 我們的websocket連線也會需要在通道之上進行加密, 那麼我們將根據使用情境來教您如何選用適當的連線。 Server端 我們的Serve
22
阿Han
2024/04/26
【💊 Python的解憂錦囊】python -m build 打包時也能包含被引用的目錄
情況描述 我們在「【🔒 Python 先修班】教你親手打包專屬套件庫的手作課(pip install…)」有提到如何打包Python讓自己的程式變成套件, 讓其他人可以用pip install的方式進行安裝,😲 But… 我們實際上打包後, 發現到引用的檔案都有被打包進去,但目錄卻未被打包
#
python
#
程式語言
29
阿Han
2024/04/26
【💊 Python的解憂錦囊】python -m build 打包時也能包含被引用的目錄
情況描述 我們在「【🔒 Python 先修班】教你親手打包專屬套件庫的手作課(pip install…)」有提到如何打包Python讓自己的程式變成套件, 讓其他人可以用pip install的方式進行安裝,😲 But… 我們實際上打包後, 發現到引用的檔案都有被打包進去,但目錄卻未被打包
#
python
#
程式語言
29
阿Han
2024/04/23
【💊 Python的解憂錦囊 - FastAPI】使用 lifespan 來共享資料與管理生命週期
我們在「【🔒 Python API框架篇 - FastAPI】Ep.1 啟航」有分享 FastAPI 這套API框架, 那麼當我們想要在應用程式剛執行時就註冊一些事件或者共享GPU運算模型、變數…等,當整個應用程式關閉時也進行釋放作業, 這樣的一個週期循環就是所謂的生命週期, 而在FastAPI這
#
python
#
程式語言
#
FastAPI
24
阿Han
2024/04/23
【💊 Python的解憂錦囊 - FastAPI】使用 lifespan 來共享資料與管理生命週期
我們在「【🔒 Python API框架篇 - FastAPI】Ep.1 啟航」有分享 FastAPI 這套API框架, 那麼當我們想要在應用程式剛執行時就註冊一些事件或者共享GPU運算模型、變數…等,當整個應用程式關閉時也進行釋放作業, 這樣的一個週期循環就是所謂的生命週期, 而在FastAPI這
#
python
#
程式語言
#
FastAPI
24
阿Han
2024/04/16
【💊 Python的解憂錦囊 - FastAPI】Sharing State讓路由共享資訊
當我們在開發一個AI應用服務時, 常常會需要載入大模型, But… 我們總不可能每一次的請求就載入一次模型吧! 這樣太沒有效率了, 也非常的浪費資源, 因此我們通常會希望應用程式啟動時就能夠載入模型, 之後每一次的請求只要讓模型進行運算即可, 那麼在FastAPI的框架中究竟要如何使用呢? 首
#
python
#
程式語言
#
FastAPI
19
阿Han
2024/04/16
【💊 Python的解憂錦囊 - FastAPI】Sharing State讓路由共享資訊
當我們在開發一個AI應用服務時, 常常會需要載入大模型, But… 我們總不可能每一次的請求就載入一次模型吧! 這樣太沒有效率了, 也非常的浪費資源, 因此我們通常會希望應用程式啟動時就能夠載入模型, 之後每一次的請求只要讓模型進行運算即可, 那麼在FastAPI的框架中究竟要如何使用呢? 首
#
python
#
程式語言
#
FastAPI
19
阿Han
2024/03/05
【💊 Python的解憂錦囊】OpenCV如何讀取特定時間區段?
當我們在進行影像處理時, 在Python的世界最常聽到的就是OpenCV, 而我們在處理影片時也會想要僅針對某時間段的影片進行處理, 今天我們就來教您如何透過OpenCV來讀取特定的時間區段。 在進入主題之前, 有一些基本概念務必先行建立, 一個影片是由多張圖片組成的, 因此最小單元為一張圖
#
python
#
程式語言
#
opencv
34
阿Han
2024/03/05
【💊 Python的解憂錦囊】OpenCV如何讀取特定時間區段?
當我們在進行影像處理時, 在Python的世界最常聽到的就是OpenCV, 而我們在處理影片時也會想要僅針對某時間段的影片進行處理, 今天我們就來教您如何透過OpenCV來讀取特定的時間區段。 在進入主題之前, 有一些基本概念務必先行建立, 一個影片是由多張圖片組成的, 因此最小單元為一張圖
#
python
#
程式語言
#
opencv
34
阿Han
2024/02/27
【Python 軍火庫🧨 - silero-vad】 偵測語音活動的神兵利器
當我們在進行「語音辨識」的應用開發時, 首先會面臨一個問題, 那就是究竟要怎麼知道哪些段落是「人在說話的區段」, 精確的標示出這些區段之後, 我們除了可以儲存成純對話的段落, 還可以做出時間軸的字幕檔, 應用非常廣泛, 因此學會怎麼用VAD是進入語音領域非常重要的其中一個環節。 VAD代表
#
python
#
程式語言
6
2
阿Han
2024/02/27
【Python 軍火庫🧨 - silero-vad】 偵測語音活動的神兵利器
當我們在進行「語音辨識」的應用開發時, 首先會面臨一個問題, 那就是究竟要怎麼知道哪些段落是「人在說話的區段」, 精確的標示出這些區段之後, 我們除了可以儲存成純對話的段落, 還可以做出時間軸的字幕檔, 應用非常廣泛, 因此學會怎麼用VAD是進入語音領域非常重要的其中一個環節。 VAD代表
#
python
#
程式語言
6
2
阿Han
2024/02/12
【Python 軍火庫🧨 - websockets】傳送/接收音檔並轉換成numpy(基礎篇)
關於Websockets的篇章, 有興趣的朋友歡迎參考: 【Python 軍火庫 - websockets】雙向溝通的渠道 【Python 軍火庫 - websockets】用json來溝通吧! 而這一篇章的主題主要是來分享如何透過websockets傳遞音檔並進行解碼, 我們都知道聲
#
python
#
程式語言
4
阿Han
2024/02/12
【Python 軍火庫🧨 - websockets】傳送/接收音檔並轉換成numpy(基礎篇)
關於Websockets的篇章, 有興趣的朋友歡迎參考: 【Python 軍火庫 - websockets】雙向溝通的渠道 【Python 軍火庫 - websockets】用json來溝通吧! 而這一篇章的主題主要是來分享如何透過websockets傳遞音檔並進行解碼, 我們都知道聲
#
python
#
程式語言
4
阿Han
2024/02/06
【Python 軍火庫 🧨 - websockets】用json來溝通吧!
本文介紹了Python如何使用websockets進行雙向溝通,包括文字、json、xml和音訊的傳遞。特別著重於json資料交換格式,以及websockets通道的基本流程和關鍵的編碼與解碼。最終談到WebSocket對於傳統同步程式的轉變及對asyncio等套件的重要性。
#
python
#
程式語言
5
阿Han
2024/02/06
【Python 軍火庫 🧨 - websockets】用json來溝通吧!
本文介紹了Python如何使用websockets進行雙向溝通,包括文字、json、xml和音訊的傳遞。特別著重於json資料交換格式,以及websockets通道的基本流程和關鍵的編碼與解碼。最終談到WebSocket對於傳統同步程式的轉變及對asyncio等套件的重要性。
#
python
#
程式語言
5
阿Han
2024/02/02
【💊 Python的解憂錦囊】 函數裡的1個*args與2個**kwargs有什麼不同?
我們常常在看開源專案時, 會在函式中看到「*args」與「**kwargs」這兩個參數, 一直以來都很好奇也尚未使用, 趁著好奇心強烈的時期趕緊來了解一番, 並且將學習過程轉化為易懂的概念提供給有需要的朋友參考, 也期望我們能夠共同學習程式語言, 讓科技引領世界進步。 首先是 *args 會
#
python
#
程式語言
8
2
阿Han
2024/02/02
【💊 Python的解憂錦囊】 函數裡的1個*args與2個**kwargs有什麼不同?
我們常常在看開源專案時, 會在函式中看到「*args」與「**kwargs」這兩個參數, 一直以來都很好奇也尚未使用, 趁著好奇心強烈的時期趕緊來了解一番, 並且將學習過程轉化為易懂的概念提供給有需要的朋友參考, 也期望我們能夠共同學習程式語言, 讓科技引領世界進步。 首先是 *args 會
#
python
#
程式語言
8
2
阿Han
2024/01/29
【Python 軍火庫🧨 - websockets】雙向溝通的渠道
Websocket是一種網路傳輸的協定,讓建立一次handshake的過程就可以相互傳遞資料,而非同步的過程能夠讓處理事情更有效率,這篇文章將帶你深入瞭解Websocket如何運作、以及其特點與優勢。
#
python
#
程式語言
7
阿Han
2024/01/29
【Python 軍火庫🧨 - websockets】雙向溝通的渠道
Websocket是一種網路傳輸的協定,讓建立一次handshake的過程就可以相互傳遞資料,而非同步的過程能夠讓處理事情更有效率,這篇文章將帶你深入瞭解Websocket如何運作、以及其特點與優勢。
#
python
#
程式語言
7
加入
Top 5
1
【🤖 cursor AI】如何使用MCP Server
2
【語音合成技術 - GPT-SoVITS】如何微調模型
3
【💊 Python的解憂錦囊】使用python-ffmpeg即時串流轉換音檔格式
4
【🤖 cursor AI】如何在ubuntu 24.04安裝
5
【Prompt Engineering 提示工程】Ep.1 什麼是Prompt Engineering?
1
【🤖 cursor AI】如何使用MCP Server
2
【語音合成技術 - GPT-SoVITS】如何微調模型
3
【💊 Python的解憂錦囊】使用python-ffmpeg即時串流轉換音檔格式
4
【🤖 cursor AI】如何在ubuntu 24.04安裝
5
【Prompt Engineering 提示工程】Ep.1 什麼是Prompt Engineering?
全部
AI
python
Web
軟體知識
認證與授權
資料庫
工具庫
作業系統
Message Queue
javascript/nodejs
Go
區塊鏈
全部
AI
python
Web
軟體知識
認證與授權
資料庫
工具庫
作業系統
Message Queue
javascript/nodejs
Go
區塊鏈
全部類型
免費與付費
最新發佈
最新發佈
阿Han
2025/05/14
【Docker疑難雜症】python:3.11-alpine不能裝onnxruntime?
當我們在開發AI應用程式的時候, 常常會使用到onnx, ONNX 是一種開放標準格式,允許不同深度學習框架(如 PyTorch、TensorFlow、Scikit-learn)之間互通,使模型可以在不同平台上運行,而 ONNX Runtime 則是一個高效能的推理引擎,專門用來加速 ONNX
#
python
#
onnx
#
sherpaonnx
3
1
阿Han
2025/05/14
【Docker疑難雜症】python:3.11-alpine不能裝onnxruntime?
當我們在開發AI應用程式的時候, 常常會使用到onnx, ONNX 是一種開放標準格式,允許不同深度學習框架(如 PyTorch、TensorFlow、Scikit-learn)之間互通,使模型可以在不同平台上運行,而 ONNX Runtime 則是一個高效能的推理引擎,專門用來加速 ONNX
#
python
#
onnx
#
sherpaonnx
3
1
阿Han
2025/01/29
【💊 Python的解憂錦囊】Enum也可以很靈活 - 動態模板字串
🤔 簡單且靜態就足夠了? 相信我們在開發Python應用程式的過程中, 常常會借用Enum來定義我們可能的選項, 就像顏色紅、綠、黃會有這樣的結構: class Color(str, Enum): RED = 'red' GREED = 'green' YELLOW = 'yel
#
python
#
Enum
#
Key
2
2
阿Han
2025/01/29
【💊 Python的解憂錦囊】Enum也可以很靈活 - 動態模板字串
🤔 簡單且靜態就足夠了? 相信我們在開發Python應用程式的過程中, 常常會借用Enum來定義我們可能的選項, 就像顏色紅、綠、黃會有這樣的結構: class Color(str, Enum): RED = 'red' GREED = 'green' YELLOW = 'yel
#
python
#
Enum
#
Key
2
2
阿Han
2025/01/08
【💊 Python的解憂錦囊】既能管理環境變數又能驗證的pydantic
當我們的系統發展到一定程度時, 難免會面臨到正式上線的問題, 要如何讓維運更加簡易呢? 尤其隨著複雜的客製化配置的出現時, 我們應該如何有效的管理, 甚至驗證配置是否如預期資料型態、格式…, 而正好 pydantic 可以滿足這樣的需求, 就讓我們來看看怎麼使用吧! 需安裝的套件 pip i
#
python
#
pydantic
#
檔案
3
阿Han
2025/01/08
【💊 Python的解憂錦囊】既能管理環境變數又能驗證的pydantic
當我們的系統發展到一定程度時, 難免會面臨到正式上線的問題, 要如何讓維運更加簡易呢? 尤其隨著複雜的客製化配置的出現時, 我們應該如何有效的管理, 甚至驗證配置是否如預期資料型態、格式…, 而正好 pydantic 可以滿足這樣的需求, 就讓我們來看看怎麼使用吧! 需安裝的套件 pip i
#
python
#
pydantic
#
檔案
3
阿Han
2025/01/02
【💊 Python的解憂錦囊 - FastAPI】多個worker如何共享數據?
要如何使用unicorn啟動多個FastAPI服務, 歡迎參考我們的「【💊 Python的解憂錦囊 - FastAPI】如何啟動多個Workers」。 當我們試著設計帶入模組化時… 我們在「【💊 Python的解憂錦囊 - FastAPI】使用 lifespan 來共享資料與管理生命週期
#
python
#
FastAPI
#
unicorn
4
阿Han
2025/01/02
【💊 Python的解憂錦囊 - FastAPI】多個worker如何共享數據?
要如何使用unicorn啟動多個FastAPI服務, 歡迎參考我們的「【💊 Python的解憂錦囊 - FastAPI】如何啟動多個Workers」。 當我們試著設計帶入模組化時… 我們在「【💊 Python的解憂錦囊 - FastAPI】使用 lifespan 來共享資料與管理生命週期
#
python
#
FastAPI
#
unicorn
4
阿Han
2025/01/01
【💊 Python的解憂錦囊 - FastAPI】如何啟動多個Workers
我們在「【🔒 Python API框架篇 - FastAPI】Ep.1 啟航」有說明如何使用uvicorn來啟動FastAPI服務, 假設今天我們的API是一個CPU密集型的運算服務時, 通常我們會希望開啟多個行程來幫忙處理, 那麼大致上的撰寫方式會像這樣: app = FastAPI( ti
#
python
#
FastAPI
#
unicorn
3
阿Han
2025/01/01
【💊 Python的解憂錦囊 - FastAPI】如何啟動多個Workers
我們在「【🔒 Python API框架篇 - FastAPI】Ep.1 啟航」有說明如何使用uvicorn來啟動FastAPI服務, 假設今天我們的API是一個CPU密集型的運算服務時, 通常我們會希望開啟多個行程來幫忙處理, 那麼大致上的撰寫方式會像這樣: app = FastAPI( ti
#
python
#
FastAPI
#
unicorn
3
阿Han
2024/08/28
【💊 Python的解憂錦囊】如何使用Buffer流將檔案分段上傳至Minio
MinIO 是一個高性能的物件存儲系統,設計用於大規模的數據存儲需求, 甚至是各種非結構化數據也都能往這邊儲存, 也支持群集擴展, 非常適合正在尋找儲存方案的朋友們。 我們在「【💎 Message Queue - Kafka 案例篇】如何將檔案流上傳到minio - 完整檔案 」介紹了如
#
python
#
MinIO
3
阿Han
2024/08/28
【💊 Python的解憂錦囊】如何使用Buffer流將檔案分段上傳至Minio
MinIO 是一個高性能的物件存儲系統,設計用於大規模的數據存儲需求, 甚至是各種非結構化數據也都能往這邊儲存, 也支持群集擴展, 非常適合正在尋找儲存方案的朋友們。 我們在「【💎 Message Queue - Kafka 案例篇】如何將檔案流上傳到minio - 完整檔案 」介紹了如
#
python
#
MinIO
3
阿Han
2024/08/07
【💊 Python的解憂錦囊】使用python-ffmpeg即時串流轉換音檔格式
訊息的即時傳遞已然成為現代社會的趨勢了, 影音也是如此, 即時! 即時! 即時! 已經是目前使用者體驗的必要元素了, 在這邊我們要分享的主題是如何在python程式語言的情境下使用ffmpeg來將音檔串流的轉換格式, 為什麼會有這樣的需求呢? 因為我們處理音檔時可能會需要統一輸出的格式, 當然背後也
#
python
#
ffmpeg
18
阿Han
2024/08/07
【💊 Python的解憂錦囊】使用python-ffmpeg即時串流轉換音檔格式
訊息的即時傳遞已然成為現代社會的趨勢了, 影音也是如此, 即時! 即時! 即時! 已經是目前使用者體驗的必要元素了, 在這邊我們要分享的主題是如何在python程式語言的情境下使用ffmpeg來將音檔串流的轉換格式, 為什麼會有這樣的需求呢? 因為我們處理音檔時可能會需要統一輸出的格式, 當然背後也
#
python
#
ffmpeg
18
阿Han
2024/07/19
【💊 Python的解憂錦囊】使用struct把資料打包成bytes的方法
我們在學習kafka的過程中最不習慣的就是不管什麼樣的資料, 在kafka的傳輸過程都會是binary的資料格式, 因此我們在撰寫程式的過程中並不是那麼的直觀, 必須將資料從float、int…資料型態轉型成binary才能順利傳送, 那麼基於這樣的前提之下, python這套程式語言可以怎麼做
#
python
9
阿Han
2024/07/19
【💊 Python的解憂錦囊】使用struct把資料打包成bytes的方法
我們在學習kafka的過程中最不習慣的就是不管什麼樣的資料, 在kafka的傳輸過程都會是binary的資料格式, 因此我們在撰寫程式的過程中並不是那麼的直觀, 必須將資料從float、int…資料型態轉型成binary才能順利傳送, 那麼基於這樣的前提之下, python這套程式語言可以怎麼做
#
python
9
阿Han
2024/06/21
【💊 Python的解憂錦囊】kafka訊息量太大、queue竟然是空的?
情境描述 我們在「🔒 阿Han的軟體心法實戰營 - kafka」有關於kafka的教學文章, 那麼在開發過程中我們遇到了 👻 詭異事件, 那就是我們嘗試在做一個檔案串流時, 發現Producer明明傳送了大約16MB檔案大小的封包到kafka, 每一包約(1024 * 1024 ) bytes
#
python
#
Kafka
#
Python
8
2
阿Han
2024/06/21
【💊 Python的解憂錦囊】kafka訊息量太大、queue竟然是空的?
情境描述 我們在「🔒 阿Han的軟體心法實戰營 - kafka」有關於kafka的教學文章, 那麼在開發過程中我們遇到了 👻 詭異事件, 那就是我們嘗試在做一個檔案串流時, 發現Producer明明傳送了大約16MB檔案大小的封包到kafka, 每一包約(1024 * 1024 ) bytes
#
python
#
Kafka
#
Python
8
2
阿Han
2024/06/13
【💊 Python的解憂錦囊】requests 流式(stream)請求
更快、更短、更即時是串流傳輸必要的元素, 而我們常常在使用Python請求API時都是等待式回應, 也就是一個請求過去之後, 待對方處理完畢後再行回應, 但假設需要下載的檔案、內容非常大時, 是不是使用者只能傻傻的等待整個傳輸結束後才能顯示? 這樣的使用者體驗也實在太糟糕了, 對於使用者來說除了完全
#
python
#
stream
#
request
27
阿Han
2024/06/13
【💊 Python的解憂錦囊】requests 流式(stream)請求
更快、更短、更即時是串流傳輸必要的元素, 而我們常常在使用Python請求API時都是等待式回應, 也就是一個請求過去之後, 待對方處理完畢後再行回應, 但假設需要下載的檔案、內容非常大時, 是不是使用者只能傻傻的等待整個傳輸結束後才能顯示? 這樣的使用者體驗也實在太糟糕了, 對於使用者來說除了完全
#
python
#
stream
#
request
27
阿Han
2024/05/10
【💊 Python的解憂錦囊】當websockets遇到自簽證書的伺服端時
前段時間我們有介紹「【Python 軍火庫🧨 - websockets】雙向溝通的渠道」, 這種方式可以達到基本的連線沒問題,但隨著資安意識的抬頭, 我們的websocket連線也會需要在通道之上進行加密, 那麼我們將根據使用情境來教您如何選用適當的連線。 Server端 我們的Serve
22
阿Han
2024/05/10
【💊 Python的解憂錦囊】當websockets遇到自簽證書的伺服端時
前段時間我們有介紹「【Python 軍火庫🧨 - websockets】雙向溝通的渠道」, 這種方式可以達到基本的連線沒問題,但隨著資安意識的抬頭, 我們的websocket連線也會需要在通道之上進行加密, 那麼我們將根據使用情境來教您如何選用適當的連線。 Server端 我們的Serve
22
阿Han
2024/04/26
【💊 Python的解憂錦囊】python -m build 打包時也能包含被引用的目錄
情況描述 我們在「【🔒 Python 先修班】教你親手打包專屬套件庫的手作課(pip install…)」有提到如何打包Python讓自己的程式變成套件, 讓其他人可以用pip install的方式進行安裝,😲 But… 我們實際上打包後, 發現到引用的檔案都有被打包進去,但目錄卻未被打包
#
python
#
程式語言
29
阿Han
2024/04/26
【💊 Python的解憂錦囊】python -m build 打包時也能包含被引用的目錄
情況描述 我們在「【🔒 Python 先修班】教你親手打包專屬套件庫的手作課(pip install…)」有提到如何打包Python讓自己的程式變成套件, 讓其他人可以用pip install的方式進行安裝,😲 But… 我們實際上打包後, 發現到引用的檔案都有被打包進去,但目錄卻未被打包
#
python
#
程式語言
29
阿Han
2024/04/23
【💊 Python的解憂錦囊 - FastAPI】使用 lifespan 來共享資料與管理生命週期
我們在「【🔒 Python API框架篇 - FastAPI】Ep.1 啟航」有分享 FastAPI 這套API框架, 那麼當我們想要在應用程式剛執行時就註冊一些事件或者共享GPU運算模型、變數…等,當整個應用程式關閉時也進行釋放作業, 這樣的一個週期循環就是所謂的生命週期, 而在FastAPI這
#
python
#
程式語言
#
FastAPI
24
阿Han
2024/04/23
【💊 Python的解憂錦囊 - FastAPI】使用 lifespan 來共享資料與管理生命週期
我們在「【🔒 Python API框架篇 - FastAPI】Ep.1 啟航」有分享 FastAPI 這套API框架, 那麼當我們想要在應用程式剛執行時就註冊一些事件或者共享GPU運算模型、變數…等,當整個應用程式關閉時也進行釋放作業, 這樣的一個週期循環就是所謂的生命週期, 而在FastAPI這
#
python
#
程式語言
#
FastAPI
24
阿Han
2024/04/16
【💊 Python的解憂錦囊 - FastAPI】Sharing State讓路由共享資訊
當我們在開發一個AI應用服務時, 常常會需要載入大模型, But… 我們總不可能每一次的請求就載入一次模型吧! 這樣太沒有效率了, 也非常的浪費資源, 因此我們通常會希望應用程式啟動時就能夠載入模型, 之後每一次的請求只要讓模型進行運算即可, 那麼在FastAPI的框架中究竟要如何使用呢? 首
#
python
#
程式語言
#
FastAPI
19
阿Han
2024/04/16
【💊 Python的解憂錦囊 - FastAPI】Sharing State讓路由共享資訊
當我們在開發一個AI應用服務時, 常常會需要載入大模型, But… 我們總不可能每一次的請求就載入一次模型吧! 這樣太沒有效率了, 也非常的浪費資源, 因此我們通常會希望應用程式啟動時就能夠載入模型, 之後每一次的請求只要讓模型進行運算即可, 那麼在FastAPI的框架中究竟要如何使用呢? 首
#
python
#
程式語言
#
FastAPI
19
阿Han
2024/03/05
【💊 Python的解憂錦囊】OpenCV如何讀取特定時間區段?
當我們在進行影像處理時, 在Python的世界最常聽到的就是OpenCV, 而我們在處理影片時也會想要僅針對某時間段的影片進行處理, 今天我們就來教您如何透過OpenCV來讀取特定的時間區段。 在進入主題之前, 有一些基本概念務必先行建立, 一個影片是由多張圖片組成的, 因此最小單元為一張圖
#
python
#
程式語言
#
opencv
34
阿Han
2024/03/05
【💊 Python的解憂錦囊】OpenCV如何讀取特定時間區段?
當我們在進行影像處理時, 在Python的世界最常聽到的就是OpenCV, 而我們在處理影片時也會想要僅針對某時間段的影片進行處理, 今天我們就來教您如何透過OpenCV來讀取特定的時間區段。 在進入主題之前, 有一些基本概念務必先行建立, 一個影片是由多張圖片組成的, 因此最小單元為一張圖
#
python
#
程式語言
#
opencv
34
阿Han
2024/02/27
【Python 軍火庫🧨 - silero-vad】 偵測語音活動的神兵利器
當我們在進行「語音辨識」的應用開發時, 首先會面臨一個問題, 那就是究竟要怎麼知道哪些段落是「人在說話的區段」, 精確的標示出這些區段之後, 我們除了可以儲存成純對話的段落, 還可以做出時間軸的字幕檔, 應用非常廣泛, 因此學會怎麼用VAD是進入語音領域非常重要的其中一個環節。 VAD代表
#
python
#
程式語言
6
2
阿Han
2024/02/27
【Python 軍火庫🧨 - silero-vad】 偵測語音活動的神兵利器
當我們在進行「語音辨識」的應用開發時, 首先會面臨一個問題, 那就是究竟要怎麼知道哪些段落是「人在說話的區段」, 精確的標示出這些區段之後, 我們除了可以儲存成純對話的段落, 還可以做出時間軸的字幕檔, 應用非常廣泛, 因此學會怎麼用VAD是進入語音領域非常重要的其中一個環節。 VAD代表
#
python
#
程式語言
6
2
阿Han
2024/02/12
【Python 軍火庫🧨 - websockets】傳送/接收音檔並轉換成numpy(基礎篇)
關於Websockets的篇章, 有興趣的朋友歡迎參考: 【Python 軍火庫 - websockets】雙向溝通的渠道 【Python 軍火庫 - websockets】用json來溝通吧! 而這一篇章的主題主要是來分享如何透過websockets傳遞音檔並進行解碼, 我們都知道聲
#
python
#
程式語言
4
阿Han
2024/02/12
【Python 軍火庫🧨 - websockets】傳送/接收音檔並轉換成numpy(基礎篇)
關於Websockets的篇章, 有興趣的朋友歡迎參考: 【Python 軍火庫 - websockets】雙向溝通的渠道 【Python 軍火庫 - websockets】用json來溝通吧! 而這一篇章的主題主要是來分享如何透過websockets傳遞音檔並進行解碼, 我們都知道聲
#
python
#
程式語言
4
阿Han
2024/02/06
【Python 軍火庫 🧨 - websockets】用json來溝通吧!
本文介紹了Python如何使用websockets進行雙向溝通,包括文字、json、xml和音訊的傳遞。特別著重於json資料交換格式,以及websockets通道的基本流程和關鍵的編碼與解碼。最終談到WebSocket對於傳統同步程式的轉變及對asyncio等套件的重要性。
#
python
#
程式語言
5
阿Han
2024/02/06
【Python 軍火庫 🧨 - websockets】用json來溝通吧!
本文介紹了Python如何使用websockets進行雙向溝通,包括文字、json、xml和音訊的傳遞。特別著重於json資料交換格式,以及websockets通道的基本流程和關鍵的編碼與解碼。最終談到WebSocket對於傳統同步程式的轉變及對asyncio等套件的重要性。
#
python
#
程式語言
5
阿Han
2024/02/02
【💊 Python的解憂錦囊】 函數裡的1個*args與2個**kwargs有什麼不同?
我們常常在看開源專案時, 會在函式中看到「*args」與「**kwargs」這兩個參數, 一直以來都很好奇也尚未使用, 趁著好奇心強烈的時期趕緊來了解一番, 並且將學習過程轉化為易懂的概念提供給有需要的朋友參考, 也期望我們能夠共同學習程式語言, 讓科技引領世界進步。 首先是 *args 會
#
python
#
程式語言
8
2
阿Han
2024/02/02
【💊 Python的解憂錦囊】 函數裡的1個*args與2個**kwargs有什麼不同?
我們常常在看開源專案時, 會在函式中看到「*args」與「**kwargs」這兩個參數, 一直以來都很好奇也尚未使用, 趁著好奇心強烈的時期趕緊來了解一番, 並且將學習過程轉化為易懂的概念提供給有需要的朋友參考, 也期望我們能夠共同學習程式語言, 讓科技引領世界進步。 首先是 *args 會
#
python
#
程式語言
8
2
阿Han
2024/01/29
【Python 軍火庫🧨 - websockets】雙向溝通的渠道
Websocket是一種網路傳輸的協定,讓建立一次handshake的過程就可以相互傳遞資料,而非同步的過程能夠讓處理事情更有效率,這篇文章將帶你深入瞭解Websocket如何運作、以及其特點與優勢。
#
python
#
程式語言
7
阿Han
2024/01/29
【Python 軍火庫🧨 - websockets】雙向溝通的渠道
Websocket是一種網路傳輸的協定,讓建立一次handshake的過程就可以相互傳遞資料,而非同步的過程能夠讓處理事情更有效率,這篇文章將帶你深入瞭解Websocket如何運作、以及其特點與優勢。
#
python
#
程式語言
7