# 筆記:ChatGPT Prompt Engineering for Developers 課程連結: https://learn.deeplearning.ai/chatgpt-prompt-eng/lesson/1/introduction 主題:prompt建構技巧 ## 撰寫關鍵 - 關鍵1 - 把指令說清楚:有效使用標點符號表達、設定答案格式、設定條件、給模型範例作參考 - 關鍵2 - 給模型多步驟:設定問題回答步驟、讓模型先試答再給最終答案 - 流程 - 重複試錯直到寫出最好的prompt,重點是如何建構試錯流程 - 開發前期可使用單範例驗證prompt有效性,後期再用多範例來驗證,比較各prompts平均表現如何 ## 用途技巧 - 資訊歸納(Summerizing) - 定義目標觀眾是誰,答案會以目標觀眾為主 - 定義具體的需求:「擷取特定資訊」比「歸納所有資訊」更可排除掉不必要的資訊 ## 用途技巧 - 資訊判斷(Inferring) - 定義具體答案格式:「請二擇一」作答情緒好壞;「請列出」各種情緒 - 定義重點:「這個客人有沒有在生氣?」 - 一次結合多需求:列出各種情緒、把是否生氣用1/0表達、做成json格式⋯ - 不用額外訓練就可做各類判斷:人類情緒判斷、文章主題判斷 ## 用途技巧 - 改變文章形式(Transforming) - 使用場景:語言翻譯、語言辨識、轉換表達口吻、文法校訂、轉換輸出格式 ## 用途技巧 - 增加文字量(Expanding) - 使用場景:依照客戶評論,自動生成具體回覆 - 使用temperature參數,增加隨機性(temperature越高,會使用越多機率低的答案做接龍,使最終答案變異性大) - 越穩定的系統,需要越小的temperature;若應用在創意領域,可以調高temperature - 若temperature=0,每次皆產生相同答案 ## 用途技巧 - 客製聊天機器人(Chatbot) - 產生單一回答,使用```get_completeion()```函數 - 產生雙向對答,使用```get_completion_from_message()```函數 - 產生對答需要三種角色:system(角色設定), assistant(對答機器人), user(使用者)