本地法學碩士(RAG)
1.0.0
該專案是一個實驗性沙箱,用於測試與 Ollama 運行本地大型語言模型 (LLM) 相關的想法,以執行檢索增強生成 (RAG),以回答基於範例 PDF 的問題。在此專案中,我們還使用 Ollama 建立具有 nomic-embed-text 的嵌入,以便與 Chroma 一起使用。請注意,每次應用程式運行時都會重新加載嵌入,這效率不高,並且僅出於測試目的而在此處完成。
還有一個使用 Streamlit 建立的 Web UI,以提供與 Ollama 互動的不同方式。
python3 -m venv .venv
來建立 Python 虛擬環境。source .venv/bin/activate
或在 Windows 上執行..venvScriptsactivate
來啟動虛擬環境。pip install -r requirements.txt
安裝所需的 Python 套件。 注意:第一次運行該專案時,它將從 Ollama 下載 LLM 和嵌入所需的模型。這是一次性設定過程,可能需要一些時間,具體取決於您的網路連線。
python app.py -m -p
執行主腳本以指定模型和文件路徑。如果未指定型號,則預設為 Mistra。如果未指定路徑,則出於範例目的,預設為位於儲存庫中的Research
。-e
指定要使用的嵌入模型。如果未指定,則預設為 nomic-embed-text。這將載入 PDF 和 Markdown 文件、產生嵌入、查詢集合並回答app.py
中定義的問題。
ui.py
腳本的目錄。streamlit run ui.py
來運行Streamlit 應用程式。這將啟動本機 Web 伺服器並在預設 Web 瀏覽器中開啟一個新選項卡,您可以在其中與應用程式互動。 Streamlit UI 允許您選擇模型、選擇資料夾,與命令列介面相比,提供了一種更簡單、更直觀的方式與 RAG 聊天機器人系統進行互動。該應用程式將處理文件的載入、產生嵌入、查詢集合並以互動方式顯示結果。