华为云Flexus+DeepSeek征文| 基于华为云Dify-LLM高可用平台开发各厂商服务器维保信息查询助手
1. 概述
我们前面已经通过华为云平台部署好了DIfy高可用平台,并且已经集成了华为云ModelArts Studio大模型,如果还没有对接成功的可以参考这个华为云Flexus+DeepSeek征文| 使用CCE容器部署Dify-LLM平台高可用环境看这一篇就足够了。
环境说明: 因为我前期已经在华为云通过一键方式部署了高可用版本的Dify平台,并在Dify中集成了DeepSeek-R1-Distill-Qwen-32B
大模型,接下来我们就使用此套环境开发一个各厂商服务器维保信息查询的助手。
创建一个“各厂商服务器维保信息查询”的工作流:
2. 创建开始节点
创建完工作流后,开始节点是默认已经添加的:
因为SN号每个厂商服务器的唯一标识,所以咱们需要通过SN来做查询,所以在开始字段中需要用户输入服务器SN序列号。
当然这个SN号也只有服务器厂商内部识别,所以还需要弄一个下拉框让用户选择好“要查询哪个厂商的服务器”。
综上,开始
节点需要有两个变量让用户来确定。
完成上述步骤,开始
节点就创建完成了。
3. 创建条件分发节点
该节点的目的是根据用户选择的品牌执行不同的条件分支
此处我们创建两个分支:浪潮、H3C,当然可以创建各个厂商的,为了篇幅不至于冗余,我这里只列举两个厂商,其它厂商的添加方式大同小异。
4. 创建HTTP请求节点
通过各个厂商的接口地址去查询维保信息,有些接口是POST请求,有些接口是GET请求。具体是哪种方式的请求,可以参考官方手册或者电话咨询各个厂商售后工程师。
首先创建浪潮服务器的HTTP请求接口,浪潮服务器的请求是POST请求
真实的请求接口地址如下:https://support.ieisystem.com/eportal/ui?struts.portlet.action=/portlet/download-front!serverConfig.action&sn=/SN&language=CN&pageId=2317460&moduleId=82efecfc33da48b4a66567cb3dcbe5f3
因为我前面创建了两个分支,浪潮和H3C,所以此处需要创建两个HTTP请求,接下来再创建一个H3C服务器的HTTP请求地址,同样H3C也是POST请求
真实的请求接口地址如下:https://es.h3c.com/entitlement/query?serialNumber=/SN&productNumber=&language=CN
该阶段的显示结果如下:
5. 创建代码执行节点
代码执行节点的作用:因HTTP请求中获取到了请求的Body信息,需要通过代码对Body信息进行过滤获取我们需要的信息
■ 创建浪潮代码节点:
import json
def main(inspur):
inspur = inspur.strip('(').strip(')')
# 将字符串转换为字典
data = json.loads(inspur)
# 提取warranty2的值,并以字典形式返回
return{"enddata": data['warranty2']}
■ 创建H3C代码节点:
import json
def main(H3C):
# 将字符串转换为字典
data = json.loads(H3C)
# 提取endDate的值,并以字典形式返回
end_data = data['data']['es'][0]['combinedUnitEntitlement']['warrantyList'][0]['offerList'][0]['appliesTo']['endDate']
return{"enddata": end_data}
6. 创建结束节点
结束节点对上述代码执行的结果进行输出
7. 验证测试
最终的效果图如下:
■ 浪潮测试结果如下:
■ H3C测试结果如下:
以上都没有问题的情况下,点击发布按钮就可以了。