星期六, 3月 08, 2025

GitHub Copilot edits 與 GitHub Copilot for Azure 小記



GitHub Copilot edits 與 GitHub Copilot for Azure 小記


AI 程式碼工具目前我同時有在使用的是 Gemini Code Assist 與 GitHub Copilot

最近因為工作上的需求, 想把 Azure Entra ID 使用者新增這個部分進行程式自動化


這次使用的方式是 Github Copilot edits + Github Copilot for Azure 來進行


OS: macOS Sonoma 14.3

vscode: 1.98


先說結論 使用 Copilot Edits + Github Copilot for Azure 在 Azure 設置與管理上真的是太舒服了, 下意識會想說有沒有 Github Copilot for AWS / Github Copilot for GCP :P 


目前 Github Copilot / Gemini Code Assist 皆有免費計畫


先預定已設定好 GitHub Copilot Free 以及裝以下 vscode extension (可以搜尋名稱)


這裡也有官方的文件可以參考


做法與心得如下


開啟 vscode

點選畫面中間上方的 GitHub 圖示 -- > 開啟聊天



可以使用聊天的方式詢問 Copilot 如何達成我們要的目的, 例如 "我想要使用 python 建立 Entra ID 外部使用者"


這個階段應該跟其他使用 AI 工具獲得的回饋都差不多

這個時候會有建議的程式碼



以及可能需要的參數內容



這個時候視你的角色不同, 會產生不同的疑問

  • 程式設計師 - 我如何在 Azure 上面取得 Azure 應用程式的相關參數或是申請???

  • 雲端工程師 - 我知道相關應用程式如何新增, 但是我不會寫程式 ???


這個時候你就會發現 那兩個 extension 組合起來真的太舒服了

在聊天界面放心的提出你的問題

如果你沒有安裝 GitHub Copilot for Azure, 他也會提示你安裝



  • 你會得到在 Azure 上面需要進行的步驟與需要的權限


所以得到參數之後, 可以嘗試去執行, 也可以問 Copilot 如何執行?



執行的過程中, 如果有想到想改動的功能, 可以切換到 COPILOT EDITS

提出我們的需求



  • 美妙的是, Copilot 會自動幫你產生檔案以及修改程式內容, 來達成你的目的


在來來回回的對話之間, 就達成了這個小功能的 python 程式

真是太開心了


~ enjoy it


References


星期日, 2月 23, 2025

Gemini Cloud Assist 設定小記與 Gemini Code Assist 訂閱設定

Gemini Cloud Assist 設定小記與 Gemini Code Assist 訂閱設定



今天來記錄一下 Gemini Cloud Assist 相關設定

去年到今年 AI 相關產品變化的特別快, 眼尖的朋友可能發現最近 GCP Gemini 的產品又有些變化

除了之前大家知道的, Gemini Code Assist 分出了 Gemini Code Assist Standard 與 Gemini Code Assist Enterprise



目前以功能面來看, Google 是將之前 Gemini Code Assist 涵蓋的 雲端協助的部分免費的分離出來為 Gemini Cloud Assist ( 目前為 PREVIEW )


今天就記錄一下設定流程


首先如果在 GCP console 上面點選 Gemini 的圖示, 就會發現他已經換成 Cloud Assist PREVIEW 名稱


首先在 Console 搜尋 Gemini

可以找到 All Gemini products 



點選 MANAGE GEMINI CLOUD ASSIST



這個時候會看到 說明要啟用相關 API 以及目前的啟用狀況



點選 SAVE CHANGES

  • 這個時候會幫你把沒有啟用的 API 進行啟用的動作, 以我的例子來說就是啟用 Cloud Asset API / Recommender API / Cloud Trace API


再次點選 MANAGE GEMINI CLOUD ASSIST

這個時候可以觀察到 所有的 API 已經啟用



這個時候算是成功啟用完成


接下來可以直接在 Console 裡面直接進行相關提問



因為目前是在 PREVIEW 階段, 相信後續還是會有更多的 功能與 Metrics 可以應用


同場加映 - 設定 Gemini Code Assist 訂閱


Gemini Code Assist 前身是 Duet AI, 之前就有寫過如何建立訂閱


在 All Gemini products 頁面中

點選  GET GEMINI CODE ASSIST


會進到 Get Gemini Code Assist subscription 頁面

選取要使用的版本 點選 CONTINUE



  • 這邊可以觀察到目前不管是 Standard 或是 Enterprise 都是免費 (目前為推廣期間)



接下來 輸入訂閱名稱 以及 訂閱數量

點選 CONTINUE


  • 如果是按月訂閱, 第一個月是前 50 使用者免費, 之後每個月是 US$ 22.8

    • 這邊請特別注意, 按月訂閱是會自動續約, 所以如果沒有要後續使用, 記得要手動取消訂閱

  • 如果是 Enterprise 版本至少要 10人才能訂閱

  • 按年訂閱才能選擇是否要自動續約


確認訂閱內容

點選 COMPLETE PURCHASE


這個時候就可以看到訂閱確認的頁面


回到剛剛的  All Gemini products 頁面

就可以觀察到有 Active Subscription 資訊



可以進一步點選 MANAGE GEMINI CODE ASSIST 

這個時候出現的就是 Gemini Code Assist Settings 頁面, 而非剛剛的建立訂閱頁面


點選 MANAGE SUBSCRIPTION

可以觀察目前的訂閱狀況

這個可以觀察到有 DISABLE AUTORENEW

點選 DISABLE AUTORENEW


會出現是否要停用 Auto Renew

如果要訂用 Auto Renew 可以點選 SCHEDULE CANCELLATION 來建立一個取消的排程

  • 這邊其實真的覺得 GCP 這方面真的不錯, 可以減少費用的損失


訂閱設定就會產生改變


  • 可以發現目前已經沒有自動續約



來談談為何這個時候要建立 Gemini Code Assist 訂閱?

因為如果目前沒有訂閱的狀態, 雖然目前是可以使用, 但是會發現可能會有兩種狀況

  • 也許 Gemini Code Assist 會無法存取

  • Gemini Code Assist 的行為無法有效的被記錄, 只會在 log 上面出現 NotFoundException: No Orders found for this user



至此, 大功告成


~ enjoy it


References



星期二, 1月 28, 2025

tmux 小記


tmux 小記


OS: ubuntu 22.04 LTS

OS: macOS Sonoma


上次用 tmux 是好幾年前, 今天看到 youtube 的一個影片, 所以重新來試試看, 主要兩個原因

  • Linux and Mac 都支援

  • 可以分享終端機的資訊, 方便 demo 使用


tmux Github https://github.com/tmux/tmux


安裝 tmux in Ubuntu 22.04 LTS


搜尋套件

# apt-cache  search  tmux


tmux - terminal multiplexer


安裝 tmux

# apt-get  install  tmux


Reading package lists... Done

Building dependency tree... Done

Reading state information... Done

tmux is already the newest version (3.2a-4ubuntu0.2).

0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.


這邊會發現沒有安裝套件, 因為 ubuntu 22.04 LTS 預設應該已經安裝


再次確認

# apt  list --installed  | grep tmux


tmux/jammy-updates,jammy-security,now 3.2a-4ubuntu0.2 amd64 [installed]


基本的技巧可以看網路的影片或是文章


讓我比較有興趣的還是 share terminal 這塊

這邊我找到一個文章

以下是 lab 方式 (前提為 2 個用戶端都連線同一台機器 SSH)


確認目前 tmux session

# tmux  ls


error connecting to /tmp/tmux-0/default (No such file or directory)


建立一個 新的 session 命名為 demo

# tmux  new  -s  demo




這個時候再次觀察, 可以發現有新的 session 資訊


# tmux  ls


demo: 1 windows (created Tue Jan 28 05:23:43 2025) (attached)


在要觀察的另外一個用戶端終端機


# tmux  attach-session  -t  demo


這個時候就會發現, 已經掛載到同一個 session 然後兩邊的輸出都是同步


剛剛這樣的方式會發現兩個用戶端都可以下指令與輸出

如果不希望其中的用戶端可以下指令的話, 可以在 attach session 的時候加上 -r , 就會是使用 read only 的方式


另外小補充一個影片

  • you need to learn tmux RIGHT NOW!!

  • 這邊針對要練習一開始如何按按鍵有幫助, 例如要開新的視窗是 Ctrl + b c , 實際上的做法不是同時按住 Ctrl + b + c , 而是先按 Ctrl + b 放開之後再按 c, 要抓一下速度習慣

  • 喜歡的小快速鍵 Ctrl + b q 列出編號, Ctrl + b q 編號, 切換到該 terminal


另外就是 很重要的讓 tmux 支援滑鼠


# vi  ~/.tmux.conf 


加入 

set  -g mouse on



  • 之後的 session 就可以點選視窗來切換 terminal / 點選下方的 window 切換 window / 中間的線條調整大小


~ enjoy it



Reference