很明顯用錯誤的方式,一直問絕對不會得到多好的答案
但只要掌握以下基本原則,就會讓你跟 AI 聊天的過程更順暢
一門透過設計和最佳化提示詞 (prompt) 來引導大型語言模型 (LLM) 生成所需回應的「藝術與科學」
就像給某人的一張便利貼,如何在有限的文字內,有效的傳達訊息
零次提示是指在不提供任何範例的情況下,直接給予模型指令並要求其完成任務。模型必須依賴其自身在訓練過程中學到的知識和泛化能力來回答
少次提示是指在提示詞中提供一個或多個「輸入-輸出」的範例,以引導模型理解任務的模式和風格,然後再給出需要處理的實際輸入
思維鍊是一種進階的提示技巧,其核心理念是「引導模型在回答最終問題之前,先列出其思考過程或解決步驟」。這能讓模型將複雜問題分解成多個邏輯步驟,類似人類的思考方式
透過在提示詞中加入 “讓我們一步一步思考” (Let's think step by step) 或類似的提示,可以強制模型生成中間步驟。這樣不僅能提高最終答案的準確性,還能讓使用者更容易理解模型的決策過程,方便除錯
總結以下文章
、將這段文字分類為正面或負面
假設你是一名行銷專家,撰寫一份報告
這篇文章的全文是:...
請以 JSON 格式返回結果
、請使用繁體中文,語氣應保持專業和嚴謹
讓我們一步一步思考
等提示,讓模型分解問題你是一位安卓APP資深工程師
),以獲得更專業的回答以 Gemini 為例
將以下內容存成一個檔案(gemini.md),需要嚴格遵守以下規則。
#任務:
建立 chat agent api
#相關資訊:
chat requst:
{
"query": usr_msg
}
chat agent response:
{
"text": chat_response
}
#流程:
範例流程...
*需等待api打完,使用者才能講下一句話(幫我想怎麼樣比較順)
#最佳修改步驟
1.因為我原本就有專案,所以先看過所有你需要的相關程式碼。
2.看完程式碼後,編寫程式流程,不要輸出程式碼。
3.跟我談論流程直到我滿意整個計畫。
4.開始輸出程式碼,一次輸出一個檔案,直到我說下一步。
5.每次我改完後,你要等我上傳程式碼,並且檢查。
#注意事項
程式碼開始輸出後,要使用檔案+文字標註,[新增]、[刪除]、[修改]。
程式碼是kotlin還是java要注意清楚。
有任何問題都可以詢問我的意見。
採用MVP架構。
採用最小變動原則。
每次完成一個必要的動作就要有log。
有很多功能我原本就有,請善用他,不要重複建立功能。
如果了解以上規則,輸出這個檔案,並說"以了解"。
可以看到,我區分了好幾個區塊:
“任務” : 一次最好給予一個任務就好,這樣會有最好的效果,而且出事的話可以讓受災範圍最小
“相關資訊”: 這是”Few-shot” 的概念,比如接 API 就可以給 request 跟 respone ,AI 特別會讀 json (之後篇章介紹
“流程”: 盡量把想要的細節描述清楚,不確定的可以備註給 AI 跟他一起討論怎麼樣比較好
“最佳修改步驟”: 這是類似 “思維鍊” 的概念,讓 AI 可以跟著你熟悉的步調寫程式
“注意事項”: 補充重點,不用條列式是為了不要誤導 AI 有要遵守的優先度,而是要全部遵守
他是一個重要到可以直接聘一個工程師的程度,甚至有些工作會直接要求你要會。
圖片來自: https://programmerhumor.io/programming-memes/promptengineer/
一段提示词 让Gemini CLI变成自动化Agent! 提示词工程 https://www.youtube.com/watch?v=YCswP_xmxu0