首页/资讯中心/资讯详情/

使用 AI 从数千篇文章中提取信息

想象一下,您肩负着从数千篇文章中收集信息的任务。传统的网络抓取是行不通的,因为数据像许多电子商务一样是非结构化的,而且数据分散在各个段落中。通常,这是手动完成的,通过一篇一篇地阅读文章以获得所需的信息。对于一篇文章,这项任务可能看起来很简单。开放人工智能可以做到这一点。但是,如果有数千个呢?这就是 power automate、excel、openAI 和 python+streamlit 的组合派上用场的地方!

第一步:网页抓取

我们将这个抓取过程分为两部分。第一个是获取每条新闻的所有链接。然后将其存储在excel表中。我们使用 power automate desktop I(PAD) 来做到这一点。一种非编码替代方案,用于自动执行桌面任务,即由 Microsoft 免费提供的抓取网站。它基本上告诉您显而易见的事情,启动具有特定 URL 的浏览器,从网页获取数据(这次是标题、日期和 URL),启动指定的 Excel 工作表,将这些数据写入此 Excel 工作表,然后保存。

下一步是让 PAD 从之前抓取的新闻 URL 中读取每篇文章。基本上,它是一个循环函数,用于读取存储在 Excel 工作表中的 URL,然后在新浏览器中打开它,并在网站内删除整个文本。并将其存储回 excel 表中。

第二步:建立你自己的人工智能网页

第二步是建立一个 openai 网站,使 PAD 能够抓取信息。这一步是必要的,因为 open ai web UI 的本质是类似聊天的对话。所以PAD会很难区分需要抓取网站的哪一部分。

为此,您需要一个来自 Open Ai 的 API KEY。谷歌一下,有很多教程可以做到这一点。一旦你得到一个,这是你需要复制和粘贴的脚本:

#set environment
import requests
import streamlit as st

# Set the API endpoint and your API key
url = "https://api.openai.com/v1/completions"
api_key = "YOUR OPEN AI API KEY"


st.markdown("# Extract Information from Article")
question = st.text_area("Input Question","",height =100)


# Set the request headers
headers = {
    "Content-Type": "application/json",
    "Authorization": f"Bearer {api_key}",
}

# Set the request data
data = { 
    "model": "text-davinci-003",
    "prompt": question,
    "suffix": "python",
    "max_tokens": 1000,
    "temperature": 0.1,
}
# Send the request and store the response
response = requests.post(url, headers=headers, json=data)
# Parse the response
response_data = response.json()
# Extract the text from the response
text = response_data['choices'][0]['text']
#write response
st.text_area(label ="Response",value=text, height =500)

该脚本一旦使用命令“streamlit run chatgpt-module.py”运行,将打开地址为http://localhost:8501/ 的Web 浏览器

顶框区域将允许您输入您的问题。底部框区域将允许 AI 提供响应。

第三步:自动化问答流程

在这一步中,我们已经拥有了所有组件,剩下的就是将人类与 AI 之间的整个对话自动化为机器与 AI 之间的对话。因此,我们需要定制问题以简化 AI 提供答案的过程。此步骤在 Excel 工作表中完成。像 =CONCAT([ @insert ],[ @Context ]) 这样的简单公式就可以了。有上下文的是文章。并插入问题模板。这是我使用的模板:

以列表格式。你能得到以下属性吗(如果不可用,请输入 N/A)
[Country,
Year,
Date of Contract,
First Delivery Date,
Type,
Brand,
vehicle description,
Maximum Design Speed (km/hr),
Carbody material,
Power (kW),
Manufacturer,
Total Project Value Currency,
Total Project Value,
Trains Configuration,
Buyer,
Funder,
]

您可以对其进行自定义以从文章中提取所需的信息。

一旦完成。这个过程基本上是 excel 工作表和浏览器之间的来回。PAD 会从 excel 表格中获取问题,然后将其粘贴到网站上的问题框中,给它一些时间让 AI 提供答案并复制答案,然后将其写回 excel 表格。