我們已經明確定義好每一個 LLM 的任務。
現在,該怎麼讓這些 LLM 各守本分,做好各自任務呢?
並且確保你的 AI 能夠穩定地處理多種情境,特別是當用戶需求或環境變化時?
這邊我推薦參考兩篇 Anthropic 的兩篇文章
我這邊會在根據個人經驗,總結成兩大重點
如果一個任務有明確定義的評估指標,那麼提示詞工程就是提升性能的最佳方法之一。
先思考一下 LLM 必須得回應什麼樣的訊息才能滿足我們的需求,最好的做法就是設計一個評分標準,透過這個標準來將這種模玲兩可的語言給量化。
我們可以從以下三點來評價 LLM
準確性:LLM 是否能正確理解並回應問題?
一致性:AI 是否能在不同上下文中給出一致的回應?
速度:回應的速度是否符合預期,特別是在實際應用場景中?
在建立 AI 應用時,這些標準必須與你的應用目標相符。這裡是一些常見的範例:
情感分析應用:
成功標準可以包括:
情感分類的準確率達到 85% 以上。
兩個類似的文字訊息,能否給予相同的答案。
AI 每次判斷的時間能否保持在 1 秒以內。
客服機器人:
標準可以是 AI 能夠回答 90% 的常見問題,並且在提供答案時保持友好語氣。
對話助手:
AI 是否能記住上下文,並根據對話歷史給出合適的回應?
測試,也就是我們模擬用戶會餵給 AI 的資料。
我們要盡可能的猜想到用戶會丟什麼資料給 AI,盡可能的保證 AI 在各種情境、各種奇葩環境下都能給予不錯的回應
直接測試 AI 執行的任務,如果 AI 是做情感分析應用,測試應包括正面、負面和中立情緒的文本。同時,別忘了考慮邊緣案例(如具有混合情感或複雜語句的文本)。
範例:我們可以創建好幾個有反諷意義的測試文本,試試看 AI 能否驗證出來
有時候 AI 做的事情很簡單,好比說如果 AI 只是判斷 true 或 false,又或者只會輸出特定的幾個單字,比如說他的任務是判斷某句話為”正面”還是”負面”(LLM 只有兩種可能的輸出),那就可以把一切自動化,可能寫個自動跑所有測試資料的程式碼,然後判斷 LLM 的正確率為多少。
另一種作法是設計另一個專門評分的 LLM,為了節省成本,我們的專門做任務的 AI 可能是比較廉價的 LLM(好比說 gpt-4o-mini),這時我們可以用更聰明的 LLM(比如說 gpt-4o),讓更聰明的 AI 來鞭策、判斷做任務的 AI 的回應是否合格。
與其開發少量高質量的測試,不如創建更多稍微寬鬆的自動化測試。這樣可以涵蓋更廣泛的情境,並確保 AI 能夠在各種邊緣情況下正常運作。
範例:開發 100 個常見問題的測試集,而不是集中精力在 10 個高度定制的問題上。
以上是最基本的提示詞工程基礎。
說到這個,今天我看到一個很酷的文章也同時分享給大家
如何讓 LLM 自己想出超有效的提示詞,甚至比人類想的還要更好,進一步降低人力成本。
可以參考這篇文章
https://www.techbang.com/posts/118175-auto-prompt-engineering-guide