【AI】prompt engineering

prompt engineering ## prompt engineering ## prompt engineering ## prompt engineering

一、定義

Prompt 工程(Prompt Engineering)是指在使用語言模型(如 ChatGPT、文心一言等)等人工智能工具時,設計和優化輸入提示(prompts)的過程。這些輸入提示是用戶向模型提出的文本指令,用于引導模型生成滿足特定需求的高質量輸出,比如回答問題、生成文本內容(故事、詩歌、代碼等)。

二、 概念
樣本提示

樣本提示是指在prompt engineering過程中,通過向大模型定數量的示例,以便引導大模型生成特定的、高

質量的輸出。從提供樣本數量的角度,可以分為zero-shot和few-shot,此外我們基于實際使用,增加了一種

新的定義:full-shot,即全量樣本。

zero-shotfew-shotfull-shot
定義指在沒有提供任何示例的情況下,
利用經過大量數據訓練并調整指令
的大型語言模型(LLM)來執行任
務。
few-shot是指通過在提示中提供少量示
例來引導模型進行上下文學習,使大模
型捕獲示例的特征,輸出更符合預期的
結果。
是指通過枚舉所有可能性來制作樣
本,輸入大模型,讓大模型在樣本的
范圍內返回內容。
prompt舉例翻譯任務:
請將用戶給定的內容進行中文和
英文互譯
情感分析:
請分析用戶給定內容的情感,屬于正
面、負面或者中性,示例:
我今天感覺棒極了!–正面
這真是糟糕透頂的一天。–負面
今天是星期三。–中性
根據用戶偏好中每周運動天數安排
周計劃的運動日和休息日
{{exercise_days}為0時,每周運
動日應為0天,休息日為7天。
{{exercise_days}為1時,每周運
動日應為1天,休息日為6天。
{{exercise_days}為2時,每周運
動日應為2天,休息日為5天。
{{exercise_days}為3時,每周運
動日應為3天,休息日為4天。
{{exercise_days}為4時,每周運
動日應為4天,休息日為3天。
{{exercise_days}}為5時,每周運
動日應為5天,休息日為2天。
{{exercise_days}為6時,每周運
動日應為6天,休息日為1天。
{{exercise_days}為7時,每周運
動日應為7天,休息日為0天。
使用場景適用于模型已經在大量數據上進行
了訓練,能夠理解和執行某些任務
的場景。如:
判斷內容的情感傾向或者正面/負
適用于模型在沒有足夠數據的情況下,
難以準確執行任務的場景。如:
物體識別、特征識別
適用于可能性數量較小且確定的場
景,限定大模型自由發揮的空間,確
保生成結果不超出預設范圍。
思考方式
  1. Chain - of - Thought (COT)
    • 定義
      • 思維鏈(Chain - of - Thought)是一種在自然語言處理中用于提升語言模型推理能力的技術。它通過在提示(prompt)中加入中間推理步驟,引導語言模型像人類一樣逐步思考并解決問題,而不是直接給出答案。
    • 工作原理
      • 以一個數學文字題為例,如 “小明有 5 個蘋果,小紅的蘋果數是小明的 3 倍少 2 個,問小紅有幾個蘋果?”。傳統的 prompt 可能只是簡單地將問題輸入給語言模型,要求其輸出答案。而在 COT 中,prompt 會這樣設計:“首先,我們知道小明有 5 個蘋果。然后,計算小明蘋果數的 3 倍,即 5×3 = 15 個。接著,因為小紅的蘋果數是小明的 3 倍少 2 個,所以用 15 - 2 = 13 個。所以,小紅有 13 個蘋果。”
      • 通過這種逐步推理的提示,語言模型能夠更好地理解問題的解決邏輯,并且在遇到類似的推理問題時,按照這種思維鏈模式進行思考和回答。
    • 應用場景
      • 數學和邏輯推理問題:在解決復雜的數學方程式、幾何證明以及邏輯謎題等方面表現出色。例如,在證明幾何定理時,思維鏈可以引導模型從已知條件出發,逐步推導出結論。
      • 知識問答和文本理解:對于需要深度理解和推理的知識問答,如歷史事件的因果分析、科學原理的解釋等,COT 可以幫助模型提供更有條理的回答。例如,在回答 “工業革命對社會結構產生了什么深遠影響?” 時,模型可以通過思維鏈先闡述工業革命帶來的生產力變化,再說明這種變化如何導致社會階層的分化和重組等。
檢索增強生成(Retrieval-Augmented Generation, RAG)

檢索增強生成(Retrieval-Augmented Generation, RAG)是一種結合信息檢索和生成模型的技術,旨在提高生成式模型的準確性和信息豐富性。傳統的生成模型(如GPT-3)在生成文本時主要依賴于訓練數據中的知識,而檢索增強生成通過引入外部知識庫或文檔庫,能夠在生成過程中動態獲取相關信息,從而生成更為準確和上下文相關的內容。

RAG 的基本流程包括以下幾個步驟:

  1. 檢索階段:在生成文本之前,系統會根據輸入查詢從一個大型的外部文檔庫中檢索出與查詢相關的文檔或信息片段。這通常使用信息檢索技術,如向量檢索(如使用 ByteGraph)。
  2. 生成階段:將檢索到的相關文檔或信息片段與原始輸入一起傳遞給大語言模型,以生成最終的輸出文本。大語言模型會利用這些附加信息來提高生成內容的準確性和相關性。

這種方法的優點在于:

  • 增強知識覆蓋:通過訪問外部知識庫,生成模型可以利用最新的信息,而不局限于訓練數據。
  • 提高準確性:檢索到的相關信息可以幫助生成模型避免常識性錯誤或過時的信息。
  • 靈活性:可以根據不同的任務或領域,動態調整檢索的文檔庫,以適應不同的需求。

RAG 在問答系統、對話系統和內容生成等領域有廣泛的應用,尤其是在企業內部需要高準確性和實時信息的場景中表現出色。

工具(Tooling)

大語言模型最初主要用于來生成文本。為了增強其功能和實用性,現代大語言模型可以與外部工具(也稱為“函數(function)”或“API”)集成。這種集成使得模型能夠執行更復雜的任務,超越其原始的文本生成能力。

工具(Tools)通常是外部的API或函數,提供特定的功能或服務。大語言模型可以通過調用這些工具來獲取信息或執行特定任務。例如,模型可以調用一個天氣API來獲取實時天氣信息,或者調用一個計算器函數來執行復雜的數學運算。工具的集成與調用包括:

  • API調用:模型通過HTTP請求與外部API進行通信。API通常提供RESTful接口,模型可以發送請求并解析響應。
  • 插件系統:如 Coze 這樣的平臺為大語言模型提供插件系統和自動化流程系統,使得模型可以動態加載和使用不同的工具。
  • 函數調用:在某些實現中,模型可以直接調用預定義的函數,這些函數可以是本地的或遠程的。

大模型工具的使用,可以:

  • 擴展能力:通過工具集成,模型的能力可以大大擴展,能夠處理更廣泛的任務。
  • 實時性:工具可以提供實時數據和信息,使得模型的輸出更加準確和相關。
  • 專業性:通過調用專門的工具,模型可以在特定領域提供更專業和深入的服務。

典型的應用場景包括:

  • 數據查詢分析:數據查詢分析領域可以執行通過可以執行 SQL 的工具訪問企業內部的數據,調用飛書的 API 接口生成飛書文檔,并提醒飛書聯系人關注。
  • 客戶服務:在客戶服務中,模型可以調用CRM系統API來獲取客戶和訂單信息,從而提供個性化的服務。
  • 金融分析:在金融領域,模型可以調用市場數據API來分析股票趨勢和進行投資建議。
SerpApi: Google Search API

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

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

相關文章

Python 字典和集合(常見的映射方法)

本章內容的大綱如下: 常見的字典方法 如何處理查找不到的鍵 標準庫中 dict 類型的變種set 和 frozenset 類型 散列表的工作原理 散列表帶來的潛在影響(什么樣的數據類型可作為鍵、不可預知的 順序,等等) 常見的映射方法 映射類型…

對抗Prompt工程:構建AI安全護欄的攻防實踐

大語言模型的開放性與自然語言交互特性使其面臨前所未有的Prompt工程攻擊威脅。本文通過分析2021-2023年間157個真實越獄案例,揭示語義混淆、上下文劫持、多模態組合三重攻擊路徑的技術原理,提出融合動態意圖拓撲分析(DITA)、對抗…

STL c++ list——模擬實現

結點類的模擬實現 list是一個帶頭雙向循環鏈表 因需要實現一個節點類&#xff0c;其中包含哨兵位&#xff08;用來標識位置&#xff09;&#xff0c;節點信息&#xff08;val數據&#xff0c;prev后指針&#xff0c;next后指針&#xff09; template<class T> struct …

ORM、Mybatis和Hibernate、Mybatis使用教程、parameterType、resultType、級聯查詢案例、resultMap映射

DAY21.1 Java核心基礎 ORM Object Relationship Mapping 對象關系映射 面向對象的程序到—關系型數據庫的映射 比如java – MySQL的映射 ORM框架就是實現這個映射的框架 Hibernate、Mybatis、MybatisPlus、Spring Data JPA、Spring JDBC Spring Data JPA的底層就是Hiber…

【學習自用】配置文件中的配置項

server.port服務器端口&#xff0c;常被用于指定應用程序運行時所監聽的端口號spring.datasource.url用于配置數據源的數據庫連接URLspring.datasource.username用于指定連接數據庫的用戶名spring.datasource.password用于配置數據源時設置數據庫連接密碼的屬性mybatis.mapper-…

使用protobuf編譯提示無法打開包括文件: ‘absl/log/absl_log.h’: No such file or directory

問題原因 Protobuf 依賴 Abseil&#xff1a; Protobuf 3.20 版本開始依賴 Abseil&#xff0c;但你的系統未正確安裝或配置 Abseil。 頭文件路徑未包含&#xff1a; 編譯器找不到 absl/log/absl_log.h&#xff0c;可能是因為 Abseil 未正確安裝或未在項目中設置包含路徑。 …

Spring AI Alibaba 文檔檢索使用

一、文檔檢索 (Document Retriever)簡介 1、核心概念 文檔檢索&#xff08;DocumentRetriever&#xff09;是一種信息檢索技術&#xff0c;旨在從大量未結構化或半結構化文檔中快速找到與特定查詢相關的文檔或信息。文檔檢索通常以在線(online)方式運行。 DocumentRetriever通…

前端面試核心知識點整理:從 JavaScript 到 Vue 全解析

一、JavaScript 異步編程核心:Promise 與 async/await 1. Promise 深度解析 定義:Promise 是處理異步操作的對象,代表一個異步操作的最終狀態(成功 / 失敗)。三種狀態: pending(進行中):初始狀態,異步操作未完成。fulfilled(已成功):異步操作成功,調用 resolve …

音視頻(四)android編譯

前言 前面已經講了在windows上應用了&#xff0c;這章主要講述android上編譯 1&#xff1a;環境 git 如果失敗 直接跑到相應網站 手動下載 ubuntu22.* android ndk r21e download:https://developer.android.google.cn/ndk/downloads/index.html?hluk 為什么用這個&#xff0…

【kind管理腳本-3】腳本函數說明文檔 —— 便捷使用 kind 創建、刪除、管理集群腳本

下面是一份詳細的說明文檔&#xff0c;介紹該腳本的功能、用法及各部分的含義&#xff0c;供您參考和使用&#xff1a; Kind 集群管理腳本說明文檔 此腳本主要用于管理 Kind&#xff08;Kubernetes IN Docker&#xff09;集群&#xff0c;提供創建、刪除、導出 kubeconfig、加…

【計算機行業發展與重塑】

計算機行業正經歷前所未有的變革&#xff0c;AI技術的爆發式發展與產業升級的深度融合&#xff0c;正在重塑行業格局與就業市場。以下從行業趨勢、AI的核心價值、就業需求三個維度展開分析。 一、行業趨勢&#xff1a;AI驅動下的多極增長 AI成為核心引擎 生成式AI的突破&#…

(高頻SQL50題)1667. 修復表中的名字

問題 表&#xff1a; Users ------------------------- | Column Name | Type | ------------------------- | user_id | int | | name | varchar | ------------------------- user_id 是該表的主鍵(具有唯一值的列)。 該表包含用戶的 ID 和名字…

基于人工智能的醫學影像關聯分析:利用潛在空間幾何混雜因素校正法|文獻速遞-深度學習醫療AI最新文獻

Title 題目 AI-based association analysis for medical imaging using latent-spacegeometric confounder correction 基于人工智能的醫學影像關聯分析&#xff1a;利用潛在空間幾何混雜因素校正法 01 文獻速遞介紹 人工智能&#xff08;AI&#xff09;已成為各個領域的…

開源免費虛擬化軟件PVE功能介紹

Proxmox VE&#xff08;PVE&#xff09;提供了一個基于 Web UI&#xff08;管理界面&#xff09;的虛擬化管理平臺&#xff0c;用戶可以通過瀏覽器管理 虛擬機&#xff08;VM&#xff09;、容器&#xff08;LXC&#xff09;、存儲、網絡、備份、用戶權限等。 一、PVE Web 界面…

新球體育比分狀態監控

文章目錄 目標分析監控邏輯代碼目標分析 網頁監控地址:aHR0cHM6Ly9saXZlLnRpdGFuMDA3LmNvbS9pbmRleDJpbjEuYXNweD9pZD0x 監控邏輯 比分等數據主要是依賴JS加載得到,通過ajax后端進行渲染 代碼 # -*- coding: utf-8 -*-import warnings warnings.filterwarnings(ignore) f…

【lodash的omit函數詳解 - 從入門到精通】

lodash的omit函數詳解 - 從入門到精通 小白視角&#xff1a;什么是omit&#xff1f; omit在英文中意為"忽略"或"省略"。在編程中&#xff0c;它就是從一個對象中刪除不需要的屬性&#xff0c;返回一個新對象。 // 原始對象 const person {name: "…

軟考筆記9——數據庫技術基礎

第九章節——數據庫技術基礎 數據庫技術基礎 第九章節——數據庫技術基礎一、基本概念1. 數據庫與數據庫系統2. 數據庫的三級模式2.1 內模式2.2 概念模式2.3 外模式2.4 數據庫的兩級映射2.5 數據庫設計的基本步驟 二、數據模型1. 基本概念2. E-R模型2.1 實體2.2 聯系2.3 屬性 3…

Django分頁教程及示例

推薦超級課程: 本地離線DeepSeek AI方案部署實戰教程【完全版】Docker快速入門到精通Kubernetes入門到大師通關課AWS云服務快速入門實戰目錄 完整代碼示例:結論Django的分頁模塊允許你將大量數據分割成更小的塊(頁面)。這對于以可管理的方式顯示項目列表,如博客文章或產品…

int 與 Integer 的區別詳解

1. 本質區別 特性intInteger類型基本數據類型&#xff08;Primitive&#xff09;包裝類&#xff08;Wrapper Class&#xff09;存儲位置棧&#xff08;或作為對象成員在堆中&#xff09;堆&#xff08;對象實例&#xff09;默認值0null&#xff08;可能導致 NullPointerExcept…

mariadb使用docker compose方式安裝

問題 本地mac m1上面的mysql和mariadb突然不用使用了&#xff0c;重新安裝也不想&#xff0c;最近mac系統也更新了&#xff0c;brew也更新了&#xff0c;重新安裝mariadb還是不能正常使用&#xff0c;現在我打算使用docker來安裝本地的mariadb了。 默認配置文件my.cnf 從容器…