国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁 科技周邊 人工智能 使用Langchain Text Splitters -Analytics Vidhya拆分數(shù)據(jù)的7種方法

使用Langchain Text Splitters -Analytics Vidhya拆分數(shù)據(jù)的7種方法

Apr 19, 2025 am 10:11 AM

Langchain文本拆分器:優(yōu)化LLM輸入以提高效率和準確性

我們上一篇文章介紹了Langchain的文檔加載程序。但是,LLM具有上下文窗口大小的限制(以代幣測量)。超過此限制會截斷數(shù)據(jù),損害準確性并增加成本。解決方案?僅將相關數(shù)據(jù)發(fā)送到LLM,需要數(shù)據(jù)分割。輸入Langchain的文本拆分器。

使用Langchain Text Splitters -Analytics Vidhya拆分數(shù)據(jù)的7種方法

關鍵概念:

  1. 文本拆分器的關鍵作用:理解為什么有效的文本拆分對于優(yōu)化LLM應用程序,平衡上下文窗口大小和成本至關重要。
  2. 多樣化的文本拆分技術:探索各種方法,包括角色計數(shù),代幣計數(shù),遞歸分裂以及針對HTML,代碼和JSON結構量身定制的技術。
  3. Langchain文本分離器實施:學習實用應用,包括安裝,文本分割的代碼示例以及處理多種數(shù)據(jù)格式。
  4. 語義分裂以增強相關性:發(fā)現(xiàn)句子的嵌入和余弦相似性如何創(chuàng)造語義上連貫的塊,從而最大程度地提高相關性。

目錄:

  • 什么是文本拆分器?
  • 數(shù)據(jù)拆分方法
  • 基于角色計數(shù)的分裂
  • 遞歸分裂
  • 基于令牌計數(shù)的分裂
  • 處理HTML
  • 特定于代碼的分裂
  • JSON數(shù)據(jù)處理
  • 語義塊
  • 常見問題

什么是文本拆分器?

文本拆分器將大文本分為較小的,可管理的塊,以改善LLM查詢相關性。它們直接在原始文本或蘭鏈文檔對象上工作。多種方法適合不同的內容類型和用例。

數(shù)據(jù)拆分方法

Langchain文本拆分器對于有效的大型文檔處理至關重要。它們可以提高性能,上下文理解,實現(xiàn)并行處理并促進更好的數(shù)據(jù)管理。讓我們檢查幾種方法:

先決條件:使用pip install langchain_text_splitters安裝軟件包

基于角色計數(shù)的分裂

此方法使用指定的分離器根據(jù)字符計數(shù)分配文本。

來自langchain_community.document_loader
來自langchain_text_splitter

#加載數(shù)據(jù)(用PDF路徑替換)
loader = unscontralypdfloader('how-to-formulate-successful-business-strategy.pdf',mode ='single')
data = loader.load()

text_splitter = prinateTextSplitter(saparator =“ \ n”,chunk_size = 500,chunk_overlap = 0,is_separator_regex = false)
texts = text_splitter.split_documents(數(shù)據(jù))
Len(文本)#輸出:塊數(shù)量

此示例將文本分為500個字符的塊,使用newline字符作為分離器。

遞歸分裂

這是順序使用多個分離器,直到塊低于chunk_size 。對于句子級分裂有用。

來自langchain_text_splitter

recursive_splitter = recursivecharactertextsplitter(saparators = [“ \ n \ n”,“ \ n”,r“(?>> 293)

#...(其余代碼保持相似)

基于令牌計數(shù)的分裂

LLM使用令牌;通過令牌計數(shù)分裂更準確。此示例使用o200k_base編碼(檢查github鏈接中的型號/編碼映射)。

從langchain_text_splitters導入tokentextsplitter

text_splitter = tokentextsplitter(encoding_name ='o200k_base',chunk_size = 50,chunk_overlap = 0)
texts = text_splitter.split_documents(數(shù)據(jù))
Len(文本)#輸出:塊數(shù)量

遞歸分裂也可以與令牌計數(shù)相結合。

對于純文本,通常優(yōu)選使用字符或令牌計數(shù)進行遞歸分裂。

處理HTML

對于HTML等結構化數(shù)據(jù),分裂應尊重結構。此示例基于HTML標頭拆分。

從langchain_text_splitters導入htmlheadertextsplitter

headers_to_split_on = [(“ h1”,“ header 1”),(“ h2”,“ header 2”),(“ h3”,“ header 3”)]
html_splitter = htmlheadertextsplitter(headers_to_split_on,return_each_element = true)
html_header_splits = html_splitter.split_text_from_url('https://diataxis.fr/')
len(html_header_splits)#輸出:塊數(shù)

HTMLSectionSplitter允許根據(jù)其他部分進行分割。

特定于代碼的分裂

編程語言具有獨特的結構。此示例使用語法意識分配用于Python代碼。

來自langchain_text_splitter

#...(Python代碼示例)...

python_splitter = recursivecharactertextsplitter.from_language(language = language.python,chunk_size = 100,chunk_overlap = 0)
python_docs = python_splitter.create_documents([Python_code])

JSON數(shù)據(jù)處理

嵌套的JSON對象可以在保留密鑰關系時分開。

來自langchain_text_splitters導入recursivejsonsplitter

#...(JSON數(shù)據(jù)示例)...

splitter = recursivejsonsplitter(max_chunk_size = 200,min_chunk_size = 20)
塊= splitter.split_text(json_data,convert_lists = true)

語義塊

該方法使用句子嵌入和余弦與語義相關的句子的相似性。

來自langchain_experiment.text_splitter導入semanticchunker
來自langchain_openai.embeddings進口openaiembeddings#需要OpenAi API鍵

#...(使用openaiembeddings和semanticchunker的代碼)...

結論

Langchain提供了各種文本分裂方法,每種方法都適用于不同的數(shù)據(jù)類型。選擇正確的方法可以優(yōu)化LLM輸入,提高準確性并降低成本。

常見問題

(問答部分基本相同,并進行較小的措辭調整以清晰度和流動。)

以上是使用Langchain Text Splitters -Analytics Vidhya拆分數(shù)據(jù)的7種方法的詳細內容。更多信息請關注PHP中文網其他相關文章!

本站聲明
本文內容由網友自發(fā)貢獻,版權歸原作者所有,本站不承擔相應法律責任。如您發(fā)現(xiàn)有涉嫌抄襲侵權的內容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅動的應用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

從采用到優(yōu)勢:2025年塑造企業(yè)LLM的10個趨勢 從采用到優(yōu)勢:2025年塑造企業(yè)LLM的10個趨勢 Jun 20, 2025 am 11:13 AM

以下是重塑企業(yè)AI景觀的十種引人注目的趨勢。對LLMSorganizations的財務承諾正在大大增加其在LLMS的投資,其中72%的人預計他們的支出今年會增加。目前,近40%a

AI投資者停滯不前? 3條購買,建造或與人工智能供應商合作的戰(zhàn)略途徑 AI投資者停滯不前? 3條購買,建造或與人工智能供應商合作的戰(zhàn)略途徑 Jul 02, 2025 am 11:13 AM

投資蓬勃發(fā)展,但僅資本還不夠。隨著估值的上升和獨特性的衰落,以AI為中心的風險投資的投資者必須做出關鍵決定:購買,建立或合作伙伴才能獲得優(yōu)勢?這是評估每個選項和PR的方法

生成AI的不可阻擋的增長(AI Outlook第1部分) 生成AI的不可阻擋的增長(AI Outlook第1部分) Jun 21, 2025 am 11:11 AM

披露:我的公司Tirias Research已向IBM,NVIDIA和本文提到的其他公司咨詢。Growth驅動力的生成AI采用的激增比最樂觀的預測更具戲劇性。然后,

這些初創(chuàng)公司正在幫助企業(yè)出現(xiàn)在AI搜索摘要中 這些初創(chuàng)公司正在幫助企業(yè)出現(xiàn)在AI搜索摘要中 Jun 20, 2025 am 11:16 AM

由于AI,那些日子是編號的。根據(jù)一個螺柱,搜索企業(yè)諸如Travel網站皮劃艇和Edtech Company Chegg之類的企業(yè)正在下降,部分原因是60%的網站搜索不會導致用戶單擊任何鏈接。

AGI和AI超級智能將嚴重擊中人類天花板的假設障礙 AGI和AI超級智能將嚴重擊中人類天花板的假設障礙 Jul 04, 2025 am 11:10 AM

讓我們來談談。 對創(chuàng)新AI突破的分析是我正在進行的AI中正在進行的福布斯列覆蓋的一部分,包括識別和解釋各種有影響力的AI復雜性(請參閱此處的鏈接)。 前往Agi和

構建您的第一個LLM應用程序:初學者的教程 構建您的第一個LLM應用程序:初學者的教程 Jun 24, 2025 am 10:13 AM

您是否曾經嘗試過建立自己的大型語言模型(LLM)應用程序?有沒有想過人們如何提高自己的LLM申請來提高生產率? LLM應用程序已被證明在各個方面都有用

AMD繼續(xù)在AI中建立動力,還有很多工作要做 AMD繼續(xù)在AI中建立動力,還有很多工作要做 Jun 28, 2025 am 11:15 AM

總體而言,我認為該活動對于展示AMD如何向客戶和開發(fā)人員移動球非常重要。在SU下,AMD的M.O.要制定明確,雄心勃勃的計劃并對他們執(zhí)行。她的“說/do”比率很高。公司做

未來預測從AI到AGI的道路上的大規(guī)模情報爆炸 未來預測從AI到AGI的道路上的大規(guī)模情報爆炸 Jul 02, 2025 am 11:19 AM

讓我們來談談。 對創(chuàng)新AI突破的分析是我正在進行的AI中正在進行的福布斯列覆蓋的一部分,包括識別和解釋各種有影響力的AI復雜性(請參閱此處的鏈接)。對于那些讀者

See all articles