Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>全國電子 AI 助理New to Visual Studio Code? Get it now.
全國電子 AI 助理

全國電子 AI 助理

arthur_elifemall

|
7 installs
| (0) | Free
v1: 全AI助理功能
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

全國電子 AI 助理 (Gemini VS Code) 功能介紹

elifemall-ai-assistant 是一款深度整合 VS Code 編輯器與 Google Gemini AI 模型的開發輔助工具。它不僅提供強大的聊天功能,還與您的工作區、知識庫和開發流程緊密結合,旨在打造比市面上同類工具更貼合企業需求的 AI 協作體驗。

以下是目前版本包含的核心功能:

1. 核心 AI 聊天介面

側邊欄的 Webview 是所有 AI 互動的核心入口。

  • 多模型支援:

    • 在擴充功能啟動時,會自動抓取您 GCP 專案中所有可用的 Gemini 模型 (例如 gemini-1.5-pro、gemini-1.5-flash 等)。
    • 下拉選單會清晰顯示模型的輸入 Token 上限 (例如 1.0M 或 8K),讓您能根據任務需求選擇最適當的模型。
  • 對話紀錄管理:

    • 所有對話都會自動儲存。您可以透過「對話紀錄」面板 (☰) 隨時載入、切換或刪除舊的對話。
    • 新對話會自動以使用者的第一句話命名,方便辨識。
  • 多模態附件:

    • 點擊 + 按鈕可附加檔案。
    • 文字檔: 支援附加 .txt, .md, .php 等文字檔案,AI 會將其內容納入上下文。
    • 圖片: 支援附加 .png, .jpg 等圖片,AI 可進行圖片辨識與多模態問答。

2. 智慧知識庫 (RAG) 系統

本工具的核心優勢在於其強大的檢索增強生成 (RAG) 系統,能讓 AI 根據您的企業內部文件回答問題。

  • Google Drive 來源:

    • 您可以在「資料來源管理」中,新增多個 Google Drive 資料夾或單一檔案 ID。
    • AI 會讀取您「已勾選」的 Drive 來源,將其全文內容作為回答的上下文基礎。
  • (主要) Metadata 知識庫 (兩階段 RAG):

    • 這是一套更高效、更精準的 RAG 流程,可透過「資料來源管理」中的「啟用 Metadata 知識庫」開關來啟用。
    • 第一階段 (AI 篩選): 當您提問時,系統會先讀取一個預先解析好的 generated_metadata.jsonl 檔案 (包含所有知識庫文件的標題、摘要、關鍵字)。接著,AI (Flash 模型) 會分析您的問題,並從數千筆 Metadata 中「篩選」出最相關的 3-7 個文件片段 ID。
    • 第二階段 (精準讀取): 系統只會從 Drive 讀取 AI 篩選出來的那幾個文件片段的完整內容。
    • 優勢: 此流程避免了傳統 RAG 暴力讀取所有文件,大幅提高了準確性、降低了 Token 消耗,並能優先使用公司內部的程式規範。

3. 深度編輯器整合

AI 功能已完全整合到您的日常編輯流程中。

  • 行內自動補全 (Inline Autocomplete):

    • 自動觸發: 在您停止打字後 500ms,AI (Flash 模型) 會自動提供程式碼補全建議。
    • 手動觸發: 在編輯器中點擊滑鼠,同樣會觸發一次補全建議。
    • 智慧上下文: 使用「滑動窗口」技術,僅擷取游標前後的程式碼作為上下文,確保在大型檔案中也能快速回應。
    • 開關: 您可以隨時在側邊欄 UI 頂部「自動補全」的開關來啟用或停用此功能。
  • 編輯器右鍵選單:

    • 針對選取範圍:
      • 解釋這段程式碼: 在側邊欄聊天室中提供詳細解釋。
      • 為選取範圍產生註解: (Diff 預覽) AI 會產生註解並以 Diff 視窗顯示。
      • 尋找選取範圍的潛在 Bug: 在側邊欄回報潛在問題。
      • 重構/優化程式碼: (Diff 預覽) AI 會重構程式碼並以 Diff 視窗顯示。
      • 產生單元測試 (PHP): 在側邊欄產生 PHPUnit 測試案例。
    • 針對整個檔案 (無選取範圍):
      • 為檔案產生註解文件: 產生完整的檔案架構與函式說明 (顯示於新分頁)。
      • 為檔案尋找潛在 Bug: AI 會回傳一份包含註解的完整程式碼 (顯示於新分頁)。
      • 優化整份檔案 (重構為 PHP 前後端分離): (見下方任務系統)
      • 為檔案開啟本地docker測試 (PHP): 自動計算相對路徑並在瀏覽器 (e.g., localhost:8080) 中開啟。
    • 針對註解行:
      • 由註解生成程式碼: 當游標停在註解行時啟用。此功能會觸發 RAG,AI 會查詢知識庫 (Metadata + Drive) 來產生最符合規範的程式碼,並插入到註解下方。

4. 智慧提及 (@) 與任務系統

輸入框的 @ 符號提供了強大的上下文與任務觸發功能:

  • @ 檔案 (本地上下文):

    • 輸入 @ 會自動列出您 VS Code 中目前開啟的檔案。
    • 選擇檔案 (例如 @utils.ts) 會將該檔案的完整內容加入到當次聊天的上下文中。
  • @ 知識庫 (遠端知識庫插入):

    • 需啟用「啟用 Metadata 提及」開關。
    • 輸入 @ 會一併搜尋 Metadata 知識庫 (顯示為 📦 [檔名])。
    • 在編輯器中使用 @ 選擇知識庫項目,會觸發 insertMentionedMetadataContent 指令,將該知識庫片段的完整內容 (非摘要) 抓取回來,並直接貼上到您的程式碼中。
  • @ 任務 (進階 AI 生成):

    • 輸入 @ 還會列出基於 Drive 來源和本地檔案的「生成任務」。
    • 當您選擇一項任務 (例如 [任務: 編輯 test1.php]) 並輸入提示 (例如 "新增一個取消訂單的 API"),系統會觸發高階 AI 流程 (handleGenerationChat):
    1. 文件生成 (SA/SD):

      • 觸發方式: @SA from: [Drive 來源] 或 @SD from: [Drive 來源]。
      • 流程: AI 會讀取您指定的 Drive 來源 (例如 SA 需求文件)、自動分析任務類型 (e.g., InternalAPI)、讀取對應的 SA/SD 範本文件、執行 RAG 查詢相關規範,最後使用 Pro 模型生成一份完整的文件 (顯示於新分頁)。
    2. 程式碼生成 (From Scratch):

      • 觸發方式: @Code from: [Drive 來源]。
      • 流程: 類似文件生成,但 AI 會回傳使用 <!@#檔名.php ... !@#> 分隔符的程式碼。系統會解析這些區塊,並在新分頁中開啟對應的 PHP 檔案。
    3. 本機檔案修改 (AI 編輯):

      • 觸發方式: @✏️ 編輯: [本地開啟的檔案]。
      • 流程: 這是最強大的功能之一。AI 會讀取您本地的檔案內容、根據您的提示 (e.g., "新增功能") 執行 RAG 查詢相關規範。
      • 防呆機制: AI 會檢查您是否忘了提供業務邏輯 (例如只給了規範,但忘了 @ SA 文件),如果遺漏會主動提醒您。
      • 執行: AI (Pro 模型) 會回傳一份修改後的完整檔案,系統會將其直接應用到您正在編輯的 VS Code 檔案中。

5. (管理員) AI 知識庫解析

此功能 (位於「資料來源管理」中的「AI 資料解析」按鈕) 是驅動 Metadata RAG 和 @知識庫 提及的核心引擎。

  • 差異更新 (Delta Update):

    • 系統會掃描「來源資料夾」中的所有 .md 文件,並將其依 ## H2 標題切割成數百個「文件片段」(Chunks)。
    • 系統會計算每個片段的 SHA-256 雜湊值 (Hash)。
    • 接著,系統會讀取「目標資料夾」中現有的 generated_metadata.jsonl,比對新舊雜湊值。
    • AI 只會處理「新增的」或「雜湊值已變更的」片段,未變更的片段會被直接保留。
  • AI 解析流程:

    • 對於每個「新/變更」的片段:
      1. 將該片段的完整內容上傳到「目標資料夾」 (作為一個獨立的 .md 檔)。
      2. 呼叫 AI (Pro 模型) 分析該片段,要求 AI 提取 title (標題)、summary (摘要)、keywords (關鍵字) 和 category (分類)。
    • 最後,系統會將所有「保留的」和「新生成的」Metadata 重新組合成一份最新的 generated_metadata.jsonl 並覆蓋舊檔。

環境安裝(測試使用-正式環境不需操作)

  • 請先到vscode-ai專案資料夾下

  • winget install OpenJS.NodeJS.LTS (安裝完成後須重啟vscode)

  • node -v (測試有無node功能)

  • 使用npm 請用PowerShell 系統管理員模式 (或是嘗試針對自己放寬限制 Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned)

  • npm -v (測試有無npm功能)

  • npm ci

  • npm install --save-dev @types/mime-types (安裝mime-types)

  • 最後 gcp project id (google clound 專案id)使用 ai-elifemall-01

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft