day12_调度和可视化

文章目录

  • day12_调度和可视化
  • 一、任务调度
    • 1、开启进程
    • 2、登入UI界面
    • 3、配置租户
    • 4、创建项目
    • 5、创建工作流
      • 5.1 HiveSQL部署(掌握)
      • 5.2 SparkDSL部署(掌握)
      • 5.3 SparkSQL部署(熟悉)
      • 5.4 SeaTunnel部署(掌握)
      • 5.5 任务上线
  • 二、数据可视化
    • 1、用户画像管理系统(了解)
    • 2、使用Doris分析ElasticSearch
      • 2.1 创建Catalog
      • 2.2 使用示例
    • 3、FineBI可视化
      • 3.1 安装FineBI
      • 3.2 创建数据连接
      • 3.3 创建公共数据(掌握)
        • 3.3.1 Doris数据集
        • 3.3.2 ElasticSearch数据集
        • 3.3.3 ElasticSearch和MySQL标签关联的数据集
        • 3.3.4 数据集更新
      • 3.4 创建分析主题
      • 3.5 创建各个组件
      • 3.6 创建仪表盘
      • 3.7 图表发布

day12_调度和可视化

一、任务调度

1、开启进程

按顺序启动如下服务。注意:如果已经启动了,不用再次启动,其他的例如ElasticSearch、Doris、Hive等不要停。

  • 启动Zookeeper
nohup /export/server/kafka/bin/zookeeper-server-start.sh ../config/zookeeper.sql > /dev/null 2>&1 &


注意: 这是一条命令
  • 启动Hadoop
start-all.sh
  • 启动Hive
启动metastore服务
nohup /export/server/hive/bin/hive --service metastore > /tmp/hive-metastore.log 2>&1 &

启动Hiveserver2服务
nohup /export/server/hive/bin/hive --service hiveserver2 > /tmp/hive-hiveserver2.log 2>&1 &
  • 启动DS海豚调度器
/export/server/dolphinscheduler/bin/start-all.sh
  • 如需写出到Doris,则还需要启动Doris;如需写出到ES,则还需启动ES
启动Doris
    /export/server/doris/fe/bin/start_fe.sh --daemon
    /export/server/doris/be/bin/start_be.sh --daemon
    /export/server/doris/apache_hdfs_broker/bin/start_broker.sh --daemon

----------------------------------------------------------

启动ES
    1- 切换用户
    su es

    2- 进入目录
    cd /home/es/elasticsearch-7.10.2/bin

    3- 启动
    elasticsearch -d

	4- 切回为root
	exit
	
    5- 验证
    jps

----------------------------------------------------------

启动Kafka
    cd /export/server/kafka/bin
    nohup ./kafka-server-start.sh ../config/server.sql 2>&1 &

2、登入UI界面

http://192.168.88.166:12345/dolphinscheduler/ui/login

账号:admin

密码:dolphinscheduler123

在这里插入图片描述

3、配置租户

租户对应的是 Linux 的用户,用于 worker 提交作业所使用的用户。注意一定要是root。
在这里插入图片描述

然后设置admin的租户为root。

在这里插入图片描述

4、创建项目

项目管理->创建项目->输入名称即可
在这里插入图片描述

5、创建工作流

5.1 HiveSQL部署(掌握)

演示用的HiveSQL语句

insert overwrite table dwm.dwm_mem_first_buy_i partition(dt)
select
    t.zt_id,
    t.trade_date_time,
    t.trade_date,
    t.week_trade_date,
    t.month_trade_date,
    t.store_no,
    t.sale_amount,
    t.order_no,
    t.source_type,
    '2025-03-01' as dt
from
    (select
        zt_id,
        create_time as trade_date_time,
        trade_date,
        week_trade_date,
        month_trade_date,
        store_no,
        real_paid_amount as sale_amount,
        order_no,
        source_type,
        row_number() over(partition by zt_id order by create_time) as rn
    from dwm.dwm_sell_o2o_order_i
    where dt<'${inputdate}' and member_type = 1) t
left join dwm.dwm_mem_first_buy_i f
  on t.zt_id=f.zt_id and f.dt < '${inputdate}'
where t.rn=1
  and f.zt_id is null

配置过程如下:

  • 创建数据源:点击数据源中心,然后点击创建数据源
    在这里插入图片描述

  • 填写数据源信息

数据源:选择hive/impala

数据源名称: hive

主机名:up01

端口:10000

用户名:root

数据库名:dwm

配置完成后点击测试连接,没问题后点击提交。
在这里插入图片描述

  • 创建工作流:点击工作流定义,然后点击创建工作流。

在这里插入图片描述
在这里插入图片描述

  • 拖拽一个SQL类型到面板,然后填写节点设置。

节点名称为表名

设置失败重试次数为3次

设置延时告警

设置数据源类型为HIVE,数据源实例选择hive

SQL类型选择非查询

SQL语句填写计算的语句,注意不要带上;

如果使用到UDF函数,可以先注册后进行选择使用

可以在任务中自定义参数,也可以在工作流中进行整体设置。

如果有前置SQL语句或后置SQL语句,可以添加在对应的地方,这里可以把set语句写在前置SQL中

set hive.exec.dynamic.partition.mode=nonstrict;

在工作中,需要配置前置任务,这里的前置任务应该是 dwm_sell_o2o_order_i 。
在这里插入图片描述

  • 保存工作流:点击右上角保存,填写基本信息

工作流名称填写具体的主题或需求名称

租户选择root

执行策略选择并行

全局变量设置key为inputdate,value为$[yyyy-MM-dd-12]。注意使用的是中括号。

在这里插入图片描述

  • 测试:在工作流定义页面,选择member工作流,点击上线,然后点击运行,进行测试。

在这里插入图片描述

  • 结果验证
DS调度前后执行如下的SQL,核对数据条数是否发生变化
select count(1) from dwm.dwm_mem_first_buy_i;

5.2 SparkDSL部署(掌握)

将程序部署到Yarn上,需要注意如下两点:
- 注意1:需要将代码中的setMaster内容改为yarn,或者直接删除。推荐直接删除
- 注意2:在程序代码中与文件路径有关的地方,需要全部都改为分布式文件系统,例如:HDFS。否则会出现找不到文件的异常

本次项目中,也就是需要修改基类中的master("local[*]"),这里推荐删除。具体代码如下:

在这里插入图片描述

创建工作流,以及保存工作流、测试工作流的方式都一样,最大的区别是任务的类型及配置

  • 首先需要将整体的代码打成zip包,因为计算标签的代码中使用到了相关的代码。这里只将tags文件夹打成zip包即可。压缩包的名称不要有中文。
    在这里插入图片描述

  • 将zip包上传到资源中心

在这里插入图片描述

  • 上传标签计算代码

将标签计算的代码,也就是每个四级标签对应的py文件上传到资源中心。可以按照在PyCharm中的文件结构组织文件。

比如创建tags文件夹,在tags文件夹下创建match文件夹,在match文件夹中上传匹配类标签。
在这里插入图片描述
在这里插入图片描述

  • 创建计算节点

新建一个工作流,在其中拖拽一个SPARK类型。然后填写节点设置。
在这里插入图片描述

选项参数如下:

--conf "spark.pyspark.driver.python=/root/anaconda3/bin/python3" \
--conf "spark.pyspark.python=/root/anaconda3/bin/python3" \
--py-files tags.zip

注意: --py-files tags.zip要改成你自己的压缩包

在资源处选择打好并上传的zip包

注意:Spark版本一定要选择SPARK1
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 保存工作流:使用相同的方法,配置其他几个标签计算的节点,配置完成后,点击保存。填写工作流,选择root租户,点击确定。

在这里插入图片描述

  • 上线测试:在工作流定义页面,选择match工作流,点击上线,然后点击运行,进行测试。

**拓展:**也可以直接使用spark-submit命令来提交作业,假设将tags.zip上传到了hdfs的/tags路径,而age_tag.py也上传到了/tags路径,则命令如下:
在这里插入图片描述

cd /export/server/spark

bin/spark-submit --master yarn \
--deploy-mode client \
--driver-cores 1 --driver-memory 512M --num-executors 2 --executor-cores 2 --executor-memory 2G \
--name age_tags \
--conf "spark.pyspark.driver.python=/root/anaconda3/bin/python3" \
--conf "spark.pyspark.python=/root/anaconda3/bin/python3" \
--py-files hdfs://up01:8020/tags/tags.zip \
hdfs://up01:8020/tags/age_tag.py

5.3 SparkSQL部署(熟悉)

整体与HiveSQL部署类似。唯一区别是程序类型选择SQL,Spark版本选择SPARK1。

演示用的SQL:

insert overwrite table ads.ads_mem_user_rfm_i
select
    mem.zt_id,
    if(t.zt_id is null, '121', t.tags_id) as tags_id, -- 121理解为默认标签值
    '2025-03-01' as dt
from dwd.dwd_mem_member_union_i mem
left join (
        select
              zt_id,
              case when r = 1 and f = 1 and m = 1 then '114'
                     when r = 1 and f = 0 and m = 1 then '115'
                     when r = 0 and f = 1 and m = 1 then '116'
                     when r = 0 and f = 0 and m = 1 then '117'
                     when r = 1 and f = 1 and m = 0 then '118'
                     when r = 1 and f = 0 and m = 0 then '119'
                     when r = 0 and f = 1 and m = 0 then '120'
                     when r = 0 and f = 0 and m = 0 then '121'
                end  as tags_id
        from (
                select
                     zt_id,
                     if(min(r) over (partition by zt_id) < 7, 1, 0)           as  r,  -- 取最小的时间差作为r,如果小于7则为1
                     if(f > sum_f * 1.00 / user_count, 1, 0)                  as  f,  -- 与平均值对比,如果大于平均值则为1
                     if(m > sum_m * 1.00 / user_count, 1, 0)                  as  m,  -- 与平均值对比,如果大于平均值则为1
                     row_number() over (partition by zt_id order by dt desc ) as  rn -- 按照日期进行逆序排列
                from (
                        -- 这里就算出了每个用户的R、F、M的值是多少
                        select
                             zt_id,
                             datediff(current_date(), '2025-01-19')        as  r,     -- 距离当天的时间差
                             sum(consume_times) over (partition by zt_id)  as   f,     -- 单个用户完单单量
                             sum(consume_times) over ()                    as   sum_f, -- 所有用户完单单量
                             sum(consume_amount) over (partition by zt_id) as   m,     -- 单个用户完单金额
                             sum(consume_amount) over ()                   as   sum_m, -- 所有用户完单金额
                             t2.user_count, -- 总用户数
                             t1.dt
                        from dwm.dwm_mem_member_behavior_day_i as t1
                        cross join (
                            select count(distinct zt_id) as user_count -- 总用户数
                            from dwm.dwm_mem_member_behavior_day_i -- 用户行为表:下单、付款、浏览、退货等各种信息
                            where datediff(current_date(), to_date(dt)) <= 30
                        ) t2
                    where datediff(current_date(), to_date(t1.dt)) <= 30
                ) t3
        ) t4 where rn = 1 -- 只取最新的一条记录
) t on mem.zt_id = t.zt_id
where mem.start_date <= '${inputdate}' and mem.end_date > '2025-01-19'

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

5.4 SeaTunnel部署(掌握)

在工作流中拖拽一个SHELL节点,然后设置节点。

  • 设置节点名称

  • 配置重试次数,这里可以只设置1次

  • 配置资源信息

  • 配置超时策略,勾选超时告警和超时失败(防止因任务卡住而占用资源,如果超时会自动被杀死)

  • 填写脚本,注意将日期配置成参数形式

首先配置好hive2es.config,然后在shell中填写命令。

在这里插入图片描述

cd /export/server/apache-seatunnel-2.3.5

./bin/seatunnel.sh --config ./config/job/hive2es.config -e local -i pt=${inputdate}

在这里插入图片描述

  • 设置前置任务

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

5.5 任务上线

  • 上线任务

任务上线后,就不可编辑,这样可以避免正在执行的任务被修改
在这里插入图片描述

  • 定时

在这里插入图片描述

  • 时间设定,DS已经可视化处理,我们直接点击相应的时间即可。
    在这里插入图片描述

  • 定时好了后我么可以点击执行时间,查看它任务模拟的执行时间是否正确,执行得到结果如下:

在这里插入图片描述

  • 上线定时
    在这里插入图片描述

整个流程到此就结束了。到指定的时间点,任务会被执行。

二、数据可视化

1、用户画像管理系统(了解)

画像web产品主要使用java和vue实现前后端交互和标签可视化。其中主要有3方面可视化内容:单个用户标签可视化、单个标签可视化、组合标签可视化。

  • 单个用户分析
    在这里插入图片描述

  • 标签分析

在这里插入图片描述

  • 圈人精准营销

在这里插入图片描述

  • 使用Elasticsearch的DSL语句进行查询
案例: 【查用户】查询id为 16682885 的用户的所有标签

POST /user_profile_tags/_search
{
  "query": {
    "term": {
      "user_id": 16682885
    }
  }
}

2、使用Doris分析ElasticSearch

启动Doris
/export/server/doris/fe/bin/start_fe.sh --daemon
/export/server/doris/be/bin/start_be.sh --daemon
/export/server/doris/apache_hdfs_broker/bin/start_broker.sh --daemon

2.1 创建Catalog

  • 在Doris中执行如下命令
CREATE CATALOG es sql (
    "type"="es",
    "hosts"="http://up01:9200",
    "enable_docvalue_scan" = "true",
    "enable_keyword_sniff" = "true"
);

注: 具体参数解释查看课件

在这里插入图片描述

  • 验证集成结果
-- 查看Doris与数据源的整合情况
show catalogs;

-- Catalog名称.数据库名称.数据表名称
select * from es.default_db.user_profile_tags limit 10;

2.2 使用示例

完成在Doris中建立ES外表后,除了无法使用Doris中的数据模型(rollup、预聚合、物化视图等)外并无区别。使用示例如下

  • 切换到es的catalog
switch es;
  • 【查用户】查询id为 16682885 的用户的所有标签
select user_id,tags_id_times,tags_id_once,tags_id_streaming from es.default_db.user_profile_tags where user_id=16682885;

在这里插入图片描述

  • 【查标签】查询标签为18的用户
select user_id,tags_id_times,tags_id_once,tags_id_streaming from es.default_db.user_profile_tags where tags_id_times='18' limit 10;

在这里插入图片描述

3、FineBI可视化

3.1 安装FineBI

  • 1- 执行FineBI安装包, 将其安装到windows上。下一步安装即可。安装完以后启动
    在这里插入图片描述

  • 2- 设置管理员账户
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

3.2 创建数据连接

  • 点击左侧的管理系统,然后点击数据连接,点击数据连接管理

在这里插入图片描述

  • 点击新建数据连接,选择所有,点击Doris。

在这里插入图片描述

  • 根据下图进行配置,完成后点击右上角测试链接,通过后点击保存。

在这里插入图片描述

  • 注意一:如果要配置Doris与ElasticSearch集成后的数据库,数据库名称前面需要带Catalog名称。如下图中的红色框

在这里插入图片描述

  • 注意二:如果FineBI不支持Doris,直接使用MySQL连接即可。端口号要改成9030

在这里插入图片描述

3.3 创建公共数据(掌握)

3.3.1 Doris数据集
  • 点击公共数据,然后点击新建文件夹,新建xtzg文件夹。

在这里插入图片描述

  • 点击xtzg文件夹右边的+号,选择数据库表。

在这里插入图片描述

  • 数据连接选择Doris_DB_log_analysis_db,将右边的所有表选上,点击确定,完成数据库表数据的添加

    在这里插入图片描述

3.3.2 ElasticSearch数据集

因为es数据属于外部表,所以不能直接通过数据库表来配置,需要通过SQL数据集的方式来配置。

前提是先要创建es的catalog。

  • 点击【添加表】,创建SQL数据集

在这里插入图片描述

  • 填写表名为:user_profile_tags

  • 填写SQL语句

select * from es.default_db.user_profile_tags
  • 点击右上角预览,没有问题后,点击确定

在这里插入图片描述

3.3.3 ElasticSearch和MySQL标签关联的数据集
  • 前提准备

在/export/server/doris/fe/lib/目录中上传mysql-connector-java-5.1.49.jar。

在这里插入图片描述

  • 创建catalog
CREATE CATALOG jdbc_mysql sql (
    "type"="jdbc",
    "user"="root",
    "password"="123456",
    "jdbc_url" = "jdbc:mysql://up01:3306/tags_info",
    "driver_url" = "file:///export/server/doris/fe/lib/mysql-connector-java-5.1.49.jar",
    "driver_class" = "com.mysql.jdbc.Driver"
);


-- 集成以后的验证语句
select * from jdbc_mysql.tags_info.tbl_basic_tag limit 10;
  • 有了mysql catalog后,就可以查询mysql中的数据。

在这里插入图片描述

  • 查询某个标签下的所有用户及对应的标签名称:如查询每个用户的年龄段标签,其中年龄段标签的pid为15,对应的sql如下:
select t1.user_id,t2.name
from
    (
    select
    	user_id,
    	tags_id_times,
    	cast(tag as int) as tag
   	from es.default_db.user_profile_tags
    lateral view explode_split(tags_id_times,',') t as tag
) t1
join jdbc_mysql.tags_info.tbl_basic_tag t2
on t1.tag=t2.id
where t2.pid=15
  • 配置数据集:跟配置es的数据集相同,只是sql不同。

在这里插入图片描述

在这里插入图片描述

3.3.4 数据集更新

可以设置缓存策略,从而实现数据的自动更新。

点击数据表,然后点击缓存设置,然后点击编辑,设置缓存策略。

在这里插入图片描述

3.4 创建分析主题

  • 点击仪表板,然后点击新建文件夹,创建xtzg文件夹。
    在这里插入图片描述

  • 点击xtzg文件夹进去,然后新建仪表板,创建小兔智购用户画像分析主题。

在这里插入图片描述

  • 选择数据。点击公共数据,选择xtzg文件夹下的doris_log_user_event_result,然后确定。

在这里插入图片描述

在这里插入图片描述

3.5 创建各个组件

  • 绘制漏斗图

在这里插入图片描述

  • 绘制柱状图
    在这里插入图片描述

  • 用同样的方式,可以绘制其他图

3.6 创建仪表盘

  • 点击下方添加仪表盘,重命名为:小兔智购用户画像

在这里插入图片描述

  • 添加各个组件:通过拖拽的方式,添加绘制好的各个组件
    在这里插入图片描述

3.7 图表发布

可以按照文档操作https://help.fanruan.com/finebi/doc-view-2108.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/972075.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用nvm管理node.js版本,方便vue2,vue3开发

在Vue项目开发过程中&#xff0c;我们常常会遇到同时维护Vue2和Vue3项目的情况。由于不同版本的Vue对Node.js 版本的要求有所差异&#xff0c;这就使得Node.js 版本管理成为了一个关键问题。NVM&#xff08;Node Version Manager&#xff09;作为一款强大的Node.js 版本管理工具…

Java8适配的markdown转换html工具(FlexMark)

坐标地址&#xff1a; <dependency><groupId>com.vladsch.flexmark</groupId><artifactId>flexmark-all</artifactId><version>0.60.0</version> </dependency> 工具类代码&#xff1a; import com.vladsch.flexmark.ext.tab…

Qt开发①Qt的概念+发展+优点+应用+使用

目录 1. Qt的概念和发展 1.1 Qt的概念 1.2 Qt 的发展史&#xff1a; 1.3 Qt 的版本 2. Qt 的优点和应用 2.1 Qt 的优点&#xff1a; 2.2 Qt 的应用场景 2.3 Qt 的应用案例 3. 搭建 Qt 开发环境 3.1 Qt 的开发工具 3.2 Qt SDK 的下载和安装 3.3 Qt 环境变量配置和使…

vscode插件开发

准备 安装开发依赖 npm install -g yo generator-code 安装后&#xff0c;运行命令 yo code 运行 打开项目&#xff0c; 点击 vscode 调式 按 F5 或点击调试运行按钮 会打开一个新窗口&#xff0c;在新窗口按快捷键 CtrlShiftP &#xff0c;搜索 Hello World 选择执行 右下角出…

自制简单的图片查看器(python)

图片格式&#xff1a;支持常见的图片格式&#xff08;JPG、PNG、BMP、GIF&#xff09;。 import os import tkinter as tk from tkinter import filedialog, messagebox from PIL import Image, ImageTkclass ImageViewer:def __init__(self, root):self.root rootself.root.…

嵌入式 lwip http server makefsdata

背景&#xff1a; 基于君正X2000 MCU Freertoslwip架构 实现HTTP server服务&#xff0c;MCU作为HTTP服务器通过网口进行数据包的传输&#xff0c;提供网页服务。其中设计到LWIP提供的工具makefsdata&#xff0c;常用于将文件或目录结构转换为适合嵌入到固件中的二进制格式。 …

架构设计系列(三):架构模式

一、概述 关于移动应用开发中常见的架构模式&#xff0c;这些模式是为了克服早期模式的局限性而引入。常见的 架构模式有&#xff1a; MVC, MVP, MVVM, MVVM-C, and VIPER 二、MVC, MVP, MVVM, MVVM-C, and VIPER架构模式 MVC、MVP、MVVM、MVVM-C 和 VIPER 是移动应用开发中…

CSS盒模

CSS盒模型就像一个快递包裹&#xff0c;网页上的每个元素都可以看成是这样一个包裹&#xff0c;它主要由以下几个部分组成&#xff1a; 内容&#xff08;content&#xff09;&#xff1a;就像包裹里真正装的东西&#xff0c;比如文字、图片等。在CSS里&#xff0c;可用width&a…

解决DeepSeek服务器繁忙的有效方法

全球42%的企业遭遇过AI工具服务器过载导致内容生产中断&#xff08;数据来源&#xff1a;Gartner 2025&#xff09;。当竞品在凌晨3点自动发布「智能家居安装指南」时&#xff0c;你的团队可能正因DeepSeek服务器繁忙错失「净水器保养教程」的流量黄金期⏳。147SEO智能调度系统…

Zookeeper 和 Redis 哪种更好?

目录 前言 &#xff1a; 什么是Zookeeper 和 Redis &#xff1f; 1. 核心定位与功能 2. 关键差异点 (1) 一致性模型 (2) 性能 (3) 数据容量 (4) 高可用性 3. 适用场景 使用 Zookeeper 的场景 使用 Redis 的场景 4. 替代方案 5. 如何选择&#xff1f; 6. 常见误区 7. 总结 前言…

动态规划从入坟走向入坑

目录 1.动态规划的含义 2.动态规划的解题步骤(动规五部曲) 3.动态规划的题型 4.相关思路 1.动规基础(由于我看的博主讲的动规很简单,所以这里就不讲了) 2.背包问题 1.二维dp数组01背包 1.dp[i][j] 表示从下标为[0-i]的物品里任意取&#xff0c;放进容量为j的背包&#xf…

Golang学习笔记_34——组合模式

Golang学习笔记_31——原型模式 Golang学习笔记_32——适配器模式 Golang学习笔记_33——桥接模式 文章目录 一、核心概念1. 定义2. 解决的问题3. 核心角色4. 类图 二、特点分析三、适用场景1. 文件系统2. 图形界面3. 组织架构 四、代码示例&#xff08;Go语言&#xff09;五、…

vue+elementplus创建初始化安装

项目创建初始化 D:\Tool\mysql\education_vue 这个路径下cmd 或打开vscode&#xff0c;把项目丢进code中打开 安装element plus Container 布局容器 | Element Plus npm install element-plus --save 把项目初始文件Homeview AboutView删了&#xff0c;Router index.js中删一…

SQL 优化工具使用之 explain 详解

一、导读 对于大部分开发人员来说&#xff0c;平常接触的无非就是增删改查这些基本操作&#xff0c;创建存储过程&#xff0c;视图等等都是 DBA 该干的活&#xff0c;但是想要把这些基本操作写的近乎完美也是一件难事。 而 explain 显示了 MySQL 如何使用索引来处理 select 语…

仿 Sora 之形,借物理模拟之技绘视频之彩

来自麻省理工学院、斯坦福大学、哥伦比亚大学以及康奈尔大学的研究人员携手开源了一款创新的3D交互视频模型——PhysDreamer&#xff08;以下简称“PD”&#xff09;。PD与OpenAI旗下的Sora相似&#xff0c;能够借助物理模拟技术来生成视频&#xff0c;这意味着PD所生成的视频蕴…

Python的顺序结构和循环结构

文章目录 一、条件语句&#xff08;1&#xff09;条件语句的定义&#xff08;2&#xff09;条件语句的语法&#xff08;a&#xff09;单分支 if&#xff08;b&#xff09;双分支 if-else&#xff08;c&#xff09;多分支 if-elif-elif-...-else &#xff08;3&#xff09;注意事…

04 redis数据类型

文章目录 redis数据类型string类型hash类型list类型set类型zset类型 &#xff08;sortedset&#xff09;通用命令 redis数据类型 官方命令&#xff1a;&#xff1a;http://www.redis.cn/commands.html Redis 中存储数据是通过 key-value 格式存储数据的&#xff0c;其中 val…

AutoGen:玩转多智能体团队协作 (Teams)

&#x1f449;&#x1f449;&#x1f449;本人承接各类AI相关应用开发项目(包括但不限于大模型微调、RAG、AI智能体、NLP、机器学习算法、运筹优化算法、数据分析EDA等) !!!&#x1f449;&#x1f449;&#x1f449; 有意愿请私信!!! AutoGen 的 AgentChat 模块为我们提供了强大…

Python PyCharm DeepSeek接入

Python PyCharm DeepSeek接入 创建API key 首先进入DeepSeek官网&#xff0c;https://www.deepseek.com/ 点击左侧“API Keys”&#xff0c;创建API key&#xff0c;输出名称为“AI” 点击“创建"&#xff0c;将API key保存&#xff0c;复制在其它地方。 在PyCharm中下…

分享8款AI生成PPT的工具!含测评

随着人工智能技术的飞速进步&#xff0c;制作PPT变得愈发便捷&#xff0c;仅需输入主题指令&#xff0c;便能在瞬间获得一份完整的演示文稿。尤其在制作篇幅较长的PPT时&#xff0c;手动编写每一页内容并设计格式和排版&#xff0c;不仅效率低下&#xff0c;而且耗时耗力。 本…