国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

基于Llama 3、Ollama、Milvus、LangChain,快速搭建本地RAG

發布于 2024-8-8 17:52
瀏覽
0收藏

隨著Llama、Mistral、Gemma等開源大型語言模型(LLMs)的興起,本地運行LLMs的實用性和必要性日益凸顯,尤其是與商業模型如GPT-3或GPT-4相比時,其成本效益展現出明顯的優勢。

本文指導讀者如何結合Ollama、Llama 3和Milvus搭建高效的檢索增強生成(RAG)系統,創建一個能解答特定問題的Q&A聊天機器人。

1 RAG概述

RAG,即檢索增強生成,是一種通過融合額外的數據源來提升大型語言模型(LLMs)性能的技術。一個典型的RAG應用流程包括:

  • 索引:這涉及從數據源中提取數據,并在Milvus中進行加載、分割和存儲,形成索引。
  • 檢索與生成:在應用運行期間,RAG會處理用戶的查詢,從Milvus中的索引里檢索出相關數據,然后利用這些數據,LLM生成一個更加精準的響應。

2 先決條件

請先確認系統滿足以下先決條件:

  • Docker與Docker-Compose - 請確保系統中已安裝Docker及Docker-Compose工具。
  • Milvus獨立版 - 使用Milvus的獨立版本,它可以通過Docker Compose方便地進行管理。具體安裝方法,請參考文檔說明(https://milvus.io/docs/install_standalone-docker-compose.md)。
  • Ollama - 在系統上安裝Ollama;訪問其官方網站獲取最新的安裝指南。

3 設置

安裝完所有前提條件后,就可以設置 RAG 應用程序了:

  • 使用命令docker-compose up -d啟動Milvus獨立實例。 此命令以分離模式啟動Milvus實例,在后臺安靜運行。
  • 通過命令ollama pull <name_of_model>?獲取LLM模型。 通過模型庫查看可用模型列表。 例如:ollama pull llama3此命令下載模型的默認版本(通常是最新和最小的版本)。
  • 使用命令ollama run <name-of-model>直接從命令行與模型聊天。

安裝依賴項

要運行此應用程序,需要安裝所需的庫。可以直接使用pip進行安裝。

pip install langchain pymilvus ollama pypdf langchainhub langchain-community langchain-experimental

4 構建RAG應用程序

如前所述,RAG的主要組成部分之一是索引數據。

首先使用PyPDFLoader導入PDF中的數據

from langchain_community.document_loaders import PyPDFLoader
loader = PyPDFLoader(
    "https://d18rn0p25nwr6d.cloudfront.net/CIK-0001813756/975b3e9b-268e-4798-a9e4-2a9a7c92dc10.pdf"
)
data = loader.load()

分割數據

使用RecursiveCharacterTextSplitter將加載的數據分解為可管理的塊

from langchain.text_splitter import RecursiveCharacterTextSplitter
text_splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=0)
all_splits = text_splitter.split_documents(data)

獲取嵌入并在Milvus中存儲數據

接下來,使用Jina AI的Small English嵌入(https://huggingface.co/jinaai/jina-embeddings-v2-small-en)將文本數據轉換為向量嵌入,并存儲到Milvus中。

from langchain_community.embeddings.jina import JinaEmbeddings
from langchain.vectorstores.milvus import Milvus

embeddings = JinaEmbeddings(
   jina_api_key=JINA_AI_API_KEY, model_name="jina-embeddings-v2-small-en"
)
vector_store = Milvus.from_documents(documents=all_splits, embedding=embeddings)

加載LLM

Ollama極大簡化了在本地加載和運用大型語言模型(LLM)的過程。在本例中,將應用Meta公司開發的Llama 3模型進行操作。以下是如何加載:

from langchain_community.llms import Ollama
from langchain.callbacks.manager import CallbackManager
from langchain.callbacks.streaming_stdout import StreamingStdOutCallbackHandler

llm = Ollama(
    model="llama3",
    callback_manager=CallbackManager(
        [StreamingStdOutCallbackHandler()]
    ),
    stop=["<|eot_id|>"],
)

使用Langchain構建QA鏈

最后,構建QA鏈以處理和響應用戶查詢:

from langchain import hub
from langchain.chains import RetrievalQA
query = input("\nQuery: ")
prompt = hub.pull("rlm/rag-prompt")
qa_chain = RetrievalQA.from_chain_type(llm, retriever=vectorstore.as_retriever(), chain_type_kwargs={"prompt": prompt})
result = qa_chain({"query": query})
print(result)

5 運行應用程序

通過最后一個單元格中的 result 變量執行 RAG 應用程序。

問答交互示例:

Query: What is this document about?

The document appears to be a 104 Cover Page Interactive Data File for an SEC filing. It contains information about the company's financial statements and certifications.{'query': 'What is this document about?', 'result': "The document appears to be a 104 Cover Page Interactive Data File for an SEC filing. It contains information about the company's financial statements and certifications."}

這樣就成功使用Ollama、Llama 3、Langchain和Milvus搭建了一個功能強大的本地大型語言模型(LLM)。。這一配置不僅讓處理龐大的數據集變得輕松可行,同時也打造了一個反應迅速的本地問答系統。

本文轉載自?? AI科技論談??,作者: AI科技論談

收藏
回復
舉報
回復
相關推薦
欧美激情一区二区三区不卡| 国产裸体免费无遮挡| 亚洲欧美经典视频| 国产一区一区| 最近免费观看高清韩国日本大全| 91精品国产91热久久久做人人| 成人黄色av| 特黄aaaaaaaaa毛片免费视频| 欧美激情中文字幕乱码免费| 久久亚洲精华国产精华液| 在线视频一区二区三| 国产黑丝在线一区二区三区| 国产精品久久麻豆| 成年人免费看的视频| 欧美老少配视频| 亚洲精品自拍动漫在线| 91精品一区国产高清在线gif| 黄色一区三区| 欧美va亚洲va在线观看蝴蝶网| 国产精品资源在线| 美女精品一区最新中文字幕一区二区三区 | 91豆花精品一区| 影音先锋在线播放| 免费的av在线| 精品成人免费观看| 午夜免费久久看| 免费看av成人| 九九九九九九精品任你躁| 在线视频专区| 精品欧美国产一区二区三区不卡| 亚洲天天做日日做天天谢日日欢| 综合激情五月婷婷| 九一精品在线观看| 日本欧美一级片| 亚洲高清免费在线| 国产乱色国产精品免费视频| 天堂久久久久va久久久久| 一区二区三区波多野结衣在线观看 | 亚洲电影一区| 人妻内射一区二区在线视频| 九九精品在线播放| 中文字幕中文字幕中文字幕亚洲无线| 夜夜嗨av一区二区三区免费区| 欧美3p视频| 国产一级网站视频在线| 欧美精品亚洲精品| 亚洲人成电影网站| 91蝌蚪porny| 国产亚洲一卡2卡3卡4卡新区| a优女a优女片| 91入口在线观看| 亚洲成人精品久久| 337p粉嫩大胆色噜噜噜噜亚洲| 亚洲精品亚洲人成在线观看| 美女欧美视频在线观看免费 | 日韩精品高清在线观看| 26uuu国产电影一区二区| 先锋影音国产精品| 在线观看黄av| 欧美大片在线播放| 91精品美女在线| 亚洲第一男人av| 国产女人18水真多18精品一级做| 午夜精彩国产免费不卡不顿大片| 超碰成人av| 国产精品666| 青青成人在线| 欧美激情日韩图片| 欧美午夜电影在线播放| 国产精品一区二区在线观看不卡| 日本国产精品| 毛片在线播放a| 乱子伦视频在线看| 国产超碰91| 日韩在线免费av| 婷婷开心激情综合| 韩国精品一区二区| 欧美久久综合网| 999av小视频在线| 天堂在线看视频| 一区二区日本伦理| 91精品国产一区二区在线观看| 尤物国产在线观看| 欧美福利精品| 国产99在线|中文| 国产视频一区在线| 欧美日韩亚洲国产一区| 成人自拍视频在线| 欧美日韩中文| 国产精品白丝一区二区三区| 性欧美ⅴideo另类hd| 天堂中文字幕一二区| 好色先生视频污| 成人中心免费视频| 久久夜色精品亚洲噜噜国产mv| 欧美日韩精品一区二区在线播放 | 91亚洲天堂| 丝袜制服影音先锋| 中文字幕乱码免费| 成人精品视频在线| 美女精品视频一区| 91精品国产福利| 亚洲一区二区在线播放相泽| 国产九九视频一区二区三区| 91精品久久久久久久久久不卡| 9999精品免费视频| 色爱综合区网| 六十路在线观看| 成年人黄色电影| 日本网站免费在线观看| 免费99视频| 成人激情视频在线播放| 欧美成人激情视频| 日韩精品在线视频美女| 色哟哟在线观看一区二区三区| 亚洲国产电影在线观看| 极品少妇xxxx精品少妇偷拍| 天天射成人网| 国产suv精品一区| 国产欧美在线观看免费| 手机电影在线观看| www.久久热.com| 国产wwww| wwwwxxxx日韩| 激情六月天婷婷| 日韩高清在线播放| 99国产视频| 久久影音资源网| aa成人免费视频| 日本大胆在线观看| 亚洲高清视频的网址| 精品国产一区二区三区不卡蜜臂| 丝袜美腿高跟呻吟高潮一区| 日韩在线国产精品| 浮妇高潮喷白浆视频| 国产精品99| 久久色成人在线| 另类天堂视频在线观看| 日韩欧美在线电影| caoporn视频在线| 国产sm精品调教视频网站| 尤物yw午夜国产精品视频| 一区二区av| 中文字幕在线直播| 91色视频在线| 国产精品一二三视频| 欧美激情二区| 国产白丝精品91爽爽久久| 成人免费自拍视频| 狂野欧美激情性xxxx欧美| 国产美女av一区二区三区| 精品国产一区二区三区四区在线观看 | 欧美日韩一本| 91精品国产色综合久久ai换脸| 四虎影视永久免费在线观看一区二区三区| 国产在线xxx| 国产亚洲精品精华液| 精品中文字幕一区| 欧美日韩一区二区三区不卡视频| 欧美男男青年gay1069videost | 91九色单男在线观看| 亚洲伦乱视频| 亚洲黄网站在线观看| 视频一区二区三区在线观看 | 中文在线免费二区三区| 久久久久久久久伊人| 久久国产精品久久| 麻豆一二三区精品蜜桃| 福利二区91精品bt7086| 美女av免费观看| 国内久久精品| 久久久久久欧美| 奇米狠狠一区二区三区| 国产精品13p| 中文字幕一区二区三区不卡在线| 99在线观看| 日韩欧美中文字幕在线视频| 亚洲国产精品va在线观看黑人| 爱情岛论坛亚洲首页入口章节| 免费在线一区观看| 国产精品高清在线| 成人开心激情| 亚洲精品999| 国内高清免费在线视频| 欧美性高潮在线| 日韩av在线播放不卡| 激情一区二区| 国产精品视频午夜| 国产成人高清| 2020久久国产精品| 色婷婷成人网| 一本一本久久a久久精品综合小说 一本一本久久a久久精品牛牛影视 | 欧美在线观看视频| 亚洲国产专区| 国产精品jizz视频| 国产精品hd| 鬼打鬼之黄金道士1992林正英| 一区二区三区午夜探花| 亚洲欧美日产图| 国产精一区二区三区|