五個開源大模型文檔聊天機器人
如何讓企業(yè)內(nèi)部大量的文檔方便地被管理者或者員工使用,是數(shù)字化過程中的一項重要內(nèi)容。文檔聊天機器人可以基于大模型并以聊天的交互方式為用戶提供文檔服務,這是目前一個比較流行的提高文檔使用效率的方案。
團隊可以通過聊天機器人簡單地詢問與文檔有關(guān)的問題,即可獲得即時、準確的回答,節(jié)省了大量的查找文檔的時間,從而幫助他們提高工作效率。
以下是一些文檔聊天機器人的應用案例:
(1) 醫(yī)療保?。?/p>
- 即時訪問患者記錄和病史。
- 有效管理合規(guī)文件和報告。
- 快速檢索存檔數(shù)據(jù),用于研究和治療計劃。
(2) 法務:
- 訪問和搜索大量的案件檔案和合同。
- 管理合規(guī)性和法規(guī)文件。
- 通過快速檢索判例和法律的論據(jù)來提高研究的準確性。
(3) 會計:
- 分析財務記錄以發(fā)現(xiàn)異常。
- 為審計和調(diào)查收集歸檔文件。
- 自動分析復雜的財務數(shù)據(jù)以檢測欺詐。
在技術(shù)實現(xiàn)上一般基于大模型以及RAG或者Agent應用架構(gòu),并且結(jié)合嵌入模型對文檔內(nèi)容向量化,存儲到向量數(shù)據(jù)庫,以實現(xiàn)文檔內(nèi)容的檢索和問答機制。
由于文檔對于組織來說是重要的數(shù)據(jù)資產(chǎn),包含許多機密信息,因此,在建設(shè)一個基于大模型的文檔聊天機器人時,私有化方案是比較靠譜的選擇。與SaaS相比,其優(yōu)勢包括:
- 敏感數(shù)據(jù)得以保留在組織內(nèi)部,保證數(shù)據(jù)安全
- 一次安裝,長期使用,而非按月收費
- 可以圍繞組織的需求構(gòu)建系統(tǒng)
- 可以在沒有互聯(lián)網(wǎng)接入的情況下工作
以下是一些比較優(yōu)秀的開源文檔AI聊天助手解決方案??梢愿鶕?jù)需求,選擇合適的開源項目代碼進行改造,以實現(xiàn)適配國內(nèi)大模型服務或者本地大模型的方案。
1.DocsGPT
https://github.com/arc53/DocsGPT
DocsGPT是一個尖端的開源解決方案,它簡化了在項目文檔中查找信息的過程。通過集成強大的GPT模型,開發(fā)人員可以輕松地提出有關(guān)項目的問題并獲得準確的答案。DocsGPT提供AI知識共享,并可將知識集成到AI工作流程中,實現(xiàn)端到端的方案。
DocsGPT還針對文檔應用提供了開源模型:
2.AiChat
https://github.com/sigoden/aichat
AiChat是一個一體化的LLM CLI工具,具有Shell Assistant、Chat-REPL、RAG、AI Tools Agents等功能。該應用程序使用Rust語言編寫,具有多平臺支持、shell助手、chat-REPL和多表單輸入支持。提供了一個友好的用戶界面,并且可以完全離線運行。
(1) Shell Assistant
(2) Chat-REPL
(3) RAG(Chat with your documents)
(4) LLM Playground
LLM Playground是一個Web應用程序,支持直接在瀏覽器中任何LLM進行交互。
3.private-gpt
https://github.com/zylon-ai/private-gpt
PrivateGPT是一個可以直接用于生產(chǎn)環(huán)境的AI項目,可以使用大型語言模型的功能來實現(xiàn)文檔的詢問,由于項目可以100%私有化部署,任何時候都不會有數(shù)據(jù)離開運行環(huán)境,即使在沒有互聯(lián)網(wǎng)連接的情況下也能夠運行。
該項目提供了一個API,提供了構(gòu)建私有的、上下文感知的AI應用程序所需的所有功能。遵循OpenAI API標準,并支持通用Http和流式響應服務。
API分為兩個邏輯塊:
(1) 高級API,包裝了RAG(檢索增強生成)復雜性的實現(xiàn):
- 文檔的攝?。簝?nèi)部管理文檔解析、拆分、元數(shù)據(jù)提取、嵌入生成和存儲。
- 使用來自文檔的上下文完成聊天:提取上下文的檢索、提示工程和響應生成。
(2) 低級API,允許高級用戶實現(xiàn)自己的復雜管道:
- 嵌入生成:基于一段文本。
- 上下文塊檢索:給定一個查詢,從的文檔中返回最相關(guān)的文本塊。
除此之外,還提供了一個Gradio UI客戶端來調(diào)試API,包含一組非常有用的功能,如:批量模型下載腳本、提取腳本、文檔文件夾監(jiān)視等。
4.LocalGPT
https://github.com/PromtEngineer/localGPT
LocalGPT是一個支持使用GPT模型在本地設(shè)備上與文檔聊天的開源應用程序,允許您在不影響隱私的情況下與文檔進行對話。一切都在本地運行,沒有數(shù)據(jù)會離開您的計算機環(huán)境。
這個項目參考了private-gpt的實現(xiàn)。
https://github.com/zylon-ai/private-gpt
LocalGPT基于LangChain、HuggingFace LLM、ChromaDB和Streamlit開發(fā)。
特征:
- 注重隱私:您的數(shù)據(jù)保留在您的計算機上,確保100%的安全性。
- 多模型支持:無縫集成各種開源模型,包括HF、GPTQ、GGML和GGUF。
- 多樣化的嵌入:可以從一系列開源嵌入中選擇嵌入模型。
- 可重用的LLM:一旦下載,LLM可重用,無需重復下載。
- 支持聊天記憶:記住您以前的對話(在會話中)。
- 提供API:LocalGPT有一個API,可以用來構(gòu)建RAG應用程序。
- 圖形界面:LocalGPT帶有兩個GUI,一個使用API,另一個是獨立的(基于streamlit)。
- 支持GPU、CPU、HPU MPS:支持多個平臺開箱即用,使用CUDA、CPU、HPU (Intel? Gaudi?)或MPS等。
5.Kotaemon
https://github.com/Cinnamon/kotaemon
kotaemon是一個開源的、干凈的、可定制的RAG UI,用于與文檔聊天。為最終用戶和開發(fā)人員而建。
特征:
- 托管自己的文檔QA(RAG)web-UI:支持多用戶登錄,可在私人/公共收藏中組織文件,與他人協(xié)作并分享聊天內(nèi)容。
- 管理LLM嵌入模型:支持對接本地LLM、或者流行的API提供商(OpenAI,Azure,Ollama,Groq)。
- Hybrid RAG pipeline:具有混合(全文矢量)檢索器和重新排序的Sane默認RAG pipeline,以確保最佳檢索質(zhì)量。
- 支持多模式QA:通過圖形和表格支持對多個文檔執(zhí)行問題回答。支持多模態(tài)文檔解析(UI上的可選選項)。
- 帶有高級引用的文檔預覽:默認情況下,系統(tǒng)將提供詳細的引用,以確保LLM答案的正確性。當檢索返回相關(guān)性較低的文章時,提供查看引文警告(包括相關(guān)分數(shù)),并直接在瀏覽器內(nèi)PDF查看器中進行高亮顯示。
- 支持復雜推理方法:使用問題分解來回答復雜問題。支持基于Agent的推理,包括ReAct、ReWOO和其他Agent。
- 可配置的UI:可以在UI上調(diào)整檢索生成過程的最重要過程(包括提示)。
- 高可擴展性:在Gradio上構(gòu)建,因此可以自由地自定義或添加任何UI元素。此外,支持多種策略的文件索引檢索,提供GraphRAG索引示例。