首页 > 其他分享 >chatgpt接口开发笔记2生成图片接口

chatgpt接口开发笔记2生成图片接口

时间:2023-05-05 11:22:48浏览次数:47  
标签:url 笔记 生成 接口 chatgpt public 图片

chatgpt接口开发笔记2生成图片接口

chatgpt的生成图片接口,可以根据用户的描述来生成满足用户意愿的图片

1、了解接口参数

接口地址:

POST https://api.openai.com/v1/images/generations

下面是接口文档描述内容

image

curl https://api.openai.com/v1/images/generations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -d '{
    "prompt": "A cute baby sea otter",
    "n": 2,
    "size": "1024x1024"
  }'

  • prompt 描述
  • n 生成图片数量
  • size 生成图片大小
  • response_format 生成的图片类型:url或者是b64_json字符串

base64字符串长度很长。对网络请求造成的压力大。我推荐使用url,注意的是:url有过期时间,需要及时保存图片。

2、接口开发

接口我是用.net 7 webapi开发的。

接口:

        [HttpPost]
        public async Task<ApiResult<ImagResponse>> GenerateImage([FromBody] ImagForm form)
        {
            return await _iGptImage.GenerateImage(form);
        }
    public class ImagForm
    {
        public string Prompt { get; set; }

        public int Count { get; set; }
        /// <summary>
        /// 图片尺寸 1:256*256 2:512 3:1024
        /// </summary>
        public int? SizeType { get; set; }
    }

接口实现,目前项目还没有开源,不方便把完整代码发出来,下面是调用接口部分,CreateImage是封装的http接口调用:

                //接受传进来的prompt生成一张或者多张图片
                var imageResult = await CreateImage(new ImageCreateRequest
                {
                    //提示词
                    Prompt = form.Prompt,
                    //生成图片数量
                    N = form.Count,
                    Size = size,
                    //返回url或者base64,url更合适 
                    ResponseFormat = "url",
                    User = "user"
                });

返回结果比较简单,获取json里的url就可以了。

3、运行结果

我们gpt项目已经上线了ai生成图片功能,同时商城上架了图片验证码 商城地址

首先看下chagpt官网的样例:

chat图片

这是我们生成的图片

playchat生成图片

感兴趣的朋友可以前往体验支持一下。

下一篇准备写chatgpt账号余额接口。

个人博客地址: https://note.raokun.top

拥抱ChatGPT,国内访问网站:https://ai.firstsaofan.top

标签:url,笔记,生成,接口,chatgpt,public,图片
From: https://www.cnblogs.com/raok/p/17373597.html

相关文章

  • 利用Python爬虫采集1688商品详情数据 +商品列表数据+商品API接口(支持全网)
    一、如何通过手动方式查看1688商品详情页面的数据1.1688商品详情API接口(item_get-获得1688商品详情接口),1688API接口代码对接可以获取到宝贝ID,宝贝标题,价格,掌柜名称,库存,最小购买数,宝贝链接,宝贝图片,品牌名称,商品详情,详情图片等页面上有的数据均可以获取到,手动方式如下:例......
  • 完善接口:输出值班医生的电话,查询小程序的密钥
    接口的开发:输出值班医生的电话我发现我之前创建的管理员的表是多余的,我可以直接借用若依自带的表来做。其中还有这角色,正好符合添加值班医生,而且后台管理的前端页面是有着功能的,这样更为方便,也可以添加值班医生的信息,我将自带的实体类导入到项目代码的指定的位置。根据角色和管......
  • 【解决办法】三层交换机通过静态路由和接口互联,实现不同VLAN间通信的两种方法
    环境:工具:锐捷EVE模拟器远程工具:SecureCRT系统版本:Windows10问题描述:描述:通过两台三层交换机的互联,完成全网互通。拓扑如下图:解决方法-视频与文字教程:视频教程:文字教程:方法1:通过建立TRUNK链路,通过SVI虚拟接口实现三层交换机的互联,各交换机下的终端的网关指向各自交......
  • 笔记
    康托展开和逆康托展开康托展开和逆康托展开(转)-Sky丨Star-博客园(cnblogs.com)康托展开表示的就是是当前排列组合在n个不同元素的全排列中的名次逆康托展开则是由名次得出该名次的排列组合公式:康托展开值X=a[n]*(n-1)!+a[n-1]*(n-2)!+...+a[i]*(i-1)!+...+a[1]*0!X表示该......
  • 【Java学习笔记】Maven项目+Junit5单元测试
    1.Maven简介;Maven概念:仓库、坐标Maven坐标:描述仓库中资源的位置Maven坐标查找:https://mvnrepository.com/Maven坐标组成:-groupId:定义当前Maven项目隶属组织名称(通常是域名反写,例如:com.Google)-artifactId:定义当前Maven项目名称(通常是模块名称)-version:定义当前Maven项目......
  • RocketMQ笔记(十一):消息存储删除机制
    RocketMQ的消息采用文件进行持久化存储。1、存储目录详情RocketMQ中默认文件存储位置/root/store,文件详情如下 commitLog:消息存储目录config:运行期间一些配置信息consumerqueue:消息消费队列存储目录index:消息索引文件存储目录checkpoint:文件......
  • OpenResty学习笔记03:深入体验WAF
    一.WAF概况  二.Lua介绍  三.文件说明  四.引用关系  五.测试&体验  六.本篇总结  ......
  • RocketMQ笔记(十):事务消息
    事务消息官网:RocketMQ官网-事务消息。一、什么是事务消息事务消息是RocketMQ提供的一种消息类型,支持在分布式场景下保障消息生产和本地事务的最终一致性。二、事务消息的原理2.1、事务消息的生命周期2.1.1、初始化半事务消息被生产者构建并完成初始化,待发......
  • RocketMQ笔记(八):顺序消息
    一、什么是顺序消息消息有序指的是可以按照消息的发送顺序来消费(FIFO)。顺序消息是RocketMQ提供的一种消息类型,支持消费者按照发送消息的先后顺序获取消息。顺序消息在发送、存储和投递的处理过程中,强调多条消息间的先后顺序关系。RocketMQ顺序消息的顺序关系通过消......
  • RocketMQ笔记(九):延时/定时消息
    一、什么是延时/定时消息定时/延时消息为RocketMQ中提供的一种消息类型。定时消息和延时消息本质相同,都是服务端根据消息设置的定时时间在某一固定时刻将消息投递给消费者消费。Producer将消息发送到消息队列RocketMQ服务端,但并不期望这条消息立马投递(被消费者消费),......