LearningSky.io

學習是一輩子的事情,中間所經歷過的每一段時光都會在某一刻化為成長的養分

【 Tools 】Ubuntu 環境透過 Systemd 啟動程式
Tools & Solutions & Cybersecurity

【 Tools 】Ubuntu 環境透過 Systemd 啟動程式

內容 學習目標 前置準備作業 設定並啟動程式 測試與驗證 學習目標 如何在 Ubuntu 電腦中設定開機自動啟動 Python Flask API 程式。 前置準備作業 一台可用的 Ubuntu 電腦並開啟 HTTP 80 Port。 於此台 Ubuntu 電腦中開啟終端機。 設定並啟動程式 Step 1. 系統更新 請於終端機輸入下方指令 sudo apt-get update Step 2. 安裝 pip 請於終端機輸入下方指令 sudo apt install -y python3-pip Step 3. 安裝 flask 請於終端機輸入下方指令 sudo apt install -y

【 MLOps 】依 train 與 test 的 csv 內容的檔案分類從 Azure Blob 匯入到 AzureML Studio 中的 Data assets
AIoT & Cloud & Edge & Machine Learning

【 MLOps 】依 train 與 test 的 csv 內容的檔案分類從 Azure Blob 匯入到 AzureML Studio 中的 Data assets

內容 檔案結構 學習目標 前置準備作業 資料集入 AzureML Data Assets 驗證 AzureML Studio 中的 Data Assets 檔案結構 Azure Blob └── Azure Blob ( ㊟ Azure Blob 服務 ) └── randomdatasets ( ㊟ 自行建立的 Azure Blob ) └── datasets ( ㊟ 自行建立的 Container ) ├── 1.jpg ├── 2.jpg ├── 3.jpg ├── 4.jpg ├── 5.jpg ├── 6.jpg ├── 7.jpg ├── 8.jpg ├── 9.jpg └── 10.jpg train.

【 MLOps 】透過 GitHub Action 觸發 Azure Machine Learning 中的 Pipeline Job 
進行模型訓練與驗證並透過 Microsoft Teams 傳送相關資訊
AIoT & Cloud & Edge & Machine Learning

【 MLOps 】透過 GitHub Action 觸發 Azure Machine Learning 中的 Pipeline Job 進行模型訓練與驗證並透過 Microsoft Teams 傳送相關資訊

內容 前置準備作業 流程 建立 Azure 服務所使用的名稱 Repository、Blob 與 AzureML Studio 之 Data、Components 與 Models 結構 上傳資料集到 Azure Blob 並取得存取 Key 建立 Azure IoT Hub 建立 Microsoft Teams 建立 Microsoft Azure Machine Learning Studio 產生部署認證 建立 GitHub Secret Edge 端下載訓練完成的 Model 修改程式並 Push 到 GitHub 驗證結果 前置準備作業 已建立 Azure

【 NLP 】使用 Vue 與 Azure OpenAI ChatGPT 建立 AI 問答機器人
AIoT & Cloud & Edge & Machine Learning

【 NLP 】使用 Vue 與 Azure OpenAI ChatGPT 建立 AI 問答機器人

內容 前置準備作業 檔案結構 流程 建立 Azure OpenAI ChatGPT Push Vue Code 到 GitHub 並設定 Secret API 格式 建立 Azure Static Web App 修改 GitHub Action 的 YAML 確認結果 前置準備作業 已建立 Azure 帳號並能正常登入與使用 https://portal.azure.com/ 已建立 GitHub 帳號並能正常登入與使用 https://github.com/ 已於電腦端安裝 IDE,本範例使用 Visual Studio Code 檔案結構 ├── .github

【 Cloud 】透過 GitHub Action 部署 React  到 Azure Static Web App 並設定 Secret
AIoT & Cloud & Edge & Machine Learning

【 Cloud 】透過 GitHub Action 部署 React  到 Azure Static Web App 並設定 Secret

內容 學習目標 前置準備作業 檔案結構 建立 GitHub Repository 設定 GitHub Action Secret 連接 GitHub 與 Azure Static Web App Push React App 到 GitHub 前置準備作業 已建立 Azure 帳號並能正常登入與使用 https://portal.azure.com/ 檔案結構 ├── .github │ └── workflows │ └── azure-static-web-apps-kind-bush-02b1f8f10.yml ├── README.md ├── package-lock.json ├── package.json ├── public │ ├── favicon.ico │ ├── index.html │ ├── logo192.png │ ├── logo512.

【 Cloud 】透過 GitHub Action 部署 Vue  到 Azure Static Web App 並設定 Secret
AIoT & Cloud & Edge & Machine Learning

【 Cloud 】透過 GitHub Action 部署 Vue  到 Azure Static Web App 並設定 Secret

內容 學習目標 前置準備作業 檔案結構 建立 GitHub Repository 設定 GitHub Action Secret 連接 GitHub 與 Azure Static Web App Push Vue App 到 GitHub 前置準備作業 已建立 Azure 帳號並能正常登入與使用 https://portal.azure.com/ 檔案結構 ├── .github │ └── workflows │ └── azure-static-web-apps-kind-bush-02b1f8f10.yml ├── README.md ├── babel.config.js ├── jsconfig.json ├── package-lock.json ├── package.json ├── public │ ├── favicon.ico

【 XAI 】使用 Azure Machine Learning Studio 執行 AI Explainability 360 Toolkit ( AIX360 )
AIoT & Cloud & Edge & Machine Learning

【 XAI 】使用 Azure Machine Learning Studio 執行 AI Explainability 360 Toolkit ( AIX360 )

內容 前言 前置準備作業 上傳 Dataset 到 Azure Blob 建立 Microsoft Azure Machine Learning Studio 建立 Trusted AI - AIX360 前言 Trusted-AI-AIX360 是由 IBM 開發的 AI 透明度和公正性 Toolkit,它為了幫助開發人員、數據科學家和決策者在使用 AI 技術時,能夠更好地理解和解釋 AI 模型的行為和決策,以及檢測和糾正潛在的不公平和偏見。該工具箱包括一系列模型解釋和驗證工具,包括模型評估、檢測和修正不公平和偏見、生成對抗樣本以及可解釋性和可視化工具,這些工具可以幫助用戶了解 AI 模型的決策過程、檢測和解決潛在的公平性問題,並提供可解釋性和解釋性能力,從而提高決策的透明度和公正性。 前置準備作業 已建立 Azure 帳號並能正常登入與使用 https:

【 MLOps 】在 AzureML Pipeline 中啟用 TensorFlow GPU
AIoT & Cloud & Edge & Machine Learning

【 MLOps 】在 AzureML Pipeline 中啟用 TensorFlow GPU

內容 學習目標 前置準備作業 上傳 Sample Code AzureML Pipeline 啟用 Tensorfow GPU 前置準備作業 已建立 Azure 帳號並能正常登入 https://portal.azure.com/ 已於 Microsoft Azure Machine Learning Studio 建立所要使用的 Compute 確認 Compute instance 與 Python 3.8 - AuzreML 是否為綠燈 ( 綠燈代表正常運作中 ) 且已建立 Juypter Notebook 上傳 Sample Code 在 Jupyter Notebook 中執行下方指令 !git clone

【 MLOps 】使用 AzureML 記錄計量、參數與檔案
AIoT & Cloud & Edge & Machine Learning

【 MLOps 】使用 AzureML 記錄計量、參數與檔案

內容 學習目標 前置準備作業 前言 使用 run.log 使用 run.log_list 使用 run.log_row 使用 run.log_table 使用 run.log_image 學習目標 如何使用 AzureML 中的 log、log_list、log_row、log_table、log_image 進行實驗過程中的數據進行保存。 前置準備作業 已建立 Azure 帳號並能正常登入 https://portal.azure.com/ 已於 Microsoft Azure Machine Learning

【 MLOps 】使用 Azure Machine Learning SDK 來建立及執行機器學習管線 - 以 TensorFlow Iris 為例
AIoT & Cloud & Edge & Machine Learning

【 MLOps 】使用 Azure Machine Learning SDK 來建立及執行機器學習管線 - 以 TensorFlow Iris 為例

內容 學習目標 前置準備作業 流程 上傳 Dataset 到 Azure Blob 建立 Microsoft Azure Machine Learning Studio 建立 AzureML Pipeline 學習目標 將訓練與評估的 CSV 檔案從本地端傳送至 Azure Blob。 將 AzureML Datastore 連接至 Azure Blob。 從 AzureML Datastore 讀取 CSV 檔案並建立對應的 Dataset 物件。 建立 Azure ML PipelineData 物件,以存儲在管道的訓練和評估步驟中產生的中間資料。 通過 Azure ML Pipeline 建立訓練和評估 2

【 Edge 】Windows 使用 MobaXterm 透過 Serial Port 進行連接
AIoT & Cloud & Edge & Machine Learning

【 Edge 】Windows 使用 MobaXterm 透過 Serial Port 進行連接

內容 學習目標 前置準備作業 透過 Serial Port 進行連接 學習目標 如何在 Windows 使用 MobaXterm 透過 Serial Port 連接 Edge。 前置準備作業 已有一台擁有 Serial Port 的 Edge。 已有一台 Windows 電腦。 已將 Windows 電腦透過 Serial Port 對裝置進行串接。 透過 Serial Port 進行連接 Step 1. 安裝 MobaXterm 下載網址如下: https://mobaxterm.mobatek.net/download.html Step 2. 啟動

【 Edge 】Windows 使用 Putty 透過 Serial Port 進行連接
AIoT & Cloud & Edge & Machine Learning

【 Edge 】Windows 使用 Putty 透過 Serial Port 進行連接

內容 學習目標 前置準備作業 透過 Serial Port 進行連接 學習目標 如何在 Windows 使用 Putty 透過 Serial Port 連接 Edge。 前置準備作業 已有一台擁有 Serial Port 的 Edge。 已有一台 Windows 電腦。 已將 Windows 電腦透過 Serial Port 對裝置進行串接。 透過 Serial Port 進行連接 Step 1. 查看 Windows 電腦上的 Serial Port 號 Step 2. 安裝 Putty 下載網址如下: https:

【 Edge 】macOS 使用 Terminal 透過 Serial Port 進行連接
AIoT & Cloud & Edge & Machine Learning

【 Edge 】macOS 使用 Terminal 透過 Serial Port 進行連接

內容 學習目標 前置準備作業 透過 Serial Port 進行連接 學習目標 如何在 macOS 透過 Serial Port 連接 Edge。 前置準備作業 已有一台擁有 Serial Port 的 Edge。 已有一台 macOS 電腦。 已將 macOS 電腦透過 Serial Port 對裝置進行串接。 透過 Serial Port 進行連接 Step 1. 查詢 COM Port 資訊 請於終端機輸入下方指令 ls -al /dev/tty.usbserial* Step 2. 安裝 screen

【 Edge 】Ubuntu 透過 Serial Port 進行連接
AIoT & Cloud & Edge & Machine Learning

【 Edge 】Ubuntu 透過 Serial Port 進行連接

內容 學習目標 前置準備作業 透過 Serial Port 進行連接 學習目標 如何在 Ubuntu 透過 Serial Port 連接 Edge。 前置準備作業 已有一台擁有 Serial Port 的 Edge。 已有一台 Ubuntu 電腦。 已將 Ubuntu 電腦透過 Serial Port 對裝置進行串接。 透過 Serial Port 進行連接 Step 1. 查詢 COM Port 資訊 請於終端機輸入下方指令 sudo dmesg | grep tty Step 2. 安裝 screen 套件

【 Cloud 】設定 Azure 費用警示通知
AIoT & Cloud & Edge & Machine Learning

【 Cloud 】設定 Azure 費用警示通知

內容 學習目標 前置準備作業 設定 Azure 費用警示通知 費用超過所設定的警戒值所收到的 Email 內容 學習目標 如何在設定 Azure 費用警示通知 前置準備作業 已建立 Azure 帳號並能正常登入 https://portal.azure.com/ 設定 Azure 費用警示通知 Step 1. 登入 Azure Step 2. 開啟警示設定頁面 點選左上角的 ≡ > 再點選 Cost Management + Billing 點選左側的 Cost Management 點選上方的 Scope 選擇所要設定的 訂閱 點選上方的 Add 填寫相關資訊 Name 欄位請填寫唯一且可識別的名稱,本範例使用

【 Container】使用 Buildx 建構多重系統架構的 Docker 映像檔
AIoT & Cloud & Edge & Machine Learning

【 Container】使用 Buildx 建構多重系統架構的 Docker 映像檔

內容 學習目標 前置準備作業 流程 於 ARM CPU 的電腦來建立 Docker Image 並上傳 Image 到 Docker Hub 於 x86 CPU 的 Ubuntu 電腦執行 Docker Image 學習目標 如何使用 Buildx 建構多重系統架構的 Docker 映像檔 前置準備作業 已建立 Docker Hub 帳號並能正常登入 https://hub.docker.com/ 準備一台 ARM CPU 的電腦來建立 Docker Image,本範例使用 Apple MacBook ( M1 Max ) 為例並完成

【 Container 】設定 Docker 時區
AIoT & Cloud & Edge & Machine Learning

【 Container 】設定 Docker 時區

內容 學習目標 前置準備作業 alpine Docker Image 設定時區 Ubuntu Docker Image 設定時區 學習目標 如何設定 Docker 時區,以 alpine 與 Ubuntu 為例 前置準備作業 已於電腦端安裝 Docker Engine 已於電腦端安裝 IDE,本範例使用 Visual Studio Code alpine Docker Image 設定時區 Step 1. 請建立 Dockerfile 檔案,其內容如下: Step 2. Build Image 於終端機輸入下方指令: sudo docker build -t alpine-set-timezone:

【 Cloud 】於 Azure Ubuntu VM 安裝 mlflow 與 Jupyter
AIoT & Cloud & Edge & Machine Learning

【 Cloud 】於 Azure Ubuntu VM 安裝 mlflow 與 Jupyter

內容 學習目標 前置準備作業 開啟 Azure Ubuntu VM 的 Port 安裝 mlflow 安裝 PostgreSQL 與設定 安裝 Jupyter 與設定 測試與驗證 學習目標 如何在 Azure Ubuntu VM 安裝 mlflow 與 Jupyter 前置準備作業 已建立 Azure 帳號並能正常登入 已建立 Azure Ubuntu VM 開啟 Azure Ubuntu VM 的 Port Step 1. 開啟 mlflow 所使用的 5000 埠 點選左側的 Networking

【 Cloud 】掛載 Storage account Blob 於 Azure Ubuntu VM
AIoT & Cloud & Edge & Machine Learning

【 Cloud 】掛載 Storage account Blob 於 Azure Ubuntu VM

內容 學習目標 前置準備作業 取得 Storage accounts 授權資訊 掛載 Blob 到 Azure Ubuntu VM 驗證 學習目標 如何掛載 Storage account Blob 於 Azure Ubuntu VM 前置準備作業 已建立 Azure 帳號並能正常登入 如何在 Azure Ubuntu VM 掛載 Storage accounts Blob 已建立 Storage account 並已存在檔案在此 Blob 中 取得 Storage accounts 授權資訊 Step 1. 取得 Storage account

【 Cloud 】部署 Ghost Blog App 到 Fly.io 雲端平台
AIoT & Cloud & Edge & Machine Learning

【 Cloud 】部署 Ghost Blog App 到 Fly.io 雲端平台

內容 學習目標 前置準備作業 專案最終目錄結構 部署 Ghost Blog App 到 Fly.io 學習目標 如何部署 Ghost Blog App 到 Fly.io 雲端平台 前置準備作業 已建立 Fly.io 帳號並能正常登入 Fly.io 的網址為 https://fly.io/ 已於電腦端安裝 flyctl https://fly.io/docs/hands-on/install-flyctl/ 專案最終目錄結構 └── ghost-blog-sample └── fly.toml → 執行完 flyctl 指令後會產生 部署 Ghost Blog App

【 Cloud 】部署 React App 到 Fly.io 雲端平台
AIoT & Cloud & Edge & Machine Learning

【 Cloud 】部署 React App 到 Fly.io 雲端平台

前言 因 Heroku 雲端平台將終止部分服務的免費使用額度,故轉移 App 到目前提供免費額度的 Fly.io 雲端平台。 內容 學習目標 前置準備作業 專案最終目錄結構 編譯 App 撰寫 Dockerfile 檔 部署 App 到 Fly.io 學習目標 如何部署 React App 到 Fly.io 雲端平台 前置準備作業 已建立 Fly.io 帳號並能正常登入 Fly.io 的網址為 https://fly.io/ 電腦端存在可正常執行的 React App 已於電腦端安裝 IDE,本範例使用 Visual

【 Cloud 】部署 Vue App 到 Fly.io 雲端平台
AIoT & Cloud & Edge & Machine Learning

【 Cloud 】部署 Vue App 到 Fly.io 雲端平台

前言 因 Heroku 雲端平台將終止部分服務的免費使用額度,故轉移 App 到目前提供免費額度的 Fly.io 雲端平台。 內容 學習目標 前置準備作業 專案最終目錄結構 編譯 App 撰寫 Dockerfile 檔 部署 App 到 Fly.io 學習目標 如何部署 Vue App 到 Fly.io 雲端平台 前置準備作業 已建立 Fly.io 帳號並能正常登入 Fly.io 的網址為 https://fly.io/ 電腦端存在可正常執行的 Vue App 已於電腦端安裝 IDE,本範例使用 Visual

【 Cloud 】部署 Node.js Express App 到 Fly.io 雲端平台
AIoT & Cloud & Edge & Machine Learning

【 Cloud 】部署 Node.js Express App 到 Fly.io 雲端平台

前言 因 Heroku 雲端平台將終止部分服務的免費使用額度,故轉移 App 到目前提供免費額度的 Fly.io 雲端平台。 內容 學習目標 前置準備作業 專案最終目錄結構 撰寫程式與設定檔 部署 App 到 Fly.io 學習目標 如何部署 Node.js Express App 到 Fly.io 雲端平台 前置準備作業 已建立 Fly.io 帳號並能正常登入 Fly.io 的網址為 https://fly.io/ 已於電腦端安裝 Node.js 已於電腦端安裝 IDE,本範例使用 Visual Studio Code

【 Cloud 】部署 Python Flask App 到 Fly.io 雲端平台
AIoT & Cloud & Edge & Machine Learning

【 Cloud 】部署 Python Flask App 到 Fly.io 雲端平台

前言 因 Heroku 雲端平台將終止部分服務的免費使用額度,故轉移 App 到目前提供免費額度的 Fly.io 雲端平台。 內容 學習目標 前置準備作業 專案最終目錄結構 撰寫程式與設定檔 部署 App 到 Fly.io 學習目標 如何部署 Python Flask App 到 Fly.io 雲端平台 前置準備作業 已建立 Fly.io 帳號並能正常登入 Fly.io 的網址為 https://fly.io/ 已於電腦端安裝 Python 已於電腦端安裝 IDE,本範例使用 Visual Studio Code 已於電腦端安裝 flyctl

【 Tools 】透過 Python 建立 AES-128 ECB 加解密
AIoT & Cloud & Edge & Machine Learning

【 Tools 】透過 Python 建立 AES-128 ECB 加解密

內容 學習目標 前置準備作業 安裝套件 Encrypt 加密 Decrypt 解密 學習目標 如何透過 Python 建立 AES-128 ECB 加解密 前置準備作業 已於電腦端安裝 Python 已於電腦端安裝 IDE,本範例使用 Visual Studio Code 安裝套件 請在終端機輸入下方指令pip install pycryptodome Encrypt 加密 Step 1. 建立名為 doEncrypt.py 的程式,其內容如下 Step 2. 執行程式 請在終端機輸入下方指令 python doEncrypt.py Step 3. 在相對路徑下會產生 sample-encrypt-Python.txt 開啟