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

輕松解析本地PDF表格,基于LlamaIndex和UnstructuredIO打造RAG

發布于 2024-9-24 16:20
瀏覽
0收藏

1 使用 LlamaIndex 和 UnstructuredIO 檢索數據

在數據檢索領域,LlamaIndex 以其強大的工具和技術,為用戶帶來了全新的檢索體驗。這個框架的亮點在于索引系統的靈活性,用戶可以根據文檔的具體內容,量身定制索引策略,以適應不同的文檔結構。每種索引都設計得獨具匠心,能夠精準匹配各種文檔結構,確保信息檢索的準確性和高效性。

對于包含大量表格的 PDF 文件,建議使用 LlamaIndex 推薦的 RecursiveRetriever。這種遞歸檢索技術的精髓在于,它不僅深入挖掘與信息直接相關的節點,還會追溯這些節點與其它檢索器或查詢引擎之間的關聯,進而執行相應的檢索操作。

例如,某個節點精煉地總結了某個結構化表格的關鍵信息,并鏈接到該表格的 SQL 或 Pandas 查詢引擎。那么在檢索到這個節點之后,我們就能夠利用這些底層的查詢工具深入挖掘,從而獲取更詳盡的數據。這種深入的檢索方法,大大增強了我們從復雜數據集中提取有價值信息的能力。

輕松解析本地PDF表格,基于LlamaIndex和UnstructuredIO打造RAG-AI.x社區

為了有效實施這一策略,分步驟進行:

a. 首先,將 PDF 文件轉換成 HTML 格式,這一步已經完成。 

b. 接著,利用 UnstructuredIO 讀取轉換后的 HTML 文件。 

c. 對于 UnstructuredIO 從 HTML 中識別出的每個元素,無論是文本還是表格,都將其存儲到 LlamaIndex 的節點中。 

d. 這樣一來,就構建了一個包含文本和表格的節點列表。 

e. (可選步驟)可以專門篩選出包含表格的節點,并將這些表格發送到語言模型(LLM)以生成摘要。 

f. 然后,借助 LlamaIndex,LLM 代理將遞歸地檢索與問題相關的信息。

g. 最后,將這些檢索到的數據發送回 LLM,以生成最終的響應。

雖然這個過程聽起來頗為復雜,但得益于 LlamaIndex 提供的封裝良好的函數,我們執行這些步驟更加容易些。

1.1 讀取和處理數據

from llama_index.readers.file.flat_reader import FlatReader
from llama_index.node_parser import UnstructuredElementNodeParser
import os
import pickle
from pathlib import Path

os.environ["OPENAI_API_KEY"] = "<your openai api key>"

# 讀取數據
reader = FlatReader()
data = reader.load_data(Path('./The_Worlds_Billionaires.html'))

# 初始化 NodeParser
node_parser = UnstructuredElementNodeParser()

# 如果稍后想重用它
if not os.path.exists("qr_2023_nodes.pkl"):
    raw_nodes = node_parser.get_nodes_from_documents(data)
    pickle.dump(raw_nodes, open("the_world_billionaires_raw_nodes.pkl", "wb"))

# 基礎節點和節點映射
base_nodes, node_mappings = node_parser.get_base_nodes_and_mappings(
    raw_nodes
)

1.2 構建索引

from llama_index.retrievers import RecursiveRetriever
from llama_index.query_engine import RetrieverQueryEngine
from llama_index import VectorStoreIndex

vector_index = VectorStoreIndex(base_nodes_qr_2023)
vector_retriever = vector_index.as_retriever(similarity_top_k=3)
vector_query_engine = vector_index.as_query_engine(similarity_top_k=3)

recursive_retriever = RecursiveRetriever(
    "vector",
    retriever_dict={"vector": vector_retriever},
    node_dict=node_mappings_qr_2023,
)

query_engine = RetrieverQueryEngine.from_args(recursive_retriever)

query_engine.query("Who is the richest billionaire in 2020?")

1.3 其他類型的查詢索引

前面的例子已經展示了 UnstructuredElementNodeParser 如何無縫集成到 LlamaIndex + UnstructuredIO 的數據處理流程中,體現了其在提升數據處理效率和便捷性方面的強大能力。它采用了一種簡化的方法論,讓原本復雜的數據提取工作變得更加易于掌握。

鑒于 LlamaIndex 提供了多種索引類型和檢索技術,探索不同的選項以找到最適合你特定場景的解決方案是非常有價值的。不妨嘗試包括自動合并檢索器、結果重排序以及混合搜索在內的多種策略。

每種策略都有其獨到之處,而最終的效果也會隨著數據的復雜性而有所不同。通過實際測試和評估,你可以優化檢索流程,確保采用最合適的方法從數據集中提取關鍵信息。

2 如何從 PDF/HTML 中提取表格

這部分內容提供了一個可選的功能,它通過較低級別的 API 支持從 PDF 或 HTML 中提取表格,這可能對特定需求非常有用。雖然前面提到的方法在大多數情況下已經足夠有效,但如果需要更精細的控制,比如直接操作底層數據,那么可能需要在數據處理流程中加入額外的步驟,例如利用語言模型(LLM)來生成數據摘要。這一環節值得你進一步探索。

2.1 從 PDF 中提取表格

完成從 PDF 中提取表格的任務,可以依賴多種光學字符識別(OCR)技術和庫,同時也可以考慮使用云服務,但這涉及較高的成本。UnstructuredIO 提供了一個功能強大的 ??partition_pdf?? 方法,它通過多個參數讓你能夠靈活地在處理速度和識別準確性之間做出權衡,并且可以指定特定的深度學習模型來優化表格的提取效果。

from unstructured.partition.pdf import partition_pdf
from unstructured.staging.base import elements_to_json
import json

file_path = 'The_Worlds_Billionaires.pdf'
raw_pdf_elements = partition_pdf(
    filename=file_path,
    extract_images_in_pdf=False,
    infer_table_structure=True,
    chunking_strategy='by_title',
    max_characters=4000,
    new_after_n_chars=3800,
    combine_text_under_n_chars=2000,
    strategy = "hi_res"
)

# 將結果存儲在 json 中
elements_to_json(raw_pdf_elements, filename=f"./The_Worlds_Billionaires_Converted.json")

no_tables = 0
def process_json_file(input_filename):
    # 讀取 JSON 文件
    with open(f'./{input_filename}.json', 'r') as file:
        data = json.load(file)

    # 遍歷 JSON 數據并提取所需的表格元素
    extracted_elements = []
    for entry in data:
        if entry['type'] == 'CompositeElement':
            extracted_elements.append(entry['text'])
        if entry["type"] == "Table":
            no_tables += 1
            extracted_elements.append(entry["metadata"]["text_as_html"])

    # 將提取的元素寫入輸出文件
    with open(f"{input_filename}.txt", 'w') as output_file:
        for element in extracted_elements:
            output_file.write(element + "\n\n")  # 添加兩個換行符以分隔

process_json_file(f"The_Worlds_Billionaires_Converted")  # ## with new_file_name 是上面的 JSON 文件

print(f"Number of tables: {no_tables}")

### 加載數據

```python
# documents = SimpleDirectoryReader("./<folder_name>", 
#     input_files=['./<new_file_name.txt>']).load_data()

該方法能夠讀取 PDF 文件,并提取出其中的元素,如文本和表格。表格元素會以 JSON 格式保存為“text_as_html”。你可以逐一讀取和處理 JSON 文件中的每個元素,并將處理后的數據存儲為 TXT 文件,以便后續的 RAG 讀取。

需要注意的是,直接解析 PDF 的性能可能不盡如人意。目前,UnstructuredIO 提供了多種模型,例如 YOLOx,來幫助將 PDF 轉換為可操作的元素。然而,這些深度神經網絡模型在低配置計算機上表現不佳,建議在配備高性能 GPU 的機器上運行。唯一需要關注的問題是,當同時處理千份文檔時,系統的性能表現如何。

3 總結

開源項目和云服務提供商在應對 PDF 處理復雜性方面展現了行業的協同努力。

在這個不斷變化的環境中,沒有一種通用的方法能夠有效管理復雜的 PDF 文件。經驗表明,結合使用 LlamaIndex、UnstructuredIO 以及 PDF 到 HTML 的轉換,是一種簡單而高效的解決方案,能夠產生優異的結果。

此外,提高 RAG 準確性的關鍵策略之一是靈活地結合不同的索引和檢索器。這種多元化的方法認識到沒有一套固定的索引規則適用于所有情況,強調需要根據每種文檔的具體特性和處理細節來定制策略。通過接受這種靈活性,并使用量身定制的索引和檢索器組合,你可以構建一個更準確、更復雜的檢索系統,以應對數據的復雜性。

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

收藏
回復
舉報
回復
相關推薦
亚洲国产成人91精品| 久久综合五月天婷婷伊人| 久久成年人视频| 中文字幕一二三| 黄毛片在线观看| 久久久av毛片精品| 亚洲aⅴ男人的天堂在线观看| 国产一级片免费| 自拍视频一区| 欧美一区二区三区四区视频| 97av视频在线观看| а天堂中文在线官网| 99re成人精品视频| 成人国产在线视频| 国产精品7777777| 成人一区不卡| 亚洲а∨天堂久久精品喷水| 欧美 日韩 国产 激情| 久久99亚洲网美利坚合众国| 久久久美女艺术照精彩视频福利播放| 国产亚洲精品久久久久婷婷瑜伽| 亚洲国产高清自拍| av中文字幕网址| 一二三四视频在线中文| 欧美va视频| 91麻豆免费观看| 九一精品国产| 日韩一区二区三区电影| chinese少妇国语对白| 欧洲性视频在线播放| 国产精品久久久久一区二区三区| 精品网站在线看| 99久久久国产精品无码网爆| 日韩av电影天堂| 欧美一区亚洲一区| 国产无遮挡又黄又爽| 亚洲一级淫片| 久久精品国产96久久久香蕉| 一级特黄曰皮片视频| 色狠狠久久av综合| 精品国产制服丝袜高跟| 亚洲视频在线不卡| 国产一区二区三区亚洲综合| 欧美综合自拍| 精品久久久久久亚洲国产300| 天天成人综合网| www.亚洲资源| 中文字幕精品三区| 欧美在线不卡一区| 粉嫩av免费一区二区三区| 国产又大又粗又长| 亚洲搞黄视频| 成人精品免费看| 91福利视频导航| 国产毛片一区二区三区va在线| 免费观看成人鲁鲁鲁鲁鲁视频| 日韩成人av在线播放| 麻豆精品传媒视频| 无码国产精品一区二区免费16| 国产99久久精品| 91九色偷拍| 精品国产av一区二区三区| 精品一区二区三区久久久| 国产在线精品播放| 一本色道久久综合熟妇| 久热成人在线视频| 国产视频福利一区| 国产精品无码白浆高潮| 国产精品综合一区二区| 亚洲在线观看视频网站| www久久久com| 99精品视频一区二区三区| 欧美二区在线| 成人在线高清视频| 成人欧美一区二区三区1314| 久久视频免费在线| 91超碰在线播放| 欧美日韩中文在线| 午夜宅男在线视频| 91成人精品在线| 亚洲人成网站在线播| 日韩黄色中文字幕| 欧美91大片| 欧美在线观看网站| 亚洲中文一区二区三区| 懂色av中文一区二区三区| 九色91在线视频| 国产女人在线视频| 亚洲女性喷水在线观看一区| www.射射射| 电影天堂国产精品| 日韩午夜电影av| 泷泽萝拉在线播放| 国产精品91一区二区三区| 欧美精品videos| 久久久久久久久久成人| 国产一区二区三区久久久| 精品国产一二| 日本不卡三区| 欧美天堂在线观看| 久草福利在线观看| 欧美猛男男男激情videos| 久久视频精品在线| 欧美性猛交bbbbb精品| 久久精品国产在热久久| 久久精品丝袜高跟鞋| 黄在线免费看| 欧美性猛交xxxx黑人| 伊人国产精品视频| 蜜桃精品噜噜噜成人av| 欧美激情视频在线观看| 亚洲午夜无码久久久久| 成人黄色一级视频| www.-级毛片线天内射视视| 中文字幕成在线观看| 欧美一级艳片视频免费观看| 国产免费无遮挡吸奶头视频| 国产精品成人av久久| 欧美黄色免费网址| 久久久久97国产| 亚洲自啪免费| 亚洲最大av在线| 内衣办公室在线| 亚洲最大色网站| 欧美成年人视频在线观看| 欧美日韩一本| 国产成人三级在线观看| 日韩av在线一区二区三区| 成人超碰在线| 91精品欧美综合在线观看最新| 久久国产柳州莫菁门| 99国产精品99久久久久久粉嫩| 91在线视频免费| 成人免费一区二区三区视频网站| 偷窥少妇高潮呻吟av久久免费| 中文字幕55页| 久久一区91| 国产精品久久久久久超碰| 婷婷色在线视频| 亚洲一区免费视频| 国产ts在线观看| 欧美va天堂在线| 91入口在线观看| 在线午夜影院| 欧美一区二区三区在线看| 欧美性生交大片| 久久国产精品区| 亚洲人成人77777线观看| 超薄肉色丝袜脚交一区二区| 亚洲色图色老头| 69xxxx国产| 国产欧美日韩三区| 在线免费观看视频黄| 日韩av有码| 国产在线观看精品| 国产剧情在线| 欧美大片在线观看| 日本三级免费看| 91捆绑美女网站| 日日摸天天爽天天爽视频| 国产调教一区二区三区| 国产精品久久国产精品99gif| 国产日本在线视频| 欧美乱妇15p| 欧美成人综合色| 99久久精品国产一区二区三区 | 国产精品天天摸av网| 无码日韩人妻精品久久蜜桃| 久久精品播放| 亚洲影院污污.| 高清在线视频不卡| 国产亚洲福利一区| 国产精品久久久午夜夜伦鲁鲁| 亚洲欧美另类在线| 喷水视频在线观看| 日本不卡高清视频| 久久免费一级片| 欧美成人专区| 国产女人18毛片水18精品| av在线免费网站| 日韩精品丝袜在线| 一级黄色短视频| 亚洲成a人在线观看| 91中文字幕永久在线| 久久成人免费电影| 男人天堂av片| 国产亚洲一卡2卡3卡4卡新区| 国产日韩精品在线| 91www在线| 色婷婷综合成人| 亚洲 欧美 激情 另类| 欧美日韩一卡二卡三卡| 国产系列精品av| 国产精品网站在线观看| 久久久高清视频| 毛片基地黄久久久久久天堂| www.射射射| 国产精品国产三级国产在线观看| 国产精品区一区二区三含羞草| 99久久久国产精品免费调教网站| 欧美激情日韩图片| 中文字幕在线视频区| 亚洲电影中文字幕| 91精品人妻一区二区三区果冻| 精品国产鲁一鲁一区二区张丽 | 色777狠狠狠综合伊人| 国产精品久久久久久久小唯西川 | 91成人在线精品| 激情小说中文字幕| 国产精品三级av在线播放| 国产白嫩美女无套久久| 国产呦精品一区二区三区网站| 国模吧无码一区二区三区| 欧美特黄一级| 亚洲一二区在线| 一本久久青青| 国产欧美日韩视频一区二区三区| 精品伊人久久| 国产精品一区二区久久| 伊人色综合一区二区三区影院视频| 久久综合色影院| av中文资源在线| 亚洲人永久免费| 天堂网2014av| 精品国产一区二区在线观看| av小说天堂网| 欧美久久久久中文字幕| 中文字幕精品在线观看| 欧美天天综合色影久久精品| 日本熟妇一区二区| 亚洲一区二区三区视频在线播放| 亚洲视频重口味| 国产精品每日更新| 91麻豆制片厂| 欧美激情一区二区三区全黄| 亚洲av无码国产精品久久| 成人免费av资源| 免费看91视频| 成人三级伦理片| 国产情侣久久久久aⅴ免费| 久久 天天综合| 污视频网址在线观看| 精品一区二区三区欧美| 性欧美在线视频| 国产在线麻豆精品观看| 特种兵之深入敌后| 成人一区二区三区视频在线观看| 第一页在线视频| 国产成人8x视频一区二区| 精品人妻人人做人人爽夜夜爽| 国产成人av一区二区| 中国老熟女重囗味hdxx| 国产不卡在线一区| 在线观看亚洲免费视频| 99久久精品免费看国产免费软件| 中文字幕免费高清视频| 97se亚洲国产综合自在线不卡| 丝袜美腿中文字幕| 久久久91精品国产一区二区精品 | 美女又黄又免费的视频| 福利电影一区二区三区| 妖精视频一区二区| 久久久久久久综合色一本| 99久久精品免费视频| 国产精品久久久久一区二区三区共| 亚洲天堂一级片| 一区二区三区资源| 日本午夜精品理论片a级app发布| 天天综合天天综合色| 最近中文字幕在线免费观看| 欧美电影在线免费观看| 亚洲av综合色区无码一区爱av| 日韩精品亚洲元码| 午夜视频在线观看网站| 欧美大片欧美激情性色a∨久久| 国产夫妻在线播放| 国产精品成人一区| 日本在线一区二区三区| 国产一区二区精品免费| 精品日本12videosex| 在线成人性视频| 99精品国产一区二区青青牛奶 | 日韩在线中文字幕| 久草在线视频网站| 奇米一区二区三区四区久久| 欧美黄页在线免费观看| 99在线观看视频网站| 精品国产中文字幕第一页| 国产经典久久久| 鲁大师成人一区二区三区| 手机av在线网站| 久久精品亚洲精品国产欧美kt∨| 欧美三级黄色大片| 欧美日韩国内自拍| 国产精品日韩无码| 精品视频中文字幕| av网址在线免费观看| 欧美一区视频在线| 亚洲一级大片| 日韩三级电影| 国产婷婷精品| 亚洲理论中文字幕| 国产亚洲欧美日韩俺去了| 久久伊人成人网| 91 com成人网| 国产美女视频一区二区三区| 久久久久久久久久久人体| 欧美日韩伦理一区二区| 久久99精品久久久久久久久久 | 日韩亚洲国产精品| 91久久爱成人| 综合综合综合综合综合网| 国产av第一区| 日产欧产美韩系列久久99| 精人妻一区二区三区| 国产精品久99| 在线永久看片免费的视频| 精品日韩在线观看| 国产在线观看免费麻豆| 国产精品国模在线| 亚洲天堂中文字幕在线观看| 日本中文字幕久久看| 91欧美极品| 亚洲自拍偷拍一区二区三区| 首页国产欧美日韩丝袜| 亚洲天堂美女视频| 一区二区三区四区乱视频| 中文字幕在线观看视频一区| 亚洲精品自拍第一页| 91福利在线尤物| 北条麻妃高清一区| 色a资源在线| 国产色视频一区| 日韩av自拍| 亚州精品一二三区| 久久精品欧美日韩| 伊人中文字幕在线观看| 日韩高清免费在线| 川上优av中文字幕一区二区| 精品国产乱码久久久久久郑州公司| 亚洲天堂男人| 无码国产精品一区二区免费式直播| 亚洲综合精品自拍| 日韩一级片免费看| 97精品国产97久久久久久免费 | 国精产品一区| 91精品国产综合久久久久久丝袜 | avav在线看| 久久蜜桃av一区精品变态类天堂| 欧美一级特黄视频| 亚洲日本欧美中文幕| 欧美国产日韩电影| 小说区图片区图片区另类灬| 裸体在线国模精品偷拍| 国产精品一区二区亚洲| 欧美一区二区视频在线观看2020| 在线观看av免费| 国模精品娜娜一二三区| 香蕉久久夜色精品国产| caopeng视频| 成人av网址在线| 成人9ⅰ免费影视网站| 精品产国自在拍| 天天干天天玩天天操| 亚洲欧美一区二区三区极速播放| 99视频在线观看免费| 欧美精品videossex性护士| 日韩高清影视在线观看| 成人精品视频一区二区| 色在线视频观看| 国产青春久久久国产毛片| 午夜亚洲精品| 欧美a在线播放| 日韩视频123| 自拍在线观看| 亚洲免费久久| 粉嫩av亚洲一区二区图片| 国产免费av一区| 日韩在线www| 成人av综合网| 91最新在线观看| 亚洲精品美国一| 欧美日韩国产亚洲沙发| 国产啪精品视频网站| 亚洲第一在线| 亚洲av毛片基地| 欧美成人a视频| 经典三级一区二区| 黄色片免费在线观看视频| 久久午夜色播影院免费高清| 国产免费高清av| 日本一本a高清免费不卡| 91精品在线观看国产| 性色av蜜臀av色欲av| 欧美精品少妇一区二区三区| а√在线中文在线新版| 亚洲精品国产精品国自产| 成人动漫一区二区| 亚洲香蕉在线视频| 国产91精品久久久久|