一、BROKE框架
1、要點:一個好的提示,應該包含角色、目標、輸出要求。
2、框架:用BROKE框架分析法來設計chatGPT的prom。
B_背景(background):說明背景,給ChatGPT更多的背景信息引導模型做出更貼合需求的回復;
R_角色(role):希望chatGPT扮演什么角色,如歷史老師、金融專家;
O_目標(objectives):希望達成什么目的,要清晰明確的告知ChatGPT。
K_關鍵結(jié)果(key result):想要什么樣的效果,比如按Markdown的格式輸出,生產(chǎn)表格等。
E_改進(evolve):我們給出的提示,并不是一次就成功,我們需要不斷的迭代,最終實現(xiàn)我們要達成的效果。
改進的三個層面:
改進輸入:從給出的答案看,問題出現(xiàn)那個層面,是背景描述不清楚,角色設定問題,還是目標不明確;
改進答案:從答案中直接指出ChatGPT生產(chǎn)的結(jié)果,存在那些問題,直接指出讓重新生成。
重新生成:因為chatGPT的工作原理,每次生成的答案會有差別,多生產(chǎn)幾次,也許會產(chǎn)生想要的結(jié)果。
以上三種方法重復使用,不斷優(yōu)化輸出,最終達成自己的目的。
二、結(jié)構(gòu)化的prompt
1、含義
l 以某種特定遵循的結(jié)構(gòu)對信息進行組織,方便有效理解信息。我們可以在這個結(jié)構(gòu)中清晰的描述想要什么,不想要什么。
2、語法
l 結(jié)構(gòu)支持一些常見語法:如Markdown、YAML、純文本。
3、結(jié)構(gòu)
l 結(jié)構(gòu)結(jié)構(gòu)中的信息,可以根據(jù)需要進行增減,通常用的模塊包括:
# Role :< name >:指定角色會讓 GPT 聚焦在對應領域進行信息輸出
## Profile author / vsion / desion : 迭代版本記錄
## Goals : 一句話描述 Prompt 目標,讓 GPT Attention 聚焦起來
## Constrains :描述限制條件,其實是在幫 GPT 進行剪枝,減少不必要分支的計算
## Skills :描述技能項,強化對應領域的信息權(quán)重
## Workflow : 重點中的重點,你希望 Prompt 按什么方式來對話和輸出
# Initialization : 冷啟動時的對白,也是一個強調(diào)需注意重點的機會
4、實例(Markdown格式)
## Role : [請?zhí)顚懩阆攵x的角色名稱]
## Background : [請描述角色的背景信息,例如其歷史、來源或特定的知識背景]
## Preferences : [請描述角色的偏好或特定風格,例如對某種設計或文化的偏好]
## Profile :
- author: 智慧趣AI
- version: 0.2
- language: 中文
- description: [請簡短描述該角色的主要功能,50 字以內(nèi)]
## Goals :
[請列出該角色的主要目標 1]
[請列出該角色的主要目標 2]
...
## Constrains :
[請列出該角色在互動中必須遵循的限制條件 1]
[請列出該角色在互動中必須遵循的限制條件 2]
...
## Skills :
[為了在限制條件下實現(xiàn)目標,該角色需要擁有的技能 1]
[為了在限制條件下實現(xiàn)目標,該角色需要擁有的技能 2]
...
## Examples :
[提供一個輸出示例 1,展示角色的可能回答或行為]
[提供一個輸出示例 2]
...
## OutputFormat :
[請描述該角色的工作流程的第一步]
[請描述該角色的工作流程的第二步]
...
## Initialization : 作為 [角色名稱], 擁有 [列舉技能], 嚴格遵守 [列舉限制條件], 使用默認 [選擇語言] 與用戶對話,友好的歡迎用戶。然后介紹自己,并提示用戶輸入.
聯(lián)系客服