我們正在使用Rust開發一個知識庫系統,遇到了一些問題,在此記錄備忘。
-
錯誤:Unable to make method calls because underlying connection is closed
場景:在docker中調用headless_chrome時出錯
原因:為減小鏡像大小,我們使用官方ubuntu鏡像,該鏡像是最小化鏡像,無其他依賴,需要將依賴庫復制到鏡像中,在復制so文件時,遺漏了/usr/lib/x86_64-linux-gnu/nss下的內容,導致網絡連接問題。 -
libreoffice免安裝啟動
我們對libreoffice做了適當的精簡,實現了通過rust調用libreoffice完成word、excel、ppt等格式到pdf的轉換。在此過程中,遇到了不少缺失so的問題。
解決辦法:現在本地安裝libreoffice,然后將缺失的so拷貝到壓縮包,同時也需要將安裝路徑下的文件全部拷貝。 -
知識庫上下文不連貫
將知識庫文本內容切分后存入向量數據庫,但是查詢時有時會出現直接截斷的情況,導致上下文不連貫
解決:使用鏈式存儲,通過記錄數據的前后指向來組成一個雙向聯表,查詢時,向前或向后擴展適當的記錄。