# 如何更好的下指令? ## 「不要問ChatGPT能為你做什麼,要問你想要ChatGPT幫你做什麼!」如何精準下指令給AI?神奇的咒語秘訣大公開--李宏毅(臺大電機系教授) - 使用 ChatGPT 時,將需求清晰表達是非常重要的一個原則。要想像你正在對一位剛加入公司的新人助理說明工作任務,**他具備基本的人類理解能力,但可能不如一般人類那麼靈活**。因此,如果你對他的說明連其他人都難以理解,那麼他怎麼可能明白呢? - 當你要求他完成某項任務時,需要非常清楚地說明任務事項。如果一位公司的新人助理能夠理解你的指示,那麼 ChatGPT 也有可能知道你現在想要它做什麼。 - 盡可能具體的描述希望 GPT 回答的格式,例如請把摘要用條列式三點列給我,或者幫我把文字整理成表格,須自行提供欄位名稱等 - 不要讓ChatGPT執行的事情: - 避免敏感或不當內容:ChatGPT 設計上無法執行或提供有關暴力、色情、自殺等不當情節的指令或資訊。(李舉例:我認識一位小說家,他表示他想要讓 ChatGPT 寫一個故事,內容是關於一位太太殺死她的先生。但不論他如何指示,ChatGPT 總是無法寫出這樣的故事。即使他提供了具體的情節設定,如太太在廚房拿起一把刀,ChatGPT 最終會讓這位太太心軟,選擇放下刀子。這是一個非常有趣的過程。) - 非事實核實的預測或推斷:不應該依賴 ChatGPT 進行精確的事實核實或作出具有重大後果的預測,尤其在金融、醫療等專業領域。 - 個人隱私侵犯行為:不應試圖利用 ChatGPT 獲取或洩露個人隱私信息,如住址、電話號碼等。 - 違法行為:不應使用 ChatGPT 規劃、鼓勵或執行任何違法行為。 - 高度專業或技術性問題:對於需要深度專業知識或高度技術性的問題,ChatGPT可能無法提供準確或可靠的回答,也需要使用者自己的判斷。 ## Six strategies for getting better results(OpenAI) https://platform.openai.com/docs/guides/prompt-engineering Write clear instructions These models can’t read your mind. If outputs are too long, ask for brief replies. If outputs are too simple, ask for expert-level writing. If you dislike the format, demonstrate the format you’d like to see. The less the model has to guess at what you want, the more likely you’ll get it. Tactics: ### 1. Include details in your query to get more relevant answers - 策略:寫下清晰的說明(在查詢中包含詳細資訊以獲得更相關的答案) | :-1: | :+1: | | -------- | -------- | | 如何在 Excel 中加入數字? | 如何在 Excel 中新增一行美元金額?我想對整張行自動執行此操作,所有總計都在右側名為“總計”的列中結束。 | | 誰是總統? | 誰是 2021 年墨西哥總統?選舉頻率如何? | ### 2. Ask the model to adopt a persona - 指定模型在其回復中使用的角色 | :-1: | :+1: | | -------- | -------- | | 一元二次方程式? | 你扮演數學老師的角色, 我需要理解一元二次方程式。 請用淺顯易懂方式描述 | | 寫一封感謝信 | 我需要給我的鋼螺栓供應商寫一封感謝信,感謝他們在短時間內準時交貨。這使我們能夠交付一份重要的訂單。 | ### 3. Use delimiters to clearly indicate distinct parts of the input - 使用分隔符號清楚指示輸入的不同部分(三引號、XML 標籤、節標題等分隔符號可以幫助分割要區別對待的文字節) | :-1: | :+1: | | -------- | -------- | 用俳句總結由三引號分隔的文字| ![image](https://hackmd.io/_uploads/HJcn7Rqha.png)| | 文章分隔 | ![image](https://hackmd.io/_uploads/rJms7a53T.png) ### 4. Specify the steps required to complete a task - 指定完成任務所需的步驟(有些任務最好指定為一系列步驟。明確地寫出這些步驟可以使模型更容易遵循它們) - ![image](https://hackmd.io/_uploads/ryH84Ccha.png) ### 5. Provide examples - 提供範例(在某些情況下提供範例可能更容易。例如,如果您打算讓模型複製回應使用者查詢的特定風格,而這種風格很難明確描述) ![image](https://hackmd.io/_uploads/BJ3JSR9n6.png) https://platform.openai.com/playground/p/default-chat-few-shot?mode=chat ### 6. Specify the desired length of the output - 指定所需的輸出長度(要求模型產生給定目標長度的輸出。目標輸出長度可以根據單字、句子、段落、要點等的計數來指定) - EX:將文字總結為 3 個要點。 # 站在上游——从写作的基本原理看AIGC的现实作用与使用要点 https://www.zhihu.com/question/602759673/answer/3347832343?utm_psn=1745485241236516864 ![image](https://hackmd.io/_uploads/SyqLDCt2a.png) - 我想要一個減肥計畫 :negative_squared_cross_mark: (GPT 不是搜尋引擎,不要當成搜尋引擎用) - 我是一個上班族,常常沒有時間吃飯運動,請幫我設計一個適合我的減肥計畫 :+1: (提供背景,利於推理語言生成) ![image](https://hackmd.io/_uploads/rk6wwCK2p.png) 一篇好的内容需要同时具备“信息” 与“情绪” 两种价值。 或提供信息增量,或提供情绪价值。 基于此,可以得出AIGC三定律。 - AIGC第一定律:凡是不能带来情绪价值的内容创作,都将被AIGC取代。 - AIGC第二定律:凡是需要情绪价值的内容创作,都可以发挥AIGC的力量。而AIGC辅助写作可以在“搭建”与“编辑”的结合点上取得实效。 - AIGC第三定律:AI,负责信息增量;人,负责情绪价值。 ![image](https://hackmd.io/_uploads/HkvjwAYh6.png) - 拆解流程,哪些是流程中 AI 可切入輔助的部分 --- # 如何快速上手ChatGPT ## Tip 1: 把需求講清楚 描述問題不僅只是描述物件而已,可以有明確量化的要求,或是特定任務的情境。 例如:請用英文幫忙擴寫以下段落 -> 請用英文幫忙擴寫以下段落到300字以上。 明確把需求講清楚越能獲得正確回答。 - 例如,如果你只是說「請幫我潤稿」而沒有提供具體的指示,ChatGPT 可能會按照自己認為最好的方式來重寫您的內容,這可能會導致內容發生較大的變動,有時甚至會改變原本的意思,因為它不清楚你具體的需求。 - 因此,如果你的需求實際上是希望 ChatGPT 作為文法檢查工具,那麼您就需要明確地指出,例如說「請檢查這段文字的文法」。這樣,ChatGPT 就不會去改變您的內容,只會進行文法的修改。 ![image](https://hackmd.io/_uploads/S1YxQWo3T.png) ## Tip 2: 提供資訊給ChatGPT ![image](https://hackmd.io/_uploads/B127mWi26.png) ## Tip 3: 提供範例 ![image](https://hackmd.io/_uploads/r1GWVbonp.png) ## Tip 4: 鼓勵ChatGPT想一想 > 論文 [Large Language Models are Zero-Shot Reasoners](https://arxiv.org/abs/2205.11916) 以計算的題目為例子,如果叫 GPT 單純給答案很有可能會給錯誤的結果。若能給他想一想,給出計算過程會有更高的機率獲得正確答案。 ![image](https://hackmd.io/_uploads/BkDclZohp.png) ![image](https://hackmd.io/_uploads/SJ_slWi36.png) :::success **Magic Prompt**: Let's think step by step ::: ## Tip 5: ChatGPT 可以上傳檔案 ![image](https://hackmd.io/_uploads/BkOfZ-jhp.png) ## Tip 6: ChatGPT 可以使用其他工具 ![image](https://hackmd.io/_uploads/HysdZbjn6.png) ## Tip 7: 拆解任務 如何寫出一篇長篇的文章呢? 把你要的寫出文章的步驟及架構匡列出來,並分別進行chatGPT問答。 針對故事跑偏的部分進行rewrite ![image](https://hackmd.io/_uploads/ByRjWZs2a.png) 論文:https://arxiv.org/abs/2210.06774 Recursive Reprompting and Revision ## Tip 8: 自主進行規劃 那能不能讓AI來協助規劃呢?是可以的 ![image](https://hackmd.io/_uploads/r1O7f-jnp.png) ## Tip 9: ChatGPT 其實是會反省的 若對ChatGPT給的資訊有疑慮,可以再請ChatGPT進行查核。 :::success Prompt: 請檢查上述資訊是否正確 ::: 參考文獻 https://arxiv.org/abs/2203.02155 InstructGPT https://arxiv.org/abs/2212.08073 Constitutional AI: Harmlessness from AI Feedback --- # 讓新手變中手的 ChatGPT 使用方法 https://www.facebook.com/share/p/98CzCs6dY18FokvC/?mibextid=oFDknk 這篇文章提供了針對提升使用 ChatGPT 的效率和質量的策略,特別適合初學者到中級使用者。以下是重點摘要: 1. **追問法**:拆解問題並逐步深入探討,使用結構化思維進行連續的追問,以挖掘更多可能性。 1. **元素碰撞法**:創造性地將看似無關的元素結合,透過 AI 生成創新和吸引人的內容。 1. **擴寫與改寫法**:從提供的內容出發,指導 AI 進行擴寫或改寫,以形成有趣且符合特定風格的文章或文案。 1. **反問法**:讓 AI 反問使用者,以獲得更細緻的問題理解和更充足的資料準備,從而提升答案的品質和針對性。 1. **人設法**:通過設定特定的角色和背景,指導 AI 根據使用者的需求和水平提供定制化的建議或內容。 這些策略旨在幫助使用者更有效地利用 ChatGPT,從而提升工作效率、創造力和內容質量。 下面是實際範例 ## 追問法 範例:假設你想了解高價位健身房的潛在客群。首先問:「請列出針對高價位健身房的10個潛在客群,並描述他們的人口統計特徵。」得到回答後,再問:「對於年輕專業人士這一客群,他們選擇健身房時考慮哪些因素?」進一步深入探討,最後可以問:「根據這些因素,如何針對年輕專業人士設計廣告文案?」 ## 元素碰撞法 範例:如果你要為一個專案管理課程創造廣告文案,首先問:「請提供10個關於專案管理課程的廣告標題。」得到答案後,再問:「給我20個與專案管理課程無關的隨機詞彙。」最後,指示 AI:「將這些無關詞彙與廣告標題混合,創造出新的標題。」 ## 擴寫與改寫法 範例:要求撰寫一篇關於失眠的文章。先給出開頭段落:「每當夜深人靜時,我總是在床上翻來覆去,思考著今天的種種。」然後請求:「基於這個開頭,擴寫出包含“睡前使用電子設備”、“晚間攝入咖啡因”、“心理壓力”為失眠原因的文章。」最後要求:「將文章改寫成第一人稱敘述,增加趣味性和故事性。」 ## 反問法 範例:假設你需要創建一個短影音腳本來提升個人品牌。你可以問:「如果我想創建一個展示個人品牌專業度的短影音腳本,我應該提供哪些資料?」這樣 AI 可以列出你需要準備的詳細資料清單。 ## 人設法 範例:當尋求 SEO 建議時,你可以這樣問:「假設我是一位完全不懂 SEO 的新手,我應該如何為我的網站OOXX進行優化?」這樣 AI 會從基礎開始,給出針對新手理解的建議。