成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

深入淺析,一步步用GPT打造你的聊天機器人

人工智能
本文中展示了如何結合使用GPT和LlamaIndex來構建一個文檔問答聊天機器人。雖然GPT(和其他LLM)本身就很強大,但如果把它與其他工具、數據或流程結合起來,它的力量也會被大大增強。

與ChatGPT聊天很有趣,而且信息量很大 —— 與它閑聊可以探索一些新的想法。但這些都是比較隨意的用例,新奇感很快就會減弱,特別是當人意識到它能產生幻覺的時候。

如何以更高效的方式使用ChatGPT呢?在OpenAI發布GPT3.5系列API后,可以做的事情遠不止是閑聊。QA(問答)是企業和個人使用的一個非常有效的用例 —— 用自然語言向機器人詢問自己的文件/數據,它可以通過從文件中檢索信息并生成回應來快速回答。可以把它用于客戶支持、綜合用戶研究、個人知識管理等等。

向機器人詢問與文件相關的問題。使用穩定擴散法生成的圖像。

本文將探討如何根據自己的數據建立問答聊天機器人,包括為什么有些方法行不通,以及如何利用llama-index和GPT API以高效的方式建立一個文檔問答聊天機器人的步驟指南。

(如果只想知道如何建立問答聊天機器人,可以直接跳到“逐步建立文檔問答聊天機器人”部分)

探索不同的方法

當ChatGPT問世時,可以想到把它作為自己工作的一個助手,從而節省自己的時間和精力等。

首先想到的是用自己的數據對GPT模型進行微調來實現這個目標。但是,微調需要花費相當多的錢,而且需要一個有實例的大數據集。也不可能在文件有變化時每次都進行微調。更為關鍵的一點是,微調根本不可能讓模型“知道”文檔中的所有信息,而是要教給模型一種新的技能。因此,對于(多)文檔質量保證來說,微調并不是一個好辦法。

第二個方法是通過在提示中提供上下文來進行提示工程。例如,可以在實際問題之前附加原始文檔內容,而不是直接問問題。但是GPT模型的注意力是有限的 —— 它只能接受提示中的幾千字(大約4000個標記或3000字)。只要有成千上萬的客戶反饋郵件和數百個產品文檔,就不可能給它提示中的所有背景。如果向API傳遞一個長的上下文,也是很昂貴的,因為定價是基于使用的代幣的數量。

I will ask you questions based on the following context:
— Start of Context —

YOUR DOCUMENT CONTENT

— End of Context—
My question is: “What features do users want to see in the app?”

由于提示符對輸入標記的數量有限制,想出了這樣一個主意來解決問題:首先使用一種算法來搜索文檔并挑選出相關的摘錄,然后只將這些相關的語境與問題一起傳遞給GPT模型。在過程中需要使用一個簡單、便捷的gpt-index?(現在改名為LlamaIndex)的庫。

圖片

從文件中提取相關部分,然后將其反饋給提示。

在下一節中,將給出一個使用LlamaIndex和GPT在自己的數據上建立一個問答聊天機器人的分步教程。

逐步建立文檔問答聊天機器人

在這一節中,將用LlamaIndex和GPT(text-davinci-003)在現有文檔的基礎上建立一個問答聊天機器人,這樣就可以用自然語言提出關于文檔的問題,并從聊天機器人那里得到答案。

前提條件

在開始本教程之前,需要做一些準備:

  • OpenAI API密鑰,可以在https://platform.openai.com/account/api-keys找到。
  • 一個文件數據庫。LlamaIndex支持許多不同的數據源,如Notion、Google Docs、Asana等。在本文中將只使用一個簡單的文本文件進行演示。
  • 一個本地的Python環境或一個在線的Google Colab筆記本。

工作流程

工作流程很簡單,只需要幾個步驟:

  • 1.用LlamaIndex為你的文檔數據建立一個索引。
  • 2.用自然語言查詢該索引。
  • 3.LlamaIndex將檢索相關部分并將其傳遞給GPT提示。
  • 4.向GPT詢問相關的上下文并構建一個回應。

LlamaIndex所做的是將原始文檔數據轉換成一個矢量的索引,這對查詢來說是非常有效的。它將使用這個索引,根據查詢和數據的相似性,找到最相關的部分。然后,它將把檢索到的內容插入到它將發送給GPT的提示中,這樣GPT就有了回答問題的背景。

設置

首先需要安裝庫。只需在終端或谷歌Colab筆記本上運行以下命令。這些命令將同時安裝LlamaIndex和OpenAI。

!pip install llama-index
!pip install openai

接下來將在python中導入這些庫,并在一個新的.py文件中設置OpenAI API密鑰。

# 導入必要的庫
from llama_index import GPTSimpleVectorIndex, Document, SimpleDirectoryReader
import os

os.environ['OPENAI_API_KEY'] = 'sk-YOUR-API-KEY'

構建索引并保存

在安裝了所需的庫并將其導入后,將需要構建一個文檔的索引。

為了加載文檔,可以使用LllamaIndex?提供的SimpleDirectoryReader方法,或者可以從字符串中加載它。

# 從一個目錄中加載
documents = SimpleDirectoryReader('your_directory').load_data()

# 從字符串中加載,假設將數據保存為字符串text1,text2,...
text_list = [text1, text2, ...]
documents = [Document(t) for t in text_list]

LlamaIndex還提供各種數據連接器,包括Notion、Asana、Google Drive、Obsidian等。可以在https://llamahub.ai/找到可用的數據連接器。

加載完文檔后,就可以用以下方法簡單地構建索引了:

# 構建一個簡單的向量索引
index = GPTSimpleVectorIndex(documents)

如果想保存索引并加載它以便將來使用,可以使用以下方法:

# 將索引保存在`index.json`文件中
index.save_to_disk('index.json')
# 從保存的`index.json`文件中加載索引
index = GPTSimpleVectorIndex.load_from_disk('index.json')

查詢索引并獲得響應

查詢索引很簡單:

# 查詢索引
response = index.query("What features do users want to see in the app?")
print(response)

圖片

一個回應的例子。

然后就可以得到答案了。在幕后,LlamaIndex將接收提示,在索引中搜索相關塊,并將提示和相關塊傳遞給GPT。

一些高級用法的說明

上面的步驟只是展示了使用LlamaIndex和GPT回答問題的一個非常簡單的入門用法。但可以做得比這更多。事實上,可以配置LlamaIndex來使用不同的大型語言模型(LLM),為不同的任務使用不同類型的索引,用一個新的索引來更新現有的索引,等等。如果有興趣,可以在https://gpt-index.readthedocs.io/en/latest/index.html,閱讀他們的文檔。

總結

本文中展示了如何結合使用GPT和LlamaIndex來構建一個文檔問答聊天機器人。雖然GPT(和其他LLM)本身就很強大,但如果把它與其他工具、數據或流程結合起來,它的力量也會被大大增強。

責任編輯:武曉燕 來源: Python學研大本營
相關推薦

2017-01-19 21:08:33

iOS路由構建

2024-08-06 09:29:54

程序機器指令字符串

2019-03-05 14:09:27

Docker存儲容器

2019-07-09 15:23:22

Docker存儲驅動

2018-12-24 10:04:06

Docker存儲驅動

2009-12-17 16:36:23

無線路由設置密碼

2010-03-04 16:28:17

Android核心代碼

2016-11-02 18:54:01

javascript

2017-12-25 11:50:57

LinuxArch Linux

2024-08-30 08:30:29

CPU操作系統寄存器

2024-09-30 09:56:59

2011-05-10 10:28:55

2018-04-23 14:23:12

2018-06-11 15:30:12

2018-07-13 15:36:52

2020-12-24 11:19:55

JavaMapHashMap

2019-04-01 10:15:02

2023-09-14 12:45:00

接口圖片

2011-09-05 12:36:08

路由器限速linux路由器

2013-09-13 13:25:16

html5拖拽
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 粉嫩av| 免费一区二区 | 黄色免费三级 | 一区二区三区av夏目彩春 | 亚洲成人高清 | 午夜欧美一区二区三区在线播放 | 在线播放国产视频 | 日韩av免费在线电影 | 亚洲乱码一区二区三区在线观看 | 青青草原精品99久久精品66 | 久久久久国产一区二区三区 | 亚洲精品福利在线 | 国产精品日韩欧美一区二区三区 | 久久福利 | 日韩看片 | 99精品一区二区 | 91一区二区| 午夜免费看视频 | 美女福利视频网站 | 成人国产精品入口免费视频 | 精品av | 亚洲天堂一区 | 天堂精品| 国产精品网页 | 亚洲综合色丁香婷婷六月图片 | 久久综合九九 | 日韩一级欧美一级 | 天天综合网天天综合 | 精品入口麻豆88视频 | 围产精品久久久久久久 | 精品免费国产一区二区三区四区 | 天天天天操 | 亚洲一区有码 | 日韩专区中文字幕 | 7799精品视频天天看 | 一色桃子av一区二区 | 日本精品视频 | 97久久精品午夜一区二区 | 日韩国产一区二区三区 | 国产精品视频一二三区 | 国产在线精品一区二区三区 |