适用读者与目标
- 适用读者:已经熟悉基础的 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 的核心应用方式,并为工作中的多样化内容处理带来新的思路和高效工具。