大模型开发实战篇5:多模态--文生图模型API
大模型文生图是一种基于人工智能大模型的技术,能够将自然语言文本描述转化为对应的图像。目前非常火的AI大模型赛道,有很多公司在此赛道竞争。详情可看这篇文章。
今天我们来看下如何调用WebAPI来实现文生图功能。我们一般都会将OpenAI的接口,因为OpenAI是标杆,其他大模型都以它为参考,并且很多大模型的接口都复刻了OpenAI的接口,不管是接口形式还是参数定义基本都一样;也就是只要学会了OpenAI的接口,很多其他大模型也就会调用了。
一、OpenAI的文生图模型 DALL·E
OpenAI Images API 提供了三种与图像交互的方法:
- 基于文本提示生成图像(DALL·E 3 和 DALL·E 2)
- 通过模型编辑(替换)已存在图像的某些区域,根据新的文本提示创建编辑过的图像版本(仅限 DALL·E 2)
- 创建现有图像的变体(仅限 DALL·E 2)
本文主要介绍第一种文生图像的使用方法。
关于 DALL·E 3 模型更新的更多内容,请参考 OpenAI Cookbook的官方链接:https://cookbook.openai.com/articles/what_is_new_with_dalle_3
图像生成 API参数
- prompt:(必须传)提示词,一段对所需图像的文字描述。对于 DALL・E-2,最大长度为 1000 个字符;对于 DALL・E-3,最大长度为 4000 个字符。
- model('dall-e-2' 或 'dall-e-3'):您正在使用的模型。请注意将其设置为 'dall-e-3',因为如果为空,默认为 'dall-e-2'。
- style('natural' 或 'vivid'):生成图像的风格。必须是 'vivid' 或 'natural' 之一。'vivid' 会使模型倾向于生成超现实和戏剧性的图像。'natural' 会使模型产生更自然、不那么超现实的图像。默认为 'vivid'。
- quality('standard' 或 'hd'):将生成的图像质量。'hd' 创建细节更精细、整体一致性更高的图像。默认为 'standard'。
- n(int):要生成的图像数量。必须在1到10之间。默认为1。对于 dall-e-3,只支持 n=1。
- size(...):生成图像的尺寸。对于 DALL·E-2 模型,必须是 256x256、512x512 或 1024x1024 之一。对于 DALL·E-3 模型,必须是 1024x1024、1792x1024 或 1024x1792 之一。
- response_format('url' 或 'b64_json'):返回生成图像的格式。必须是 "url" 或 "b64_json" 之一。默认为 "url"。url形式的图片地址是有效期限制的,一般是2个小时后过期,所以在代码开发中若需要长期保留图片,需要将图片及时保存到本地。
- user(str):代表您的终端用户的唯一标识符,将帮助 OpenAI 监控和检测滥用。
了解更多可取官方api教程:https://platform.openai.com/docs/api-reference/images/create
代码演示
1、标准模型(quality="standard")
from openai import OpenAI
client = OpenAI(api_key="sk-xxx", base_url="https://vip.apiyi.com/v1")response = client.images.generate(model="dall-e-3",prompt="In the style of a Polaroid photo, a cute Japanese high school girl, dressed in her school uniform, with short black hair, is smiling and posing at the entrance of her high school. The soft, warm tones of the Polaroid film capture the gentle morning light, highlighting the neat pleats of her skirt and the crisp white collar of her blouse. Her cheerful expression and bright eyes reflect the excitement of a new day, and the background shows the familiar brick walls and arched entryway of the school, with a few cherry blossom petals scattered on the ground, adding a touch of seasonal beauty.",size="1024x1024",quality="standard",n=1,
)image_url = response.data[0].url
print(image_url)
可以看到,模型为dall-e-3, quality的参数值为standard标准版本,尺寸1024*1024 。
返回结果:
https://dalleprodsec.blob.core.windows.net/private/images/533473e0-f83d-4cde-980f-c392386ed3c9/generated_00.png?se=2025-02-17T14%3A09%3A29Z&sig=%2FoN77%2Bkb%2FKA4OY84bNaQ7N%2BZ1ZSVC2js1%2Ff9UoD6W4s%3D&ske=2025-02-22T15%3A19%3A26Z&skoid=e52d5ed7-0657-4f62-bc12-7e5dbb260a96&sks=b&skt=2025-02-15T15%3A19%3A26Z&sktid=33e01921-4d64-4f8c-a055-5bdaffd5e33d&skv=2020-10-02&sp=r&spr=https&sr=b&sv=2020-10-02
2、高清模式(quality="hd")
response = client.images.generate(model="dall-e-3",prompt="a white siamese cat",size="1024x1024",quality="hd",n=1,
)print(response.data[0].url)
3、自然风格(style="natural")
response = client.images.generate(model="dall-e-3",prompt="a white siamese cat",size="1024x1024",quality="standard",n=1,style="natural"
)
print(response.data[0].url)
4、戏剧风格(style="vivid")
response = client.images.generate(model="dall-e-3",prompt="a white siamese cat",size="1024x1024",quality="standard",n=1,style="vivid"
)
print(response.data[0].url)
二、智普图像生成模型
cogview-4适用于图像生成任务,通过对用户文字描述快速、精准的理解,让AI的图像表达更加精确和个性化。
- 模型编码:cogview-4
最新
、cogview-3-flash ;CogView-4模型:0.06 元 / 次 ; - 可以去体验一下效果:https://www.bigmodel.cn/trialcenter/modeltrial?modelCode=cogview-4
请求参数
参数名 | 类型 | 必填 | 描述 |
---|---|---|---|
model | String | 是 | 模型编码 |
prompt | String | 是 | 所需图像的文本描述 |
size | String | 否 | 图片尺寸,可选值:1024x1024,768x1344,864x1152,1344x768,1152x864,1440x720,720x1440,默认是1024x1024。 |
user_id | String | 否 | 终端用户的唯一ID,协助平台对终端用户的违规行为、生成违法及不良信息或其他滥用行为进行干预。ID长度要求:最少6个字符,最多128个字符。 |
响应参数
参数名称 | 类型 | 参数说明 |
---|---|---|
created | String | 请求创建时间,是以秒为单位的Unix时间戳。 |
data | List | 数组,包含生成的图片 URL。目前数组中只包含一张图片。 |
url | String | 图片链接。图片的临时链接有效期为 30天,请及时转存图片。 |
content_filter | List | 返回内容安全的相关信息。 |
role | String | 安全生效环节,包括 role = assistant 模型推理,role = user 用户输入,role = history 历史上下文 |
level | Integer | 严重程度 level 0-3,level 0表示最严重,3表示轻微 |
调用示例
from zhipuai import ZhipuAI
client = ZhipuAI(api_key="") # 请填写您自己的APIKeyresponse = client.images.generations(model="cogview-4", #填写需要调用的模型编码prompt="一只可爱的小猫咪",
)print(response.data[0].url)
响应示例
{"created": 1703485556,"data": [{"url": "https://......"}]
}
相关文章:
大模型开发实战篇5:多模态--文生图模型API
大模型文生图是一种基于人工智能大模型的技术,能够将自然语言文本描述转化为对应的图像。目前非常火的AI大模型赛道,有很多公司在此赛道竞争。详情可看这篇文章。 今天我们来看下如何调用WebAPI来实现文生图功能。我们一般都会将OpenAI的接口࿰…...
Jvascript网页设计案例:通过js实现一款密码强度检测,适用于等保测评整改
本文目录 前言功能预览样式特点总结:1. 整体视觉风格2. 密码输入框设计3. 强度指示条4. 结果文本与原因说明 功能特点总结:1. 密码强度检测2. 实时反馈机制3. 详细原因说明4. 视觉提示5. 交互体验优化 密码强度检测逻辑Html代码Javascript代码 前言 能满…...
Macos机器hosts文件便捷修改工具——SwitchHosts
文章目录 SwitchHosts软件下载地址操作添加方案切换方案管理方案快捷键 检测 SwitchHosts SwitchHosts 是一款 Mac 平台上的免费软件,它可以方便地管理和切换 hosts 文件,支持多种 hosts 文件格式。 软件下载地址 SwitchHosts 操作 添加方案 添加 …...
vLLM专题(四)-故障排除
本文件概述了一些您可以考虑的故障排除策略。如果您认为发现了一个 bug,请首先搜索现有的问题,看看是否已经有人报告。如果没有,请提交一个新问题,并尽可能提供相关的详细信息。 注意 一旦您调试完问题,请记得关闭任何已定义的调试环境变量,或者简单地启动一个新 shell,…...
搜广推校招面经十七
滴滴 花小猪 一、算法题1—最小覆盖字串(hot100_字串_困难) 给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 “” 。 ## form collection import Counter …...
滚动弹幕案例
滚动弹幕案例 一、需求 1.页面上漂浮字体大小不一、颜色不一,从左向右滚动的弹幕; 2.底部中间有一个发送功能,可以发送新的弹幕; 3.底部的发送部分可以向下收起和弹出。 二、html <div class"container"><…...
Typora导出word文件详细安装教程
在 Typora 中,部分文件格式(包括 docx、odt、rtf、epub、LaTeX 和 wiki)的导入和导出功能由第三方软件 Pandoc 提供支持。这些功能需要安装 Pandoc (≥ v2.0)。 一、安装Pandoc 下载地址:通过网盘分享的文件:pandoc 链…...
从短片到长片:王琦携《Mountain》续作迈向新高度
在王琦(Qi Wang)的带领下,广受关注的短片《Mountain》迎来了成长篇续作《Rite of the Mountain》。这一全新长片不仅是她从短片迈向长篇叙事的重要一步,更是一次大胆的艺术挑战。作为制片人的她,将继续以敏锐的视觉风格和深刻的叙事洞察,拓展《Mountain》所触及的情感深度,并构…...
spring boot 对接aws 的S3 服务,实现上传和查询
1.aws S3介绍 AWS S3(Amazon Simple Storage Service)是亚马逊提供的一种对象存储服务,旨在提供可扩展、高可用性和安全的数据存储解决方案。以下是AWS S3的一些主要特点和功能: 1.1. 对象存储 对象存储模型:S3使用…...
考研操作系统-----外存文件
目录 内存映射文件 编辑 文件管理初始: 编辑 文件的逻辑结构 文件目录 编辑 编辑 文件的物理结构(文件分配方式) 文件存储空间管理 文件的基本操作 文件共享 编辑编辑 文件保护: 编辑 文件系统的全局结构…...
国内外网络安全政策动态(2025年1月)
▶︎ 1.国家互联网信息办公室发布《个人信息出境个人信息保护认证办法(征求意见稿)》 1月3日,国家互联网信息办公室发布《个人信息出境个人信息保护认证办法(征求意见稿)》。根据《意见稿》,个人信息出境个…...
跟着 Lua 5.1 官方参考文档学习 Lua (1)
文章目录 1 – Introduction2 – The Language2.1 – Lexical Conventions2.2 – Values and Types2.2.1 – Coercion 1 – Introduction Lua is an extension programming language designed to support general procedural programming with data description facilities. I…...
计算机性能与网络体系结构探讨 —— 基于《计算机网络》谢希仁第八版
(꒪ꇴ꒪ ),Hello我是祐言QAQ我的博客主页:C/C语言,数据结构,Linux基础,ARM开发板,网络编程等领域UP🌍快上🚘,一起学习,让我们成为一个强大的攻城狮࿰…...
matlab欠驱动船舶模型预测控制
1、内容简介 matlab135-欠驱动船舶模型预测控制 可以交流、咨询、答疑 2、内容说明 略 针对在风 、 浪 、 流时变干扰下欠驱动水面船舶的轨迹跟踪控制问题 , 设计了一种基于模型 预测控制的轨迹跟踪控制器 . 考虑到欠驱动船舶在没有横向驱动力情况下…...
【MySQL常见疑难杂症】常见文件及其所存储的信息
1、MySQL配置文件的读取顺序 (非Win)/etc/my.cnf、/etc/mysql/my.cnf、/usr/local/mysql/etc/my.cnf、~/.my.cnf 可以通过命令查看MySQL读取配置文件的顺序 [roothadoop01 ~]# mysql --help |grep /etc/my.cnf /etc/my.cnf /etc/mysql/my.c…...
【LeetCode】3.无重复字符的最长字串
目录 题目算法解法解法一 暴力枚举 哈希表(判断字符是否重复出现) (O( n 2 n^{2} n2))解法二 滑动窗口 哈希表(判断字符是否重复出现) 代码 题目 题目链接:LeetCode-3题 给定一个字符串 s &a…...
李宏毅机器学习笔记:【6.Optimization、Adaptive Learning Rate】
Optimization 1.Adaptive Learning Rate2.不同的参数需要不同的学习率3.Root Mean Square4.RMSProp5.Adam6.learning rate scheduling7.warm up总结 critical point不一定是你在训练一个network时候遇到的最大的障碍。 1.Adaptive Learning Rate 也就是我们要给每个参数不同的…...
计算机组成原理—— 外围设备(十三)
记住,伟大的成就往往诞生于无数次尝试和失败之后。每一次跌倒,都是为了让你学会如何更加坚定地站立;每一次迷茫,都是为了让你找到内心真正的方向。即使前路漫漫,即使困难重重,心中的火焰也不应熄灭。它代表…...
React简介
React简介 A Brief Introduction to React By JacksonML 1. 关于React React是一个知名的Web框架。众所周知,jQuery, Angular, Vue等框架都曾闪亮登场,并且,都仍然在全球市场占有一席之地。React这个颇有担当的新锐,也进入到我…...
Linux-C/C++《七、字符串处理》(字符串输入/输出、C 库中提供的字符串处理函数、正则表达式等)
字符串处理在几乎所有的编程语言中都是一个绕不开的话题,在一些高级语言当中,对字符串的处理支 持度更是完善,譬如 C、 C# 、 Python 等。若在 C 语言中想要对字符串进行相关的处理,譬如将两个字符串进行拼接、字符串查找、两个…...
哈希动态规划dp_5
一.哈希 哈希(Hashing)是计算机科学中一种非常重要的技术,用于将输入的数据映射到固定大小的值(哈希值)上。哈希算法和哈希数据结构广泛应用于各种领域,包括数据查找、加密、缓存、数据库索引等。我们来详…...
电商分布式场景中如何保证数据库与缓存的一致性?实战方案与Java代码详解
文章目录 一、缓存一致性问题的本质写后读不一致:更新数据库后,缓存未及时失效并发读写竞争:多个线程同时修改同一数据缓存与数据库事务不同步:部分成功导致数据错乱 二、5大核心解决方案与代码实现方案1:延迟双删策略…...
DeepSeek-R1 大模型本地部署指南
文章目录 一、系统要求硬件要求软件环境 二、部署流程1. 环境准备2. 模型获取3. 推理代码配置4. 启动推理服务 三、优化方案1. 显存优化技术2. 性能加速方案 四、部署验证健康检查脚本预期输出特征 五、常见问题解决1. CUDA内存不足2. 分词器警告处理3. 多GPU部署 六、安全合规…...
【数据结构】 栈和队列
在计算机科学的世界里,数据结构是构建高效算法的基础。栈(Stack)和队列(Queue)作为两种基本且重要的数据结构,在软件开发、算法设计等众多领域都有着广泛的应用。今天,我们就来深入探讨一下栈和…...
用Python构建Mad Libs经典文字游戏
前言 Mad Libs 是一种经典的文字游戏,其中一名玩家向其他玩家询问各种词汇,如名词、动词、形容词等,而不提供任何上下文。然后将这些提示词插入到一个充满空白的故事模板中,从而创造出一个搞笑或荒谬的故事,供玩家大声朗读以获取乐趣。 自1950年代发明以来,Mad Libs 一…...
ReactiveSwift模拟登录功能
通过使用ReactiveSwift模拟一个简单的登录功能,该功能如下要求: 账号不能为空密码必须大于6位 登录按钮方可点击 LoginViewModel: import ReactiveSwiftclass LoginViewModel {// 创建两个信号let userName MutableProperty<String&g…...
亲测有效!使用Ollama本地部署DeepSeekR1模型,指定目录安装并实现可视化聊天与接口调用
文章目录 一、引言二、准备工作(Ollama 工具介绍与下载)2.1 Ollama介绍2.2 Ollama安装 三、指定目录安装 DeepSeek R1四、Chatbox 可视化聊天搭建4.1 Chatbox下载安装4.2 关联 DeepSeek R1 与 Chatbox 的步骤 五、使用 Ollama 调用 DeepSeek 接口5.1 请求…...
【第11章:生成式AI与创意应用—11.3 AI艺术创作的实现与案例分析:DeepArt、GANBreeder等】
凌晨三点的画室里,数字艺术家小美盯着屏幕上的GANBreeder界面——她将梵高的《星月夜》与显微镜下的癌细胞切片图进行混合,生成的新图像在柏林电子艺术展上引发轰动。这场由算法驱动的艺术革命,正在重写人类对创造力的定义。 一、机器视觉的觉醒之路 1.1 数字艺术的三次浪…...
MySQL的基本使用
MySQL 是一个强大且广泛使用的开源关系型数据库管理系统,适用于各种规模的应用程序。无论是初学者还是经验丰富的开发者,掌握 MySQL 的基本操作都是至关重要的。本文将带你了解 MySQL 的基础概念,并通过实例介绍如何执行一些常见的数据库操作…...
WEB安全--SQL注入--PDO与绕过
一、PDO介绍: 1.1、原理: PDO支持使用预处理语句(Prepared Statements),这可以有效防止SQL注入攻击。预处理语句将SQL语句与数据分开处理,使得用户输入的数据始终作为参数传递给数据库,而不会直…...
微信小程序image组件mode属性详解
今天学习微信小程序开发的image组件,mode属性的属性值不少,一开始有点整不明白。后来从网上下载了一张图片,把每个属性都试验了一番,总算明白了。现总结归纳如下: 1.使用scaleToFill。这是mode的默认值,sc…...
大模型炼丹基础--GPU内存计算
一、摘要 选择合适的GPU对成本和效率都至关重要,合理分析GPU 二、硬件计算基础 1 个字节可以表示零(00000000)和 255(11111111)之间的数字 模型参数常用的数据类型如下: float(32 位浮点&a…...
istio入门篇(一)
一、背景 一直以来“微服务”都是一个热门的词汇,在各种技术文章、大会上,关于微服务的讨论和主题都很多。对于基于 Dubbo、SpringCloud 技术体系的微服务架构,已经相当成熟并被大家所知晓,但伴随着互联网场景的复杂度提升、业务…...
Ubuntu 24.04.1 LTS 本地部署 DeepSeek 私有化知识库
文章目录 前言工具介绍与作用工具的关联与协同工作必要性分析 1、DeepSeek 简介1.1、DeepSeek-R1 硬件要求 2、Linux 环境说明2.1、最小部署(Ollama DeepSeek)2.1.1、扩展(非必须) - Ollama 后台运行、开机自启: 2.2、…...
沃德校园助手系统php+uniapp
一款基于FastAdminThinkPHPUniapp开发的为校园团队提供全套的技术系统及运营的方案(目前仅适配微信小程序),可以更好的帮助你打造自己的线上助手平台。成本低,见效快。各种场景都可以自主选择服务。 更新日志 V1.2.1小程序需要更…...
Visual Studio Code使用ai大模型编成
1、在Visual Studio Code搜索安装roo code 2、去https://openrouter.ai/settings/keys官网申请个免费的配置使用...
工业软件测试方案
一、方案概述 本测试方案致力于全面、系统地评估工业仿真软件的综合性能,涵盖性能表现、功能完整性以及用户体验层面的易用性。同时,将其与行业内广泛应用的MATLAB进行深入的对比分析,旨在为用户提供极具价值的参考依据,助力其在…...
红队视角出发的k8s敏感信息收集——Kubernetes API 扩展与未授权访问
针对 Kubernetes API 扩展与未授权访问 的详细攻击视角分析,聚焦 Custom Resource Definitions (CRD) 和 Aggregated API Servers 的潜在攻击面及利用方法: 攻击链示例 1. 攻击者通过 ServiceAccount Token 访问集群 → 2. 枚举 CRD 发现数据库配…...
一种 SQL Server 数据库恢复方案:解密、恢复并导出 MDF/NDF/BAK文件
方案特色 本方案可以轻松恢复和导出SQL数据库:MDF、NDF 和 BAK 文件。 恢复和导出SQL数据库:主(MDF),辅助(NDF)和备份(BAK)文件分析 SQL Server LOG 数据库事务日志将 …...
Pygame中自定义事件处理的方法2-1
1 Pygame事件处理流程 Pygame中的事件处理流程如图1所示。 图1 Pygame中事件处理流程 系统事件包括鼠标事件和键盘事件等,当用户点击了鼠标或者键盘时,这些事件会自动被放入系统的事件队列中。用户自定义事件需要通过代码才能被放入事件队列中。Pygame…...
langchain学习笔记之消息存储在内存中的实现方法
langchain学习笔记之消息存储在内存中的实现方法 引言背景消息存储在内存的实现方法消息完整存储:完整代码 引言 本节将介绍 langchain \text{langchain} langchain将历史消息存储在内存中的实现方法。 背景 在与大模型交互过程中,经常出现消息管理方…...
HarmonyOS组件之Tabs
Tabs 1.1概念 Tabs 视图切换容器,通过相适应的页签进行视图页面的切换的容器组件每一个页签对应一个内容视图Tabs拥有一种唯一的子集元素TabContent 1.2子组件 不支持自定义组件为子组件,仅可包含子组件TabContent,以及渲染控制类型 if/e…...
【C++】基础入门(详解)
🌟 Hello,我是egoist2023! 🌍 种一棵树最好是十年前,其次是现在! 目录 输入&输出 缺省参数(默认参数) 函数重载 引用 概念及定义 特性及使用 const引用 与指针的关系 内联inline和nullptr in…...
bps是什么意思
本文来自DeepSeek "bps" 是 "bits per second" 的缩写,表示每秒传输的比特数,用于衡量数据传输速率。1 bps 即每秒传输 1 比特。 常见单位 bps:比特每秒 Kbps:千比特每秒(1 Kbps 1,000 bps&am…...
OceanBase使用ob-loader-dumper导出表报ORA-00600
执行下面的语句导出表报错,同样的语句之前都没有报错。 ob-loader-dumper-4.2.8-RELEASE/bin/obdumper -h xxx.xxx.xxx.xxx -P 2883 -p 密码 --column-splitter| --no-sys-t gzuat_ss#ob8(集群) -D 数据库名 --cut --table teacher --no-ne…...
JUC并发总结一
大纲 1.Java集合包源码 2.Thread源码分析 3.volatile关键字的原理 4.Java内存模型JMM 5.JMM如何处理并发中的原子性可见性有序性 6.volatile如何保证可见性 7.volatile的原理(Lock前缀指令 + 内存屏障) 8.双重检查单例模式的volatile优化 9.synchronized关键字的原理 …...
hive:分区>>静态分区,动态分区,混合分区
分区表 使用场景:数据量庞大且经常用来做查询的表 特点:将数据分别存储到不同的目录里 优点:避免全盘扫描,提高查询效率 分区的类型 它们的默认值分别是: false, strict, 要求至少有一个静态分区列,而 nonstr…...
深入解析PID控制算法:从理论到实践的完整指南
前言 大家好,今天我们介绍一下经典控制理论中的PID控制算法,并着重讲解该算法的编码实现,为实现后续的倒立摆样例内容做准备。 众所周知,掌握了 PID ,就相当于进入了控制工程的大门,也能为更高阶的控制理论…...
linux--关于GCC、动态库静态库
gcc和g的异同 他们是不同的编译器, 在linux中,生成可执行文件不像和windows一样。 linux中是以**.out作为可执行文件**的 无论是什么系统,生成可执行文件分为4步: 预处理–>编译–>汇编–>链接。 从.c/.cpp–>.i文件…...
matlab汽车动力学半车垂向振动模型
1、内容简介 matlab141-半车垂向振动模型 可以交流、咨询、答疑 2、内容说明 略 3、仿真分析 略 4、参考论文 略...