1. Wprowadzenie do modelu DALL·E

Model DALL·E stworzony przez OpenAI to system sztucznej inteligencji, który potrafi generować obrazy na podstawie opisów tekstowych. Jego możliwości obejmują replikację prostych obrazów oraz tworzenie kreatywnych reinterpretacji scen opisanych w tekście. Nazwa "DALL·E" to połączenie malarza Salvador Dalí i animowanego bohatera WALL·E, symbolizujące skrzyżowanie sztuki i automatyzacji.

Model DALL·E jest trenowany za pomocą głębokiego uczenia się do rozumienia opisów tekstowych i przekształcania ich w reprezentacje wizualne. Niezależnie od tego, czy chodzi o fotografie, malarstwo, sztukę cyfrową czy inną formę wyobrażeń, DALL·E potrafi generować zgodne obrazy na podstawie opisów.

2. Podstawowe korzystanie z modelu generowania obrazów DALL·E

OpenAI udostępnia interfejs API dla DALL·E, pozwalając programistom zintegrować model do swoich własnych aplikacji lub usług. Poniżej znajduje się podstawowy proces i znaczenie parametrów do generowania obrazów za pomocą interfejsów API DALL·E 3 i DALL·E 2:

curl -X POST https://api.openai.com/v1/images/generations \
  -H "Authorization: Bearer TWÓJ_KLUCZ_API" \
  -H "Content-Type: application/json" \
  -d '{
        "model": "dal-e-2", # Wersja modelu, może być "dall-e-3" lub "dall-e-2".
        "prompt": "Tekstowy opis", # Tekst używany do generowania obrazu.
        "n": 1, # Liczba generowanych obrazów.
        "size": "1024x1024", # Rozmiar obrazu.
        "quality": "standard" # Jakość obrazu, może być "hd".
      }'
  • model: Określa wersję modelu DALL·E do użycia.
  • prompt: Podaje tekstowy opis dla modelu, którego używa do generowania obrazów.
  • n: Określa liczbę generowanych obrazów. DALL·E 3 może generować tylko 1 obraz na raz, podczas gdy DALL·E 2 może generować do 10 obrazów jednocześnie.
  • size: Rozmiar wygenerowanego obrazu. Dla dall-e-2 musi to być 256x256, 512x512 lub 1024x1024. Dla dall-e-3 musi to być 1024x1024, 1792x1024 lub 1024x1792.
  • quality: Ustawia jakość wygenerowanego obrazu. standard oznacza standardową jakość, hd oznacza wysoką jakość.

3. Edycja obrazów i generowanie wariantów (tylko DALL·E 2)

3.1. Edycja obrazu (Edycja lub Rozszerzanie obrazów)

Dzięki funkcji edycji obrazu w DALL·E 2, możesz przesłać obraz i odpowiadającą mu maskę. Przezroczyste obszary w masce wskazują części do edycji, a model wygeneruje zawartość w tych obszarach na podstawie nowych treściowych sugestii. Ta funkcja może tworzyć nowe elementy różne od elementów oryginalnego obrazu, generując w ten sposób edytowane wersje.

Kontynuuj korzystanie z przykładu żądania API za pomocą polecenia curl:

curl -X POST https://api.openai.com/v1/images/edits \
  -H "Authorization: Bearer TWÓJ_KLUCZ_API" \
  -H "Content-Type: multipart/form-data" \
  -F "model=dall-e-2" \
  -F "prompt=Nowy opis tekstowy" \
  -F "image=@/ścieżka_do_twojego_oryginalnego_obrazu.png" \
  -F "mask=@/ścieżka_do_twojej_maski.png" \
  -F "n=1" \
  -F "size=1024x1024"
  • image: plik zawierający oryginalny obraz.
  • mask: plik zawierający maskę, gdzie przeźroczysty obszar wskazuje obszar, który ma być przetworzony przez model.
  • prompt: nowa tekstowa sugestia opisująca całą zawartość nowego obrazu, a nie tylko obszar zasłonięty.

Ważne jest, aby przesłane oryginalne obrazy i maski miały format kwadratowego obrazu PNG, nie przekraczając 4 MB i posiadające takie same wymiary.

Przykład:

curl https://api.openai.com/v1/images/edits \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -F image="@sunlit_lounge.png" \
  -F mask="@mask.png" \
  -F model="dall-e-2" \
  -F prompt="Stanowisko wewnętrzne oświetlone słońcem z basenem i flamingiem wewnątrz" \
  -F n=1 \
  -F size="1024x1024"

Oryginalny obraz Maska obrazu Wygenerowany obraz

3.2. Generowanie wariantów obrazu

Korzystając z DALL·E 2 do generowania wariantów obrazów zaczyna się od istniejącego obrazu, aby stworzyć kilka wersji różniących się zawartością lub stylem. Ta funkcja może być wykorzystana do eksploracji różnych możliwości obrazu lub do kreatywnej ewolucji.

Podobnie, wykorzystaj polecenie curl do wysłania żądania API:

curl -X POST https://api.openai.com/v1/images/variations \
  -H "Authorization: Bearer TWÓJ_KLUCZ_API" \
  -H "Content-Type: multipart/form-data" \
  -F "image=@/ścieżka_do_twojego_obrazu.png" \
  -F "n=2" \
  -F "size=1024x1024"
  • image: plik zawierający oryginalny obraz, dla którego mają być wygenerowane warianty.
  • n: liczba wariantów do wygenerowania, która może być kontrolowana za pomocą tego parametru.

Podobnie jak wcześniej, wejściowy obraz musi być plikiem PNG o kwadratowym formacie, mniejszym niż 4 MB.