python调用DALL·E绘画

实现用gpt的api和他对话后,我们试着调用DALL·E的api进行绘画

参考文档

OpenAI API

运行代码

python 复制代码
from openai import OpenAI

client = OpenAI()

user_prompt = input("请输入您想生成的图片描述: ")

response = client.images.generate(
  model="dall-e-3",
  prompt=user_prompt,
  size="1024x1024",
  quality="standard",
  n=1,
)

image_url = response.data[0].url
print(f"生成的图片链接: {image_url}")

运行结果

生成图片

花费了我4美分,生成了以下图片,看起来还算可以

新需求1

接下来我们想要用dall-e-2来对图片进行修改,而且想让python直接显示出图片来,而不是去点击URL

我们需要先下载requestsPillow库,用requests获取图片然后用Pillow来显示,在CMD的当中使用下面的命令去下载即可

python 复制代码
pip install requests Pillow

我们还需要做一张想要改变哪个位置的mask图片,我是用美图秀秀随便扣的,注意要和原图保持相同的尺寸

运行代码

python 复制代码
from openai import OpenAI
import requests
from PIL import Image
from io import BytesIO

client = OpenAI()

user_prompt = input("请问你想如何修改图片: ")

response = client.images.edit(
  model="dall-e-2",
  image=open("E:/Game_Program/勇者.png", "rb"),
  mask=open("E:/Game_Program/mask.png", "rb"),
  prompt=user_prompt,
  size="1024x1024",
  n=1,
)

image_url = response.data[0].url
print(f"生成的图片链接: {image_url}")

# 获取并显示图片
response = requests.get(image_url)
img = Image.open(BytesIO(response.content))
img.show()

运行结果

用了好几美分试了几次,发现生成的图片和第一张还是一样的,不知道哪里出问题了,有兴趣的朋友可以试试

新需求2

接下来我们直接通过上传的图片来生成2张新的图片,这个比较简单,应该不会出错,依旧是用到dall-e-2

运行代码

python 复制代码
from openai import OpenAI
import requests
from PIL import Image
from io import BytesIO

client = OpenAI()

response = client.images.create_variation(
  model="dall-e-2",
  image=open("E:/Game_Program/勇者.png", "rb"),
  size="1024x1024",
  n=2,
)

for data in response.data:
    image_url = data.url
    print(f"生成的图片链接: {image_url}")
    
    # 获取并显示图片
    response = requests.get(image_url)
    img = Image.open(BytesIO(response.content))
    img.show()

运行结果

生成图片

干掉我8美分,生成的两张图片有点一言难尽啊,太抽象了吧

相关推荐
张小殊.34 分钟前
LoongForge TAOT 训练方案,解决MoE EP不均衡问题
人工智能·python·深度学习·机器学习·ai
月诸清酒37 分钟前
我同时在用的 AI Coding Agent 和模型评测,cc/gpt/antigravity(2026.08)
人工智能·gpt·chatgpt
玫幽倩41 分钟前
2026黄河流域公安院校-电子物证单项赛(程序逆向分析+服务器取证)
运维·服务器·python·电子取证·逆向·程序分析·服务器取证
北斗落凡尘1 小时前
LangGraph 入门实战(4)
python·langchain
liwulin05061 小时前
【PYTHON】使用Selenium + ChromeDriver以及XPATH语法
开发语言·python·selenium
copyer_xyf1 小时前
Agentic RAG 实战:PostgreSQL + LangGraph 一条链路
python·postgresql·agent
动力 continue1 小时前
Python 元类与异常类:类的“制造工厂”与“报错定制师”
开发语言·python·制造
147API1 小时前
Python批量生成蒸馏数据,并发、重试、幂等和断点续跑
开发语言·jvm·python
青 春 记 忆1 小时前
零基础入门python04:用注册校验理解字典、集合和条件判断
开发语言·vscode·python·python3.11
kels88991 小时前
实战排坑:黄金实时API开发,XAUUSD Tick报文异常处理实践
开发语言·python·websocket·网络协议·信息可视化