精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

大模型之初識RAG 原創

發布于 2024-12-19 09:16
瀏覽
0收藏

前言

通過前幾章的學習,我們已經掌握連接一個第三方大模型,使用LangChain與大模型建立交互,并且通過Prompt進行提問,得到相應的回答。本章我們將開始了解RAG(檢索增強生成)技術,了解RAG的技術原理以及基本使用方法。

RAG概述

產生背景

隨著信息量的急劇增加,單純依靠模型內置的知識進行生成已無法滿足需求,比如:

  • 大模型的公共知識都是陳舊的!
  • 部分私有的知識大模型沒有學習過.....

??RAG??(檢索增強生成)技術的出現是為了應對傳統生成模型在處理大規模知識時的局限性,其結合了信息檢索與生成模型的優勢,能夠在生成過程中動態地從外部知識庫中檢索相關信息,從而提高生成內容的準確性和豐富性。

私有知識注入方式有兩種:

  • 方法一:(學習式)知識注入:模型微調(fine-tuning)
  • 方法二:(外掛式)知識注入:RAG system

技術原理

??RAG??? 的核心思想是:將??信息檢索???與??文本生成??結合起來。

RAG的本質

RAG(Retrieval Augmented Generation),其大量借鑒了推薦系統的一些基本思想。

  • R:Retrieval 檢索
  • A:Augmentated 增強
  • G:Generation 生成

RAG的使用工作流程

大模型之初識RAG-AI.x社區

  1. 用戶提出問題:用戶輸入查詢(??query??),例如一個問題或請求。
  2. 問題交給檢索器:系統將用戶的查詢發送給檢索模塊(??retriever??)。
  3. 檢索相關上下文:檢索器根據向量化比對,從知識庫中找到與查詢相關的上下文信息(??context??)。
  4. 聚合查詢和上下文:將用戶的查詢與檢索到的上下文信息結合,通過提示(??prompt??)進行聚合,形成新的輸入:??query?? +??context??。
  5. 交給大模型處理:將聚合后的結果輸入到大型語言模型(??LLM??)。
  6. 生成答案:大模型參考上下文信息,生成對用戶查詢的回答(??answer??)。

輸入/輸出概述

  • 輸入:??query??
  • 處理:??query?? -->??retriever?? -->??context??
  • 輸出:??query?? +??context?? -->??LLM?? -->??answer??

RAG的知識庫構建流程

大模型之初識RAG-AI.x社區

  1. LOAD:整理知識語料
  • 輸入格式:支持多種格式,包括 PDF、Word、文本文件、CSV、PPT、SQL 等。
  • 文本抽取:從輸入文件中抽取文本內容,去除所有圖表、音頻、視頻等多媒體元素,確保只保留純文本。
  1. SPLIT:文本分段
  • 分段邏輯:將文本劃分為語義相對獨立的段落,以便于后續處理。
  • 向量化要求:確保每個段落符合向量化模型的實際需求,避免過長或過短的文本段落。
  1. EMBED:向量化
  • 向量化模型:使用特定的向量化模型(如bge-large-zh-v1.5 或 BAAI)將文本段落轉換為向量表示。
  • 維度:生成的向量通常為1024 維度,便于后續的相似度計算和檢索。
  1. .STORE: 存儲至向量數據庫
  • 向量庫:Chroma 是一個開源的向量數據庫,支持向量檢索和向量相似度計算。
  • 數據庫架構:采用CS(Client-Server)架構,以支持高效的檢索和查詢,一般需要搭建集群。

所需物料概述

  • 向量數據庫
  • 向量化模型
  • 大語言模型
  • 大量知識語料

使用方法

安裝依賴

pip install bs4
pip install langchain_chroma

關于Langchain其他組件的安裝(如:langchain_community等),非本章內容重點,所以不做贅述。

具體使用

第一步:連接大模型

from utils import get_ernie_models
from utils import get_qwen_models

llm, chat, embed = get_qwen_models()

第二步:導入必要的庫和包

# 解析 Web 頁面的庫(用面向對象的方式來封裝 HTML 頁面)
import bs4
# hub 生態中心
from langchain import hub
# 引入 Chroma 向量庫
from langchain_chroma importChroma
# 在線加載網頁
from langchain_community.document_loaders importWebBaseLoader
# 輸出解析器
from langchain_core.output_parsers importStrOutputParser
# 可執行的占位符
from langchain_core.runnables importRunnablePassthrough
# 文檔切分器
from langchain_text_splitters import RecursiveCharacterTextSplitter

第三步:選擇爬取的頁面并加載數據

loader = WebBaseLoader(
    web_paths=("https://17aitech.com/?p=14624",),
    bs_kwargs=dict(
        parse_notallow=bs4.SoupStrainer(
            class_=("ast-breadcrumbs", "site-content", "md-post-toc")
        )
    ),
)

# 加載數據
docs = loader.load()

補充說明:

  • LangChain 官網提供的示例代碼是一篇英文博客,查看效果不太直觀,本例中的博客地址換成了我的博客文章。
  • 上述class的標簽,可以通過瀏覽器的開發者工具找到,例如:


大模型之初識RAG-AI.x社區

第四步:文本分割

# 遞歸式 字符級 文本 切分器
"""
    chunk_size: 建議段落大小
"""
text_splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=200)
splits = text_splitter.split_documents(docs)
splits

運行效果:

大模型之初識RAG-AI.x社區

第五步:向量化并入庫

batch_size = 6  # 每次處理的樣本數量
vectorstore = Chroma(embedding_functinotallow=embed)  # 初始化 Chroma 向量數據庫并提供嵌入函數

# 分批入庫
for i in range(0, len(splits), batch_size):
    batch = splits[i:i + batch_size]  # 獲取當前批次的樣本
    vectorstore.add_documents(documents=batch)  # 入庫

由于阿里提供的embed接口,一次只能處理6個樣本,所以需要分批入庫。

第六步:RAG系統搭建

# 把向量操作封裝為一個基本檢索器
retriever = vectorstore.as_retriever()

第七步:構造RAG系統的Prompt(核心部分)

from langchain_core.prompts import ChatPromptTemplate

# RAG系統經典的 Prompt (A 增強的過程)
prompt = ChatPromptTemplate.from_messages([
  ("human", """You are an assistant for question-answering tasks. Use the following pieces 
  of retrieved context to answer the question. 
  If you don't know the answer, just say that you don't know. 
  Use three sentences maximum and keep the answer concise.
  Question: {question} 
  Context: {context} 
  Answer:""")
])

第八步:構建RAG鏈

def format_docs(docs):
"""
    將檢索到的文檔列表格式化為一個大字符串。

    參數:
    docs (list): 包含文檔對象的列表,每個文檔對象應具有 `page_content` 屬性。

    返回:
    str: 一個由文檔內容組成的大字符串,文檔之間用兩個換行符分隔。
    """
return"\n\n".join(doc.page_content for doc in docs)

# RAG 鏈
rag_chain =(
{"context": retriever | format_docs,
"question":RunnablePassthrough()}
| prompt
| chat
|StrOutputParser()
)

第九步:提問問題,測試RAG系統

rag_chain.invoke(input="Prompt初步了解文章中,作者示例中的Langserve接口的IP地址是多少?")

運行結果:

大模型之初識RAG-AI.x社區

通過查看文章【課程總結】day25:大模型應用開發之Prompt初步了解中測試API接口章節,其中我部署到云服務器的IP地址的確為上述地址。

內容小結

  • RAG系統是一種基于大語言模型的問答系統,通過向量檢索和向量化技術,實現對海量知識資源的高效檢索和問答。
  • RAG的知識庫構建流程為:整理知識語料(??LOAD??)-> 文本分段(??SPLIT??)-> 向量化(??EMBED??) -> 存儲至向量數據庫(??STORE??)。
  • RAG的使用流程為:用戶提出問題(??query??) -> 問題交給檢索器(??retriever??)-> 檢索相關上下文(??context??) -> 聚合查詢和上下文(??query?? +??context??) -> 交給大模型處理(??LLM??) -> 生成答案(??answer??)
  • RAG的核心部分:即通過構建一個??Prompt??,該??Prompt?? 包含??{question}?? 用戶提出的問題 和??{context}?? 向量庫中檢索到的上下文,然后交給大模型,讓大模型根據上下文給出??Answer??。

?

本文轉載自公眾號一起AI技術 作者:熱情的Dongming

原文鏈接:??https://mp.weixin.qq.com/s/FHD-8levDzO0n7R3VA1-4A??


?著作權歸作者所有,如需轉載,請注明出處,否則將追究法律責任
收藏
回復
舉報
回復
相關推薦
久久久久久久久毛片| 丰满人妻中伦妇伦精品app| 91av久久久| 午夜日韩在线| 精品亚洲一区二区| 精品亚洲一区二区三区四区| 中文国产字幕在线观看| 99麻豆久久久国产精品免费优播| 热久久免费国产视频| 色婷婷国产精品免| 一本色道69色精品综合久久| 五月婷婷久久丁香| 亚洲国产日韩欧美| 蜜桃视频污在线观看| 日本网站在线观看一区二区三区| 久久av.com| 黄色aaa视频| 亚洲成人偷拍| 欧美午夜在线观看| 乱人伦xxxx国语对白| 欧美成人三区| xfplay精品久久| 97久久夜色精品国产九色 | 999精品视频在线| 亚洲精品一线| 国产精品全国免费观看高清| 国产欧美在线一区二区| 国产露脸国语对白在线| 国产免费成人| 97国产在线视频| 国产午夜手机精彩视频| 欧美军人男男激情gay| 亚洲电影在线观看| japan高清日本乱xxxxx| 成人高清一区| 在线精品观看国产| 免费成人在线视频网站| 欧美videos另类精品| 国产精品久久久久aaaa樱花| 欧美一区二区福利| 水莓100在线视频| eeuss国产一区二区三区| 95av在线视频| 99国产精品欲| 国精产品一区一区三区mba视频| 国产精品黄色影片导航在线观看| 久久久精品福利| 国产情侣一区| 992tv成人免费视频| 九九视频免费看| 欧美在线日韩| 久久成人18免费网站| 呻吟揉丰满对白91乃国产区| 国产传媒欧美日韩成人精品大片| 日韩国产欧美精品一区二区三区| 亚洲色偷偷色噜噜狠狠99网| 第一区第二区在线| 亚洲国产精品热久久| 日本一卡二卡在线| 欧美日韩一本| 亚洲精品一区二三区不卡| 完美搭档在线观看| 欧美一区自拍| 亚洲丝袜av一区| 91成人精品一区二区| 日韩精品永久网址| 久久精品这里热有精品| 日日骚一区二区三区| 国产精品豆花视频| 久久久午夜视频| 国产午夜性春猛交ⅹxxx| 亚久久调教视频| 国产精品成人v| 97久久人国产精品婷婷| 国产尤物一区二区| 国产在线一区二区三区四区| 日韩午夜影院| 中文字幕一区二区在线播放| 蜜臀av.com| av中文在线资源库| 色噜噜狠狠成人中文综合| xx欧美撒尿嘘撒尿xx| 欧美一级片网址| 亚洲精品999| 亚洲毛片亚洲毛片亚洲毛片| 欧美福利在线| 欧美一区第一页| 一道本在线视频| 福利一区福利二区| 欧美日韩三区四区| 国产丝袜在线| 日韩欧美视频一区二区三区| 中文字幕免费高清在线| 69精品国产久热在线观看| 亚洲欧美国产精品va在线观看| 俄罗斯毛片基地| 激情综合在线| 国产精品无码专区在线观看| 99久久精品日本一区二区免费| 99久久精品国产网站| 午夜精品一区二区在线观看| 青春草视频在线| 欧美最猛黑人xxxxx猛交| 男女视频在线观看网站| 亚洲动漫在线观看| 欧美精品在线免费| 国产无遮挡又黄又爽又色视频| 国产精品66部| 日韩欧美视频一区二区三区四区| 秋霞在线午夜| 欧美日韩一区二区三区在线| 精品人妻一区二区免费视频| 天天天综合网| 国产精国产精品| 天天综合天天色| 亚洲美女屁股眼交| 冲田杏梨av在线| 国产精品久久久久久久久久白浆| 精品国产视频在线| 久久精品五月天| 99精品欧美一区二区蜜桃免费| 亚洲最新免费视频| 日韩av超清在线观看| 亚洲国产中文字幕久久网| 在线看的片片片免费| 日韩精品成人一区二区在线| 久久99国产精品| 97在线视频免费观看完整版| 欧美一区二区福利在线| 亚洲ⅴ国产v天堂a无码二区| 一区二区动漫| 国产精品入口免费| 神马午夜伦理不卡| 欧美一区二区在线播放| 极品尤物一区二区| 日本怡春院一区二区| 欧美激情视频一区二区三区| 精品人人视频| 亚洲精品久久7777777| 激情小说中文字幕| 国产成人在线影院| 毛片在线视频观看| 麻豆精品久久| 欧美丰满少妇xxxx| wwwxxxx国产| 亚洲成人久久影院| 欧美极品jizzhd欧美仙踪林| 亚洲网站在线| 国产精品自拍首页| xxx.xxx欧美| 亚洲第一av在线| 日韩欧美亚洲视频| av不卡免费电影| 黄www在线观看| 你懂的一区二区三区| 国产成人精品在线视频| 国内在线免费高清视频| 日本道在线观看一区二区| 色欲AV无码精品一区二区久久| 久久精品午夜| 亚洲成人精品电影在线观看| 一呦二呦三呦精品国产| 色妞色视频一区二区三区四区| 怡春院在线视频| 亚洲欧美韩国综合色| 丰满人妻一区二区三区53视频| 欧美日韩一区二区三区四区在线观看| 官网99热精品| 蜜桃视频m3u8在线观看| 亚洲嫩模很污视频| 亚洲天堂中文字幕在线| 亚洲美女少妇撒尿| 免费黄色三级网站| 日本亚洲一区二区| 91精品一区二区三区四区| 一区三区自拍| 青草成人免费视频| 日本中文字幕电影在线免费观看 | 亚洲视频在线观看一区二区三区| 教室别恋欧美无删减版| 成人黄色在线免费| segui88久久综合| 国产亚洲欧美视频| 国产后入清纯学生妹| 亚洲成av人片| 国产午夜精品福利视频| 国产老妇另类xxxxx| www.com毛片| 羞羞色午夜精品一区二区三区| 99视频在线播放| 三上悠亚国产精品一区二区三区| 日韩中文字幕亚洲| 日本精品999| 欧美日韩在线一区二区| 国产一级片免费看| 中文无字幕一区二区三区| 天堂va欧美va亚洲va老司机| 久久高清免费观看| 激情视频小说图片| 欧美一级本道电影免费专区| www日韩av| 黄色成人小视频| 777777777亚洲妇女| 欧美成年黄网站色视频| 日韩精品黄色网| 国产高潮在线观看| 91国偷自产一区二区三区成为亚洲经典 | 久久久久久一二三区| 日韩精品视频网址| 日韩精品午夜视频| 亚洲 自拍 另类小说综合图区| 色综合咪咪久久网| 精品久久久久久一区二区里番| 99国内精品久久久久| 热久久这里只有| 岛国av免费在线观看| 久久天堂av综合合色| 国产精品久久久久久久龚玥菲 | 欧美三级不卡| 亚洲最大免费| 神马电影久久| 久久婷婷开心| 激情小说一区| 俄罗斯精品一区二区| 日韩av黄色| 国产精品久久久久av免费| 春色校园综合激情亚洲| 久久99热精品| a毛片在线播放| 日韩有码视频在线| eeuss影院在线播放| 亚洲欧美国产视频| 性xxxx搡xxxxx搡欧美| 欧美成人猛片aaaaaaa| 国产精品欧美亚洲| 欧美日本视频在线| 一卡二卡三卡在线| 欧美日韩一本到| 中文永久免费观看| 欧美在线观看你懂的| 日韩av免费播放| 一本久久综合亚洲鲁鲁五月天| 男女视频免费看| 偷拍亚洲欧洲综合| 五月天婷婷久久| 日本精品视频一区二区| 中文字幕免费在线观看视频| 精品久久久久久中文字幕| 国产无码精品在线播放| 亚洲18女电影在线观看| 日本一区二区网站| 欧美日韩国产一区二区三区| 在线能看的av| 欧美午夜久久久| 无码人妻av免费一区二区三区 | 男人搞女人网站| 日精品一区二区| 少妇一级淫免费播放| 韩国女主播成人在线| 韩国三级在线播放| 成人黄色大片在线观看 | 无码精品一区二区三区在线| 日韩国产在线播放| 国际av在线| 日韩中文字幕免费| h片在线播放| 久久乐国产精品| 在线日韩影院| 国产拍精品一二三| 一区二区三区在线免费看| 久久99精品久久久久久久青青日本 | 蜜桃视频在线观看91| 国产精品一线天粉嫩av| 一区二区三区国产福利| 欧美欧美天天天天操| 日韩小视频在线播放| 日日夜夜精品视频免费| 超碰人人草人人| 国产成人精品一区二区三区四区| 一本加勒比波多野结衣| 国产视频在线观看一区二区三区| 强制高潮抽搐sm调教高h| 一区二区三区四区乱视频| 在线观看中文字幕视频| 欧美视频一区二区三区四区 | 9191国产视频| 亚洲在线观看| 91精品999| 99久久综合色| 精品国产国产综合精品| 亚洲高清免费视频| 中文在线观看免费高清| 亚洲精品在线三区| 亚洲搞黄视频| 午夜精品久久久久久久白皮肤| 97欧美成人| 国产精品xxxx| 久久综合电影| 18禁免费无码无遮挡不卡网站| 精品在线一区二区| 在线免费观看日韩av| 亚洲精品国产a| 乱子伦一区二区三区| 精品欧美乱码久久久久久| wwwww在线观看免费视频| 久久频这里精品99香蕉| 国内精品伊人| 欧美日韩精品中文字幕一区二区| 欧美日韩国产探花| 在线观看岛国av| 久久夜色精品一区| 妺妺窝人体色www聚色窝仙踪| 欧美日韩免费一区二区三区| 色窝窝无码一区二区三区| 久久精品国产电影| 久久亚洲精品爱爱| 久久99精品国产99久久| 狠色狠色综合久久| 亚洲理论中文字幕| 欧美韩国日本一区| 日本视频在线观看免费| 亚洲成人a**站| 性欧美videos高清hd4k| 成人黄色av网| 久久精品国产www456c0m| 国产精品少妇在线视频| 91小视频免费看| 日韩免费不卡视频| 日韩免费看网站| av大大超碰在线| 成人中文字幕+乱码+中文字幕| 国产91一区| 美女日批免费视频| www.欧美色图| 欧美亚韩一区二区三区| 精品久久人人做人人爽| 亚洲wwwww| www国产亚洲精品| 韩国在线视频一区| 香蕉久久久久久av成人| 亚洲免费伊人电影| 国产高清第一页| 久久久久久久999| 国内精品国产成人国产三级粉色 | 国产一级大片在线观看| 制服.丝袜.亚洲.另类.中文 | 不卡中文一二三区| 久久九九国产视频| 国产情人综合久久777777| 91视频久久久| 中文字幕亚洲综合久久筱田步美| 99精品在免费线偷拍| 亚洲精品国产精品国自产观看| 免费人成黄页网站在线一区二区| 1024手机在线观看你懂的| 精品视频999| 黄av在线免费观看| 69堂成人精品视频免费| 国产综合亚洲精品一区二| av免费观看不卡| 富二代精品短视频| 国产永久av在线| 国产精品香蕉国产| 91精品国产乱码久久久久久| 性折磨bdsm欧美激情另类| 亚洲午夜精品在线| 青青草娱乐在线| 国产精品吴梦梦| 欧美人成网站| 亚洲午夜久久久久久久久红桃 | 樱花影视一区二区| 色呦呦中文字幕| 国产精品99蜜臀久久不卡二区| 欧美高清视频手机在在线| 欧美69精品久久久久久不卡| 亚洲成人7777| gogogo高清在线观看免费完整版| 亚洲影视九九影院在线观看| 亚洲免费成人| 国产三级短视频| 欧美岛国在线观看| 欧美大片1688| 成人在线观看毛片| 久久久精品国产免费观看同学| 国产精品福利电影| 91精品国产一区| 99精品全国免费观看视频软件| 亚洲精品久久一区二区三区777| 欧美性感美女h网站在线观看免费 欧美性xxxx在线播放 | 久久超碰97人人做人人爱| 国产亚洲精品成人| 国产一区二区三区网站| 日韩一区二区三区高清在线观看| 日韩av三级在线| 亚洲色图欧美在线| 你懂的视频在线播放| 亚洲自拍偷拍区| 日韩激情视频在线观看| 九热这里只有精品| 中文字幕日韩高清|