Python 调用 Stabilityai API在本地生成图像
Python 调用 Stabilityai API在本地生成图像
- 摘要
- 功能
- 代码结构
- 关键技术
- 代码下载
- 立即体验
摘要
本程序利用硅基流动目前的免费 stabilityai/stable-diffusion-2-1 模型API,生成图像并下载到本地,用户可以通过输入描述性提示词来获取相应的图像。使用Python编写,依赖于requests库进行HTTP请求,并使用os库处理文件系统操作。
功能
- 用户输入:程序提示用户输入描述图像的提示词,例如:‘an island near sea, with seagulls, moon
shining over the sea, light house, boats int he background, fish
flying over the sea’。输入提示词时,不要少了前后的单引号哦。 - API请求:使用用户输入的提示词构建请求负载,并向指定的API发送POST请求以生成图像。(代码中有)
- 响应处理:解析API的响应,提取生成的图像URL。
- 文件保存:将生成的图像下载并保存到本地文件系统,文件名基于用户输入的前10个字符命名。
- 目录管理:在保存图像之前,检查并创建必要的目录。
代码结构
代码结构
以下是应用程序的主要代码结构:
# -*- coding: utf-8 -*-
import requests
import osurl = "https://api.siliconflow.cn/v1/images/generations"# 提示用户输入描述图片的提示词
try:user_input = input("\n请输入描述图片的提示词,例如:'blue sky': ").strip() # 用户输入需要引号user_prompt = "'{}'".format(user_input)
except Exception as e:print("输入提示词时发生错误: {}".format(e))exit(1) # 退出程序payload = {"model": "deepseek-ai/Janus-Pro-7B","prompt": user_prompt, # 使用用户输入的提示词"seed": 4999999999
}
headers = {"Authorization": "Bearer <token>", #<token> 替换成你在硅基流动里的 API-KEY, 文末有如何获得。"Content-Type": "application/json"
}response = requests.request("POST", url, json=payload, headers=headers)# 解析响应以获取图像URL
response_json = response.json() # 使用 json() 方法解析响应
image_url = response_json['data'][0]['url'] # 从 data 数组中获取 URL# 定义保存图像的本地文件名
local_filename = os.path.join("images", "{}.png".format(user_input[:10])) # 使用用户输入的前10个字符命名# 创建图像目录(如果不存在)
if not os.path.exists(os.path.dirname(local_filename)):os.makedirs(os.path.dirname(local_filename))# 下载图像并保存到本地
with requests.get(image_url, stream=True) as img_response:img_response.raise_for_status() # 检查请求错误with open(local_filename, 'wb') as f:for chunk in img_response.iter_content(chunk_size=8192):f.write(chunk)print("Image saved to {local_filename}")
关键技术
HTTP请求:使用requests库简化HTTP请求的发送和响应处理。
JSON解析:通过response.json()方法轻松解析API返回的JSON数据。
文件操作:使用os库处理文件路径和目录创建,确保图像能够正确保存。
总结
本应用程序展示了如何通过API生成图像,并将其保存到本地。用户友好的输入提示和自动化的文件管理使得该应用程序易于使用,适合需要快速生成图像的场景。
代码下载
https://gitee.com/phpervip/py-stability-ai/
立即体验
现在就开始吧!
https://cloud.siliconflow.cn/i/7qQzHGZs
https://cloud.siliconflow.cn/i/7qQzHGZs
https://cloud.siliconflow.cn/i/7qQzHGZs
相关文章:
Python 调用 Stabilityai API在本地生成图像
Python 调用 Stabilityai API在本地生成图像 摘要功能 代码结构关键技术代码下载立即体验 摘要 本程序利用硅基流动目前的免费 stabilityai/stable-diffusion-2-1 模型API,生成图像并下载到本地,用户可以通过输入描述性提示词来获取相应的图像。使用Pyt…...
Python3中异常处理:try-finally语句的示例
一. 简介 前面一篇文章简单学习了 try-finally语句结构,执行过程、以及使用场景。文章如下: Python3中异常处理:try-finally语句-CSDN博客 本文写一些简单的示例来继续学习 try-finally语句的使用。 二. Python3中异常处理:try…...
Lua限流器的3种写法
学而不思则罔,思而不学则殆 引言 上篇文章讲解了Lua脚本,事务和Pipline之间的使用方式和性能差距,本篇文章将聚焦Lua脚本,我将用三种写法来展现如何实现一个Redis限流器 固定窗口限流 固定窗口限流也是最简单的限流算法&#x…...
基于 GEE 利用插值方法填补缺失影像
目录 1 完整代码 2 运行结果 利用GEE合成NDVI时,如果研究区较大,一个月的影像覆盖不了整个研究区,就会有缺失的地方,还有就是去云之后,有云量的地区变成空值。 所以今天来用一种插值的方法来填补缺失的影像…...
linux部署ollama+deepseek+dify
Ollama 下载源码 curl -L https://ollama.com/download/ollama-linux-amd64.tgz -o ollama-linux-amd64.tgz sudo tar -C /usr -xzf ollama-linux-amd64.tgz启动 export OLLAMA_HOST0.0.0.0:11434 ollama serve访问ip:11434看到即成功 Ollama is running 手动安装deepseek…...
在微服务中,如何使用feign在各个微服务中进行远程调用
在微服务中,如何使用feign在不同微服务中进行远程调用 在微服务中,如何使用feign在不同微服务中进行远程调用 步骤: 第一步: 引入feign依赖 <dependency><groupId>org.springframework.cloud</groupId><…...
Kafka中的KRaft算法
我们之前的Kafka值依赖于Zookeeper注册中心来启动的,往里面注册我们节点信息 Kafka是什么时候不依赖Zookeeper节点了 在Kafka2.8.0开始就可以不依赖Zookeeper了 可以用KRaft模式代替Zookeeper管理Kafka集群 KRaft Controller和KRaft Leader的关系 两者关系 Lea…...
vue3 -- 集成 amap(高德地图)
🍍效果 本文介绍了如何在 Vue 3 项目中集成高德地图(AMap),并使用 PoiPicker 实现地点搜索功能。 文章首先通过 AMapLoader 异步加载高德地图 API,并初始化 Map 实例。同时,借助 AMapUI 组件库引入 PoiPicker,绑定搜索输入框,实现地点选择功能。PoiPicker 监听用户的 …...
基于用户的协同过滤算法推荐
import numpy as np 计算用户之间的相似度(这里使用余弦相似度) def cosine_similarity(user1, user2): numerator np.dot(user1, user2) denominator np.linalg.norm(user1) * np.linalg.norm(user2) return numerator / denominator if denominato…...
4.python+flask+SQLAlchemy+达梦数据库
前提 1.liunx Centos7上通过docker部署了达梦数据库。从达梦官网下载的docker镜像。(可以参考前面的博文) 2.windows上通过下载x86,win64位的达梦数据库,只安装客户端,不安装服务端。从达梦官网下载达梦数据库windows版。(可以参考前面的博文) 这样就可以用windows的达…...
神经网络常见激活函数 4-LeakyReLU函数
文章目录 LeakyReLU函数导函数函数和导函数图像优缺点pytorch中的LeakyReLU函数tensorflow 中的LeakyReLU函数 LeakyReLU LeakyReLU: Leaky Rectified Linear Unit 函数导函数 LeakyReLU函数 L e a k y R e L U { x x > 0 p x x < 0 p ∈ ( 0 , 1 ) \rm …...
PHP盲盒商城系统源码 晒图+免签+短信验证+在线回收 thinkphp框架
源码介绍 PHP盲盒商城系统源码 晒图免签短信验证在线回收 thinkphp框架 源码前端uniapp开发,可以打包成APP(非H5封壳)H5,接其他平台支付通道,前后端全开源 H5盲盒首页可以直接开盒新UI 修复优化BUG,修复无…...
单例模式详解(Java)
单例模式详解(Java) 一、引言 1.1 概述单例模式的基本概念和重要性 单例模式是一种常用的软件设计模式,它确保一个类在整个应用程序中只有一个实例,并提供一个全局访问点来访问这个唯一实例。这种模式在资源管理、配置设置和日志记录等方面非常有用,因为它们通常只需要…...
2025年度Python最新整理的免费股票数据API接口
在2025年这个充满变革与机遇的年份,随着金融市场的蓬勃发展,量化交易逐渐成为了投资者们追求高效、精准交易的重要手段。而在这个领域中,一个实时、准确、稳定的股票API无疑是每位交易者梦寐以求的工具。 现将200多个实测可用且免费的专业股票…...
2.10学习总结
今天接着看了数据结构,但是跟指针有关的看不懂(万恶的指针),写了考试的补题。 #include <stdio.h> #include <stdlib.h> int a[1000005]; int main() {int n,i,x0;scanf("%d",&n);for(i1;i<n;i){x;i…...
原生鸿蒙版小艺APP接入DeepSeek-R1,为HarmonyOS应用开发注入新活力
原生鸿蒙版小艺APP接入DeepSeek-R1,为HarmonyOS应用开发注入新活力 在科技飞速发展的当下,人工智能与操作系统的融合正深刻改变着我们的数字生活。近日,原生鸿蒙版小艺APP成功接入DeepSeek-R1,这一突破性进展不仅为用户带来了更智…...
从Word里面用VBA调用NVIDIA的免费DeepSeekR1
看上去能用而已。 选中的文字作为输入,运行对应的宏即可;会先MSGBOX提示一下,然后相关内容追加到word文档中。 需要自己注册生成好用的apikey Option ExplicitSub DeepSeek()Dim selectedText As StringDim apiKey As StringDim response A…...
【SpringBoot篇】基于Redis分布式锁的 误删问题 和 原子性问题
文章目录 ??Redis的分布式锁??误删问题 ??解决方法??代码实现 ??原子性问题 ??Lua脚本 ?利用Java代码调用Lua脚本改造分布式锁??代码实现 ??Redis的分布式锁 Redis的分布式锁是通过利用Redis的原子操作和特性来实现的。在分布式环境中,多个应用…...
【JVM详解三】垃圾回收机制
一、对象是否存活 强引用:Object obj new Object(); 只要强引用还在,垃圾收集器永远不会回收掉被引用的对象。在不用对象的时将引用赋值为 null,能够帮助垃圾回收器回收对象。比如 ArrayList 的 clear() 方法实现。软引用(SoftRe…...
MySQL的字符集(Character Set)和排序规则(Collation)
MySQL的字符集(Character Set)和排序规则(Collation) 字符集(Character Set)和排序规则(Collation)是数据库中处理文本数据的两个核心概念,二者紧密相关但作用不同。 1…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...
【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器
——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的一体化测试平台,覆盖应用全生命周期测试需求,主要提供五大核心能力: 测试类型检测目标关键指标功能体验基…...
2024年赣州旅游投资集团社会招聘笔试真
2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...
1688商品列表API与其他数据源的对接思路
将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...
Leetcode 3577. Count the Number of Computer Unlocking Permutations
Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...
css的定位(position)详解:相对定位 绝对定位 固定定位
在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...
AGain DB和倍数增益的关系
我在设置一款索尼CMOS芯片时,Again增益0db变化为6DB,画面的变化只有2倍DN的增益,比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析: 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...
排序算法总结(C++)
目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指:同样大小的样本 **(同样大小的数据)**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...
基于Springboot+Vue的办公管理系统
角色: 管理员、员工 技术: 后端: SpringBoot, Vue2, MySQL, Mybatis-Plus 前端: Vue2, Element-UI, Axios, Echarts, Vue-Router 核心功能: 该办公管理系统是一个综合性的企业内部管理平台,旨在提升企业运营效率和员工管理水…...
LangFlow技术架构分析
🔧 LangFlow 的可视化技术栈 前端节点编辑器 底层框架:基于 (一个现代化的 React 节点绘图库) 功能: 拖拽式构建 LangGraph 状态机 实时连线定义节点依赖关系 可视化调试循环和分支逻辑 与 LangGraph 的深…...
