OpenAI 实战进阶教程 - 第十二节 : 多模态任务开发(文本、图像、音频)
适用读者与目标
- 适用读者:已经熟悉基础的 OpenAI API 调用方式,对文本生成或数据处理有一定经验的计算机从业人员。
- 目标:在本节中,你将学会如何使用 OpenAI 提供的多模态接口(图像生成、语音转录等)开发更丰富的应用场景。
为什么要采用多模态技术?
在现实工作中,我们并不是只处理文字;图像、音频、视频也在企业运营、产品开发、教育培训等多个场景中大量出现。
- 图像场景:用自动生成的视觉素材,快速设计海报、配图或原型图。
- 音频场景:将会议录音转成文本归档,节省人工整理时间。
- 文本结合多模态:先转录语音,然后结合 GPT 生成摘要,帮助团队快速获取关键信息。
多模态技术能够降低人工劳动、提升工作效率、并扩展模型的使用边界,帮助企业和个人更好地管理各种形式的内容。
内容概述
-
OpenAI 对多模态任务的支持
- 图像生成:通过
RESTful API
接口,让模型根据文本描述自动生成相应的图片。 - 音频转录:通过
audio.transcriptions.create
将语音转换为文字,并可进一步结合 GPT 进行语义分析或摘要生成。
- 图像生成:通过
-
常见应用场景
- 文本+图像报告:从产品描述生成图像,用于汇报或展示。
- 语音摘要:将客户访谈、会议录音转成文字并生成要点。
- 多模态内容整合:将图像、文字、音频信息统一管理和分析,形成全面的工作流程。
实操:图像生成与语音转录
1. 使用 RESTful API
方式调用图像生成接口
示例场景:你需要为一款新产品的宣传海报快速生成示意图。
import requestsapi_key = "Your_API_Key"
url = "https://api.openai.com/v1/images/generations"
headers = {"Content-Type": "application/json","Authorization": f"Bearer {api_key}"
}
payload = {"prompt": "未来风格的智能手表设计,搭配时尚的银色表带,呈现简约风格","n": 1,"size": "1024x1024"
}response = requests.post(url, headers=headers, json=payload)
if response.status_code == 200:data = response.json()image_url = data["data"][0]["url"]print("Generated Image URL:", image_url)
else:print("Error:", response.status_code, response.text)
操作说明:
prompt
:用简洁的英文或中文描述需要生成的图像内容。n
:指定生成图像的数量。size
:控制图像分辨率,以平衡质量与生成速度。- 通过
requests.post
调用OpenAI
的图像生成接口。 - 接口返回的
JSON
中包含data
字段,你可以从中取出生成的图像URL
。
实际工作案例:
- 市场团队为新产品做宣传时,可快速生成概念图;
- 设计师可把初步生成图当作灵感来源,之后再进行精修。
2. 使用 requests
库直接调用 Whisper API
转录语音,并结合 GPT 生成摘要
示例场景:录制了一段产品说明会的音频,需要文字转录并提炼成关键要点。
1)录制或获取音频文件
- 录制一段
.wav
格式音频文件,或使用真实会议录音。
2)转录代码示例
import requestsapi_key = "Your_API_Key"
audio_file_path = "demo.wav"url = "https://api.openai.com/v1/audio/transcriptions"
headers = {"Authorization": f"Bearer {api_key}"
}
files = {"file": (audio_file_path, open(audio_file_path, "rb")),"model": (None, "whisper-1"),# 可选参数,如果需要生成翻译,使用 "translate"# "prompt": (None, "Your prompt here"),# "response_format": (None, "json"), # 默认即为 json# "temperature": (None, "0.5"),# ...
}
response = requests.post(url, headers=headers, files=files)if response.status_code == 200:transcription = response.json()print("Transcribed Text:", transcription["text"])
else:print("Error:", response.status_code, response.text)
3)结合 GPT 生成摘要
summary_prompt = f"请基于以下会议文字内容生成简要报告:\n{transcription['text']}\n"summary_response = openai.chat.completions.create(model="gpt-3.5-turbo",messages=[{"role": "user", "content": summary_prompt}],max_tokens=150
)print("Meeting Summary:", summary_response.choices[0].message.content)
操作说明:
whisper-1
:OpenAI 提供的语音识别模型,可将音频转录成文本。- 将转录后的文本与 GPT 结合时,可让 GPT 对会议内容进行整理、提炼重点。
实际工作案例:
- 团队会议整理:降低人工听录音的时间成本,自动生成要点。
- 客户访谈分析:转录访谈音频并生成提炼,帮助销售团队快速洞察客户需求。
小结与练习
-
小结
- 多模态技术为处理图像和音频等非文本信息提供了便捷途径。
- 生成图像可用于宣传海报、产品概念图等视觉场景;语音转录并结合 GPT 生成摘要,可显著节省人工整理时间、提供高效的信息汇总。
- 这些方法对于日常工作中涉及多种媒体格式的场景十分有帮助,能有效简化和加速内容生成与处理流程。
-
练习
- 录制一段 30 秒的语音文件,介绍你当前项目的进度。
- 使用
requests
库直接调用 Whisper API 将音频转录为文字。 - 调用 GPT 模型(如
gpt-3.5-turbo
)生成简要报告,含项目进展要点和后续计划建议。 - 使用
RESTful API
方式直接调用图像生成接口,生成一张与项目主题相关的概念图,进一步完善你的汇报材料。
通过这些练习,你将掌握 OpenAI 多模态 API 的核心应用方式,并为工作中的多样化内容处理带来新的思路和高效工具。
相关文章:
OpenAI 实战进阶教程 - 第十二节 : 多模态任务开发(文本、图像、音频)
适用读者与目标 适用读者:已经熟悉基础的 OpenAI API 调用方式,对文本生成或数据处理有一定经验的计算机从业人员。目标:在本节中,你将学会如何使用 OpenAI 提供的多模态接口(图像生成、语音转录等)开发更…...
《qt easy3d中添加孔洞填充》
《qt easy3d中添加孔洞填充》 效果展示一、创建流程二、核心代码效果展示 参考链接Easy3D开发——点云孔洞填充 一、创建流程 创建动作,并转到槽函数,并将动作放置菜单栏,可以参考前文 其中,槽函数on_actionHoleFill_triggered实现如下:...
windows蓝牙驱动开发-蓝牙常见问题解答
Windows 可以支持多少个蓝牙无线电? Windows 中的蓝牙堆栈仅支持一个蓝牙无线电。 此无线电必须符合蓝牙规范和最新的 Windows 硬件认证计划要求。 蓝牙和 Wi-Fi 无线电如何有效共存? 蓝牙和 Wi-Fi 无线电都在 2.4 GHz 频率范围内运行,因此…...
Ubuntu 下 nginx-1.24.0 源码分析 - ngx_ssl_version 函数
定义 event\ngx_event_openssl.h 中: #if (OPENSSL_VERSION_NUMBER > 0x10100001L)#define ngx_ssl_version() OpenSSL_version(OPENSSL_VERSION)#else#define ngx_ssl_version() SSLeay_version(SSLEAY_VERSION)#endif #if (OPENSSL_VERSION_NUMBER…...
提示工程:少样本提示(Few-shot Prompting)
少样本提示(Few-shot Prompting)是一种利用大语言模型从少量示例样本中学习并处理任务的方法。它的核心思想是利用大语言模型的上下文学习能力,通过在提示中增加“示例样本”来启发大语言模型达到举一反三的效果。这种方法避免了重新训练或者…...
从量化投资到AI大模型:DeepSeek创始人梁文锋的创新之路
一、学术的启蒙:学霸的崭露头角 梁文锋的成长故事始于1985年,他出生在广东省湛江市的一个普通家庭。从小,梁文锋就展现出对知识的强烈渴望和非凡的学习能力,尤其在数学领域,他总是能够轻松解决复杂的难题,成为学校里备受瞩目的“学霸”。 2002年,年仅17岁的梁文锋以吴川…...
基于lstm+gru+transformer的电池寿命预测健康状态预测-完整数据代码
项目视频讲解: 毕业设计:基于lstm+gru+transformer的电池寿命预测 健康状态预测_哔哩哔哩_bilibili 数据: 实验结果:...
物品匹配问题-25寒假牛客C
登录—专业IT笔试面试备考平台_牛客网 这道题看似是在考察位运算,实则考察的是n个物品,每个物品有ai个,最多能够得到多少个物品的配对.观察题目可以得到,只有100,111,010,001(第一位是ci,第二位是ai,第三位是bi)需要进行操作,其它都是已经满足条件的对,可以假设对其中两个不同…...
Pyecharts系列课程05——散点图(Scatter)
本章我们学习Pyecharts中散点图的实现方法,散点图通常用于观察数据的分布和相关性。 1. 基础使用 散点图也是数据直角坐标系,与我们之前的直方图、折线图的基本用法是一致的。 示例: from pyecharts.charts import Scatterx_data [1, 2, …...
c/c++蓝桥杯经典编程题100道(18)括号匹配
括号匹配 ->返回c/c蓝桥杯经典编程题100道-目录 目录 括号匹配 一、题型解释 二、例题问题描述 三、C语言实现 解法1:栈匹配法(难度★) 解法2:计数器法(仅限单一括号类型,难度★☆) …...
C++病毒
免费版请关注作者,私信 第一期 声明: 仅供损害电脑,不得用于非法。 直接上代码 #include <bits/stdc.h> #include <windows.h> using namespace std; HHOOK g_hHook; LRESULT CALLBACK CBTProc(int nCode, WPARAM wParam, LP…...
vue学习4
1.自定义创建项目 2.ESlint代码规范 正规的团队需要统一的编码风格 JavaScript Standard Style 规范说明:https://standardjs.com/rules-zhcn.html 规则中的一部分: (1)字符串使用单引号 ‘aabc’ (2)无分号 const name ‘zs’ (3)关键字后加空格 if(n…...
解锁 DeepSeek 模型高效部署密码:蓝耘平台深度剖析与实战应用
💖亲爱的朋友们,热烈欢迎来到 青云交的博客!能与诸位在此相逢,我倍感荣幸。在这飞速更迭的时代,我们都渴望一方心灵净土,而 我的博客 正是这样温暖的所在。这里为你呈上趣味与实用兼具的知识,也…...
《DEADiff:一种具有解耦表示高效的风格化扩散模型》
paper:2403.06951 GitHub:bytedance/DEADiff: [CVPR 2024] Official implementation of "DEADiff: An Efficient Stylization Diffusion Model with Disentangled Representations" 目录 摘要 1、介绍 2、相关工作 2.1 扩散模型在文本到…...
webpack系统学习
webpack4和webpack5区别1---loader_webpack4与webpack5处理图片的不同-CSDN博客 webpack4和webpack5区别2---代码压缩_webpack4如何使用terser-CSDN博客 webpack4和webpack5区别3---缓存_cacheprune-CSDN博客 webpack4和webpack5区别4---自动清除打包目录_webpack4打包目录清…...
C++11新特性之unique_ptr智能指针
本节继续介绍智能指针,不了解的读者可以先阅读——C11新特性之shared_ptr智能指针-CSDN博客 1.介绍 unique_ptr是C11标准提供的另一种智能指针。与shared_ptr不同的是,unique_ptr指针指向的堆内存无法同其他unique_ptr共享,也就是每一片堆内…...
如何使用python制作一个天气预报系统
制作一个天气预报系统可以通过调用天气 API 来获取实时天气数据,并使用 Python 处理和展示这些数据。以下是一个完整的指南,包括代码实现和注意事项。 1. 选择天气 API 首先,需要选择一个提供天气数据的 API。常见的天气 API 有: OpenWeatherMap API:提供全球范围内的天…...
保姆级教程Docker部署Zookeeper模式的Kafka镜像
目录 一、安装Docker及可视化工具 二、Docker部署Zookeeper 三、单节点部署 1、创建挂载目录 2、运行Kafka容器 3、Compose运行Kafka容器 4、查看Kafka运行状态 5、验证生产消费 四、部署可视化工具 1、创建挂载目录 2、Compose运行Kafka-eagle容器 3、查看Kafka-e…...
在阿里云ECS上一键部署DeepSeek-R1
DeepSeek-R1 是一款开源模型,也提供了 API(接口)调用方式。据 DeepSeek介绍,DeepSeek-R1 后训练阶段大规模使用了强化学习技术,在只有极少标注数据的情况下提升了模型推理能力,该模型性能对标 OpenAl o1 正式版。DeepSeek-R1 推出…...
P3413 SAC#1 - 萌数
题目背景 本题由世界上最蒟蒻的 SOL 提供。 寂月城网站是完美信息教室的官网。地址:http://191.101.11.174/mgzd。 题目描述 蒟蒻 SOL 居然觉得数很萌! 好在在他眼里,并不是所有数都是萌的。只有满足“存在长度至少为 22 的回文子串”的数是萌的——也就是说,101 是萌…...
DeepSeek-R1系列01——技术报告解读:DeepSeek-R1:通过强化学习激励 LLM 中的推理能力
1.阅读目标 DeepSeek-R1 发布,性能对标 OpenAI o1 正式版 DeepSeek-R1已经发布,并同步开源模型权重。 DeepSeek-R1 遵循 MIT License,允许用户通过蒸馏技术借助 R1 训练其他模型。 DeepSeek-R1 上线API,对用户开放思维链输出&a…...
(1/100)每日小游戏平台系列
每日小游戏平台 项目简介以及地址 准备开发一个一百天小游戏平台,使用Flask构建的简单游戏导航网站,无需登录,让大家在返工的同时也可以愉快的摸鱼玩耍。 每天更新一个小游戏上传,看看能不能坚持一百天。 这些小游戏主要使用前端…...
前端布局与交互实现技巧
前端布局与交互实现技巧 1. 保持盒子在中间位置 在网页设计中,经常需要将某个元素居中显示。以下是一种常见的实现方式: HTML 结构 <!doctype html> <html lang"en"> <head><meta charset"UTF-8"><m…...
spark单机版本搭建
spark单机版本搭建 服务器配置 CPU内存磁盘操作系统内核版本2c2g40GCentOS 73.10.0 1.JDK 下载安装 # 列出版本 yum -y list java* # 安装 yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel # 检查 java -version2.spark下载 spark下载地址 本文下载&#x…...
【C++八股】std::atomic —— 原子操作
std::atomic 是 C11 引入的模板类,主要用于多线程编程中的原子操作,确保在多个线程访问或修改共享变量时不会产生数据竞争。 1. std::atomic 的作用 在多线程环境下,普通变量的操作不是原子的,可能被多个线程同时访问和修改&…...
GPU、CUDA 和 cuDNN 学习研究【笔记】
分享自己在入门显存优化时看过的一些关于 GPU 和 CUDA 和 cuDNN 的网络资料。 更多内容见: Ubuntu 22.04 LTS 安装 PyTorch CUDA 深度学习环境-CSDN博客CUDA 计算平台 & CUDA 兼容性【笔记】-CSDN博客 文章目录 GPUCUDACUDA Toolkit都包含什么?NVID…...
AI-学习路线图-PyTorch-我是土堆
1 需求 PyTorch深度学习快速入门教程(绝对通俗易懂!)【小土堆】_哔哩哔哩_bilibili PyTorch 深度学习快速入门教程 配套资源 链接 视频教程 https://www.bilibili.com/video/BV1hE411t7RN/ 文字教程 https://blog.csdn.net/xiaotudui…...
Android Camera API 介绍
一 StreamConfigurationMap 1. StreamConfigurationMap 的作用 StreamConfigurationMap 是 Android Camera2 API 中的一个核心类,用于描述相机设备支持的输出流配置,包含以下信息: 支持的格式与分辨率:例如 YUV_420_888、JPEG、…...
活动预告 |【Part 1】Microsoft 安全在线技术公开课:通过扩展检测和响应抵御威胁
课程介绍 通过 Microsoft Learn 免费参加 Microsoft 安全在线技术公开课,掌握创造新机遇所需的技能,加快对 Microsoft Cloud 技术的了解。参加我们举办的“通过扩展检测和响应抵御威胁”技术公开课活动,了解如何更好地在 Microsoft 365 Defen…...
RabbitMQ 消息顺序性保证
方式一:Consumer设置exclusive 注意条件 作用于basic.consume不支持quorum queue 当同时有A、B两个消费者调用basic.consume方法消费,并将exclusive设置为true时,第二个消费者会抛出异常: com.rabbitmq.client.AlreadyClosedEx…...
web第二次作业
一.后台管理系统首页代码 1.html代码 <!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <meta name"viewport" content"widthdevice-width, initial-scale1.0"> <title>实验&l…...
AI 编程开发插件codeium Windsurf(vscode、editor) 安装
1、vscode中安装: 2、vscode中使用 3、输入注册的账号密码,就可以使用。 4、或者直接下载editor 5、安装editor 下一步,下一步,直到安装成功,中间可以改下安装位置,如果C盘空间不够。 同样提示注册或者登录…...
变压器-000000
最近一个项目是木田12V的充电器,要设计变压器,输出是12V,电压大于1.5A12.6*1.518.9W. 也就是可以将变压器当成初级输入的一个负载。输入端18.9W. 那么功率UI 。因为变压器的输入是线性上升的,所以电压为二份之一,也就是1/2*功率…...
C# OpenCvSharp 部署MOWA:多合一图像扭曲模型
目录 说明 效果 项目 代码 下载 参考 C# OpenCvSharp 部署MOWA:多合一图像扭曲模型 说明 算法模型的paper名称是《MOWA: Multiple-in-One Image Warping Model》 ariv链接 https://arxiv.org/pdf/2404.10716 效果 Stitched Image 翻译成中文意思是&…...
Ai无限免费生成高质量ppt教程(deepseek+kimi)
第一步:打开deepseek官网(DeepSeek) 1.如果deepseek官网网络繁忙,解决方案如下: (1)使用easychat官网(EasyChat)使用deepseek模型,如图所示: (2)本地部署&…...
LLMs之DeepSeek r1:Logic-RL的简介、安装和使用方法、案例应用之详细攻略
LLMs之DeepSeek r1:Logic-RL的简介、安装和使用方法、案例应用之详细攻略 目录 Logic-RL的简介 1、Logic-RL的特点 2、性能 Logic-RL 的安装和使用方法 1、安装 2、使用方法 数据准备 基础模型 指令模型 训练执行 实现细节 Logic-RL的案例应用 Logic-RL…...
解决跨域问题
相信大多数的伙伴在第一次通过vue spring 做项目的时候都会遇到这个问题 什么是同源策略和跨域问题 同源策略指的就是,浏览器出于安全考虑,实施的一种策略,即只允许来自同一源(即协议域名端口都相同)的请求访问资源. 否则就会导致跨域问题 例如: http://xxx.com -> http…...
网络工程师 (28)IEEE802标准
前言 IEEE 802标准是由电气和电子工程师协会(IEEE)制定的一组局域网(LAN)和城域网(MAN)标准,定义了网络中的物理层和数据链路层。 一、起源与背景 IEEE 802又称为LMSC(LAN/MAN Stand…...
Playwright 与 Selenium 的关系
Playwright 与 Selenium 的关系 Playwright 和 Selenium 都是流行的浏览器自动化测试工具,它们都可以用于 Web 应用的端到端测试,但它们在设计理念、架构和功能上存在一些差异。 以下是两者的主要关系对比: 特性PlaywrightSelenium开发语言JavaScript (Node.js)多种语言 (…...
保研考研机试攻略:python笔记(4)
🐨🐨🐨15各类查找 🐼🐼二分法 在我们写程序之前,我们要定义好边界,主要是考虑区间边界的闭开问题。 🐶1、左闭右闭 # 左闭右闭 def search(li, target): h = len(li) - 1l = 0#因为都是闭区间,h和l都可以取到并且相等while h >= l:mid = l + (h - l) // 2…...
Matplotlib基础01( 基本绘图函数/多图布局/图形嵌套/绘图属性)
Matplotlib基础 Matplotlib是一个用于绘制静态、动态和交互式图表的Python库,广泛应用于数据可视化领域。它是Python中最常用的绘图库之一,提供了多种功能,可以生成高质量的图表。 Matplotlib是数据分析、机器学习等领域数据可视化的重要工…...
Spring Boot: 使用 @Transactional 和 TransactionSynchronization 在事务提交后发送消息到 MQ
Spring Boot: 使用 Transactional 和 TransactionSynchronization 在事务提交后发送消息到 MQ 在微服务架构中,确保消息的可靠性和一致性非常重要,尤其是在涉及到分布式事务的场景中。本文将演示如何使用 Spring Boot 的事务机制和 TransactionSynchron…...
解析3DMAX转OBJ
3ds Max 是一款功能强大的三维建模、动画和渲染软件,而 OBJ 是一种常用的三维模型文件格式,以下是关于 3ds Max 转 OBJ 的相关解析: 3ds Max 转 OBJ 的原因 兼容性需求: OBJ 格式被众多三维软件和渲染器所支持,将 3…...
html为<td>添加标注文本
样式说明: /*为td添加相对定位点*/ .td_text {position: relative; }/*为p添加绝对坐标(相对于父元素中的定位点)*/ .td_text p {position: absolute;top: 80%;font-size: 8px; }参考资料:...
AI驱动的智能流程自动化是什么
在当今快速发展的数字化时代,企业正在寻找更高效、更智能的方式来管理日常运营和复杂任务。其中,“AI驱动的智能流程自动化”(Intelligent Process Automation, IPA)成为了一个热门趋势。通过结合人工智能(AIÿ…...
vue动态table 动态表头数据+动态列表数据
效果图: <template><div style"padding: 20px"><el-scrollbar><div class"scrollbar-flex-content"><div class"opt-search"><div style"width: 100px"> </div><div class"opt-b…...
ubuntu下迁移docker文件夹
在 Ubuntu 系统中迁移 Docker 文件夹(如 Docker 数据存储文件夹 /var/lib/docker)到另一个磁盘或目录,通常是为了释放系统盘空间。以下是迁移过程的详细步骤: 1. 停止 Docker 服务 在进行迁移之前,必须停止 Docker 服…...
Neo4j图数据库学习(二)——SpringBoot整合Neo4j
一. 前言 本文介绍如何通过SpringBoot整合Neo4j的方式,对图数据库进行简单的操作。 Neo4j和SpringBoot的知识不再赘述。关于Neo4j的基础知识,有兴趣可以看看作者上一篇的文章:Neo4j图数据库学习(一)——初识CQL 二. 前置准备 新建SpringBo…...
离散型变量的 PSI-群体稳定性指标计算
文章目录 PSI-群体稳定性指标(离散型)单个指标计算所有指标计算 PSI-群体稳定性指标(离散型) 单个指标计算 代码 import pandas as pddf pd.read_csv(/Users/mengzhichao/Desktop/文件/图表/小微企业用电量数据.csv)X_train df.sample(n7000) X_test df.sample(n3000)计算单…...
docker grafana安装
mkdir /root/grafana-storage chmod 777 -R /root/grafana-storage docker run -d -p 3000:3000 --namedocker-apisix-grafana-1 --network docker-apisix_apisix -v /root/grafana-storage:/var/lib/grafana grafana/grafana:9.1.0 浏览器访问: http://192.…...