开发者
我要评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

详细安装步骤

前提条件

已安装glibc 2.34及以上版本。

操作步骤

  1. 使用SSH远程登录工具,将获取软件包中获取的DevKit AI安装包(DevKit-AI-x.x.x-Linux-Kunpeng.tar.gz)拷贝到自定义路径下。
  2. 解压DevKit AI安装包(其中“x.x.x”表示版本号,请用实际情况代替)。
    tar zxvf DevKit-AI-x.x.x-Linux-Kunpeng.tar.gz
  3. 进入解压后的DevKit AI安装包目录。
    cd DevKit-AI-x.x.x-Linux-Kunpeng

    解压后文件目录如下:

    ├── chroma_db                                # 向量数据库
    ├── config.yaml                              # 服务配置文件
    ├── documents                                # 待入库的文件
    ├── embeddings                               # 向量化文档工具
    ├── encrypt                                  # 加密工具
    ├── _internal                                # 运行时资源文件
    ├── libcrypto.so.3                           # 加密工具依赖的OpenSSL库文件(非必须,仅在需要配置加密内容如api_key时并且服务器上未安装对应版本OpenSSL时才需要)
    ├── mcp_server                               # MCP Server工具
    ├── Open_Source_Software_Notice.txt
    ├── Software License Agreement.txt
    ├── store                                    # 加密内容保存文件
    └── 软件许可协议.txt

    如本机未安装对应版本的OpenSSL,需要在执行工具前导入环境变量。其中,“/path/to”表示工具文件夹实际存放路径。

    export LD_LIBRARY_PATH=/path/to/DevKit-AI-x.x.x-Linux-Kunpeng:$LD_LIBRARY_PATH
  4. (可选)运行encrypt工具,生成api_key密文。使用api_key情况下需要执行该步骤。
    ./encrypt

    根据提示输入需要加密的内容,回显将显示加密后的密文。如需加密多个内容,可重复执行此操作。

    please enter the password:
    encrypted password: ******************************************************

    “encrypted password:”后的内容即为密文,前后无额外空格。

  5. 配置config.yaml文件。
    1. 打开配置文件。
      vi config.yaml
    2. 按“i”进入编辑模式,修改配置文件。
      # 服务基础核心配置
      server:
        # 支持协议:http / https 默认https;用户需填写host值;port值默认为8000
        protocol: https
        host:
        port: 8000
        # HTTPS SSL证书配置 (https模式时必填,http模式自动失效)
        ssl:
          ssl_keyfile: /path/key.pem
          ssl_certfile: /path/cert.pem
        # 用户认证,用于鉴权 (可选);value填写为加密后的值
        key :
          enable: false
          value:
      
      
      # 聊天模型配置
      llm:
        model:
        provider:
        base_url:
        api_key:
      
      
      # 词嵌入模型配置
      embedding:
        model:
        provider:
        base_url:
        api_key:
      表1 参数说明

      参数

      说明

      服务基础核心配置

      protocol

      服务协议,默认使用https。若配置为https,请在ssl字段中配置证书文件相关信息。

      host

      本机IP地址。无默认值,不建议填写0.0.0.0。

      port

      服务侦听端口,默认8000。

      说明:

      如果服务器已开通防火墙,请确认服务器OS防火墙已开通服务侦听端口,请参考开启防火墙端口

      ssl

      ssl_keyfile

      通过OpenSSL获取的私钥文件。

      ssl_certfile

      通过OpenSSL获取的证书文件。

      key

      enable

      是否启用用户认证,若开启则需要配置value。

      value

      认证的key值密文,密文可使用步骤4工具生成。

      聊天/词嵌入模型配置

      model

      模型名称。

      provider

      模型provider,仅支持openai或ollama格式。

      base_url

      模型的服务地址。

      api_key

      模型的api_key密文,仅openai格式需要使用,可通过步骤4工具生成。

      由于工具共用运行时资源文件,因此无论是否使用全部功能,都需完整填写配置。

    3. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
  6. 执行embeddings文件,进行文档的向量化和入库操作(首次使用或删除chroma_db文件夹后需要执行该步骤)。
    ./embeddings

    显示如下内容,则表示文档已入库成功。

    Embeddings completed; documents have been successfully ingested into the vector database.
  7. 执行以下命令启动 MCP 服务。
    nohup ./mcp_server > ./uvicorn.log 2>&1 &
    cat ./uvicorn.log

    其中,uvicorn.log是服务框架的日志,文件存放路径和名字可自定义。如下图所示即表示MCP服务已正常启动。

  8. (可选)使用第三方客户端(如VS Code+Cline)验证服务端。

    本文以VS Code下的Cline插件为例进行演示,您也可使用任意符合MCP标准的客户端进行操作。

    1. 为智能编程助手Cline配置对话大模型。
      1. 单击右上角进入设置页面。
      2. 请根据实际情况配置Provider、模型服务的URL、Model名称等信息,配置完成后单击右上角“Done”

    2. 配置MCP服务信息。
      1. 单击右上角进入MCP Servers配置界面。

      2. 单击“Configure”进入配置页签,然后单击“Configure MCP Servers”

        在弹出的右侧JSON配置文件中,根据实际情况填写DevKit AI的MCP服务器的URL(即5配置的IP地址和端口),其余内容保持不变;“timeout”可根据对接的大模型能力及网络状况酌情修改。

        {
          "mcpServers": {
            "devkitai-mcp": {
              "autoApprove": [],
              "disabled": false,
              "timeout": 300,
              "type": "streamableHttp",
              "url": "http://xx.xx.xx.xx:8000/mcp"
            }
          }
        }

        填写完成后单击MCP Servers配置界面右上角“Done”。保存配置后Cline会自动连接MCP服务器,数秒内即可成功建立连接。连接成功后,可查看MCP服务器提供的工具列表及其描述信息。

卸载

  1. 根据端口号查询服务进程号并停止mcp_server进程。可使用同类工具(如lsof、netstat等)查询对应的服务进程号,请根据实际需求选择即可。
    ss -tulpn | grep :{port}
    kill -9 {pid}
    • {port}:待卸载的服务侦听的端口号。
    • {pid}:查询出来的服务进程号。

  2. 使用rm命令删除工具文件夹即可。