AI 日报

Stable Diffusion 教程:如何使用我们的 Stable Diffusion API

  • By aihubon
  • Nov 01, 2023 - 2 min read



Stable Diffusion 教程:如何使用我们的 Stable Diffusion API

本文旨在提供可用于 Stable Diffusion 黑客马拉松的 API 的概述。请注意,此 API 不再可用!

本教程向您展示如何使用我们的 Stable Diffusion API 在几秒钟内生成图像。我们创建了自己的以简化您项目的开发。您可以简单地使用您的提示调用端点,例如“一只戴着帽子的猫”,然后返回生成图像的链接。然后您可以继续处理图像。我们在本指南中提供了许多不同编程语言的不同代码示例。

Stable Diffusion 教程:如何使用我们的 Stable Diffusion API

稳定扩散简介

Stable Diffusion 是一种文本到图像的潜在扩散模型,由来自 CompVis、Stability AI 和 LAION 的研究人员和工程师创建。它使用来自 LAION-5B 数据库子集的 512×512 图像进行训练。该模型使用冻结的 CLIP ViT-L/14 文本编码器根据文本提示调节模型。凭借其 860M UNet 和 123M 文本编码器,该模型相对轻量级。如果您想了解更多信息,请在此处继续阅读我们的稳定扩散技术页面。

让我们开始吧

您可以在 requests 模块的帮助下从您的Python项目调用 API,如下所示:

import requestsurl = "https://api.newnative.ai/stable-diffusion?prompt=futuristic spce station, 4k digital art"response = requests.request("GET", url)data = response.json()print(data["image_url"])# https://storage.googleapis.com/lablab-static-eu/stable-diffusion/futuristic%20spce%20station%2C%204k%20digital%20artbd8250880a904de79fac1a5f5f6fb3ed.png

如果您需要本地磁盘上的图像,您可以使用以下代码从 URL (Python)下载它

import urllib.requesturllib.request.urlretrieve("https://storage.googleapis.com/lablab-static-eu/stable-diffusion/futuristic%20space%20station.png", "local-filename.jpg")

Javascript中,您可以使用以下代码调用 API:

var requestOptions = {  method: 'GET',  redirect: 'follow'};fetch("https://api.newnative.ai/stable-diffusion?prompt=futuristic spce station, 4k digital art", requestOptions)  .then(response => response.text())  .then(result => console.log(result))  .catch(error => console.log('error', error));

以及如何在C#中调用端点:

var client = new RestClient("https://api.newnative.ai/stable-diffusion?prompt=futuristic spce station, 4k digital art");client.Timeout = -1;var request = new RestRequest(Method.GET);IRestResponse response = client.Execute(request);Console.WriteLine(response.Content);

如果你正在构建一个 flutter 应用程序,你可能想使用Dart来调用 API。以下是您的操作方法:

var request = http.Request('GET', Uri.parse('https://api.newnative.ai/stable-diffusion?prompt=futuristic spce station, 4k digital art'));http.StreamedResponse response = await request.send();if (response.statusCode == 200) {  print(await response.stream.bytesToString());}else {  print(response.reasonPhrase);}

请注意,您可以在 URL 参数中将实际提示更改为您想要的任何内容。

我们希望这可以帮助您开始使用我们的稳定扩散 API。如果您有任何问题或反馈,请在 AIHubPro.cn圈子中告诉我们。

谢谢你!– AI未来百科 ; 探索AI的边界与未来! 懂您的AI未来站