基于Dify和Hologres快速搭建ChatBI应用

本文介绍如何通过DifyHologres快速搭建ChatBI应用。

背景信息

Dify是一款开源的大语言模型(LLM) 应用开发平台,它融合了Backend as ServiceLLMOps理念,开发者可以快速搭建生产级的生成式AI应用。非技术人员也能参与到AI应用的定义和数据运营过程中。

前提条件

注意事项

Dify会通过已配置的用户访问Hologres实例,需注意以下内容:

  • 资源隔离:可以使用Serverless Computing进行资源隔离。

  • 权限隔离:建议仅赋予用户查询权限,更多对于ChatBI的权限控制详情,请参见Dify官网文档

操作步骤

  1. 安装hologres_text2data和模型工具。本文使用通义千问插件提供模型服务。

    Dify平台,单击插件,选择探索 Marketplace,然后搜索hologres_text2datatongyi并单击安装

    image

    说明

    hologres_text2data插件,已经上线Dify官方市场,且源码已经在GitHub上开源。

  2. 配置模型供应商。

    1. 选择我的账号,然后单击设置,进入成员页面。

      image

    2. 在左侧导航栏中,单击模型供应商

    3. 单击通义千问后面的设置,在弹出的添加 通义千问对话框中,填写API Key

      您可以在添加 通义千问对话框中,单击从阿里云百炼获取 API Key,获取API Key。详情请参见首次调用通义千问API

    4. 单击保存,完成配置。

  3. 导入DSL文件,构建ChatFlow。

    1. Dify平台,选择菜单栏的工作室,然后单击导入DSL文件

      image

    2. 在弹出的对话框中,上传DSL文件Hologres ChatBI with Holo Plugin-250422-v1.yml

    3. 单击创建,完成上传。

      上传完成后,系统默认生成如下工作流。该工作流采用了百炼的Qwen-Max-Latest模型,关于更多的模型详情,请参见模型列表

      image

  4. 在目标ChatFlow编排页面,单击hologres_text2datahologres_excute_sql节点,配置相关Hologres的参数。

    参数名

    说明

    数据库IP/域名

    Hologres实例的域名,例如:hgprecn-cn-xxxk3ovx003-cn-hangzhou.hologres.aliyuncs.com

    您可以登录Hologres管理控制台,在左侧导航栏选择实例列表,单击目标实例ID。在实例详情页面的网络信息区域,获取域名。详情请参见访问域名

    数据库端口

    端口号,默认是80。

    数据库名称

    已创建的数据库名称。

    您可以登录Hologres管理控制台,在左侧导航栏选择实例列表,单击目标实例ID,进入实例详情页面。单击数据库管理,在DB 授权页面,获取数据库名称。

    用户名

    已创建的用户名称,格式为:BASIC$<name>

    您可以登录Hologres管理控制台,在左侧导航栏选择实例列表,单击目标实例ID,进入实例详情页面。单击账号管理,在用户管理页面,获取用户名称。详情请参见用户管理

    密码

    用户对应的密码。

  5. 配置完成后,单击右上角的发布 > 发布更新

  6. 发布完成后,单击右上角的发布 > 运行,进入ChatBI应用开始聊天。

    image