Prompt工程實踐

你在寫prompt時候,是不是總覺得大模型它不聽話。要么答非所問、要么一堆廢話。扒開思考過程仔細閱讀時而覺得它聰明絕頂,時而又覺得它愚蠢至極。明明已經對了怎么又推理到錯的地方去了,明明在提示詞中提醒過了不要這么思考它怎么就瞎想了。這也許就是每一個Prompt Engineer的困擾。怎么能讓模型按照要求去思考。長提示詞到底應該怎么寫,有沒有方法可以一次命中,找到那個終極的提示詞。 答案是否定的,一篇成功的長提示詞總是要經歷初始版本、調優、測試、再調優。不過這個過程中有規律可循,有方法可套。 以下就是被提示詞反復捶打,經歷無數痛苦經歷后總結的一套提示詞寫作方案,保你可以得到滿意的長提示詞,讓模型聽話。

1. Prompt格式

md或者json,推薦md格式。不僅僅是因為md格式比較好看,主要是為你md格式結構清晰,撰寫方便,而且拓展性很好。總結下來md是比較好的選擇。json格式雖然結構清晰,但是擴展性太差,寫的太長了容易把自己搞暈,慎重選擇。

2. Prompt模塊

不同模塊承擔不同的作用,復雜程度不同需要的模塊也不同。
角色&任務
角色輔助,講清楚任務。 此部份在prompt最前面,是最高指令,告訴模型它是誰,要干嘛。
角色:模型本身是具備各領域知識能力的,解決當前具體問題需要調用模型哪方面的能力,是通過角色定位完成的。 你是一名牙科醫生,你是一名數據分析師、你是一名川菜廚師等讓模型從一個雜學家變成專業領域的科學家。
任務:一句話講清楚模型要干嘛,數據分析師可以寫sql查詢數據、可以使用python分析數據、可以數據可視化,也可以寫分析報告。角色和任務約束模型調用某方面能力完成一個具體的事情。
核心原則
核心原則可以一開始就輸出,也可以在調優過程中生成。 可以理解為模型執行任務時要遵守的最高原則,綱領性質的要求。所以核心準則不能多,3條以內,超過3條很容易就失效了。比如在生成sql的prompt中,為了保證生成的sql可以查詢出數據,就得有以下核心原則:
在這里插入圖片描述
比如在做分詞提取時,我們的分詞傾向性也可以寫在核心原則內:
在這里插入圖片描述
一開始實現某個任務時,核心原則可能還沒有,在優化過程中有些問題在提示詞主體中總是解決不了,可以考慮在核心原則中優化。對于模型來源核心原則會被考慮的權重是比較高的,僅次于角色和任務。

3. 上下文處理

當前Context Engineering概念比Prompt Engineering更加流行,一句話概括就是讓上下文以恰當的格式出現在恰當的位置,知識庫可以包括:多論對話的長短記憶、知識庫rag結果、提示詞、工作流上游輸出等。能讓上下文發揮最大作用,就必須把上下文講清楚,放對位置。
上下文模塊組織原則:

  • 上下文內容比較長,最好放到最后,以免打斷提示詞
  • 上下文結構講清楚,合適和組織形式影響token數量也會影響性能
  • 上下文在任務中承擔的作用和價值

舉例:在生成sql環節,上下文輸入較多,具體組織形式如下:
在這里插入圖片描述
上下文輸入:一般放在提示詞結尾處:
在這里插入圖片描述

4. CoT(Chain of Thoughts)

CoT本來是提示詞的一種框架,是針對邏輯比較強的任務場景提出的。就是要提醒或者約束模型按照要求思考,以提升準確率
在復雜場景下,CoT,也可以理解為執行流程或者說思考過程,可以作為整個prompt一部份,模型在充分理解任務和上下文之后,再按照CoT步驟執行拆解任務,往往可以讓模型按照要求執行,聽話程度高出很多。我們的經驗是可以提升準確了20個percent。
示例如下:維度解析
在這里插入圖片描述
要求和限制
看是什么級別,可以寫在CoT模塊內,也可以單獨一個模塊,因地制宜即可。要求和限制一般是任務中需要特殊強調、特殊處理的邏輯,建議二者分開寫。舉例:
在這里插入圖片描述
特殊邏輯表達
在寫prompt中有些邏輯用文字特別難以準確表達,有時候準確表達出來需要上百字,對于模型準確理解就更難了。 這個時候可以考慮使用偽代碼來表達,模型理解起來既快又準。比如,收入月報每月定稿時間13日,如何根據當前時間取出月表的最新時間,并考核時間的格式。
在這里插入圖片描述

5. 輸出規范

模型太愛表達了,它往往不會只輸出你想要的內容,總是輸出很多自己的思考過程或者考慮的因素,以表達自己的聰明。又或者是不按照要求的格式輸出,對輸出的規范要求必不可少,一些平臺可以實現結構化輸出,不過結構化輸出的基礎是要模型能輸出結構清晰的結構。
輸出規范一般包含兩部分內容:
1 期望輸出的內容和結構
2 禁止輸出的內容和結構

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/96676.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/96676.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/96676.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

基于springboot的畢業旅游一站式定制系統

博主介紹:java高級開發,從事互聯網行業六年,熟悉各種主流語言,精通java、python、php、爬蟲、web開發,已經做了多年的設計程序開發,開發過上千套設計程序,沒有什么華麗的語言,只有實…

輸入1.8V~5.5V 輸出28V DCDC升壓芯片TLV61046A

今天來一款TI的升壓芯片TLV61046A。輸入電壓范圍1.8V~5.5V。最高可以輸出28V。開關電流980mA,那具體能輸出多大的電流就得看輸入輸出的電壓了。以上面的輸入3.6V輸出12V為例,效率是85%,那最高可以輸出的電流就差不多只有200mA左右。封裝也是非…

ubuntu22.04源碼安裝ffmpeg-4.4

# ubuntu22.04源碼安裝ffmpeg-4.4cd /tmpwget https://ffmpeg.org/releases/ffmpeg-4.4.6.tar.xztar -xvf ffmpeg-4.4.6.tar.xzcd ffmpeg-4.4.6apt updateapt install -y yasm pkg-config libx264-dev libx265-dev libvpx-dev libfdk-aac-dev libmp3lame-dev libopus-dev libav…

Pyhon中字符串常用的函數

一、字符串的格式化1.format()方法format()是 Python 中用于字符串格式化的方法,通過占位符(如 {})動態插入變量或表達式。name小明 age18 grade99.556245585 information"我是{},今年{}歲了,考試得分:{:.2f}&quo…

小迪安全v2023學習筆記(八十一講)—— 框架安全ThinkPHPLaravelStruts2SpringBootCVE復現

文章目錄前記服務攻防——第八十一天開發框架安全&SpringBoot&Struts2&Laravel&ThinkPHP&CVE復現開發框架 - 常見語言開發框架PHP - 框架安全-Thinkphp&LaravelLaravel漏洞介紹漏洞復現CVE-2021-3129ThinkPHP漏洞介紹漏洞復現CVE-2018-1002015QVD-2022…

從音頻到Token:構建原神角色語音識別模型的完整實踐

本文將帶你從零實現一個基于音頻Token化的角色語音識別系統,完整復現原神角色語音分類任務,包含數據處理、模型訓練和推理全流程。音頻波形通過滑動窗口轉換為數值Token序列的過程 一、為什么需要音頻Token化? 傳統音頻處理通常依賴MFCC、頻譜…

關于TCP和UDP兩種網絡協議的區別

1、tcp協議TCP (Transmission Control Protocol - 傳輸控制協議)TCP 的核心目標是為應用層提供一條可靠的、無差錯的、有序的字節流通道。主要特點:面向連接:在數據傳輸之前,必須通過“三次握手”建立穩定的連接,傳輸結束后通過“…

Alibaba Lens:阿里巴巴推出的 AI 圖像搜索瀏覽器擴展,助力B2B采購

本文轉載自:https://www.hello123.com/alibaba-lens ** 一、🌟 一鍵截圖,輕松找貨:采購神器 Alibaba Lens 詳解 Alibaba Lens 是阿里巴巴集團專為全球 B2B 采購商打造的一款智能瀏覽器插件(支持 Chrome 等主流瀏覽器…

WPF常見問題清單

1.Grid 內容自動換行及自適應行高 <DataGrid Grid.Row"1" FontSize"14" IsReadOnly"True" VerticalScrollBarVisibility"Auto" RowHeight"NaN" ItemsSource"{Binding List}" AutoGenerateColumns"False…

Linux驅動開發筆記(十)——中斷

視頻&#xff1a;第13.1講 Linux中斷實驗-Linux內核中斷框架簡介_嗶哩嗶哩_bilibili 文檔&#xff1a;《【正點原子】I.MX6U嵌入式Linux驅動開發指南V1.81.pdf》五十一章 1. 中斷API函數 每個中斷都有一個中斷號&#xff0c;通過中斷號即可區分不同的中斷。在Linux 內核中使用一…

ubuntu18.04安裝PCL1.14

簡化版說明 1. 安裝依賴庫&#xff1a; (1) boost1.84 &#xff08;https://www.boost.org/releases/1.84.0/&#xff09; tar vxf boost_xxx.tar.gz ./bootstrap.sh --prefix/usr/local/ ./b2 sudo ./b2 install (2) vtk9.1.0 &#xff08;https://vtk.org/files/releas…

python將pdf轉txt,并切割ai

python將pdf轉txt&#xff0c;并切割ai step1:pdf轉換 from PIL import Image import pytesseract import os import tempfile from pdf2image import convert_from_path# 設置 Tesseract 路徑 pytesseract.pytesseract.tesseract_cmd rC:\Users\wangrusheng\AppData\Local\Pr…

Ubuntu22.04更換阿里鏡像源,ubuntu更換源

在 Ubuntu 22.04 上更換為阿里云鏡像源可以加速軟件包的下載和更新&#xff0c;大幅提升系統更新速度。以下是更換阿里云鏡像源的步驟&#xff1a;1. 備份現有源列表在更換鏡像源之前&#xff0c;建議先備份當前的源配置文件&#xff1a;bashsudo cp /etc/apt/sources.list /et…

Git版本控制工具+基礎命令

Git是什么&#xff1f;Git是目前世界上最先進的分布式版本控制系統代碼托管平臺&#xff1a;Gitlab/Github/Gitee&#xff08;碼云&#xff09;什么是版本控制系統&#xff1f;指對軟件開發過程中各種程序代碼、配置文件及說明文檔等文件變更的管理。版本控制最主要的功能就是追…

圖解設計模式【3】

本系列共分為三篇文章&#xff0c;其中包含的設計模式如下表&#xff1a; 名稱設計模式圖解設計模式【1】Iterator、Adapter、Template Method、Factory Method、Singleton、Prototype、 Builder、Abstract Factory、 Bridge、 Strategy圖解設計模式【2】Composite、 Decorato…

(純新手教學)計算機視覺(opencv)實戰十四——模板與多個對象匹配

圖片旋轉、圖片鏡像相關教學&#xff1a; &#xff08;純新手教學&#xff09;計算機視覺&#xff08;opencv&#xff09;實戰十三——圖片旋轉、圖片鏡像 的幾種常用方法-CSDN博客https://blog.csdn.net/2302_78022640/article/details/151356600?spm1011.2415.3001.5331 模板…

Java面試核心知識點總結:Redis與MySQL高可用、高并發解決方案

在分布式系統開發中&#xff0c;高并發場景下的數據一致性、系統可用性以及性能優化始終是核心挑戰。本文基于Java技術棧&#xff0c;結合Redis與MySQL的工程實踐&#xff0c;系統梳理分布式系統設計的關鍵技術要點。一、Redis集群架構演進與高可用實踐1.1 主從哨兵模式部署方案…

R 語言科研繪圖第 72 期 --- mantel檢驗圖

在發表科研論文的過程中&#xff0c;科研繪圖是必不可少的&#xff0c;一張好看的圖形會是文章很大的加分項。 為了便于使用&#xff0c;本系列文章介紹的所有繪圖都已收錄到了 sciRplot 項目中&#xff0c;獲取方式&#xff1a; R 語言科研繪圖模板 --- sciRplothttps://mp.…

4.2-中間件之MySQL

4.2.1MySQL的基本知識SQL語句用于存取數據以及查詢、更新和管理關系數據庫系統。包括&#xff1a;DQL&#xff08;select&#xff09;、DML&#xff08;insert,update,delete&#xff09;、DDL&#xff08;create,alter,drop&#xff09;、DCL&#xff08;grant,revoke&#xf…

LVS + Keepalived 高可用負載均衡集群

目錄 一、核心組件與作用 1. LVS&#xff08;Linux Virtual Server&#xff09; 2. Keepalived 二、DR 模式下的 LVS Keepalived 工作原理 1. 整體架構 2. 數據包流向&#xff08;DR 模式&#xff09; 三、部署步驟&#xff08;DR 模式&#xff09; 3.1 環境規劃 3.2…