31 从零生成式AI详细教程

31 从零生成式AI详细教程

案例 1:使用 GPT-4 生成新闻文章内容

在本小节中,我们将探讨如何使用 GPT-4 模型生成新闻文章。我们将重点介绍如何设置环境、调用 GPT-4 API 以及生成一篇特定主题的新闻文章。

1. 环境准备

1.1 安装依赖

首先,确保你已经安装了以下 Python 依赖项:

1
pip install openai

1.2 API 密钥

你需要获得 OpenAI 的 API 密钥,可以通过注册 OpenAI 的账号获取。在你的代码中,将这个密钥存储为环境变量以确保安全性。你可以使用以下命令设置环境变量(在 Linux 或 macOS 上):

1
export OPENAI_API_KEY='your-api-key-here'

2. 生成新闻文章的代码

2.1 导入所需库

打开你的 Python 编辑器,并导入必要的库:

1
2
import os
import openai

2.2 设置 API 密钥

在代码中设置 API 密钥,以便后续调用 GPT-4:

1
openai.api_key = os.getenv("OPENAI_API_KEY")

2.3 定义生成新闻文章的函数

我们将创建一个函数来生成新闻文章。这个函数将接收主题参数,并调用 GPT-4 模型生成文章内容。

1
2
3
4
5
6
7
8
9
10
11
12
13
def generate_news_article(topic):
prompt = f"请写一篇关于'{topic}'的新闻文章,内容应包括标题、正文和作者署名。"

response = openai.ChatCompletion.create(
model="gpt-4",
messages=[
{"role": "user", "content": prompt}
],
max_tokens=500 # 你可以根据需要调整这个值
)

article = response['choices'][0]['message']['content']
return article

3. 输入主题并生成文章

3.1 选择新闻主题

例如,我们选择“人工智能在医疗领域的应用”作为主题:

1
topic = "人工智能在医疗领域的应用"

3.2 生成并打印新闻文章

调用我们定义的函数,并打印生成的新闻文章:

1
2
3
if __name__ == "__main__":
news_article = generate_news_article(topic)
print(news_article)

4. 完整代码示例

将所有代码整合在一起,形成一个完整的 Python 脚本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import os
import openai

# 设置 API 密钥
openai.api_key = os.getenv("OPENAI_API_KEY")

def generate_news_article(topic):
prompt = f"请写一篇关于'{topic}'的新闻文章,内容应包括标题、正文和作者署名。"

response = openai.ChatCompletion.create(
model="gpt-4",
messages=[
{"role": "user", "content": prompt}
],
max_tokens=500
)

article = response['choices'][0]['message']['content']
return article

if __name__ == "__main__":
topic = "人工智能在医疗领域的应用"
news_article = generate_news_article(topic)
print(news_article)

5. 运行代码

在终端中运行你的 Python 脚本:

1
python your_script_name.py

6. 预期输出

你将得到一篇关于“人工智能在医疗领域的应用”的新闻文章,格式规范,内容丰富。注意,生成的内容可能会因 API 响应的随机性而有所不同。

7. 总结

在这一小节中,我们学习了如何使用 GPT-4 模型生成新闻文章的基本过程。通过简单的设置和代码调用,我们可以快速生成高质量的新闻内容,为内容创作者和记者提供了有力的工具。

使用 DALL-E 生成广告图像

使用 DALL-E 生成广告图像

小节项目案例 2:使用 DALL-E 生成广告图像

在这一小节中,我们将学习如何使用 DALL-E 来生成引人注目的广告图像。DALL-E 是一种基于变换器的模型,可以生成按文本描述生成的图像。

1. 准备工作

1.1 获取 API 密钥

在使用 DALL-E 之前,您需要:

  1. 注册 OpenAI 账户(如果尚未注册)。
  2. 访问 OpenAI 的 API 主页并申请 API 密钥。

1.2 安装必需的库

在项目目录中,您需要安装 openai Python 库。使用以下命令:

1
pip install openai

2. 编写代码

2.1 导入库并设置 API 密钥

首先,我们需要导入必要的库并设置 API 密钥。

1
2
3
4
import openai

# 设置您的 API 密钥
openai.api_key = "YOUR_API_KEY"

2.2 定义生成图像的函数

接下来,我们定义一个函数,用于根据输入的文本提示生成图像。

1
2
3
4
5
6
7
def generate_image(prompt, num_images=1):
response = openai.Image.create(
prompt=prompt,
n=num_images,
size="1024x1024" # 图片的大小
)
return response['data'][0]['url']

3. 使用示例

下面我们使用自定义提示文本来生成广告图像。

1
2
3
4
5
6
7
8
9
if __name__ == "__main__":
# 定义广告文本提示
prompt = "A colorful advertisement for a summer sale, featuring vibrant tropical elements, with the text 'Summer Sale! Up to 50% off!' in bold letters."

# 生成图像
image_url = generate_image(prompt)

# 输出生成的图像 URL
print(f"生成的广告图像 URL: {image_url}")

4. 运行代码

在命令行中运行您的 Python 脚本。执行成功后,您将得到生成的广告图像的 URL。

1
python your_script_name.py

5. 将图像用于广告

生成的图像可以通过 URL 访问。您可以将其下载并用于社交媒体、网页或其他广告平台。

5.1 下载图像

您可以使用 Python 的 requests 库下载图像:

1
2
3
4
5
6
7
8
9
import requests

def download_image(image_url, file_name):
response = requests.get(image_url)
with open(file_name, 'wb') as f:
f.write(response.content)

# 下载图像
download_image(image_url, 'ad_image.png')

6. 总结

在本小节中,我们学习了如何使用 DALL-E API 生成自定义的广告图像。您可以根据自己的需求更改提示文本,从而制作适合您项目的广告素材。生成式 AI 的强大之处在于,它能够帮助您快速创建高质量的视觉内容,提升品牌的吸引力。

请随时尝试不同的提示文本,通过反复试验来获得更理想的广告效果!

使用 TTS 生成个性化语音助手

使用 TTS 生成个性化语音助手

1. 项目简介

本项目旨在使用文本转语音(TTS)技术创建一个个性化的语音助手。通过对用户输入的文本进行语音合成,生成自然流畅的语音输出,实现类似于智能助手的功能。

2. 准备工作

2.1 环境搭建

  • 编程语言:Python
  • 必备库
    • gTTS(Google Text-to-Speech)
    • playsound(播放音频文件)

使用以下命令安装所需库:

1
pip install gTTS playsound

2.2 TTS API 选择

本项目使用 gTTS(Google Text-to-Speech)库来转换文本为语音。它支持多种语言和发音风格。

3. 基本代码实现

3.1 导入库

首先,我们需要导入所需的库:

1
2
3
from gtts import gTTS
from playsound import playsound
import os

3.2 创建 TTS 函数

编写一个函数来生成音频文件并播放:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
def text_to_speech(text, lang='zh'):
# 创建 gTTS 对象
tts = gTTS(text=text, lang=lang)

# 定义音频文件名
audio_file = "speech.mp3"

# 保存音频文件
tts.save(audio_file)

# 播放音频文件
playsound(audio_file)

# 可选:删除文件
os.remove(audio_file)

3.3 用户交互

创建一个简单的用户交互接口,让用户输入文本以生成语音:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
def main():
print("欢迎使用个性化语音助手!")

while True:
user_input = input("请输入你想要助手说的话(输入'退出'结束程序):")

if user_input.lower() == '退出':
print("感谢使用,程序结束。")
break

text_to_speech(user_input)

if __name__ == "__main__":
main()

3.4 示例

当用户运行程序并输入文本时,程序会将文本转换为语音并播放出来。

  • 用户输入:今天天气不错!
  • 程序输出:语音助手说:今天天气不错!

4. 个性化扩展

4.1 增加用户定制化设置

可以允许用户选择不同的语言和发音:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
def main():
print("欢迎使用个性化语音助手!")
lang = input("请选择语言(zh为中文, en为英文):")

while True:
user_input = input("请输入你想要助手说的话(输入'退出'结束程序):")

if user_input.lower() == '退出':
print("感谢使用,程序结束。")
break

text_to_speech(user_input, lang)

if __name__ == "__main__":
main()

4.2 引入更多功能

可以扩展功能,比如定时提醒、天气查询等。将文本转化为语音的功能可集成到其他模块中。

5. 结论

通过以上步骤,我们成功创建了一个简单的个性化语音助手。用户可以输入文本,助手会将其转换为自然的语音。未来可以在此基础上进行更多功能的扩展,实现更复杂的交互体验。