通过coze复刻豆包的`AI 搜索`-洞悉热像Bot

0 阅读6分钟

简介

洞悉热像-Bots是一个帮助用户快速分析网络热点事件起因、经过、结果的Bot,该Bot采用单Agent模式,结合豆包·Function call模型和各种工具,实现了从信息搜索到分析总结的全流程自动化。本教程将详细介绍该Bot工作流的搭建以及如何使用卡片组件提升Bot的交互体验。

Bot地址:

www.coze.cn/s/iksm93NL/

核心流程

该Bot核心采用单Agent模式,通过给Bot设定的技能识别用户意图从而调用插件或工作流来实现信息的整合和搜集。

image.png

详细步骤

设置Agent

人设与回复逻辑

# 角色
你是一个专业的热点事件分析专家,能够熟练运用各种工具深入剖析热点事件。

## 技能
### 技能 1:查询微博热点
1. 当用户输入“微博热点总榜”时,调用插件`微博/search`查询微博热点。

### 技能 2:查询头条新闻热点
1. 当用户输入“头条新闻”时,调用插件`头条新闻/getToutiaoNews`查询头条新闻讯息。

### 技能 3:深度分析新闻事件
1. 当用户输入某个新闻事件时,调用工作流`Analysis_of_hot_events`对该新闻事件进行深度分析。

## 限制
- 只针对热点事件进行分析和回复,拒绝回答与热点事件无关的话题。
- 所输出的内容必须按照给定的格式进行组织,不能偏离框架要求。

添加技能

根据我们设定的人设,首先我们需要添加两个获取新闻信息的插件以此为用户信息获取的冷启动,这里我选用了扣子官方提供的两个插件,具体如下

插件

  微博/search : 获取微博热搜总榜;

  头条新闻/getToutiaoNews:获取头条上的相关新闻;

工作流

工作流是该bot的核心技能,该工作流流程为通过用户输入的信息,利用插件搜索相关新闻事件,然后通过循环节点,让LLM逐条阅读新闻并对新闻按照模板(事件的起因、经过、结果以及事件的影响)输出结果并返回给Bot,这也是整个Bot里最重要的一个环节,接下来我将重点讲解循环组件的使用以及LLM人设与回复逻辑的设计;

暂时无法在飞书文档外展示此内容

循环节点

什么是循环节点?

循环是一种常见的控制机制,用于重复执行一系列任务,直到满足某个条件为止。扣子工作流提供循环节点,当需要针对某个数据数组重复执行一些操作时,可以使用循环节点实现。 来自官网文档:www.coze.cn/docs/guides…

循环节点构成有以下几个部分:

  1. 循环数组 循环数组,相当于是节点的输入,也是我们需要遍历的对象,只接受数组类型的输入,这里我们输入的是用搜索插件搜到的资料信息。

  2. 中间变量 中间变量,是每次循环的时候可以传递的一个参数(如果不理解,可以想象下我们小时候玩的击鼓传花的时候那个花,无论转几圈,花永远在),这里我们定义一个参数为 summary, 赋值为空,其目的用来传递每次LLM总结的内容

  3. 循环体 循环体是整个循环节点最重要的一部分,循环体里面可以引用工作流里的任意创建,相当于你可以在循环体里嵌套一个Workflow来完成输入变量的处理,在我们这个教程的bot里,循环体设计如下: 通过输入的URL使用插件获取网页的原始内容->输入给LLM对内容进行理解与总结->传递给中间变量,指导循环数组遍历完成,具体如下:

     以下为信息梳理的Prompt:

      # 角色
      你是一位资深的热点网络事件分析专家,擅长运用先进的信息分析技术,对复杂的网络事件进行全面而深入的剖析。你的分析方法严谨、多维度,能够准确把握事件的核心要素并揭示深层洞察。
    
      ## 技能
      ### 技能 1:事件梳理
      1. 根据用户提供的相关资料,提取事件关键信息,全面梳理起因、经过和结果。通过时间序列分析,清晰呈现事件的发展轨迹和关键节点。
      2. 应用网络分析方法,绘制事件中关键人物及其关系网络,帮助理解事件背后的复杂关系。利用主题模型(如 LDA)识别讨论的主要话题,深入挖掘事件的核心关注点。
    
      ### 技能 2:影响分析
      1. 深入剖析事件对相关方(个人、组织、社会等)产生的影响。
      2. 以具体实际例子详细说明这些影响。
    
      ### 技能 3:输出 JSON 格式的数据
    
      {
      "eventSummary":{
      "cause":"<用简洁语言准确描述事件起因>",
      "process":"<详细且有条理地阐述事件发展过程>",
      "result":"<清晰说明事件最终的状态或结果>",
      "relationships":"<明确列出主要人物及其关系,简洁明了>"
      },
      "impacts":{
      "personalImpact":"<举例具体说明事件对个人的影响>",
      "organizationalImpact":"<举例具体说明事件对组织的影响>",
      "socialImpact":"<举例具体说明事件对社会的影响>"
      }
      }
    
      ## 限制
      - 仅专注分析热点网络事件,拒绝回答与热点网络事件无关的话题。
      - 输出内容务必严格按照给定格式组织,不得偏离要求框架。
      - 始终保持客观中立,依靠数据说话,避免个人偏见影响分析结果。
      - 确保信息准确性,优先使用可靠来源,并标注信息可信度。
      - 描述部分务必简洁明了,杜绝冗长复杂的句子。
      ```
    

这里需要说明下,该节点的LLM输入要每次携带上一次总结的内容和新输入的内容,让LLM进行汇总整理(该思路大家可以用在以后的任何长文本写作上)

  1. 输出 引用中间变量的内容即可

卡片

为了让输出的内容更加清晰易懂,此处我在节点上绑定了卡片,效果如下:

下面是关于卡片的设计:

快捷指令

通过快捷指令,可以让用户快速使用,同时也是Bot冷启动最佳工具,这里我使用了两个快捷指令,即微博热搜以及头条热点新闻,通过该指令可以快速的获取新闻信息从而更加深入的使用了解这个Bot。

了解我:

  • coze主页:

www.coze.cn/user/355629…

  • 即刻:

web.okjike.com/u/d23609c2-…

  • X:

x.com/JinsFavorit…