卡通人物(Rick和Morty)又來了第4集,改用 google/flan-t5 語言模型 ,AI讓靈魂復活

Поделиться
HTML-код
  • Опубликовано: 11 сен 2024
  • 使用LangChain建立基於PDF的檢索系統
    在本影片中,我介紹如何使用LangChain來建立一個基於PDF文件的檢索系統。這個系統能夠自動從PDF文件中提取內容,並根據使用者的問題生成相應的答案。以下是步驟概述及程式碼解析。
    前置準備
    在開始之前,我們需要安裝一些必備的Python套件,包括LangChain、HuggingFace的相關模組、以及其他依賴套件。
    pip install langchain huggingface-hub
    1. 設定HuggingFace API Token
    為了能夠訪問HuggingFace上的模型,我們首先需要設定HuggingFace的API Token。
    import os
    os.environ["HUGGINGFACEHUB_API_TOKEN"] = "your_huggingface_api_token"
    2. 加載PDF文件
    接下來,我們需要指定存放PDF文件的資料夾路徑,並利用UnstructuredPDFLoader將所有PDF文件加載到程式中。
    from langchain.document_loaders import UnstructuredPDFLoader
    pdf_folder_path = 'path_to_your_pdf_folder'
    loaders = [UnstructuredPDFLoader(os.path.join(pdf_folder_path, fn)) for fn in os.listdir(pdf_folder_path)]
    3. 建立向量索引
    我們使用HuggingFace的嵌入模型來將PDF文件轉換為向量表示。這裡,我們利用VectorstoreIndexCreator來創建索引,並使用CharacterTextSplitter來將文本分割成合適的大小。
    from langchain.indexes import VectorstoreIndexCreator
    from langchain.embeddings import HuggingFaceEmbeddings
    from langchain.text_splitter import CharacterTextSplitter
    index = VectorstoreIndexCreator(
    embedding=HuggingFaceEmbeddings(),
    text_splitter=CharacterTextSplitter(chunk_size=1802, chunk_overlap=0)
    ).from_loaders(loaders)
    4. 初始化LLM模型
    這裡我們選擇了google/flan-t5-small模型來生成回答。該模型是由Google發布的Flan-T5系列模型的一個小型版本,適合於資源有限的應用場景。
    5. 建立檢索問答鏈
    接著,我們建立了一個檢索問答鏈RetrievalQA,該鏈將從先前創建的向量索引中檢索相關的文本片段,並使用LLM模型生成答案。
    6. 提出問題並獲得答案
    最後,我們可以提出問題並讓模型生成答案。以下是幾個示例問題及其對應的程式碼。
    question = 'what conclusion can you make for this book?'
    answer = chain.run(question)
    print(answer)
    關於影片中的【程式碼rick_Resurrection1.py/ rick_Resurrection2.py/ rick_Resurrection3.py/ rick_Resurrection4.py】的下載網址:github.com/deepmind-python/nltk
    請手動複製 github.com/deepmind-python/nltk 至瀏覽器的網址列上,然後在鍵盤上按 Enter鍵。

Комментарии • 1