RAGFlow建立知识库搜索引擎
知识库问答系统是大模型AI很重要的应用领域。Google也专门推出了Vertex Agent Builder的产品,可以快速建立大模型Documents Search的引擎。大家可以体验下这个产品的功能,可以问答的方式搜索知识库的内容。RAGFlow算是Google产品的开源替代。
RAGFlow的安装也相对简单,其实与Dify安装一致,只需要输入以下几行命令便可以完成安装。需要注意RAGFlow对系统的要求不低,至少16GB的RAM。而且整个镜像也很大,超过9G。
$ git clone https://github.com/infiniflow/ragflow.git
$ cd ragflow
$ git checkout -f v0.15.1
$ docker compose -f docker/docker-compose.yml up -d
当出现如下报错的时候,表示80端口被占用:
Error response from daemon: driver failed programming external connectivity on endpoint ragflow-server : Bind for 0.0.0.0:80 failed: port is already allocated
只需要把历史占用端口的Docker的Container关闭:
docker container ls
docker rm -f <container-id>
安装完成可通过以下命令确认RAGFlow是否正常运行:
$ docker logs -f ragflow-server
如果正常运行会显示以下信息:
____ ___ ______ ______ __
/ __ \ / | / ____// ____// /____ _ __
/ /_/ // /| | / / __ / /_ / // __ \| | /| / /
/ _, _// ___ |/ /_/ // __/ / // /_/ /| |/ |/ /
/_/ |_|/_/ |_|\____//_/ /_/ \____/ |__/|__/
* Running on all addresses (0.0.0.0)
* Running on http://127.0.0.1:9380
* Running on http://x.x.x.x:9380
INFO:werkzeug:Press CTRL+C to quit
然后通过浏览器输入localhost
便可以访问服务器。
配置LLM与Embedding模型
配置大模型首先需要添加大模型。一种是通过API的方式添加在线的LLM,一般会涉及费用;另一种是安装本地大模型,不会涉及费用。一种简单的方法是通过Ollama安装,先在官网下载系统支持的版本。安装好后需要运行Ollama软件,这样才能执行相应的命令。
Ollama官网的模型列表有介绍哪些模型是可以通过Ollama来下载与本地运行的。以下载llama3.1模型为例,只需要运行以下命令就可运行:
ollama run llama3.1
Ollama常用的命令如下:
ollama list #列出模型
ollama run #运行模型
ollama rm #删除模型
ollama show #显示模型信息
下载好本地模型之后则需要把信息填入RAGFlow的后台。RAGFlow使用的是Docker,Ollama是在本地运行的管理模型的程序,所以base URL为:
http://host.docker.internal:11434