iT邦幫忙

2025 iThome 鐵人賽

DAY 29
0
生成式 AI

從上下文工程到 Agent:30 天生成式 AI 與 LLM 學習紀錄系列 第 29

[Day29] AI Agent 實作:自動改錯字 Agent (二)

  • 分享至 

  • xImage
  •  

  昨天我們已經在 n8n 中建立好自動改錯字 Agent 的整個 Workflow,今天要來實作的部分是,讓他變成可以透過 HotKey 呼叫的工具,讓我們在需要改錯字的時候,Agent 可以很方便的被呼叫。

這套工具的操作邏輯如下:

Ctrl + A 全選,或是用滑鼠選取需要修正的文字 -> 按下 Hotkey Ctrl + Alt + A 呼叫 Python 腳本 -> 取得剪貼簿的文字 -> n8n -> 複製回剪貼簿 -> 覆蓋原本文字

Python 腳本

  當我們按下熱鍵時,我們要有一個腳本可以觸發 n8n 的工作流,需要先建立一個 Python 腳本如下:

agent.py

import requests, pyperclip, json

API_URL = "http://localhost:5678/webhook/fix-typo"

def main():
    text = pyperclip.paste().strip()
    if not text:
        print("剪貼簿沒有文字。")
        return
    
    print("正在發送至 AI Agent...")
    resp = requests.post(API_URL, json={"text": text})
    data = resp.json()
    corrected = data.get("corrected_text", "").strip()
    
    if corrected:
        pyperclip.copy(corrected)
        print("已將修正文字複製回剪貼簿!")
    else:
        print("修正失敗:", data)

if __name__ == "__main__":
    main()

這邊整題的邏輯大致上是:

取得剪貼簿文字 -> call n8n -> 複製回剪貼簿

熱鍵設定

1.安裝 AutoHotkey

再來是熱鍵設定的部分,我們需要安裝 AutoHotkey 這個小工具:https://www.autohotkey.com/
他可以運行於後台,當偵測到熱鍵後就可以執行我們寫的腳本。

2.建立 AutoHotkey 腳本

安裝完成後,我們需要建立一個文字文件,並輸入腳本如下:
下方是 AutoHotkey 2.0 的腳本語法

; Ctrl+Alt+A 呼叫 AI 改錯字
^!A::
{
    Send("^c") ; 複製選取文字
    RunWait("pythonw.exe `"C:\Users\ruiyang\agent.py`"", , "Hide")
    Sleep(800)
    Send("^v") ; 貼上修正後文字
}

  完成後存檔,把副檔名改為 .ahk,對檔案雙擊後,就會自動在後台執行,可以從右下角看到一個綠色 H 的 icon,但現在我們按下 Ctrl + Alt + A 雖有反應,但還不會正常執行喔。

n8n 測試與正式部署

  接下來我們回到 n8n,可以先利用 Postman 等方式測試看看是否能正常執行,我們可以按下 Webhook 節點左邊的閃電,然後在 Postman 打[POST]http://localhost:5678/webhook-test/fix-typo
(上方是測試用 URL)
  接著觀察看看整個工作流是否有正常的執行到最後,以及 Postman 是否有正常的 Response,如果都沒問題的話,我們就按下 n8n 介面右上角的 button,讓 inactive 變成 active,我們就完成這次的 Agent 實作了!
inactiveactive

成果展示

Yes


上一篇
[Day28] AI Agent 實作:自動改錯字 Agent (一)
系列文
從上下文工程到 Agent:30 天生成式 AI 與 LLM 學習紀錄29
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言