【数据分析】利用Python+AI+工作流实现自动化数据分析-全流程讲解
文章目录
- 一、为什么要用AI进行自动化分析?
- 二、AI自动化分析场景
- 三、编写Python脚本
- 示例1、用flask实现让AI分析数据内容
- 使用说明:
- 示例2、用定时任务的方式,定时处理AI数据
- 📋 代码说明
- 四、把AI分析的数据,放到AI工作流中做展示
- 五、openAI的key
- 结尾
在信息爆炸的时代,如何快速获取有价值的洞察力成为了各行各业的迫切需求。传统的内容分析方法往往又耗时又费力,并且难以满足快速变化的市场需求。尤其是当内容多变的情况下。难以总结或分析。但是我们可以借用 OpenAI 的强大之处,可以轻松实现自动化内容分析,这样不仅可以提高我们的工作效率,还能获得更深层次的见解。🤖✨
一、为什么要用AI进行自动化分析?
- 节省时间:自动化分析可以大幅减少人工处理数据的时间,让你将精力集中在更重要的决策上。
- 提高准确性:AI 模型经过大量数据训练,能够提供更为准确和一致的分析结果,减少人为错误。
- 获取深层洞察:AI 能够识别文本中的潜在模式和趋势,帮助你发现隐藏在数据背后的重要信息。
二、AI自动化分析场景
AI 的自动化内容分析可以广泛应用于多个领域,包括但不限于:
- 市场研究:快速分析消费者反馈和市场趋势,帮助企业做出更明智的决策。
- 内容创作:为博客、社交媒体和营销材料生成创意内容,提高内容生产效率。
- 学术研究:自动化文献综述和数据分析,帮助研究人员节省时间并提高研究质量。
- 客户支持:分析客户反馈和支持请求,优化客户服务流程。
三、编写Python脚本
示例1、用flask实现让AI分析数据内容
from flask import Flask, request, jsonify
from openai import OpenAI
app = Flask(__name__)
# 初始化 OpenAI 客户端
client = OpenAI(
api_key="YOUR_API_KEY", # 替换为您的 API 密钥
base_url="YOUR_BASE_URL" # 替换为您的 API 基础 URL
)
@app.route('/chat', methods=['POST'])
def chat():
# 获取请求中的 JSON 数据
data = request.get_json()
user_message = data.get('message')
# 调用 OpenAI API
response = client.chat.completions.create(
messages=[
{'role': 'user', 'content': user_message}, # 用户消息
],
model='gpt-3.5-turbo', # 使用的模型
stream=True
)
# 收集响应内容
response_content = ""
for chunk in response:
response_content += chunk.choices[0].delta.content
# 返回响应内容
return jsonify({'response': response_content})
if __name__ == '__main__':
app.run(debug=True)
使用说明:
-
安装 Flask 和 OpenAI SDK:
确保您已经安装了 Flask 和 OpenAI SDK。可以通过以下命令安装:pip install Flask openai
-
替换 API 密钥和基础 URL:
在代码中,替换YOUR_API_KEY
和YOUR_BASE_URL
为您自己的 OpenAI API 密钥和基础 URL。 -
运行 Flask 应用:
将上述代码保存为app.py
,然后在终端中运行:python app.py
-
发送请求:
您可以使用 Postman 或 curl 向http://127.0.0.1:5000/chat
发送 POST 请求,JSON 格式的请求体如下:{ "message": "鲁迅为什么打周树人?" }
-
查看响应:
接口会返回一个 JSON 格式的响应,其中包含 OpenAI 的回复。
示例2、用定时任务的方式,定时处理AI数据
下面是使用 Python 的 schedule
库来创建一个定时处理任务,自动请求 OpenAI 的内容分析。以下是完善后的脚本示例:
import time
import schedule
from openai import OpenAI
# 初始化 OpenAI 客户端
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="YOUR_BASE_URL"
)
def fetch_openai_response():
print("开始请求 OpenAI 的内容分析...")
response = client.chat.completions.create(
messages=[
{'role': 'user', 'content': "鲁迅为什么打周树人?"}, # 把要分析的接口数据传到这里面'content': "鲁迅为什么打周树人?"
],
model='gpt-3.5-turbo',
stream=True
)
# 处理响应
for chunk in response:
print(chunk.choices[0].delta.content, end="", flush=True)
print("\n内容分析完成.")
# 定义定时任务,每隔10分钟执行一次
schedule.every(10).minutes.do(fetch_openai_response)
# 主循环,保持脚本运行并执行调度的任务
if __name__ == "__main__":
print("定时任务已启动. 每10分钟执行一次内容分析.")
while True:
schedule.run_pending()
time.sleep(1) # 睡眠1秒,避免占用过多CPU资源
📋 代码说明
-
依赖库:确保你已经安装了
schedule
库。可以通过以下命令安装:pip install schedule
-
API Key 和 Base URL:请填写你的 OpenAI API 密钥和基础 URL。
-
定时任务:脚本中使用
schedule.every(10).minutes.do(fetch_openai_response)
设置了一个定时任务,每10分钟调用fetch_openai_response
函数。 -
主循环:使用
while True
循环来保持脚本运行,并调用schedule.run_pending()
来执行所有到期的任务。 -
输出:每次请求 OpenAI 的内容分析时,都会在控制台输出结果,并在完成后打印一条消息。
四、把AI分析的数据,放到AI工作流中做展示
首先,我对前端不太熟悉,我虽然用Python实现了AI数据的分析。但是每次获取数据都要调用Python代码。所以我目前是用“一站式能用AI平台”的工作流。搭建了一套UI交互。然后利用工作流里面的AI组件调用自己的接口。这也暂时解决了我不会写前端代码,并且还想用UI页面展示的一大难题
(为什么不写前端页面。因为浪费时间)
一站式能用AI平台:https://www.nyai.chat/chat?invite=nyai_1141439&fromChannel=csdn
五、openAI的key
OpenAI 是一个先进的人工智能平台,能够处理复杂的自然语言任务。但是openAI平台的key虽然没有停发,但是需要梯子去拿。所以我用的是国内渠道,哈哈!
api调用文档:https://flowus.cn/codemoss/share/42cfc0d9-b571-465d-8fe2-18eb4b6bc852?time=1725866236422
结尾
如果你对 Python 编程、自动化任务或其他技术主题感兴趣,欢迎关注我的 CSDN 账号,获取更多精彩内容!同时,别忘了在评论区分享你的想法和问题,让我们一起交流学习!🌟
希望这篇文章能帮助你更好地理解定时任务的实现方式,期待你的反馈与分享!