Nuclia
Nuclia 自動索引來自任何內部和外部來源的非結構化資料,提供最佳化的搜尋結果和生成式回答。它可以處理影片和音訊轉錄、圖像內容提取和文件解析。
Nuclia Understanding API
支援處理非結構化資料,包括文字、網頁、文件和音訊/影片內容。它提取所有文字,無論它們在哪裡 (根據需要使用語音轉文字或 OCR),它還提取元資料、嵌入式檔案 (例如 PDF 中的圖像) 和網路連結。如果啟用機器學習,它會識別實體,提供內容摘要並為所有句子產生嵌入。
設定
要使用 Nuclia Understanding API
,您需要有一個 Nuclia 帳戶。您可以在 https://nuclia.cloud 免費建立一個,然後建立一個 NUA 金鑰。
%pip install --upgrade --quiet protobuf
%pip install --upgrade --quiet nucliadb-protos
import os
os.environ["NUCLIA_ZONE"] = "<YOUR_ZONE>" # e.g. europe-1
os.environ["NUCLIA_NUA_KEY"] = "<YOUR_API_KEY>"
範例
要使用 Nuclia 文件載入器,您需要實例化一個 NucliaUnderstandingAPI
工具
from langchain_community.tools.nuclia import NucliaUnderstandingAPI
nua = NucliaUnderstandingAPI(enable_ml=False)
API 參考:NucliaUnderstandingAPI
from langchain_community.document_loaders.nuclia import NucliaLoader
loader = NucliaLoader("./interview.mp4", nua)
API 參考:NucliaLoader
您現在可以呼叫 load
在迴圈中載入文件,直到您獲得文件。
import time
pending = True
while pending:
time.sleep(15)
docs = loader.load()
if len(docs) > 0:
print(docs[0].page_content)
print(docs[0].metadata)
pending = False
else:
print("waiting...")
擷取資訊
Nuclia 傳回以下資訊
- 檔案元資料
- 擷取的文字
- 巢狀文字 (例如嵌入圖像中的文字)
- 段落和句子分割 (由它們的第一個和最後一個字元的位置定義,加上影片或音訊檔案的開始時間和結束時間)
- 連結
- 縮圖
- 嵌入式檔案
注意
產生的檔案 (縮圖、擷取的嵌入式檔案等) 作為權杖提供。您可以使用 /processing/download
端點 下載它們。
此外,在任何層級,如果屬性超過一定大小,它將被放置在可下載的檔案中,並將在文件中被檔案指標取代。這將包含 {"file": {"uri": "JWT_TOKEN"}}
。規則是,如果訊息的大小大於 1000000 個字元,則最大的部分將被移動到可下載的檔案中。首先,壓縮過程將針對向量。如果這還不夠,它將針對大型欄位元資料,最後它將針對擷取的文字。