Platform for AI (PAI) menyediakan SDK Potret AI untuk Python yang memungkinkan Anda memanggil operasi layanan algoritma dari layanan Potret AI untuk melatih model dan membuat potret. Dengan SDK ini, Anda dapat mengonfigurasi model LoRA kustom serta membuat potret berdasarkan gambar template. Topik ini menjelaskan persiapan yang diperlukan sebelum menggunakan SDK Potret AI untuk Python dalam memanggil operasi terkait, serta memberikan contoh cara melakukannya.
Prasyarat
Lingkungan Python telah disiapkan. Python 3.4 atau versi lebih baru didukung.
Untuk pelatihan model dan pembuatan potret, siapkan 5 hingga 20 gambar pelatihan dan 1 gambar template. Format gambar yang didukung adalah:
.jpg,.jpeg, dan.png. Pastikan ukuran setiap gambar lebih besar dari 512 x 512 piksel.Potret satu orang: Gambar template harus berisi wajah seseorang. Wajah di beberapa gambar pelatihan milik orang yang sama.
Potret multi-orang: Gambar template harus berisi beberapa wajah, dengan jumlah wajah sesuai nilai parameter model_id yang ditentukan untuk pelatihan model.
Persiapan
Jalankan perintah berikut untuk menginstal SDK Python:
wget https://ai-service-data.oss-cn-beijing.aliyuncs.com/python-sdk/ai_service_python_sdk-1.1.3-py3-none-any.whl pip install ai_service_python_sdk-1.1.3-py3-none-any.whlInisialisasi klien.
Jalankan perintah berikut untuk menginisialisasi lingkungan:
from ai_service_python_sdk.client.api_client import ApiClient client = ApiClient('<HOST>', '<YOUR-APPID>', '<YOUR-TOKEN>')Ubah parameter berikut sesuai kebutuhan bisnis Anda.
Parameter
Deskripsi
<HOST>
Alamat server. Contoh:
http://ai-service.ce8cc13b6421545749e7b4605f3d02607.cn-hangzhou.alicontainer.com.<YOUR-APPID>
ID aplikasi. Setelah Anda mengaktifkan layanan Potret AI, Anda dapat melihat ID aplikasi di halaman Potret AI.
<YOUR-TOKEN>
Token. Setelah Anda mengaktifkan layanan Potret AI, Anda dapat melihat token di halaman Potret AI.
Kode contoh
Potret AI adalah layanan intensif sumber daya yang melibatkan proses pelatihan model dan pembuatan potret. Pelatihan model biasanya memerlukan beberapa menit, sedangkan pembuatan potret hanya membutuhkan beberapa puluh detik. Gambar berikut menunjukkan proses pembuatan potret AI dengan memanggil operasi API.
Berikut adalah permintaan contoh, respons contoh untuk operasi API terkait, serta kode contoh untuk proses end-to-end.
Permintaan Pemeriksaan (aigc_images_check)
Permintaan contoh:
from ai_service_python_sdk.client.api_client import ApiClient from ai_service_python_sdk.client.api.ai_service_aigc_images_api import AIGCImagesApi host = 'http://ai-service.ce8cc13b6421545749e7b4605f3d02607.cn-hangzhou.alicontainer.com' appId = 'YOUR-APPID' token = 'YOUR-TOKEN' client = ApiClient(host, appId, token) api = AIGCImagesApi(client) # noqa: E501 # Gambar pelatihan dalam format URL. images = [ 'https://xxx/0.jpg', 'https://xxx/1.jpg' ] response = api.aigc_images_check(images, <model_name>, <configure>) # ID permintaan. request_id = response.request_id # Status permintaan. code = response.code # Detail status permintaan. message = response.message # Konten yang dikembalikan oleh layanan model. data = response.data # Tampilkan nilai pengembalian. print(response)Tabel berikut menjelaskan parameter utama.
Parameter
Deskripsi
appId
ID aplikasi. Setelah Anda mengaktifkan layanan Potret AI, Anda dapat melihat ID aplikasi di halaman Potret AI.
token
Token. Setelah Anda mengaktifkan layanan Potret AI, Anda dapat melihat token di halaman Potret AI.
images
URL gambar yang ingin Anda periksa. Pisahkan beberapa URL dengan koma (,).
response
Parameter respons berisi bidang berikut:
<model_name>: nama model. Secara default, string kosong digunakan. Contoh:
''.<configure>: item konfigurasi yang dikembalikan. Nilai default:
None. Tidak ada item konfigurasi tambahan yang ditentukan.
Respons contoh:
{ "request_id":"07988c97-caa4-4512-a2b2-e9173c1a03c6", "code":"OK", "message":"success", "data":{ "check_results":[ { "code":1, "frontal":true, "message":"success", "url":"https://xxx/0.jpg" },{ "code":1, "frontal":false, "message":"success", "url":"https://xxx/1.jpg" } ], "cost_time":0.47095775604248047, "images":["https://xxx/0.jpg","https://xxx/1.jpg"], "request_id":"07988c97-caa4-4512-a2b2-e9173c1a03c6"}}Tabel berikut menjelaskan parameter respons.
Parameter
Deskripsi
request_id
ID permintaan, yang bertipe STRING.
code
Kode status permintaan, yang bertipe STRING. Nilai valid:
OK: Permintaan berhasil.
error: Permintaan gagal.
message
Detail status permintaan. Jika permintaan berhasil, success dikembalikan. Dalam skenario lain, pesan berbeda dikembalikan.
data
Detail data yang dikembalikan, yang bertipe JSON Object. Parameter:
check_results: Hasil deteksi untuk setiap gambar input. Setiap gambar sesuai dengan kamus yang berisi kunci berikut: url, message, dan frontal.
url: URL gambar.
message: detail deteksi gambar. Untuk informasi tentang nilai yang mungkin, lihat Nilai valid dari bidang message dalam check_results.
frontal: menunjukkan apakah wajah dalam gambar menghadap ke depan.
cost_time: waktu yang diperlukan server untuk memanggil API.
images: URL gambar yang diperiksa. Nilainya bertipe LIST.
request_id: ID permintaan. Nilainya bertipe STRING.
Inisiasi pelatihan model (aigc_images_train)
Permintaan contoh:
from ai_service_python_sdk.client.api_client import ApiClient from ai_service_python_sdk.client.api.ai_service_aigc_images_api import AIGCImagesApi host = 'http://ai-service.ce8cc13b6421545749e7b4605f3d02607.cn-hangzhou.alicontainer.com' appId = 'YOUR-APPID' token = 'YOUR-TOKEN' client = ApiClient(host, appId, token) api = AIGCImagesApi(client) # noqa: E501 # Gambar pelatihan dalam format URL. images = [ 'https://xxx/0.jpg', 'https://xxx/1.jpg', 'https://xxx/2.jpg', 'https://xxx/3.jpg', 'https://xxx/4.jpg', 'https://xxx/5.jpg' ] response = api.aigc_images_train(images, <model_name>, <configure>) # ID permintaan. request_id = response.request_id # Status permintaan. code = response.code # Detail status permintaan. message = response.message # Konten yang dikembalikan oleh layanan model. data = response.data # job id job_id = response.data['job_id'] # model_id model_id = response.data['model_id'] # Tampilkan nilai pengembalian. print(response)Tabel berikut menjelaskan parameter utama.
Parameter
Deskripsi
appId
ID aplikasi. Setelah Anda mengaktifkan layanan Potret AI, Anda dapat melihat ID aplikasi di halaman Potret AI.
token
Token. Setelah Anda mengaktifkan layanan Potret AI, Anda dapat melihat token di halaman Potret AI.
images
URL gambar pelatihan. Pisahkan beberapa URL dengan koma (,).
response
Parameter respons berisi bidang berikut:
<model_name>: nama model. Secara default, string kosong digunakan. Contoh:
''.<configure>: item konfigurasi yang dikembalikan. Nilai default:
None. Tidak ada item konfigurasi tambahan yang ditentukan.
Respons contoh:
{'code': 'OK', 'data': {'job_id': 11***, 'model_id': 'fa4ba43a-df55-45a4-9c31-bb0dc1e5****'}, 'message': 'success', 'request_id': 'de314ef5-114d-4db1-b54a-332d5300780b'}Tabel berikut menjelaskan parameter.
Parameter
Deskripsi
request_id
ID permintaan, yang bertipe STRING.
code
Kode status permintaan, yang bertipe STRING. Nilai valid:
OK: Permintaan berhasil.
error: Permintaan gagal.
message
Detail status permintaan. Jika permintaan berhasil, success dikembalikan. Dalam skenario lain, pesan berbeda dikembalikan.
data
Detail data yang dikembalikan, yang bertipe JSON Object. Parameter:
job_id: ID tugas. Nilainya bertipe INT.
model_id: ID model yang digunakan dalam pelatihan. ID ini adalah string dengan panjang 36 karakter.
Simpan parameter job_id dan model_id dalam respons sebelumnya ke perangkat lokal Anda. Gunakan job_id untuk memeriksa hasil pelatihan dan model_id untuk mengirim permintaan pembuatan potret.
Pemeriksaan hasil pelatihan (get_async_job)
Permintaan contoh:
from ai_service_python_sdk.client.api_client import ApiClient from ai_service_python_sdk.client.api.ai_service_job_api import AiServiceJobApi host = 'http://ai-service.ce8cc13b6421545749e7b4605f3d02607.cn-hangzhou.alicontainer.com' appId = 'YOUR-APPID' token = 'YOUR-TOKEN' client = ApiClient(host, appId, token) ai_service_job_api = AiServiceJobApi(client) # Periksa hasil. result = ai_service_job_api.get_async_job(<YOUR-JOB-ID>) # Tampilkan nilai pengembalian. print(result)Tabel berikut menjelaskan parameter utama.
Parameter
Deskripsi
appId
ID aplikasi. Setelah Anda mengaktifkan layanan Potret AI, Anda dapat melihat ID aplikasi di halaman Potret AI.
token
Token. Setelah Anda mengaktifkan layanan Potret AI, Anda dapat melihat token di halaman Potret AI.
result
Ganti parameter <YOUR-JOB-ID> dengan job_id yang dikembalikan oleh operasi aigc_images_train.
Respons contoh:
Blok kode berikut menunjukkan respons contoh ketika pelatihan model belum selesai:
{'code': 'OK', 'data': {'job': {'Result': '', 'app_id': '2******6', 'create_time': '2023-08-22T16:43:35.36+08:00', 'id': 11***, 'message': 'model requesting', 'state': 1, 'type': 'Image'}}, 'message': 'success', 'request_id': '8639143a-e147-4107-8e25-fcdeae24b0c5'}Blok kode berikut menunjukkan respons contoh ketika pelatihan model selesai:
{'code': 'OK', 'data': {'job': {'Result': '{"cost_time":1589.0886301994324, "states": [{"code":1,"frontal":false,"message":"success","url":"xxx.jpg"}],"model_id":"fa4ba43a-df55-45a4-9c31-bb0dc1e5****"}', 'app_id': '2******6', 'create_time': '2023-08-22T15:54:41.046+08:00', 'id': 11***, 'message': 'success', 'state': 2, 'type': 'Image'}}, 'message': 'success', 'request_id': '93b77f4b-56cb-4120-b45b-f5c88941bff5'}
Tabel berikut menjelaskan parameter respons.
Parameter
Deskripsi
request_id
ID permintaan, yang bertipe STRING.
kode
Kode status permintaan, yang bertipe STRING. Nilai yang valid:
OK: Permintaan berhasil.
error: Permintaan gagal.
message
Detail status permintaan. Jika permintaan berhasil, success dikembalikan. Dalam skenario lain, pesan berbeda dikembalikan.
data
Detail data yang dikembalikan, yang bertipe JSON Object. Untuk informasi tentang bidang internal, lihat bagian berikut dalam topik ini:
Deskripsi Kode Kesalahan Terkait
Kode kesalahan permintaan
Kode status HTTP
code
message
Deskripsi
400
PARAMETER_ERROR
not found appid
ID aplikasi tidak valid.
EXCEEDED_QUOTA_ERROR
exceeded quota
Kuota panggilan layanan akun telah habis.
401
PARAMETER_ERROR
sign error
Token tidak valid.
404
PARAMETER_ERROR
model not found
Layanan model yang diminta belum diterapkan.
Kode kesalahan respons
Kode status HTTP
code
message
Deskripsi
462
error
Invalid input data
Terjadi kesalahan saat mem-parsing data input.
Image not provided
Gambar pelatihan tidak disediakan.
Make dir in oss Error
Gagal membuat folder Object Storage Service. Periksa apakah OSS telah dipasang.
Image process error
Terjadi kesalahan saat pra-pemrosesan gambar.
469
error
Training - Not get best template image
Pelatihan gagal dan gambar template tidak dibuat.
Training - Not get lora weight
Pelatihan gagal dan bobot LoRA tidak dibuat.
Pembuatan potret
Permintaan contoh:
Pembuatan potret tunggal (aigc_images_create)
import base64 import cv2 import numpy as np from ai_service_python_sdk.client.api.ai_service_aigc_images_api import \ AIGCImagesApi # noqa: E501 from ai_service_python_sdk.client.api_client import ApiClient def decode_image_from_base64jpeg(base64_image): image_bytes = base64.b64decode(base64_image) np_arr = np.frombuffer(image_bytes, np.uint8) image = cv2.imdecode(np_arr, cv2.IMREAD_COLOR) return image host = "http://ai-service.ce8cc13b6421545749e7b4605f3d02607.cn-hangzhou.alicontainer.com" appId = 'YOUR-APPID' token = 'YOUR-TOKEN' client = ApiClient(host, appId, token) api = AIGCImagesApi(client) # noqa: E501 response = api.aigc_images_create( '<Your-Model-ID>', '<url>', '<model_name>', <configure> ) # ID permintaan. request_id = response.request_id # Status permintaan. code = response.code # Detail status permintaan. message = response.message # Konten yang dikembalikan oleh layanan model. data = response.data print(response) image = data['image'] image = decode_image_from_base64jpeg(image) cv2.imwrite("1.jpg", image) print(data['cost_time'])Tabel berikut menjelaskan parameter.
Parameter
Deskripsi
appId
ID aplikasi. Setelah Anda mengaktifkan layanan Potret AI, Anda dapat melihat ID aplikasi di halaman Potret AI.
token
Token. Setelah Anda mengaktifkan layanan Potret AI, Anda dapat melihat token di halaman Potret AI.
response
Parameter respons berisi bidang berikut:
<Your-Model-ID>: Ganti nilai dengan ID model yang dikembalikan oleh operasi aigc_images_train.
<url>: Ganti nilai dengan URL gambar template yang berisi satu wajah. Contoh:
https://xxx/single_template.jpg.<model_name>: nama model. Secara default, string kosong digunakan. Contoh:
''.<configure>: item konfigurasi yang dikembalikan. Nilai default:
None. Untuk informasi tentang bidang internal, lihat Parameter bidang configure.
Pembuatan potret multi-orang (aigc_images_create_by_multi_model_ids)
import base64 import cv2 import numpy as np from ai_service_python_sdk.client.api.ai_service_aigc_images_api import \ AIGCImagesApi # noqa: E501 from ai_service_python_sdk.client.api_client import ApiClient def decode_image_from_base64jpeg(base64_image): image_bytes = base64.b64decode(base64_image) np_arr = np.frombuffer(image_bytes, np.uint8) image = cv2.imdecode(np_arr, cv2.IMREAD_COLOR) return image host = "http://ai-service.ce8cc13b6421545749e7b4605f3d02607.cn-hangzhou.alicontainer.com" appId = 'YOUR-APPID' token = 'YOUR-TOKEN' client = ApiClient(host, appId, token) api = AIGCImagesApi(client) # noqa: E501 response = api.aigc_images_create_by_multi_model_ids( ['<Your-Model-ID1>', '<Your-Model-ID2>'], '<url>', '<model_name>', <configure> ) # ID permintaan. request_id = response.request_id # Status permintaan. code = response.code # Detail status permintaan. message = response.message # Konten yang dikembalikan oleh layanan model. data = response.data print(response) image = data['image'] image = decode_image_from_base64jpeg(image) cv2.imwrite("1.jpg", image) print(data['cost_time'])Tabel berikut menjelaskan parameter.
Parameter
Deskripsi
appId
ID aplikasi. Setelah Anda mengaktifkan layanan Potret AI, Anda dapat melihat ID aplikasi di halaman Potret AI.
token
Token. Setelah Anda mengaktifkan layanan Potret AI, Anda dapat melihat token di halaman Potret AI.
response
Parameter respons berisi bidang berikut:
<Your-Model-ID1> dan <Your-Model-ID2>: Ganti nilai dengan ID model yang dikembalikan oleh operasi aigc_images_train.
<url>: Ganti nilai dengan URL gambar template yang berisi beberapa wajah. Jumlah wajah dalam gambar harus sama dengan nilai parameter model_id yang ditentukan untuk pelatihan model. Contoh:
http://xxx/multi_template.jpg.<model_name>: nama model. Secara default, string kosong digunakan. Contoh:
''.<configure>: item konfigurasi yang dikembalikan. Nilai default:
None. Untuk informasi tentang bidang internal, lihat Parameter bidang configure.
Respons contoh:
{ 'code': 'OK', 'data': { 'cost_time': 21.705406427383423, 'image': '/9j/4AAQSkZJRgABAQAAAQABAAD/.............2wBDAAgGBgcGBQgHBwcJCQgK', 'model_id': 'fa4ba43a-df55-45a4-9c31-bb0dc1e5****' }, 'message': 'success', 'request_id': 'df5454ca-07ec-4a15-be50-7beaba42f36b' }Tabel berikut menjelaskan parameter.
Parameter
Deskripsi
request_id
ID permintaan, yang bertipe STRING.
code
Kode status permintaan. Nilai valid:
OK: Permintaan berhasil.
error: Permintaan gagal.
message
Detail status permintaan. Jika permintaan berhasil, success dikembalikan. Dalam skenario lain, pesan berbeda dikembalikan.
data
Detail data yang dikembalikan, yang bertipe JSON Object. Parameter:
model_id: ID model pengguna.
image: gambar template yang digunakan untuk menghasilkan potret AI, yang dienkripsi dalam Base64.
cost_time: waktu yang diperlukan untuk pembuatan potret. Nilainya bertipe FLOAT.
Kode Kesalahan
Kode kesalahan permintaan
Kode status HTTP
code
message
Deskripsi
400
PARAMETER_ERROR
not found appid
ID aplikasi tidak valid.
EXCEEDED_QUOTA_ERROR
exceeded quota
Kuota panggilan layanan akun telah habis.
401
PARAMETER_ERROR
sign error
Token tidak valid.
404
PARAMETER_ERROR
model not found
Layanan model yang diminta belum diterapkan.
Kode kesalahan respons
Kode status HTTP
code
message
Deskripsi
462
error
Invalid input data. Please check the input dict.
Terjadi kesalahan saat mem-parsing data input.
Mage not provided. Please check the template_image.
Gambar template yang digunakan untuk pembuatan potret tidak disediakan.
Prompts get error. Please check the model_id.
Format ID model tidak valid.
Roop image decord error. Pleace check the user's lora is trained or not.
Gambar Roop tidak ada. Periksa apakah model telah dilatih.
Template image decord error. Please Give a new template.
Terjadi kesalahan saat mendekode gambar template. Berikan gambar template baru.
There is not face in template. Please Give a new template.
Tidak ada wajah dalam gambar template. Berikan gambar template baru.
Template image process error. Please Give a new template.
Terjadi kesalahan saat pra-pemrosesan gambar template. Berikan gambar template baru.
469
error
First Face Fusion Error, Can't get face in template image.
Terjadi kesalahan selama penggabungan potret pertama.
First Stable Diffusion Process error. Check the webui status.
Terjadi kesalahan selama pembuatan gambar pertama menggunakan Stable Diffusion.
Second Face Fusion Error, Can't get face in template image.
Terjadi kesalahan selama penggabungan potret kedua.
Second Stable Diffusion Process error. Check the webui status.
Terjadi kesalahan selama pembuatan gambar kedua menggunakan Stable Diffusion.
Please confirm if the number of faces in the template corresponds to the user ID.
Jumlah ID pengguna yang Anda berikan tidak sesuai dengan jumlah wajah.
Third Stable Diffusion Process error. Check the webui status.
Terjadi kesalahan saat pra-pemrosesan latar belakang. Berikan gambar template baru.
500
error
Face id image decord error. Pleace check the user's lora is trained or not.
Terjadi kesalahan saat mendekode gambar yang diunggah. Periksa apakah model telah dilatih.
Kode contoh proses pembuatan potret end-to-end
Blok kode berikut menunjukkan contoh proses pembuatan potret end-to-end. Setelah kode dijalankan, potret AI dibuat di direktori saat ini.
from ai_service_python_sdk.client.api_client import ApiClient
from ai_service_python_sdk.client.api.ai_service_aigc_images_api import AIGCImagesApi
from ai_service_python_sdk.client.api.ai_service_job_api import AiServiceJobApi
import logging
import sys
import time
import base64
import cv2
import numpy as np
host = "http://ai-service.ce8cc13b6421545749e7b4605f3d02607.cn-hangzhou.alicontainer.com"
appId = 'YOUR-APPID'
token = 'YOUR-TOKEN'
def decode_image_from_base64jpeg(base64_image):
image_bytes = base64.b64decode(base64_image)
np_arr = np.frombuffer(image_bytes, np.uint8)
image = cv2.imdecode(np_arr, cv2.IMREAD_COLOR)
return image
def Check(client, images):
# Periksa permintaan.
response = api.aigc_images_check(images, '', None)
# ID permintaan.
request_id = response.request_id
# Status permintaan.
code = response.code
# Detail status permintaan.
message = response.message
# Konten yang dikembalikan oleh layanan model.
data = response.data
# Tampilkan nilai pengembalian.
if code != "OK":
logging.error(f"aigc_images_check failed,request id is {request_id}")
logging.error(message)
sys.exit(-1)
else:
for check_result in data['check_results']:
if check_result['code'] != 1:
logging.error(f"check {check_result['url']} failed, message is {check_result['message']}")
sys.exit(-1)
logging.info("check images done")
def Train(client, images):
# Permintaan pelatihan.
response = api.aigc_images_train(images, '', None)
request_id = response.request_id
code = response.code
message = response.message
data = response.data
# Tampilkan nilai pengembalian.
if code != "OK":
logging.error(f"aigc_images_train failed, request id is {request_id}")
logging.error(message)
sys.exit(-1)
else:
# job id
job_id = response.data['job_id']
# model_id
model_id = response.data['model_id']
logging.info(f"train job_id is {job_id}")
logging.info(f"train moded_id is {model_id}")
if isinstance(job_id, int):
while True:
ai_service_job_api = AiServiceJobApi(client)
response = ai_service_job_api.get_async_job(job_id)
request_id = response.request_id
code = response.code
message = response.message
data = response.data
if code != "OK":
logging.error(f"get_async_job failed, request id is {request_id}")
logging.error(message)
sys.exit(-1)
else:
state = data["job"]["state"]
if state == 2:
logging.info(f"model {model_id} trained successfully")
break
elif state != 3:
logging.info(f"training model {model_id}")
time.sleep(10)
else:
logging.error(f"model {model_id} trained failed")
logging.error(f"message: {message}")
break
if state != 2:
sys.exit(-1)
return model_id
def Create(model_id, template_image):
# Buat gambar.
response = api.aigc_images_create(model_id, template_image,'', None)
# ID permintaan.
request_id = response.request_id
# Status permintaan.
code = response.code
# Detail status permintaan.
message = response.message
# Konten yang dikembalikan oleh layanan model.
data = response.data
if code != "OK":
logging.error(f"aigc_images_create failed, model_id is {model_id}")
sys.exit(-1)
else:
image = data['image']
image = decode_image_from_base64jpeg(image)
cv2.imwrite("single_out.jpg", image)
logging.info(f"single create {data['cost_time']}")
def CreateMulti(model_ids, template_image):
response = api.aigc_images_create_by_multi_model_ids(
model_ids,
template_image,
'', None
)
# ID permintaan.
request_id = response.request_id
# Status permintaan.
code = response.code
# Detail status permintaan.
message = response.message
# Konten yang dikembalikan oleh layanan model.
data = response.data
if code != "OK":
logging.error(f"aigc_images_create_by_multi_model_ids failed, model_id is {model_id}")
sys.exit(-1)
else:
image = data['image']
image = decode_image_from_base64jpeg(image)
cv2.imwrite("multi_out.jpg", image)
logging.info(f"multi create cost time {data['cost_time']}")
if __name__ == "__main__":
client = ApiClient(host, appId, token)
api = AIGCImagesApi(client) # noqa: E501
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
# Gambar pelatihan dalam format URL.
images = [
'https://xxx/0.jpg',
'https://xxx/1.jpg',
'https://xxx/2.jpeg',
'https://xxx/3.jpeg',
]
#check
Check(client, images)
model_id = Train(client, images)
template_image = 'https://xxx/single_template.jpg'
Create(model_id, template_image)
#baca gambar single_out.jpg
model_ids = [model_id, model_id]
multi_template_image = 'https://xxx/multi_template.jpg'
CreateMulti(model_ids, multi_template_image)
#baca gambar multi_out.jpgTabel berikut menjelaskan parameter.
Parameter | Deskripsi |
appId | ID aplikasi. Setelah Anda mengaktifkan layanan Potret AI, Anda dapat melihat ID aplikasi di halaman Potret AI. |
token | Token. Setelah Anda mengaktifkan layanan Potret AI, Anda dapat melihat token di halaman Potret AI. |
images | URL gambar pelatihan. Pisahkan beberapa URL dengan koma (,). |
template_image | URL gambar template yang berisi satu wajah. Gambar template digunakan untuk menghasilkan potret satu orang. |
multi_template_image | URL gambar template yang berisi beberapa wajah. Jumlah wajah harus sama dengan jumlah ID model yang Anda tentukan. Gambar template digunakan untuk menghasilkan potret multi-orang. |