首页 > 其他分享 >讯飞有一个可以根据描述文本自动生成PPT的AI接口,有趣

讯飞有一个可以根据描述文本自动生成PPT的AI接口,有趣

时间:2024-06-13 21:10:17浏览次数:10  
标签:return AI text self sid 飞有 PPT def

文档:
https://www.xfyun.cn/doc/spark/PPTGeneration.html

 

价格方面提供了免费1000点的额度,生成一次是10点,正好100次,如果要购买的话最低要购买1344元的,没有按量付费的模式,个人小开发者可买不起。

 

让我们跑起来玩玩,官方提供了python的sdk,下载到本地:

 

不想下载sdk的,我这边直接提供了下载好的源码:

# -*- coding:utf-8 -*-

import hashlib

import hmac

import base64

import json

import time

import requests

class AIPPT():

def __init__(self, APPId, APISecret, Text):

  self.APPid = APPId

  self.APISecret = APISecret

  self.text = Text

  self.header = {}

  # 获取签名

  def get_signature(self, ts):

    try:

    # 对app_id和时间戳进行MD5加密

    auth = self.md5(self.APPid + str(ts))

    # 使用HMAC-SHA1算法对加密后的字符串进行加密

    return self.hmac_sha1_encrypt(auth, self.APISecret)

    except Exception as e:

    print(e)

    return None

  def hmac_sha1_encrypt(self, encrypt_text, encrypt_key):

    # 使用HMAC-SHA1算法对文本进行加密,并将结果转换为Base64编码

    return base64.b64encode(

    hmac.new(encrypt_key.encode('utf-8'), encrypt_text.encode('utf-8'), hashlib.sha1).digest()).decode('utf-8')

  def md5(self, text):

    # 对文本进行MD5加密,并返回加密后的十六进制字符串

    return hashlib.md5(text.encode('utf-8')).hexdigest()

  # 创建PPT生成任务

  def create_task(self):

    url = 'https://zwapi.xfyun.cn/api/aippt/create'

    timestamp = int(time.time())

    signature = self.get_signature(timestamp)

    body = self.getbody(self.text)

    headers = {

    "appId": self.APPid,

    "timestamp": str(timestamp),

    "signature": signature,

    "Content-Type": "application/json; charset=utf-8"

    }

    self.header = headers

    response = requests.request("POST", url=url, data=json.dumps(body), headers=headers).text

    resp = json.loads(response)

    if (0 == resp['code']):

    return resp['data']['sid']

    else:

    print('创建PPT任务成功')

    return None

  # 构建请求body体

  def getbody(self, text):

    body = {

    "query": text

    }

    return body

  # 轮询任务进度,返回完整响应信息

  def get_process(self, sid):

    print("sid:" + sid)

    if (None != sid):

    response = requests.request("GET", url=f"https://zwapi.xfyun.cn/api/aippt/progress?sid={sid}",

    headers=self.header).text

    print(response)

    return response

    else:

    return None

  # 获取PPT,以下载连接形式返回

  def get_result(self):

    # 创建PPT生成任务

    task_id = self.create_task()

    # PPTurl = ''

    # 轮询任务进度

    while (True):

    response = self.get_process(task_id)

    resp = json.loads(response)

    process = resp['data']['process']

    if (process == 100):

    PPTurl = resp['data']['pptUrl']

    break

    time.sleep(2)

    return PPTurl


if __name__ == '__main__':

  # 控制台获取

  APPId = "自己的appid"

  APISecret = "自己的secret"

  # 生成PPT要求

  query = ("介绍一下《一方云知》这个小程序的功能和使用。一方云知是一个可以保存笔记、"

  "有ChatGPT、文生图功能、人像动漫化功能的微信小程序。且没有广告、免费使用")

  demo = AIPPT(APPId, APISecret, query)

  result = demo.get_result()

  print("生成的PPT请从此地址获取:\n" + result)

  

直接超级简单,输入文案直接运行即可:

 

等待

进度70%了:

 

好了:

 

不知道这个地址有没有时效性,讯飞发挥的生成好的pptx源地址如下:

https://bjcdn.openstorage.cn/xinghuo-privatedata/%2Ftmp/apiTempFilea018b1acbdc74eeabfe20cee49224a0b1274908177877909050/%E4%B8%80%E6%96%B9%E4%BA%91%E7%9F%A5%E5%B0%8F%E7%A8%8B%E5%BA%8F%E5%8A%9F%E8%83%BD%E5%85%A8%E8%A7%A3%E6%9E%90.pptx

怕它失效,保险点存了一份放网盘了:

链接:
https://pan.baidu.com/s/1oFzH6ySQeKAAiFhtq7b9tA?pwd=yfyz 提取码: yfyz 复制这段内容后打开百度网盘手机App,操作更方便哦

我们打开ppt see see:

 

颜色挺喜庆,目录:

 

内容:

 

 

发现,它生成的ppt格式比较固定,内容还过得去。

这篇分享文章就到这里啦!如果你对文章内容有疑问或想要深入讨论,欢迎在评论区留言,我会尽力回答。同时,如果你觉得这篇文章对你有帮助,不妨点个赞并分享给其他同学,让更多人受益。

想要了解更多相关知识,可以查看我以往的文章,其中有许多精彩内容。记得关注我,获取及时更新,我们可以一起学习、讨论技术,共同进步。

感谢你的阅读与支持,期待在未来的文章中与你再次相遇!

我的微信公众号:【xdub】,欢迎大家订阅,我会同步文章到公众号上。

标签:return,AI,text,self,sid,飞有,PPT,def
From: https://www.cnblogs.com/shuinanxun/p/18246774

相关文章

  • AIGC底层技术介绍
    1.AIGC概述AIGC,全称ArtificialIntelligenceGeneratedContent,即人工智能生成内容。这是一种新兴的人工智能技术,其核心思想是利用人工智能模型,根据给定的主题、关键词、格式、风格等条件,自动生成各种类型的文本、图像、音频、视频等内容。1.1定义与背景AIGC,即人工智能生成内容......
  • 【无量化,无管理】指标体系建设方案(36页PPT),干货满满
    引言:现代管理学之父彼得·德鲁克曾经说过:“无量化,无管理”、以及“先量化,后决策”,指明了量化管理在企业经营及决策中的意义;其中量化管理的依据就是经营管理指标。在实际中指标很多,如财务指标、经营指标、绩效指标、人力指标……据统计,一个小型企业有上百个指标,而中、大型企业......
  • AI时代的创新工具:如何利用AI生成独具个性的XMind思维导图?
    哈喽,大家好,我是木头左,物联网搬砖工一名,致力于为大家淘出更多好用的AI工具!背景随着互联网的发展,越来越多的人开始使用Markdown来编写文档。Markdown是一种轻量级的标记语言,它允许人们使用简单的文本格式来编写文档,然后将其转换为HTML、PDF等格式。而思维导图则是一种可视化的工......
  • 【java计算机毕设】图书管理系统javaweb java MySQL springboot vue html maven送文档
    1项目功能【java计算机专业学长毕业设计分享】智慧图书管理系统JavaSpringBootvueHTMLMySQL前后端分离2项目介绍系统功能:智慧图书管理系统包括管理员和用户两种角色。管理员的功能包括在个人中心修改个人信息和密码,管理员功能模块管理管理员。基础数据管理模......
  • 让AI回答一下:程序员转型做烧烤有什么优势?AI是真能编呀!
    我让AI回答一下,程序员转型做烧烤有什么优势,AI真的给出答案,不好好像哪一条有优势,都和经营好烧烤店三不沾呢。带底色文字是贝格前端工场的评语。如果程序员转型成为烧烤店老板,他们可能会具有以下优势:1.技术应用:程序员在烧烤店经营中可以利用技术优势,例如建立自己的在线订餐......
  • AI “黏土画风”轻松拿捏,手把手带你云端部署 ComfyUI
    作者:鸥弋、筱姜AI绘画领域,StableDiffusionWebUI、Midjourney、DALL-E都聚拢了一大批的应用开发者和艺术创作者。ComfyUI出现时间略晚,但是它让创作者通过工作流的方式,实现自动化水平更高的AI生图流程,一面世就以强劲势头脱颖而出,在WebUI领域开创了全新的篇章。目前Comf......
  • 活动回顾丨飞天技术沙龙 Serverless + AI 专场(上海站)回顾 & PPT 下载
    5月31日“飞天技术沙龙Serverless+AI专场”上海站圆满落幕。活动受众以关注 Serverless技术的开发者、企业决策人、云原生领域创业者为主,活动形式为演讲、动手实操,让开发者通过一个下午的时间增进对Serverless技术的理解,快速上手Serverless,拥抱云计算新范式带来的......
  • AI大模型排排坐——通义千问、文心一言、讯飞大模型使用体验
    目前,通义千问、文心一言和讯飞大模型是较为受欢迎的AI模型,它们在使用方面各有区别和优劣势。以下是笔者近期使用三个模型的一点浅见:一、通义千问优势:丰富的知识库:通义千问拥有庞大的知识库,能够为用户提供广泛的信息支持。高效的检索能力:采用先进的检索技术,能够快速找......
  • PyQT5之QPainter
    参考https://www.cnblogs.com/jgg54335/p/14904853.html实例一:importsysfromPyQt5.QtWidgetsimportQApplication,QWidgetfromPyQt5.QtGuiimportQPainter,QColor,QFontfromPyQt5.QtCoreimportQtclassDrawing(QWidget):def__init__(self,parent=None):......
  • x.thumbnailer 修复psd缩略图/nemo-preview 自定义预览
    缩略图https://askubuntu.com/questions/1368910/how-to-create-custom-thumbnailers-for-nautilus-nemo-and-caja安装imagemagicksudoaptinstallimagemagick-6.q16/usr/share/thumbnailers/psd.thumbnailerhttps://moritzmolch.com/blog/1749.htmlcd/usr/share/thumbn......