万字详解AI实践,零手写编码用AI完成开发 + 数据清洗 + 数据处理 的每日新闻推荐,带你快速成为AI大神

引言

AI时代对开发人员的加强是非常明显的,一个开发人员可以依靠AI横跨数个自己不熟悉的领域包括前后端、算法等。让我们来做个实践,全程使用AI写代码+dify构建工作流快速完成一个获取每日热点新闻的前后端开发以及数据处理、数据清洗的任务,全程不需要我们自己动手写代码,仅跟AI聊天实现

我们来理清一下步骤:
1、点击每日新闻按钮
2、自动获取每日新闻信息
3、用LLM获取到标题、概要、作者、新闻链接
4、用dify + LLM 清洗和处理数据,获取新闻概要内容和新闻标签
5、给前端返回作者、标题、新闻链接、新闻概要内容和新闻标签
6、展示在页面上,并且点击可以跳到对应新闻页面

最后效果:
在这里插入图片描述

数据获取和数据处理

从网上搜索一下头条的每日推荐新闻的接口,我们的每日新闻来源就从这里获取。实际处理可以换成自己需要的接口并进行处理,让模型编码。
在这里插入图片描述
其实就是很简单地发送一个请求,对应代码:

fetch('http://is.snssdk.com/api/news/feed/v51/')
  .then(response => {
    if (!response.ok) {
      throw new Error('Network response was not ok');
    }
    return response.json();
  })
  .then(data => {
    console.log('Success:', data);
  })
  .catch(error => {
    console.error('Error:', error);
  });

粘贴代码观察一下结果
在这里插入图片描述
观察获取到的数据很明显我们只需要url source title abstract这四个字段,分别是对应的链接地址,作者,标题,摘要,做一下数据处理,让模型编码。
在这里插入图片描述
模型帮助我们在前面代码的基础上仅提取了我们需要的部分字段,获取的代码:

fetch('http://is.snssdk.com/api/news/feed/v51/')
  .then(response => {
    if (!response.ok) {
      throw new Error('Network response was not ok');
    }
    return response.json();
  })
  .then(data => {
    // 处理数据
    const articles = data.data.map(item => {
      const content = JSON.parse(item.content);
      return {
        url: content.url,
        source: content.source,
        title: content.title,
        abstract: content.abstract
      };
    });

    // 输出提取的内容
    console.log('Extracted Data:', articles);
  })
  .catch(error => {
    console.error('Error:', error);
  });

处理完之后就是比较简单的我们想要的数据了。
在这里插入图片描述
现在的数据只有链接标题还有一些没意义的摘要(实际上只是截取的文章前面部分),我们需要阅读前,模型就已经帮我们大致总结了一下内容以及对新闻进行了对应的打标签,这个就需要我们通过模型去完成了,我们下面用dify的工作流去完成这件事。

dify构建workflow进行数据清洗

接下来我们来做数据清洗,我希望对标题进行对应的改写,且我需要模型帮我总结内容和对内容打标签。通过dify搭建工作流(注意这里可以使用别的工具,并不一定依赖dify)。
在这里插入图片描述
使用的Prompt如下,注意我们Prompt里面需要精确提到 背景(激活参数)、任务(明确目标)、输出需求(明确要求)、例子(明确要求):

你是一名专业的记者,我从新闻网站API请求到了数据,你需要帮我对这条数据进行内容的总结和标签分类。内容总结应该在200字以内输出到模版变量<S>中,标签分类给出三个,每个标签在五个字以内,标签之间用','隔开,输出到模版变量<T>中,你仅需要输出模版内容。

# 例子
输入:

  {
    source: '国际新说',
    title: '新能源未来在何处?',
    abstract: '最近几年新能源的发展非常迅速,那么未来新能源会往哪一方面发展呢?让我们一起来探讨一下'
  }

输出:

【国际新说】新能源未来在何处?(科技、新能源、发展)

近年来,新能源技术快速发展,引发了对未来发展方向的广泛讨论。文章探讨了新能源可能的发展趋势。


# 模版
【source】title (<T>)
<S>

看看结果。
在这里插入图片描述
在这里插入图片描述
可以看到,输入我们刚才整理好的数据已经可以完成标题改写 + 打标签 + 内容总结了

现在我们可以使用我们刚才提取的数据,结合dify的这个工作流去完成总结文章内容 + 给文章打标签的功能。接下来只需要直接调用dify生成对应的接口,让模型帮我们接口,注意跟模型描述详细的接口需求。

这个是DIFY的接口文档
在这里插入图片描述
让模型编码
在这里插入图片描述
后端代码,主要就是调用了dify生成的接口,然后处理了一下输出:

const apiKey = 'YOUR_KEY';
const apiUrl = 'https://api.dify.ai/v1/workflows/run';
const batchSize = 2;

fetch('http://is.snssdk.com/api/news/feed/v51/')
  .then(response => {
    if (!response.ok) {
      throw new Error('Network response was not ok');
    }
    return response.json();
  })
  .then(data => {
    // 处理数据
    const articles = data.data.map(item => {
      const content = JSON.parse(item.content);
      return {
       
### Dify 平台中的 'Web Content Search and Summarization Workflow' Dify 是一种支持多种工作流模板的平台,其中 'Web Content Search and Summarization Workflow' 提供了一种自动化的方式用于抓取网页内容并对其进行总结。这种工作流通常涉及网络爬虫技术以及自然语言处理(NLP),以便从互联网上提取有用的信息并将这些信息转化为易于理解的形式。 #### 工作流的主要功能 此工作流的核心在于通过搜索引擎或者直接访问网站来获取目标页面的内容,并利用 NLP 技术生成简洁明了的摘要[^1]。以下是该流程的一些主要特性: - **自动化的网页抓取**: 利用内置或自定义配置的爬虫工具,可以快速定位到指定 URL 或者一组关键词对应的结果集。 - **实时数据分析与处理**: 对于动态更新的数据源,比如新闻站点、博客文章或者其他在线资源库,它能即时分析最新发布的内容。 - **智能化文本摘要生成功能**: 基于先进的机器学习模型,能够高效提炼出原始文档的关键要点,帮助用户节省时间的同时提高效率。 #### 配置指南 为了设置和运行这个特定的工作流,在实际操作之前可能需要完成以下几个方面的准备工作: ##### 数据输入设定 明确要查询的目标范围——这可能是具体的网址列表或者是某些主题领域内的关键集合。例如,如果希望监控科技行业的趋势,则应该提供与此相关的术语作为输入参数之一。 ##### 自然语言处理选项调整 根据具体应用场景的要求,可以选择不同的算法和技术手段来进行语义解析、情感评估等方面的操作。对于简单的场景,默认值往往已经足够满足需求;而对于更精细的任务来说,则需进一步微调各项超参数值以获得最佳效果。 ##### 输出格式偏好声明 最后一步就是决定最终呈现形式是什么样的结构化数据还是自由流动式的叙述体裁?是否有特别强调的部分想要突出显示出来? 下面给出一段 Python 脚本示例代码片段展示如何初始化这样一个项目实例: ```python from dify import Client client = Client(api_key="your_api_key") workflow_id = "web_content_search_and_summarize" input_data = { "urls": ["https://example.com/page1", "https://example.com/page2"], "keywords": ["technology", "innovation"] } response = client.run_workflow(workflow_id=workflow_id, input=input_data) print(response['summary']) ``` 上述脚本展示了怎样创建客户端对象并与 API 进行交互从而启动预设好的 workflow 实例。注意替换 `your_api_key` 和其他占位符为你自己的真实凭据及所需变量的实际值。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值