大家好,我是Rico,今天给大家分享一个我在搭建make自动化工作流中经常用到的一个方法,使用这个方法,可以帮助你你网页中获取到高质量的信息,以便后续AI大模型对这些信息进行处理,这篇文章价值很高,希望你能认真读完!
自动化工作流大致可以分为两类,AI自动化工作流、非AI自动化工作流。随着AI大模型的不断迭代,加入了AI大模型的自动化工作流会变得越来越聪明。
AI大模型加入到工作流,能够让工作流的功能变得更加强大,并且可以实现不写一行代码,也能实现传统代码才能实现的功能,比如,从网上抓取任何我们想要的数据。但想要AI大模型能够完成我们布置的任务,我们需要给它提供一个优质的输入数据,有了优质的数据输入,我们才能够最大程度地得到我们想要的结果。
作为人类,我们平时从网上获取信息的渠道,主要是浏览器,浏览器是“人”和“计算机”之间的翻译器,他能将存放在服务器里的,含有大量html标记语言的文本信息,转化成适合我们人类进行阅读的,含有排版的富媒体网页。
现在你使用浏览器,随便打开一个网页,你就会看到像下面这样,具有图片、文字,并且进行排版的网页,我们可以迅速从网页中获取我们需要的信息,例如:一张图片、一段文字、一个二维码…

但是,当你使用鼠标,右键,然后选择“显示网页源代码”,你就会看到如下图所示的,含有大量html标记语言的文本信息,虽然我们需要的相关信息也都在里面,但是其中也夹杂着大量的html、css、js标记语言,它虽然更适合计算机进行存储和计算,但作为一名人类,我们很难从中快速地找到我们需要的内容。

我们日常使用的浏览器,它从远程服务器计算机上获取上图中的html文件后,将其“翻译”成适合我们人类阅读的网页,浏览器就是“人”和“计算机”之间的翻译器。

进入智能时代,人类和计算机之间,出现了第三者——AI大模型,那么,三者如何才能进行高效的沟通呢?无论是适合计算机的html,还是适合人类的图文排版,对于AI大模型来说,都不是完美的呈现方式。
如果我们直接将html文件发送给AI大模型,那些html、css、js标记语言,会带来大量的Token消耗,目前AI大模型的主流计费方式,就是Token消耗量,此外,这些标记语言,也会给AI大模型带来很多理解上的干扰,影响到后续的任务质量。
如果我们把网页截图直接发送给AI大模型,同样会存在一些问题,比如,AI虽然能够识别截图中的图片、文字、二维码等信息,但是,它没办法获得图片url等信息,这非常不利于后续的自动化任务。
人、AI大模型、计算机之间需要一个“翻译器”,它需要能够将人类和计算机的语言,翻译给AI大模型,让AI大模型能够更加高效、精准地理解计算机语言。下面我给大家介绍一个这样的优秀的、免费的“翻译器”,或者说,它AI大模型的“浏览器”——jina.ai。它能通过从 URL 中提取核心内容并将其转换为干净的、LLM 友好的文本来解决以上问题,从而确保为AI自动化工作流提供高质量的输入。

直接给大家看下jina.ai的功能和效果。我们提供一个网址url:https://www.ricoxueai.cn/make_course/make%e8%b4%a6%e5%8f%b7%e6%b3%a8%e5%86%8c%e4%b8%8e%e7%99%bb%e5%bd%95/,将其提供给jina.ai,第一次,我们把输出的内容格式先定为“HTML”,然后点击“获取响应”,此时你会获得这个网页的全部html,上面我们解释过,这种格式,并不利于AI大模型对其进行处理,

如果我们把输出的内容格式先改为“Markdown”,再次获取响应,你将会获得下图所示的结果。你会发现,这次返回的数据中,大量的不适合我们人类,也不适合AI大模型的HTML标记已经没有了,取而代之的是非常容易理解的信息。

比如我们很容易从中找到“网页标题”、“网址信息”、“图片信息”、“内容文本信息”等,如果我们把这些数据发送给AI大模型,不仅减少了大量的token消耗,它还能更快速获取并识别其中的关键信息,然后根据我们发送的指令,对相关信息进行处理,最终反馈回来我们需要的数据。

此外,jina.ai在读取网页数据的时候,还可以顺便识别出每一张图片的内容。网页上的图像会使用读取器中的视觉语言模型自动添加标题,并在输出中格式化为图像 alt 标签。这为您的下游 LLM 提供了足够的提示,以将这些图像纳入其推理和总结过程。这意味着您可以询问有关图像的问题,选择特定的图像,甚至将其 URL 转发到更强大的 VLM 进行更深入的分析!


为了满足不同场景的需求,jina.ai还提供了其他格式的输出,包括:文本、截屏、屏幕快照等,大家可以根据后续处理任务的需要,选择最合适的输出格式。比如,如果你想获取一个网页的截图,你可以将输出格式改为”截屏”,你将获取到以下结果,后面你就可以针对截图图片进行自动化处理。

此外,我们在获取网页内容时,jina.ai还给我我们更多的自由度选项,例如,我们可以选择只读取网页中的某一部分内容,或者排除掉网页中的某一部分内容,我们就可以通过设置“目标选择器”和“排除选择器”来实现。使用方法也很简单,下面讲一下:

一个网页HTML中,会存在网页的元素和属性,例如:header、body、footer、class、id。通过这些元素和属性,HTML可以清晰地定义网页的结构和样式,方便开发者进行设计和交互功能的实现。

我们打开一个网页,点击鼠标的右键,选择“检查”,然后你就会看到这些元素和属相。

例如,当我右键评论区域,然后选择“检查”,就能够快速定位到这段代码所在的位置,当我把鼠标指针移动到这段代码上方时,左侧也会显示代码所对应的页面的位置。

我们在代码中,能够找到这部分网页内容对应的class和id。class=”comments-area bs-card-box p-4″;id=”comments”。如果这部分的内容在我们后续的任务处理中是不需要的,所以在读取网页的时候,需要排除这部分内容,我们就可以按照下图所示,在jina.ai中进行设置,规则是:header、body、footer直接填写,class的值前加“.”,id的值前加“#”,示例如下:

目标选择器的配置方法,也是同样的道理,配置完成后,我们再次“获取响应”,我们就会得到更干净的信息了。

如何在make自动化平台中,调用jina.ai获取优质的内容输入呢,也很简单,jina.ai提供了免费的API,我们可以使用Make中的HTTP模块,直接调用API就行了,具体方法如下:
第一步:配置jina,阅读API调用示例。我们在jina.ai上配置好相关选项后,会生成一个API调用示例,你会发现,jina提供的API基础url网址的规则为:https://r.jina.ai/+你需要读取的网页的url。

第二步:调用jina的API。进入Make场景编辑器,添加HTTP的“Make a request”模块,并按照下图进行配置。
1.配置URL和调用方法:URL可以通过数据映射的方式提供,方法(Method)选择:GET。

2.配置标头(Headers):把jina中的“H”信息,对应地填写到HTTP模块中的Name和Value中。


3.这里需要注意的是,jina会提供免费的api_key(jina_7998cecXXXXXXXXXX),当你进入jina.ai,你就能获得你自己的api_key,每一个key都有一定的”词元额度”,用完之后你需要重新换一个新的api_key,放心是免费的。

4.点击“ok”保存后,运行一次,查看运行结果如下。

第三步:使用读取的数据。我们可以将读取的数据,通过数据映射的方式,传递到后续的自动化流程模块中,比如,我们可以把数据传给OpenAI模块,让AI大模型处理这些高质量的、干净的、对AI大模型友好的数据。

看到这里,你应该已经完全理解,为什么我会说AI大模型需要一个翻译器,为什么jina.ai是一个优秀的“翻译器”。在使用Make的过程中,我们经常会需要获取到某个网页的数据,此时,我们就可以通过上述的方法,从网页中提取到对AI大模型来说相对高质量的数据,这是搭建自动化工作流中,非常有价值的方法论,希望能够对大家有帮助。

最后,如果你觉得这篇文章对你有价值,请帮忙点赞,或者将其转发给你认为有需要的人,我们下篇文章见!