
Qdurllm的流程圖
Qdurllm ( QD rant url s和l arge l Anguage M Odels)是本地搜索引擎,可讓您選擇並將URL內容上傳到矢量數據庫:之後,您可以搜索,檢索和聊天此內容。
這是通過多支碼頭的應用程序,利用QDRANT,Langchain,Llame.cpp,量化的Gemma和Gradio來提供的。
前往擁抱面上的演示空間?
唯一的要求是將docker和docker-compose進行。
如果您沒有它們,請確保將它們安裝在這裡。
您可以通過克隆GitHub存儲庫來安裝應用程序
git clone https://github.com/AstraBert/qdurllm.git
cd qdurllm或者,您可以簡單地將以下文本粘貼到compose.yaml文件中:
networks :
mynet :
driver : bridge
services :
local-search-application :
image : astrabert/local-search-application
networks :
- mynet
ports :
- " 7860:7860 "
qdrant :
image : qdrant/qdrant
ports :
- " 6333:6333 "
volumes :
- " ./qdrant_storage:/qdrant/storage "
networks :
- mynet
llama_server :
image : astrabert/llama.cpp-gemma
ports :
- " 8000:8000 "
networks :
- mynet將文件放在您想要的任何目錄中。
在運行應用程序之前,您可以選擇從Docker Hub中取出所有所需的圖像:
docker pull qdrant/qdrant
docker pull astrabert/llama.cpp-gemma
docker pull astrabert/local-search-application啟動時(請參閱用法),該應用程序運行三個容器:
qdrant (端口6333):作為基於語義搜索檢索的矢量數據庫提供商llama.cpp-gemma (端口8000):這是LMSTUDIO和Google提供的量化Gemma模型的實現,該模型與llama.cpp Server一起使用。這適用於文本生成範圍,豐富用戶的搜索體驗。local-search-application (端口7860):一個Gradio選項卡式接口:llama.cpp-gemma可以與上載URL聊天的可能性all-MiniLM-L6-v2 (標識了10個最佳匹配項)和sentence-t5-base (可以重新編碼10個最佳匹配,並提取出最佳命中率) - 這是與llama.cpp-gemma組合使用的RAG實現。想看看與單層抹布相比雙層抹布的性能嗎?前往這裡!總體計算負擔足以使應用程序不僅可以運行GPuless,而且還具有低RAM的可用性(> = 8GB,儘管Gemma最多可能需要10分鐘才能在8GB RAM上做出響應)。
您可以通過以下內容使應用程序工作 - 非常簡單 - 命令,該命令必須在存儲compose.yaml文件的同一目錄中運行:yaml文件:
docker compose up -d如果您已經拔出了所有圖像,則可以在http://localhost:7860或http://0.0.0.0:7860中找到運行的應用程序,不到一分鐘。
如果您尚未拉出圖像,則必須等待其安裝完成,然後才能實際使用該應用程序。
加載應用後,您會找到一個第一個選項卡,您可以在其中編寫要與之交互的內容的URL:

現在,您的URL已上傳,您可以通過llama.cpp-gemma與他們的內容聊天:

請注意,您還可以設置參數,例如最大輸出令牌,溫度,重複懲罰和生成種子
或者,您可以使用雙層返回語義搜索直接查詢您的URL內容:

該軟件是(並且將永遠是)開源,該軟件是根據MIT許可證提供的。
只要引用了Astra Clelia Bertelli,任何人都可以使用,修改和重新分配其中的任何部分。
貢獻總是非常歡迎!隨意提示問題,打開PR或聯繫作者建議任何更改,請求功能或改進代碼。
如果您發現該應用程序有用,請考慮為其提供資金以進行改進!