在 ASP.NET Web API 使用 IAsyncEnumerable 並串流至 JavaScript

在玩 ChatGPT 的時候,對於如何將聊天機器人的回應,即時的一字字依序輸出在網頁上,這樣的互動體驗非常有沉浸感,讓人真的有在和 AI 對話的感覺。當我們想要使用 ASP.NET Core WebAPI 以及 JavaScript 來呈現這樣的體驗時,如何讓後端 API 串流的輸出內容,並讓 JavaScript 在呼叫該 API 後能依序接受這樣的資料流,這時候問題就來了,兩者之間要如何串流資料呢?這篇提供一種處理方法。

上傳 Container Image 到 Azure Container Registry

有些情境下,特別是在比較封閉的企業內部網路,可能無法直接從 Docker Hub 上取得 Container Image,不過如果你有 Azure Container Registry (ACR) 的話,且網路架構可以存取的時候,就可以透過 Azure CLI 來將 Container Image 上傳到 ACR 中,藉此管理企業內會用到的 Container Image。

使用 C# 和 OpenAI Embedding 搭配 RediSearch 查詢向量資料庫

在開發 OpenAI 的 Embedding 相關的功能時,勢必會需要使用到向量資料庫來儲存向量資料,常見的教學會使用 Pinecone 這個 SaaS 的向量資料庫,不過在企業內的環境,使用 Redis 搭配 RediSearch 模組來建構解決方法,是一個不錯的選擇,這篇來實作這個解決方案。

使用 ML.NET 將文字轉成向量

現在越來越多場景需要藉助向量分析,最常見的情境莫過於將文字向量化之後,用於搜尋、聚類分析、建議等等,這篇要介紹如何使用 ML.NET 將文字轉成向量。

在 Visual Studio 中使用 HTTP 檔案呼叫 Web API

在開發 Web API 的應用程式時,經常會需要測試 API 的呼叫,這時候可以使用功能齊全的 Postman 來協助我們測試。如果你是使用 Visual Studio 來開發的時候,在 2022 的版本中,內建了 HTTP 檔案功能,我們可以在 Visual Studio 中直接執行這個檔案來測試 Web API 的呼叫。

使用 C# 來計算發送 OpenAI GPT 請求會使用到的 Token 數量

不管你是直接使用 OpenAI 的 API 還是使用 Azure OpenAI 的 API,在呼叫 AI 模型的時候,都是按照請求的 Token 數量來計算費用的,雖然在呼叫之後所回應的內容會告訴你這次請求使用了多少 Token,不過一般來說,我們還是會希望在發送請求之前,先計算這次請求會用到多少 Token,一方面控制使用量,二方面可以確保所發出的請求不會超過該模型能接受的上線。

在安裝 Zscaler 的電腦上執行 pip 安裝 Python 套件

Python 的開發者應該都知道 Python 安裝套件時,是使用 pip install package 的指令,但是在企業內部環境中,網路可能會因為一些設定而無法直接使用此指令安裝套件,例如因為無法合法的辨識 Zscaler 中繼憑證,而導致無法成功安裝 Python 套件,這篇提供一個方法來解決這個問題。

取得 HttpClient 的回應時間

在開發 Web API 時,有時候會需要知道每次呼叫該 API 時的網路狀況,例如:網路速度、網路狀況等等,如果想要知道該次呼叫的回應時間,可以搭配使用 Stopwatch 來計算,這篇是段簡短的範例程式碼,讓我們使用 HttpClient 的時候,同時取得回應訊息以及回應時間。

處理 Azure Storage Explorer 遇到 ZScaler 的憑證問題

透過 Azure Storage 可以建立大量資料的儲存服務,而且我們可以使用 Azure Storage Explorer 來管理存放在上面的各種檔案資料,相當方便。在有使用 ZScaler 服務的企業內部網路時,有可能會遇到對外連線的時候,被 ZScaler 抽換 SSL 憑證,造成無法正確處理連線的問題,這篇文章將介紹如何解決這個問題。

使用 PowerShell 將 doc 轉檔成 docx 格式

在整理過去的文件時,發現有大量的 Word 文件是使用舊的 .doc 格式,為了能夠在新的系統上使用,需要將這些文件轉換成新的 .docx 格式,這篇文章將介紹如何使用 PowerShell 來批次轉換。