メインコンテンツまでスキップ

画像生成

プロンプトに基づいてカスタム画像を生成

利点

  • 必要に応じて迅速に画像を作成できるカスタム画像生成機能を提供します。
  • Squid backend context を使用して画像生成を安全に実行し、リソースへの独占アクセスを確保します。

仕組み

画像ジェネレーターと対話するには、Squid Client SDK を使用します。

注意

Squid AI 画像ジェネレーターは管理者アクセスが必要です。そのため、このメソッドは Squid backend またはアプリケーションの API キーにアクセス可能な他の管理者環境で実行する必要があります。

画像ジェネレーターの作成

画像ジェネレーターを作成するには、Squid AI の .image() メソッドを使用します:

Backend code
const imageGenerator = this.squid.ai().image();

その後、この画像生成インスタンスを generate() メソッドを使用して利用できます。generate() は、生成する画像の文字列プロンプトと、画像生成オプションを含む AiGenerateImageOptions 型の2つのパラメータを取ります。この関数は、生成された画像の URL に解決される Promise を返します。

以下の例は、generate() を使用して画像を生成する方法を示しています:

Backend code
const options: AiGenerateImageOptions = {
modelName: 'dall-e-3',
quality: 'standard',
size: '1024x1024',
numberOfImagesToGenerate: 1,
};

const imageUrl = await imageGenerator.generate('a pirate ship', options);

AiGenerateImageOptions の詳細については、reference documentation をご覧ください。

AI 画像生成のセキュリティ強化

Squid AI 画像ジェネレーターは管理者アクセスが必要なため、Squid backend または他の管理者権限を持つ環境でのみ実行する必要があります。もし、画像ジェネレーターを Squid backend に接続されたクライアントアプリケーションから実行する場合は、フロントエンドからバックエンド機能をトリガーするために Executable を使用することができます。以下の Executable 関数は、ユーザーが認証された場合のみ画像を生成します:

Backend code
import { executable, SquidService } from '@squidcloud/backend';
import { AiGenerateImageOptions } from '@squidcloud/client';

@executable()
async generateImage(prompt: string): Promise<string | Error> {
if (!this.isAuthenticated()) {
return Error('Access denied');
}
const options: AiGenerateImageOptions = {
modelName: 'dall-e-3',
quality: 'standard',
size: '1024x1024',
numberOfImagesToGenerate: 1,
};

return await this.squid
.ai()
.image()
.generate(prompt, options);
}

画像から背景を削除する

画像生成に加えて、Squid は背景除去機能も提供しています。この機能を使用すると、画像から背景を削除し、被写体をより簡単に抽出することができます。

この機能を使用するには、画像ジェネレーターインスタンスで removeBackground() メソッドを呼び出し、処理したいファイルを渡します。

Backend code
await this.squid.ai().image().removeBackground(IMAGE_FILE_TO_PROCESS);

次のステップ

Squid AI は、custom AI agentslong-running AI conversations、および Query with AI functionality など、多くの AI 機能を提供しています。Squid AI を使用して強力な AI ワークフローやアプリケーションを構築しましょう。