O hirunewani blog

Faker.js v9.5.0 でAI生成されたアバター画像を利用する

Created at

Faker.js v9.5.0で追加されたpersonPortraitメソッドについて紹介する。

Faker.js v9.5.0で追加されたfaker.image.personPortrait()を利用すると、AI(Stable Diffusion 3)によって生成された架空の人物の正方形の画像を取得できる。

personPortraitを実行してみる

次のように画像の大きさと生成される人物の性別を指定することが出来る。

faker.image.personPortrait({ sex: 'female', size: '128' }) 

これを実行すると、次のような画像が生成される。

取得される画像について

faker.image.personPortrait()で取得される画像は、AI(Stable Diffusion 3)によって事前に生成された架空の人物の正方形の画像である。

画像の大きさは、sizeオプションで指定することが出来る。sizeオプションは、32, 64, 128, 256, 512, 1024のいずれかの値を指定することが出来る。

画像は、事前に生成されたものをJSDelivr CDN経由で取得しており、ソースコードを読むに男女毎100枚ずつの画像、計200枚の画像が用意されている。

注意:avator()もAI生成された画像を返す

Faker.jsには以前からfaker.image.avatar()というメソッドが存在していたが、これは内部的にfaker.image.avatarGitHub()を呼び出しており、今まではGithHubのランダムなアバター画像を取得していた。

しかし、Faker.js v9.5.0では、特にリリースノートなどでの言及は見当たらなかったが、faker.image.avatar()faker.image.avatarGitHub()またはfaker.image.personPortrait()を呼び出すように変更が加えられている。

次の実際にfaker.image.avatar()を実行するボタンを複数回クリックすると両方が表示されることを確認できる。

このため、今までfaker.image.avatar()を(ほとんどのユーザーはアイコンを指定していないため)基本的にIdenticonを返すものだと思っていた人は、Faker.jsをv9.5.0にアップデートすると、AI生成されたアバター画像が表示されびっくりするかもしれない。