
GraphRAG:基于PolarDB+通義千問api+LangChain的知識圖譜定制實踐
主觀的說:好的PROMPT就像與你的老朋友聊天,既清晰又相關,還得簡單直白。
換位思考:檢查你的PROMPT,AI能不能一口氣朗讀下來
換位思考想象下AI讀你的話時是否順暢。如果AI在讀的時候停頓,每次停頓就像高中上臺朗讀課文時的尷尬瞬間,那你的PROMPT需要“減肥”了。
像和朋友聊天一樣
好的PROMPT就像和朋友聊天,不要過分復雜又要清晰明了。你只需要知道自己想要什么,讓AI知道你要什么,那一切都簡單得像吃個大饅頭一樣爽。
總之,當你的PROMPT既能讓AI懂,又能讓你省心,同時有趣又實用,那你就是在和AI玩得其樂融融了!So,放心大膽地和AI來一場愉快的對話吧!?????
客觀的說:各種指標見下文… …?
在設計一個有效的PROMPT時,需要具體而清晰地闡明你的預期結果和要求。這包括明確PROMPT的整體目標和具體希望進行的任務,例如生成文本、回答問題、翻譯語言或進行情感分析等。通過使用清晰、簡潔和準確的語言,有助于縮小模型的輸出范圍,減少誤解和生成不相關內容的風險,從而提高生成內容的質量和相關性。?
舉個??
??不夠清晰:“描述一下氣候變化?!?/p>
??清晰明確:“請寫一篇200字的文章,討論氣候變化對全球農業生產的影響,特別是對水資源管理和農作物產量的影響?!?/p>
準確表達希望獲得的信息或結果:?
??不夠準確:“告訴我關于機器學習的知識?!?/p>
??準確表達:“請解釋什么是機器學習,包括其基本概念和至少兩種常用算法(如決策樹和神經網絡),并討論它們各自的應用領域?!?/p>
通過明確界定目標和任務,并使用具體的語言來描述這些目標和任務,可以顯著提高PROMPT的效果。這不僅幫助模型更好地理解用戶的需求,也確保生成的輸出內容更符合用戶的預期。明確的任務定義和具體的語言描述是創建高效PROMPT的關鍵要素。?
上下文和背景信息可以幫助更好地理解如何創建高質量的提示,引導生成型人工智能模型產生準確、高效和有針對性的回應。它包含了充分的上下文和背景信息,具體的任務目標和預期輸出,并明確了任何必要的細節、限制條件和目標讀者或用戶群體。一個優秀的提示能有效減少歧義,使模型能夠在總覽復雜信息并做出最佳回應時表現出色。
包括以下幾個方面:
1.角色和身份
2. 任務的具體目標
3. 相關歷史和現狀
4. 特定要求和條件
5. 讀者或受眾
舉個??
假設你是一名城市規劃師,正在為一個新興城市設計一項公共交通系統。請撰寫一份報告,評估當前已有的一些全球先進城市的交通系統,包括它們的優缺點和用戶滿意度情況。報告應包含對每個交通系統的詳細分析,并提出適應你所在城市的建議。對應的上下文:1.角色和身份:城市規劃師2. 任務的具體目標:為新興城市設計公共交通系統3. 相關歷史和現狀:
– 當前城市的交通現狀
– 系統需求的背景和動力4. 特定要求和條件:
– 需要評估全球已有先進交通系統的優缺點
– 必須分析用戶滿意度5. 讀者或受眾:城市管理層及相關公眾
通過提供這些上下文和背景信息,模型能夠理解任務的背景,識別關鍵因素并生成有效和相關的建議。例如,模型會更傾向于提供實用的、在你的新興城市中可行的交通系統建議,而不是泛泛而談。這樣可以確保任務的完成更符合實際需求和目的。?
一個優秀的PROMPT應具實現實現任務目標詳細的衡量標準或考評維度,提供清晰、全面、高效的評估,確保任務目標的實現。確保PROMPT達成目標客觀且有據可依,從而有效地實現任務的目標。這些要素共同確保PROMPT的評估有效性和可靠性。
優秀的PROMPT所需的核心要素,重點關注以下四點:
1. 明確提供與目標和任務直接相關的衡量標準或考評維度:
– 要點:PROMPT應精準指明哪些標準或維度是評估任務完成情況的關鍵,并詳細分析這些標準或維度與任務目標的關聯性。
2. 衡量標準或考評維度應全面,覆蓋所有必要的評估方面,不遺漏任何關鍵內容
– 要點:確保評估標準全面且能夠涵蓋所有重要因素,使得整體評價更為全面和準確,不留評估上的空白。?
3. 每個衡量標準或考評維度應有對應的衡量標準,以支持其評估過程:
– 要點:提供每個考評維度的詳細衡量標準,確保每個維度都有明確的評價依據,從而方便評估過程的實際操作和執行。
4. 衡量標準或考評維度的定義應清晰明確,便于理解和執行:
– 要點:定義應具備高度的清晰性和客觀性,搭配明確的評分指南,保障評估的透明和公正,讓各環節易于理解和執行。?
舉個??
?? 請根據學生的出勤率和他們參加課外活動的次數來計算綜合表現。
說明:
?? 請評估學生的綜合表現,總評分為100分,考評維度及標準如下:
1.學術成績(30分):請提供平均分,按百分制評分。例如,平均分為85分,則得分為25.5分(85/100 × 30)。
2.出勤率(25分):請提供出勤天數占總上課天數的百分比。例如,出勤率為95%,則得分為23.75分(95/100 × 25)。
3.課外活動參與度(20分):請提供參與活動的次數。例如,參與5次以上得20分,3-4次得15分,1-2次得10分,未參與得0分。
4.品行表現(25分):請提供行為記錄評分,如A(優秀)得25分,B(良好)得20分,C(中等)得15分,D(較差)得10分。
說明:
??請總結候選人的表現,說明其是否聰明、成熟、陽光。
說明:
?? 從三個人才特質(聰明、成熟、陽光)中提取相關內容,為候選人的面試表現生成摘要。
1.聰明(40分)
-會學習:評估候選人是否具有持續學習能力,是否能舉一反三并學以致用。請提供具體實例并評分。
-有好奇:評估候選人是否保持好奇心,并在工作中不斷探索新方法、新思路。請提供具體實例并評分。
-辯證思考:評估候選人是否能理解事物的本質和多樣性,能否應對變化并有思考地決策和行動。請提供具體實例并評分
2.成熟(30分)
-略略略
3.陽光(30分)
-略略略
說明:
輸入格式是指模型接收的原始數據的結構和形式。明確的輸入格式定義了數據應該如何組織和呈現,以確保模型能夠正確解析和理解這些數據。輸出格式是指模型生成結果的預期結構和形式。明確的輸出格式定義了模型應該如何組織和呈現生成的內容,以滿足特定的需求或標準。
例如:
舉個??
輸出格式是指模型生成結果的預期結構和形式。明確的輸出格式定義了模型應該如何組織和呈現生成的內容,以滿足特定的需求或標準。
預期輸出示例:
{
"students": [
{
"name": "Alice",
"total_score": 255,
"average_score": 85,
"grades": {
"Math": 85,
"English": 78,
"Science": 92
}
}
]
}
輸出模板:
{
"students": [
{
"name": "<NAME>",
"total_score": <TOTAL_SCORE>,
"average_score": <AVERAGE_SCORE>,
"grades": {
"Math": <MATH_SCORE>,
"English": <ENGLISH_SCORE>,
"Science": <SCIENCE_SCORE>
}
}
]
}
在提示工程中,樣本是特定任務中用來指導和幫助模型理解任務要求的具體輸入輸出配對。樣本可以是one-shot或few-shot,并且在提示的上下文中常常用于提供明確的任務示例。
1.增強模型理解:
2.提高模型性能:
3.適應多樣場景:
1.One-shot 示例:
2.Few-shot 示例:
當提示中有明確的衡量標準或考評維度時,樣本的作用不只是示范和引導,還能輔助評估和優化模型的輸出。明確的標準使得樣本更具指導性和評估性,為模型提供明確的成功指標和改進方向。這種結合有助于提升模型在特定任務中的表現,使其生成的結果更加符合預期要求。
舉個??
任務:基于以下描述生成一段產品評價,評價內容需要符合以下衡量標準:
– 準確性:評價的內容必須真實反映產品的特點,包括聲音、舒適性和電池續航。
– 完整性:評價應包括產品的具體優點和缺點,例如音質、佩戴舒適度和電池續航等。
– 流暢性:評價必須語法正確,易于理解,且語言通順。?
樣本
輸入:
這款耳機音質非常好,但是佩戴時間長了耳朵會有些不舒服。電池續航也不錯,能夠支持一整天的使用。
輸出:
-優點: 音質好,電池續航長
-缺點: 長時間佩戴后耳朵不舒服
-評價: 這款耳機的音質非常好,可以提供出色的聽覺享受。另外,電池續航也很優秀,能夠支持一整天的使用。不過,長時間佩戴可能會導致耳朵感到不適。
說明
1.文本分類任務:
示例:
輸入:“這場比賽真是令人激動!”
輸出:“體育”
2.情感分析任務:
示例:
任務:情感分析。
示例1:
輸入:句子 - “我非常喜歡這款手機,它的功能很強大?!?br />
輸出:情感 - “正面”
示例2:
輸入:句子 - “這次服務讓我很失望?!?br />
輸出:情感 - “負面”
示例3:
輸入:句子 - “這部電影不過不失。”
輸出:情感 - “中性”
3.翻譯任務:
4.文本摘要任務:
5.問答任務:
任務: 根據以下文本生成一個合理的問題。
輸入: "蘋果公司最新發布的iPhone 12備受關注,其出色的攝像頭和強大的處理能力給用戶留下了深刻印象。"
輸出: "蘋果公司最新發布的哪款手機備受關注?"
PROMPT應避免不必要的背景信息和復雜措辭,明確指令、內容精簡、直達要點,明確任務要求以便模型能夠迅速聚焦任務,準確生成內容。
舉個??
??我需要你幫我總結一下《1984》這本小說的主要內容和核心觀點。請先介紹一下這本書的背景信息,包括寫作年代和作者喬治·奧威爾的一些相關信息,然后再詳細描述一下小說的主要劇情,包括但不限于故事發生的地點、時間,以及主要人物的關系和他們之間的主要沖突。除此之外,請重點分析小說的主題思想,并結合具體的情節進行闡述,尤其是要注意揭示極權主義、監控社會對人性的影響。你需要確保細節充分且分析到位,可以盡可能詳盡一些。
說明:
??請總結《1984》的核心觀點,尤其是其反對極權主義和監控社會的主題思想。
說明:
避免歧義指的是通過明確和詳細描述語句或提示內容,以確保信息傳達清晰、準確,并且能夠被準確理解和執行,特別是對于語言模型和人類之間的溝通。
1. 多義詞
多義詞會帶來不必要的歧義,通過選擇單一意味明確的詞匯,能極大減少誤解的可能性。
– 例子:“請介紹下蘋果?!保ㄌO果可以是水果,也可以是公司。)
– 解決方法:提供具體細節或上下文,使詞義清晰。
– 優化后的描述:“請描述介紹下蘋果公司?!?/p>
2. 模糊短語
模糊短語或語句結構不明確容易導致理解偏差,需要通過詳細的描述來確保意義明確。
– 例子:“解釋這個問題。”(問題的具體內容不明確。)
– 解決方法:明確指出具體問題或提供背景信息。
– 優化后的描述:“解釋氣候變化對海洋生物的影響。”
3. 明確指代對象
使用代詞時容易出現指代不清的問題,通過明確指代對象來消除歧義。?
– 例子:“他認為這樣做不好?!保?#8221;他” 和 “這樣做”的具體內容不明確。)
– 解決方法:具體指出代詞指代的對象或動作。
– 優化后的描述:“約翰認為在雨天外出不好?!?
通過這些措施,可以有效減少語言中的歧義,使信息傳遞更加精準和有效,特別是在大語言模型的應用中,避免錯誤或不相關的響應。
分步驟是指將一個復雜任務分解成多個簡單且明確的步驟,每一個步驟都被清晰地表述。這種方法通過細化任務,減少復雜性,以確保每一環節都可以獨立理解和執行。例如,在撰寫一份研究報告時,將任務分解為選擇主題、進行文獻綜述、設計研究方法、數據收集與分析、撰寫報告等五個獨立的步驟,使得每一步都有明確的目標和方法。
在撰寫一份關于人工智能倫理問題的研究報告時: – 選擇主題 – 進行文獻綜述 – 設計研究方法 – 數據收集與分析 – 撰寫報告?
層次化信息是指通過分級和組織信息,引導用戶逐步深入理解和解決問題。在這種結構中,高層次的信息提供總體框架和邏輯順序,低層次的信息細化具體內容和操作細節。例如,在撰寫報告的過程中,可以先提供報告的總體架構(如引言、文獻綜述、研究方法、結果與討論、結論與建議),然后針對每一部分進一步細化,描述其具體構成和內容。這種方法幫助用戶從總體概念逐步過渡到具體操作,確保全面理解和準確執行。 – 總體架構:引言->文獻綜述->研究方法->結果與討論->結論與建議->參考文獻
– 細化說明:
通過結合分步驟和層次化指導的方法,不僅可以確保任務的每一步被準確執行,還能逐步引導用戶深入理解和解決問題。
舉個??
?? 請撰寫一份關于人工智能倫理問題的研究報告。
說明:
??請撰寫一份關于人工智能倫理問題的研究報告。為了確保報告的完整性和邏輯清晰,請按以下步驟和結構進行:
a.選擇主題
– 明確你研究的具體倫理問題,如“人工智能在醫療行業中的倫理問題”。
– 定義研究范圍,例如隱私保護和決策透明度。
b.進行文獻綜述
– 搜索并閱讀相關文獻(學術論文、書籍、白皮書)。
– 總結每個文獻的核心觀點,特別注意提取與自己主題相關的細節。
c.設計研究方法
– 確定你將采用的研究方法(定性、定量或混合)。
– 描述數據收集手段:問卷調查、采訪還是二手數據分析。
d.數據收集與分析
– 實施數據收集工作,確保方法一致。
– 使用合適的分析工具和技術進行數據分析。
e.撰寫報告
– **引言**:
– 描述研究背景、目的和重要性。
– 具體陳述研究問題和目標。
– **文獻綜述**:
– 按主題或分類總結前人研究成果和理論框架。
– **研究方法**:
– 描述研究的設計、數據收集和分析方法。
– **結果與討論**:
– 呈現分析結果,結合文獻討論其意義。
– **結論與建議**:
– 總結研究發現,提出建議,并指出研究局限性和未來研究方向。
– **參考文獻**:
– 列出所有引用的文獻。”
說明:
在設計 PROMPT 時,充分考慮可能出現的各種輸入情況和極端條件,從而確保模型在面對各種非理想輸入時仍能產生合理的輸出。包括但不限于正例和反例、數據稀缺、極端值、格式錯誤和沖突信息等情況。
使用場景分析:
舉個??
請提供地點和日期以查詢天氣情況。地點應包括城市或地區名稱,日期格式為 yyyy-mm-dd。
1. 如果地點和日期格式不正確,請輸出“輸入格式錯誤,請重新輸入?!?br />
2. 如果地點不存在或無法識別,請輸出“無法識別的地點,請檢查您輸入的地點名稱?!?br />
3. 如果日期是未來30天之后的時間,請輸出“日期超出允許范圍,請輸入最近一個月的日期?!?br />
4. 如果日期是過去的時間,請輸出“日期是過去的時間,目前只支持查詢未來的天氣。”
**注意**:
- 地點名稱可以使用城市名或地區名,例如“紐約”或“東京”。
- 日期必須符合 yyyy-mm-dd 格式。
- 所有輸出應友好、簡潔,便于用戶理解。
在設計 PROMPT 時,考慮到可能出現的常見錯誤,并設置相應的檢測和修正機制,以提高模型輸出的正確性和可靠性。包括自動檢測輸入錯誤、設置默認應對措施、請求用戶確認等。
使用場景分析:
舉個??
請提供郵件地址和回復內容,以發送自動回復。郵件地址應為有效的電子郵件地址格式,回復內容請盡量詳細。
1. 如果郵件地址格式錯誤,請輸出“郵件地址格式無效,請重新輸入正確的郵件地址?!?br />
2. 如果回復內容為空或過于簡短,請輸出“回復內容太短,請提供更詳細的信息?!?br />
3. 如果檢測到拼寫錯誤,請標記錯誤并建議修改,例如:“檢測到拼寫錯誤‘adn’,建議修改為‘and’?!?br />
4. 如果發送郵件服務器不可用,請輸出“郵件發送失敗,服務器暫時不可用,請稍后再試?!?br />
**注意**:
- 郵件地址必須包含 '@' 和有效的域名。
- 回復內容應至少包含10個字符。
- 提供拼寫錯誤的檢測和建議修改功能,增強用戶體驗。
考慮語言和文化敏感性以及遵循倫理規范對于設計有效、安全的 Prompts 至關重要。一個優秀的 PROMPT 是能夠有效引導用戶或 AI 系統生成符合預期、高質量響應的輸入語句,同時在設計和使用過程中體現出顯著的語言和文化敏感性,并嚴格遵循倫理規范。
1.語言和文化敏感性:
2.倫理考慮:
舉個??
示例 Prompt 1:
“請描述中國新年的習俗。”
語言和文化敏感性:
正面: 提供了一個特定文化背景下有意義的話題。
改進空間: 需要確保所有文化背景的人理解何為“中國新年”。
倫理考慮:
正面: 語言中性,沒有冒犯性內容。
改進空間: 若用戶分享個人經驗,需提醒其保護隱私。
示例 Prompt 2:
“你認為現代化進程對社會有何影響?”
語言和文化敏感性:
正面: 這是一個較為中性的特題,適合不同文化背景的人回答。
改進空間: 提問題時需避免文化中特定的政治經濟偏見。
倫理考慮:
正面: 語言中性,無冒犯。
改進空間: 若討論政治、經濟等敏感話題,需適當引導,避免引發爭議。
1.數據隱私:
2.合規性:
舉個??
??請你分析一下以下客戶的具體反饋信息,包括他們的姓名、地址、聯系方式以及他們的反饋內容,并根據這些信息給出改進建議:
1. 客戶A:姓名:張三,地址:北京市海淀區XX街道,電話:123-456-7890,反饋內容:產品質量不佳。
2. 客戶B:姓名:李四,地址:上海市浦東新區XX路,電話:098-765-4321,反饋內容:配送時間太長。
說明:
??請你分析以下脫敏處理后的客戶反饋數據,識別主要的問題,并根據這些信息提供改進建議:1. 客戶001:反饋內容:產品質量不佳。
2. 客戶002:反饋內容:配送時間太長。
說明:
約束是對提示內容施加的特定限制或要求,合理設置約束是提示設計中的關鍵步驟,有助于提高生成內容的質量、相關性和適用性。通過對不同類型的約束如內容、格式、風格等多方面的限制,可以使AI模型生成更加符合需求的結果,從而在多個應用場景下實現最佳效果。?
1.內容約束
2.格式約束
3.風格約束
4.長度約束
5.技術約束
6.時間約束
7.目標受眾約束
8.語境約束
最常見的??
例如你要求PROMPT返回固定的格式的內容,但是PROMPT返回了其他的信息,這時你可以加入約束:
只生成特定的數據或信息,不包含其他不相關內容。
再來一些??
類型: 綜合約束
內容約束: 描述機器學習相關內容。
格式約束: 包括引言、方法、結果、結論四個部分。
風格約束: 使用正式且專業的語氣。
長度約束: 字數不超過5000字。
類型: 內容約束、長度約束
內容約束: 需提供IoT的定義和五種實際應用。
長度約束: 不超過200字。
#### 任務描述
撰寫一篇關于氣候變化對全球農業生產影響的文章。
請撰寫一篇800字的文章,詳細討論氣候變化對全球農業生產影響,特別強調對水資源管理和農作物產量的影響。
#### 背景信息
近年來,全球氣候變化對農業生產造成了重大影響。例如,不規律的降水模式和極端天氣事件使得水資源管理變得復雜,農作物產量也受到影響。
#### 角色描述
研究員
#### 任務目標
分析氣候變化對全球農業生產的影響,特別是水資源管理和農作物產量。
#### 特定要求和條件
文章必須包括關于水資源管理和農作物產量的具體討論,字數不超過200字。
#### 目標受眾
農業科學家和政策制定者
#### 衡量標準
- **準確性**:文章內容必須真實反映氣候變化對農業生產的影響。
- **完整性**:需包含關于水資源管理和農作物產量的具體細節。
- **流暢性**:文章語法正確、語言通順。
- **相關性**:內容緊扣氣候變化影響農業生產的主題。
#### 分步驟指南
1. 介紹氣候變化對全球農業生產的總體影響。
2. 詳細討論氣候變化對水資源管理的影響。
3. 詳細討論氣候變化對農作物產量的影響。
#### 層次化信息
- **引言:** 介紹氣候變化及其對農業生產的總體影響。
- **水資源管理:** 詳細討論氣候變化如何影響水資源的獲取和管理。
- **農作物產量:** 詳細討論氣候變化如何影響農作物的生長和產量。
#### 考慮多種可能性和邊界條件
**示例1:**
**輸入:** 北美:水資源短缺,農作物種類改變。
**輸出:** 北美正在經歷嚴重的水資源短缺,導致一些傳統作物的種植受到影響。改良作物品種和新灌溉技術成為應對措施。
**示例2:**
**輸入:** 非洲:降水模式變化,影響農作物種植。
**輸出:** 非洲不規律的降水模式對小農場主造成重大影響。農作物產量波動,影響糧食安全。需要國際援助和新技術支持。
#### 自動檢測與修正
設置機制,如果未按要求描述水資源管理和農作物產量,則提示重新輸入相關信息。
**示例:**
**輸入:** 未提及水資源管理。
**輸出:** “請包括關于水資源管理的討論內容?!?br />
#### 語言和文化敏感性
確保內容對各個文化背景的讀者友好,避免使用技術術語影響理解。
**示例:**
- **營銷文章:** 使用通俗易懂的語言,避免技術術語。
#### 數據隱私和安全性
**示例:**
**輸入:** 客戶反饋內容,客戶ID已脫敏。
#### 任務約束
- **內容約束:** 描述氣候變化影響農業生產的應對策略。
- **格式約束:** 包括引言、主體和結論。
- **風格約束:** 使用正式語調。
- **長度約束:** 不超過800字。
在當今大規模語言模型(LLM)的世界里,Prompt 是引導神器,能讓 AI 聽話又聰明。通過這篇文章的深入,指引你徹底掌握設計強大 Prompt 的藝術,從而解鎖 AI 的全部潛力,并大幅減少 AI 的“幻覺”問題——生成與現實不符或莫名其妙的內容。?
回顧下:本文主要解決的問題
哈哈,你看懂了嗎?如果之前遇到以下問題,本文絕對是你的救命稻草:1. Prompt 模糊:AI 生成的內容總是跑偏,讓人抓狂。2. **細節不夠**:AI 對你的需求云里霧里,滿嘴跑火車。3. **結構太復雜**:AI 看你的指令累得“喘不過氣”。
4. **幻覺問題**:AI 不時冒出令人費解的內容,令人欲哭無淚。?
回顧下:怎么做,爽翻天!1. 明確目標和任務:讓 AI 知道你想要啥,選對方向。2. 充分上下文和背景:信息充足,不多不少,AI 掌握事實不胡思亂想。3. 設定衡量標準或考評維度:希冀結果,AI 就像你當年的滿分作業。4. 簡潔直接:少啰嗦,AI 秒懂。5. 避免歧義:不理解的詞匯休想擾亂 AI 的步伐。6. 分步驟和層次化指導:分清先后,步步為贏。7. 考慮多種可能性和邊界條件:極端情況,讓 AI 時刻清醒。8. 糾錯機制:一鍵修正,防微杜漸。9. 語言和文化敏感性:跨文化交流,AI 落落大方。10. 數據隱私和安全性:合規隱私,放心傳遞。
11. 約束設置:鎖定目標,輸出精準。?
準備好了嗎?憑借這些 Prompt 設計妙招,來一場與 AI 的暢快對話吧,將幻覺變成過去式,高效生成,樂享其成!
文章轉自微信公眾號@阿里云開發者