基于AppFlow实现钉钉群聊与通义千问对话

本教程将为您介绍如何利用AppFlow在钉钉群实现与通义千问大模型进行对话。

背景信息

DashScope灵积模型服务建立在模型即服务(Model-as-a-Service,MaaS)的理念基础之上,围绕AI各领域模型,通过标准化的API提供包括模型推理、模型微调训练在内的多种模型服务。通过围绕模型为中心,DashScope灵积模型服务致力于为AI应用开发者提供品类丰富、数量众多的模型选择,并通过API接口为其提供开箱即用、能力卓越、成本经济的模型服务。各领域模型的能力均可通过DashScope统一的API和SDK来实现被不同业务系统集成,AI应用开发和模型效果调优的效率将因此得以激发,助力开发者释放灵感、创造价值。

AppFlow提供灵积通义千问连接器和钉钉机器人连接器,通过AppFlow可以将钉钉群聊中与机器人的对话信息发送到通义千问并将大模型回答通过机器人发送回钉钉群聊。

步骤一:创建灵积API-KEY

  1. 登录模型服务灵积,在左侧导航栏中,选择管理中心 > API-KEY管理2024-03-15_17-29-55.png

  2. 单击创建新的API-KEY,系统会生成API-KEY,并在弹出的对话框中展示。

    此处您可以点击复制按钮将API-KEY的内容复制保存。5.png

  3. 复制并在安全的地方保存API-KEY后,单击我已保存,关闭按钮关闭弹窗。

    此次创建的API-KEY可立即用于调用DashScope模型服务API,对API-KEY的后续操作均可在当前的API-KEY管理页面进行。6.png

步骤二:创建AppFlow连接流

  1. 单击AppFlow控制台,在左侧导航栏中,选择连接流,然后单击创建连接流2024-03-15_17-41-14.png

  2. 填写连接流的基本信息,然后单击下一步2024-03-15_17-41-01.png

  3. 配置触发节点。

    在触发节点页选择钉钉机器人,然后在弹出页面选择触发事件处,选择收到文本消息时,然后单击保存,进入下一步2024-03-15_17-46-26.png

  4. 配置执行动作节点。

    1. (可选)若您希望在提问后机器能够立即给出“问题已收到,正在思考中”的答复。则选择钉钉机器人并设置执行动作和入参配置信息。

      1. 选择执行动作。

        执行动作处,选择发送文本消息,然后单击保存,进入下一步2024-03-15_18-11-00.png

      2. 入参配置处,设置入参配置信息。

        1. Webhook地址处,单击插入变量,然后选择1.收到文本消息时 > 请求头 > 会话回调地址

        2. 文本内容处,填写您希望在提问后立即回复的内容。7.png

    2. 单击2024-03-13_15-55-13.png,继续配置下一个节点。

    3. 在弹出的界面中,选择通义千问连接器并配置节点信息。

      1. 执行动作处,选择模型提问prompt,然后点击保存,进入下一步2024-03-15_18-20-39.png

      2. 连接凭证处,单击添加新凭证,输入灵积API-KEY凭证名称,点击确定,然后选择新创建的连接凭证并单击保存,进入下一步

      3. 入参配置处,配置入参参数信息。

        1. 输入内容处,单击插入变量,在弹出的插入数据弹窗中,选择1.收到文本消息时 > 请求体 > 会话消息 > 消息内容

        2. 在模型处,选择模型内容并设置参数。详细信息如下表所示。

          参数名

          是否必填

          说明

          示例值

          模型

          指定用于对话的通义千问模型名,目前可选择qwen-turbo、qwen-plus、qwen-max、qwen-max-1201和qwen-max-longcontext。

          qwen-turbo

          top_p核采样方法概率阈值

          指定采样方法概率的阈值。取值范围为0-1,取值范围越大,生成的结果随机性越高,默认值为0.8。

          0.8

          seed种子

          指定生成时使用的随机数种子,用户控制模型生成内容的随机性。

          1234

          max_tokens最大token数量

          最大token数量。

          1500

          top_k采样集大小

          设置生成时采样候选集的大小。

          50

          temperature随机性和多样性的程度

          用于控制随机性和多样性的程度。

          0.85

          开启互联网搜索

          模型内置了互联网搜索服务,该参数控制模型在生成文本时是否参考使用互联网搜索结果。

          true

          2024-03-18_15-16-24.png

    4. 单击2024-03-13_15-55-13.png,继续配置下一个节点。

    5. 在弹出的界面中,选择钉钉机器人连接器并配置节点信息。

      1. 执行动作处,选择发送文本消息,然后单击保存,进入下一步2024-03-18_15-19-25.png

      2. 入参配置区域,设置连接器的入参信息。

        1. Webhook地址处,单击右侧的插入变量并选择1.收到文本消息时 > 请求体 > 会话回调地址

        2. 文本内容处,单击右侧的插入变量并选择3.模型提问prompt > 响应体 > 输出内容

          2024-03-18_15-23-43.png

        3. 单击完成并保存流程

步骤三:创建钉钉对话机器人

此步骤共提供两种创建钉钉对话机器人的方式,分别使用Outgoing功能和使用钉钉开放平台开发,请按实际需求选择并创建。

使用Outgoing功能

  1. 在需要加入机器人的群聊中单击右上角群设置,并单击机器人进入机器人管理页面添加自定义机器人,然后在弹窗中选择自定义9.png

  2. 在添加机器人弹窗中,单击添加并设置机器人信息。

    1. 机器人名字处,设置钉钉机器人的名称。

    2. 安全设置处,选择加签,然后单击复制,复制安全设置的密钥。

      10.png

  3. 登录Appflow控制台,在左侧导航栏中单击连接流,找到刚创建的连接流并点击操作列的详情,进入连接流详情页,然后单击操作列的编辑2024-03-18_15-44-07.png2024-03-18_15-44-56.png

  4. 进入流基本信息填写页面,直接单击下一步,进入流配置页面,然后单击步骤3:发送文本信息编辑按钮,并单击入参配置,在加签Tab填写钉钉机器人生成的签名,单击保存12.png13.png

  5. 返回钉钉机器人页面,选择是否开启Outgoing机制,并在POST地址栏填写第一步中的Webhook地址,然后单击完成14.png

  6. 在钉钉群中@机器人即可实现对话。2024-03-18_15-55-26.png

使用钉钉开放平台

  1. 访问钉钉开放平台,联系您的组织管理员获取开发权限。然后点击创建应用。详细信息,请参见成为钉钉开发者1.png

  2. 在左侧导航栏中,选择机器人,并点击右侧的创建应用按钮。然后填写您的应用名称、应用描述、上传应用图标并单击保存2.png3.png

  3. 在应用开发页面,找到机器人并单击添加,然后打开机器人配置按钮。4.png

  4. 在展开的界面中,配置必要信息。

    消息接收模式请选择HTTP模型,然后在消息接收地址输入框中填写在AppFlow获取的地址。5.png

  5. 调试机器人。

    单击调试与发布处的点击调试,然后钉钉扫码进群调试机器人,确认无误后单击发布

  6. 返回应用开发页面,单击您创建的应用名称,然后进入应用详情页面。单击左侧菜单栏最下方的版本管理与发布,进入到版本发布与管理页面,然后单击右上角创建新版本按钮,输入版本相关信息并选择合适的应用可见范围6.png7.png

  7. 单击保存

    将进入权限审批环节,审批结束后应用将自动发布。如果您已经有权限,可以单击直接发布2024-03-18_16-20-47.png

  8. 进入您想要添加对话机器人的钉钉群,然后添加机器人。9.png