Blockade Labs SDK for Laravel

1.0.3 2023-04-11 08:23 UTC

This package is not auto-updated.

Last update: 2024-09-24 14:52:30 UTC


README

Laravel 版本支持

  • >= 7.0

安装

您可以通过 composer 安装此包

composer require blockadelabs/sdk

入门

在您能够使用 SDK 之前,您需要编辑您的 .env 文件并添加您的 Blockade Labs API 密钥

BLOCKADE_LABS_API_KEY=YOUR_API_KEY

包将注册一个 Facade,您可以在您的应用程序中使用它来执行 API 调用,只需确保将其包含在文件顶部

use BlockadeLabs\SDK\Facades\BlockadeLabsClient;

使用方法

所有方法和路由都在文档中进行了详细说明(请参阅此处)。

天空盒

getSkyboxStyles

$skyboxStyles = BlockadeLabsClient::getSkyboxStyles();

generateSkybox

$skybox = BlockadeLabsClient::generateSkybox([
   'prompt' => 'PROMPT_GOES_HERE', // Required
   'skybox_style_id' => '2', // Required,
   'remix_imagine_id' => 1, // OR remix_obfuscated_id / Optional
   'webhook_url' => 'YOUR_WEBHOOK_URL', // Optional
]);

有关如何生成新的天空盒以及如何生成先前生成天空盒的混音的详细信息,请参阅此处此处

Imagine 请求

getGenerators

$generators = BlockadeLabsClient::getGenerators();

generateImagine

$generateImagine = BlockadeLabsClient::generateImagine([
    'generator' => 'stable-skybox', // REQUIRED
    'prompt' => 'PROMPT_GOES_HERE', // REQUIRED
    'init_image' => $request->file('init_image') // example for the init_image file param
    ...other_generator_data_params, // Optional
    'webhook_url' => 'YOUR_WEBHOOK_URL', // Optional
]);

有关如何在生成 imagines 时获取和使用生成器数据的说明,请参阅此处此处

generateImagine 方法可以接受不同类型的生成器数据,可能包括文件。

在发送文件时,只需从请求中传递文件即可,如下所示

'init_image' => $request->file('init_image'),

getImagineById

$generateImagine = BlockadeLabsClient::generateImagine([
    'generator' => 'stable-skybox',
    'prompt' => 'some prompt',
]);

$imagine = BlockadeLabsClient::getImagineById($generateImagine['request']['id']);

getImagineByObfuscatedId

$generateImagine = BlockadeLabsClient::generateImagine([
    'generator' => 'stable-skybox',
    'prompt' => 'some prompt',
]);

$imagine = BlockadeLabsClient::getImagineByObfuscatedId($generateImagine['request']['obfuscated_id']);

getImagineHistory

$myImagines = BlockadeLabsClient::getImagineHistory([
    'status' => 'IMAGINE_STATUS', // OPTIONAL
    'limit' => 10, // OPTIONAL
    'offset' => 0, // OPTIONAL
    'order' => 'ASC', // OPTIONAL
    'imagine_id' => 1, // OPTIONAL
    'query' => 'PROMPT', // OPTIONAL
    'generator' => 'GENERATOR', // OPTIONAL
]);

cancelImagine

$generateImagine = BlockadeLabsClient::generateImagine([
    'generator' => 'stable-skybox',
    'prompt' => 'some prompt',
]);

$result = BlockadeLabsClient::cancelImagine($generateImagine['request']['id']);

cancelAllPendingImagines

$result = BlockadeLabsClient::cancelAllPendingImagines();

deleteImagine

$generateImagine = BlockadeLabsClient::generateImagine([
    'generator' => 'stable-skybox',
    'prompt' => 'some prompt',
]);

$result = BlockadeLabsClient::deleteImagine($generateImagine['request']['id']);

变更日志

有关最近更改的更多信息,请参阅CHANGELOG