当前位置: 首页 > 工具软件 > AnyQ > 使用案例 >

AnyQ部署说明(无docker)

孙才捷
2023-12-01

AnyQ部署说明(无docker)

#根据csdn上AnyQ的安装说明,进行AnyQ的安装。但是反复尝试后,总是出现问题。最主要的一个现象是,编译完成后,没有run_server这个服务,排查都没法排查。后来经过反复尝试,终于安装成功。发现,CSDN上的那篇文章“百度开源 FAQ 问答系统(AnyQ)安装—Linux(无docker)”,总体上是对的,但是完全按照这个安装,我们几个朋友都没成功。分析原因,可能是,当时的版本和现在的版本有一些区别。根据下文提到的步骤,我三个朋友都顺利安装完成,开启AnyQ之旅。接下来,把相关的步骤进行梳理和分享,以帮助哪些饱受AnyQ安装困扰的朋友。
非常感谢“百度开源 FAQ 问答系统(AnyQ)安装—Linux(无docker)”的分享和帮助,地址https://blog.csdn.net/qq_28385535/article/details/83213822
软硬件要求
• 硬件要求:内存8G以上(包含8G),否则在编译(make)时候内存不够用,会跑不动
• 软件要求:centOS7,6的话会出现很多问题
系统下载及环境安装
1.github地址:https://codeload.github.com/baidu/AnyQ/zip/master 手动
2.或者在linux终端执行命令
git clone https://github.com/baidu/AnyQ.git
3.cmake3安装
• 安装gcc/g++的软件依赖(要求大于4.8.2)(已安装请跳过)
yum install -y gcc gcc-c++ make automake
• 下载cmake源代码包(推荐3.3.2),可以去官网查看最新版的下载地址:https://cmake.org/download/
wget https://cmake.org/files/v3.3/cmake-3.3.2.tar.gz
• 解压cmake源码包
tar -zxvf cmake-3.3.2.tar.gz
• 进入目录,设置,编译,链接
cd cmake-3.3.2/
./bootstrap
gmake
gmake install
4.bison 3.0安装
• 首先输入下面命令,查看是否安装及版本号,如果没有安装,则需要提前安装
bison –V

tar -zxvf bison-3.0.tar.gz
./configure
make && make install1
2.系统编译
系统及环境下载安装完以后,进入安装包目录,开始进行编译
cd ./AnyQ
mkdir build && cd build && cma
注意事项:在编译过程中,会遇到多次git clone下载停止的情况,此时只需Ctrl+C暂停程序执行,重新执行cmake … && make即可。这个过程需要反复进行,直到成功为止。(一般建议cmake和make一个一个来运行)
问题1:在gitclone的时候xgboot会编译出错如何解决?
Makefile:31: MAKE [make] - checked OK
src/tree/tree_model.cc: In constructor ‘xgboost::GraphvizGenerator::GraphvizGenerator(const xgboost::FeatureMap&, const string&, bool)’:
src/tree/tree_model.cc:465:55: error: invalid initialization of non-const reference of type ‘std::stringstream& {aka std::basic_stringstream&}’ from an rvalue of type ‘’
TreeGenerator(fmap, with_stats), ss_{SuperT::ss_} {
^
make[3]: *** [build/tree/tree_model.o] Error 1
make[3]: *** Waiting for unfinished jobs…
make[2]: *** [third_party/xgboost/src/extern_xgboost-stamp/extern_xgboost-install] Error 2
make[1]: *** [CMakeFiles/extern_xgboost.dir/all] Error 2
答案:修改AnyQ/cmake/external下的xgboost.cmake文件后重新来
ExternalProject_Add(
extern_xgboost
${EXTERNAL_PROJECT_LOG_ARGS}
DOWNLOAD_DIR ${XGBOOST_SOURCES_DIR}/src/
DOWNLOAD_COMMAND git clone --recursive https://github.com/dmlc/xgboost.git && cd xgboost && git checkout v0.81

3.构建索引、配置及Web服务的安装
系统编译成功以后,在AnyQ/build目录下,执行下面的命令
• 获取AnyQ定制solr、AnyQ示例配置
cp …/tools/anyq_deps.sh .
sh anyq_deps.sh
• 启动solr, 依赖python-json, jdk>=1.8
• 问题1:如何启动solr
• 答案:在AnyQ/build/solr-4.10.3-anyq/example运行命令java -jar start.jar
• 问题2:启动后端口是8983,但anyq需要的端口是8900,如何修改?
• 答案:修改AnyQ/build/solr-4.10.3-anyq/example/etc下的jetty.xml文件中的



50000
1500
false

• 问题3:启动solr时候会报错带有libpaddle_fluid.so错误
• 答案:将AnyQ/build/third_party/lib下的libpaddle_fluid.so拷贝到AnyQ/build/solr-4.10.3-anyq/example/solr-webapp/webapp/WEB-INF/lib下替换已有
将AnyQ/build/solr-4.10.3-anyq/example/solr-webapp下的webapp文件夹拷贝到/tmp/AnyQ/build/solr-4.10.3-anyq/example/webapps下后,将webapp更名为solr
问题5:设置solr索引目录solr.data.dir
在AnyQ/build/solr-4.10.3-anyq/example/solr_config_set/common和AnyQ/build/solr-4.10.3-anyq/example/solr/collection1/conf修改solrconfig.xml文件
${solr.data.dir:/tmp/AnyQ/build/solr-4.10.3-anyq/example/solr/collection1/data}(注意根据当前计算机路径调整)
上述问题解决后再启动java -jar start.jar,应该启动成功。
可以使用http://127.0.0.1:8900/solr/admin.html登陆solr查看
再回到目录build下面的运行下面的命令
cp …/tools/solr -rp solr_script
sh solr_script/anyq_solr.sh solr_script/sample_docs
4.系统运行及监控
• 上面步骤执行成功以后,即可在build目录下运行系统,代码如下:
./run_server
• 系统运行成功后,即可通过http://IP:8999访问系统运行界面
4.服务再次运行
AnyQ服务运行共需要三个步骤:
• 启动solr: 在AnyQ/build/solr-4.10.3-anyq/example运行命令java -jar start.jar
• 注入faq:sh solr_script/anyq_solr.sh solr_script/sample_docs
• 启动run_server

 类似资料: