
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或联系作者建议任何更改,请求功能或改进代码。
如果您发现该应用程序有用,请考虑为其提供资金以进行改进!