取消
顯示的結果
而不是尋找
你的意思是:

問題從DBFS . txt文件加載到Langchain TextLoader ()

David_K93
貢獻者

你好,

我致力於建立一個Langchain QA在磚中的應用。我目前有13 . txt文件加載到DBFS和我試圖在反複閱讀TextLoader(),將它們加載到RecursiveCharacterTextSplitter從Langchain塊他們(),然後將它們添加到一個色度的數據庫。這從我的本地機器上,運行時沒有問題。但從DBFS加載的應用程序似乎並不接受文件。

guru_error截圖2023-05-19 171751

我已經嚐試加載這些作為字符串對象加載到TextLoader()但這並不奏效。

有人發現一個解決方案嗎?

1接受解決方案

接受的解決方案

David_K93
貢獻者

最後我修修補補,發現我需要使用操作係統包訪問它的/ dbfs filepath:

#遍曆文檔的目錄,負載,分裂然後添加總清單

txt_ls = []

因為我在os.listdir (dir_ls):

文件名= os.path。加入(dir_ls,我)

裝載機= TextLoader(文件名)

文件= loader.load ()

text_splitter = RecursiveCharacterTextSplitter (chunk_size = 1000, chunk_overlap = 0)

文本= text_splitter.split_documents(文檔)

txt_ls.append(文本)

在原帖子查看解決方案

3回複3

venkatcrc
新的貢獻者三世

試著用。

python組件需要前綴“/ dbfs”路徑。因為你正在使用的輸出dbutils.fs.ls它將前綴為“dbfs:”

取代裝載機= TextLoader(我[0])裝載機= TextLoader(我[0].replace (dbfs: ', ' / dbfs '))

David_K93
貢獻者

最後我修修補補,發現我需要使用操作係統包訪問它的/ dbfs filepath:

#遍曆文檔的目錄,負載,分裂然後添加總清單

txt_ls = []

因為我在os.listdir (dir_ls):

文件名= os.path。加入(dir_ls,我)

裝載機= TextLoader(文件名)

文件= loader.load ()

text_splitter = RecursiveCharacterTextSplitter (chunk_size = 1000, chunk_overlap = 0)

文本= text_splitter.split_documents(文檔)

txt_ls.append(文本)

Vidula_Khanna
主持人
主持人

嗨@David凱西

謝謝你發布你的問題在我們的社區!我們很高興幫助你。

幫助我們為您提供最準確的信息,請您花一些時間來回顧反應和選擇一個最好的回答了你的問題嗎?

這也將有助於其他社區成員可能也有類似的問題在未來。謝謝你的參與,讓我們知道如果你需要任何進一步的援助!

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map