Recraft: Recraft V4 Pro
Το Recraft V4 Pro δημιουργεί εικόνες raster 2K για λεπτομερείς συνθέσεις, φωτορεαλισμό, εικονογράφηση και δημιουργική εργασία για εκτύπωση. Είναι η έκδοση V4 υψηλότερης ανάλυσης, με περιγραφές κειμένου, προαιρετικές εισόδους ύφους και χωριστή ροή εικόνας προς εικόνα.
Σχετικά με το μοντέλο
Αυτή η περιγραφή καλύπτει τις δυνατότητες του μοντέλου. Οι είσοδοι, έξοδοι και επιλογές που διατίθενται στο Ailoot παρατίθενται παρακάτω για την επιλεγμένη μέθοδο.
Το Recraft V4 Pro είναι το μοντέλο raster υψηλότερης ανάλυσης στην οικογένεια V4 της Recraft. Το V4 εστιάζει σε οπτική κρίση, ισορροπημένη σύνθεση, συνεκτικό χρώμα και προσεκτική ερμηνεία δημιουργικής κατεύθυνσης. Ο παραγωγός τοποθετεί το Pro για λεπτότερη λεπτομέρεια, πιο ρεαλιστικές σύνθετες σκηνές και εκτενή οπτικά παραγωγής. Χρησιμοποιήστε το για λεπτομερή εικονογράφηση, εκδοτική εικόνα, ιδέα αφίσας ή άλλο οπτικό που ωφελείται από μεγαλύτερο αποτέλεσμα raster. Παραμένει χωριστό από το μεταγενέστερο V4.1 και την έξοδο SVG του V4 Pro Vector.
Ο συγκεκριμένος κωδικός παραγωγού είναι recraftv4_pro. Η τεκμηριωμένη έξοδος είναι raster 2K σε WebP χωρίς απώλειες ή PNG: 2048 × 2048 pixel για τετράγωνο, 2688 × 1536 για 16:9 και 1664 × 2560 για 2:3. Άλλες υποστηριζόμενες αναλογίες έχουν δικές τους διαστάσεις. Επιλέξτε αναλογία για την επιθυμητή διάταξη ή ακριβές επιτρεπόμενο μέγεθος· αυθαίρετο μέγεθος pixel δεν αποτελεί μέρος της τεκμηριωμένης σύμβασης δημιουργίας. Το βασικό V4 έχει μικρότερη έξοδο raster 1K, ενώ τα διανυσματικά μοντέλα δεν έχουν σταθερή ανάλυση pixel.
Το V4 μπορεί να ερμηνεύει σύντομη προτροπή για εξερεύνηση ή δομημένη προτροπή για ελεγχόμενο αποτέλεσμα. Για συγκεκριμένη καλλιτεχνική κατεύθυνση, ο οδηγός κατασκευαστή προχωρά από θέμα και περιβάλλον σε κάδρο, ιδιότητες, χωρικές σχέσεις, φωτισμό, βάθος και διάθεση. Για εκδοτική εικόνα προϊόντος, ζητήστε δραματική κάθετη φωτογραφία γλυπτικής καρέκλας, επιφάνειες βουρτσισμένου μετάλλου, πλευρικό φωτισμό, ήσυχο σκούρο φόντο και χώρο πάνω από το αντικείμενο για τίτλο. Η ονομασία αυτών των σχέσεων κάνει την επιθυμητή σύνθεση σαφέστερη από γενικό αίτημα για πολυτελή εικόνα.
Το δημιουργικό εύρος οικογένειας περιλαμβάνει αφηγηματική εικονογράφηση, φωτορεαλιστικές σκηνές και οπτικά με όγκο και ενδείξεις υλικού και φωτισμού. Ένα αποτέλεσμα που μοιάζει 3D παραμένει εικόνα, όχι επεξεργάσιμη σκηνή 3D. Για γραφιστική αφίσα, προσδιορίστε τα οπτικά επίπεδα και την αλληλεπίδρασή τους: φόντο, εικονογράφηση ή φωτογραφία, ιεραρχία τίτλου και υποστηρικτικό κείμενο. Το V4 τοποθετείται για ευανάγνωστες σύντομες και μεσαίου μήκους φράσεις, αλλά η τελική ορθογραφία και ιεραρχία πρέπει να ελέγχονται αντί να συνάγονται από το όνομα μοντέλου.
Η τρέχουσα αναφορά δημιουργίας επιτρέπει προτροπές έως 10,000 χαρακτήρες, από μία έως έξι εξόδους, τυχαίο seed και ελέγχους προτιμώμενων χρωμάτων και χρώματος φόντου. Προαιρετικά προσαρμοσμένα ύφη ή συμβατές εικόνες αναφοράς μπορούν να καθοδηγούν εμφάνιση με ευέλικτη ή ακριβή αντιστοίχιση. Το μοντέλο δεν δέχεται τους παλαιότερους ελέγχους V3 negative_prompt, επιμελημένα ύφη, text_layout, artistic_level ή no_text. Περιγράψτε την επιθυμητή τελική εικόνα στη θετική προτροπή και κρατήστε ρητές τις απαιτήσεις θέματος, διάταξης και χρώματος. Για δημιουργία με αναφορές ύφους, χρησιμοποιήστε μία έως δέκα εικόνες PNG, JPG ή WebP, έως 64 MB συνολικά και κάτω από 20 MB καθεμία. Κάθε αναφορά χρειάζεται μικρότερη πλευρά τουλάχιστον 256 pixel, μεγαλύτερη πλευρά έως 4,096 pixel και ανάλυση έως 16 megapixel. Χρησιμοποιήστε είτε αυτές τις αναφορές είτε ένα συμβατό αποθηκευμένο ύφος, χωρίς να τα συνδυάζετε στο ίδιο αίτημα.
Η Recraft τεκμηριώνει χωριστή λειτουργία εικόνας προς εικόνα για V4. Συνδυάζει υπάρχουσα εικόνα και προτροπή με ισχύ από 0 έως 1 για έλεγχο βαθμού αλλαγής και δεν δέχεται ελέγχους προσαρμοσμένου ύφους V4 σε αυτή τη λειτουργία. Προετοιμάστε την πηγή εντός των ορίων εισόδου εικόνας παραγωγού και δηλώστε τις ιδιότητες που πρέπει να μεταφερθούν στο νέο αποτέλεσμα. Για μεγαλύτερο τελικό οπτικό, ελέγξτε λεπτές λεπτομέρειες, περικοπή και γράμματα στο επιθυμητό μέγεθος. Η πρόσθετη λεπτομέρεια raster του Pro υποστηρίζει αυτόν τον έλεγχο, ενώ η εικόνα παραμένει παραγόμενη ερμηνεία της παρεχόμενης δημιουργικής περιγραφής. Για εικόνα προς εικόνα, δώστε PNG, JPG, WebP ή SVG κάτω από 20 MB, έως 16 megapixel, με αμφότερες τις πλευρές από 256 έως 4,096 pixel.
Ailoot Ultra · Εικόνες POST /v1/images/generations recraft/recraft-v4-pro
recraft/recraft-v4-proΕισαγωγή
Το Recraft V4 Pro δημιουργεί εικόνες raster 2K για λεπτομερείς συνθέσεις, φωτορεαλισμό, εικονογράφηση και δημιουργική εργασία για εκτύπωση. Είναι η έκδοση V4 υψηλότερης ανάλυσης, με περιγραφές κειμένου, προαιρετικές εισόδους ύφους και χωριστή ροή εικόνας προς εικόνα.
- Αποδεκτές είσοδοι
- Κείμενο · Εικόνες
- Αποτελέσματα
- Εικόνες
Διαθέσιμα στο Ailoot · είσοδοι και μέθοδοι
Ailoot Ultra · Εικόνες POST /v1/images/generations
- Είσοδος
text,image- Έξοδος
image- Μορφή εξόδου
- Αρχείο εικόνας
| Πεδίο | Τύπος | Απαίτηση | Τιμές και όρια | Προεπιλογή |
|---|---|---|---|---|
Πεδίοmodel | Τύποςstring | ΑπαίτησηΥποχρεωτικό | Τιμές και όρια recraft/recraft-v4-pro | Προεπιλογή— |
Πεδίοprompt | Τύποςstring | ΑπαίτησηΥποχρεωτικό | Τιμές και όρια Ελάχιστο μήκος: 1 | Προεπιλογή— |
Πεδίοn | Τύποςinteger | ΑπαίτησηΠροαιρετικό | Τιμές και όρια Ελάχιστο: 1 Μέγιστο: 6 | Προεπιλογή— |
Πεδίοaspect_ratio | Τύποςstring | ΑπαίτησηΠροαιρετικό | Τιμές και όρια 1:1, 4:3, 3:4, 16:9, 9:16, auto | Προεπιλογή— |
Πεδίοinput_references | Τύποςarray | ΑπαίτησηΠροαιρετικό | Τιμές και όρια Ελάχιστο πλήθος στοιχείων: 0 Μέγιστο πλήθος στοιχείων: 1 | Προεπιλογή— |
Συνδυασμοί υλικών εισόδου
Κείμενο σε εικόνα · Υποχρεωτικό: prompt
Παράμετροι και κύκλος ζωής μεθόδου
| Παράμετρος | Σύμβαση |
|---|---|
Παράμετροςcontent_type | Σύμβασηapplication/json |
Παράμετροςrequired | Σύμβασηmodel, prompt |
Παράμετροςmaterial_types | Σύμβασηtext, image |
Παράμετροςoptional_controls | Σύμβασηaspect_ratio, n, input_references |
Παράμετροςexact_supported_parameters | Σύμβαση{"aspect_ratio":{"type":"enum","values":["1:1","4:3","3:4","16:9","9:16","auto"]},"n":{"type":"range","min":1,"max":6},"input_references":{"type":"range","min":0,"max":1}} |
Παράμετροςreference_material_rule | ΣύμβασηΜόνο πραγματικές εικόνες αναφοράς του πελάτη· διέπονται από τις προϋποθέσεις του τελικού σημείου του παρόχου. |
Εναλλακτικά ονόματα μεθόδου: /v1/images
Κύκλος ζωής: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · Το πραγματικό task_id που επιστράφηκε ή μια εγγραφή στη βιβλιοθήκη πολυμέσων
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Χρησιμοποιήστε το ακριβές μοντέλο και τα τεκμηριωμένα πεδία εισόδου.
Διατηρήστε ολόκληρη την απόκριση, κάθε πραγματική έξοδο και τα αρχικά ID που επιστρέφονται.
Τιμολόγηση
Πώς υπολογίζεται η τελική χρέωση
Οι εμφανιζόμενες τιμές χρησιμοποιούνται για την εκτίμηση του κόστους πριν από την παραγωγή. Η τελική χρέωση υπολογίζεται από το κόστος που καταγράφηκε για την αρχική παραγωγή. Η μετρημένη διάρκεια της εξόδου και οι προβλεπόμενες ποσότητες δεν αποτελούν την τελική χρεώσιμη ποσότητα.
Οι τιμολογιακές αναφορές δεν προσθέτουν επιλογές αιτήματος. Οι υποστηριζόμενες παράμετροι αναφέρονται στην επιλεγμένη μέθοδο.
- Γρήγορη λειτουργία
- Δεν έχει οριστεί Όταν επιλέγεται η γρήγορη λειτουργία
- Λειτουργία flex
- Δεν έχει οριστεί Όταν επιλέγεται η λειτουργία flex
- Μέγιστη προσπάθεια συλλογισμού
- Δεν έχει οριστεί Όταν η μέγιστη προσπάθεια συλλογισμού χρησιμοποιεί την προσαρμογή default
Εκτιμώμενες χρεώσεις για σύγκριση
Τιμές ανά διαμόρφωση
Αντιστοιχίστε κάθε χρέωση στις συνθήκες που εμφανίζονται. Χρησιμοποιήστε μία χρέωση ανά σύνολο εναλλακτικών διαμορφώσεων.
| Διαμόρφωση | Πίνακας χρεώσεων | Προβλεπόμενη ποσότητα | Μονάδα τιμολόγησης | Χρέωση |
|---|---|---|---|---|
| ΔιαμόρφωσηΒασικές χρεώσεις token | Πίνακας χρεώσεωνΒασική χρέωση | Προβλεπόμενη ποσότητα— | Μονάδα τιμολόγησης— | Χρέωση Είσοδος · Token εισόδου · Εκτίμηση μόνο για σύγκριση — / 1K token Έξοδος · Token εξόδου · Εκτίμηση μόνο για σύγκριση — / 1K token Είσοδος · Ανάγνωση από την κρυφή μνήμη · Εκτίμηση μόνο για σύγκριση — / 1K token Είσοδος · Εγγραφή στην κρυφή μνήμη · Εκτίμηση μόνο για σύγκριση — / 1K token Είσοδος · Εγγραφή στην κρυφή μνήμη, 1 ώρα · Εκτίμηση μόνο για σύγκριση — / 1K token |
| ΔιαμόρφωσηUltra | Πίνακας χρεώσεων— | Προβλεπόμενη ποσότητα— | Μονάδα τιμολόγησηςανά εικόνα εξόδου | Χρέωση Έξοδος · έξοδος εικόνας · Εκτίμηση μόνο για σύγκριση $0.5 ανά εικόνα εξόδου |
| ΔιαμόρφωσηΕκτιμώμενο κόστος δημιουργίας | Πίνακας χρεώσεων— | Προβλεπόμενη ποσότηταεκτίμηση για μία δημιουργία | Μονάδα τιμολόγησης— | Χρέωση Έξοδος · Εκτιμώμενο κόστος δημιουργίας · Εκτίμηση μόνο για σύγκριση $0.5 εκτίμηση πριν από τη δημιουργία Αυτή η εκτίμηση δεν αποτελεί πρόσθετη χρέωση ούτε σταθερή τιμή για την ολοκληρωμένη παραγωγή. |
Το Ailoot δεσμεύει ένα εκτιμώμενο ποσό πριν από το αίτημα. Μετά το αποτέλεσμα, εκκαθαρίζει την τελική χρέωση βάσει της μετρημένης χρήσης. Η εκκαθάριση ροής χρησιμοποιεί την τελική καταγραφή χρήσης. Πώς λειτουργούν η δέσμευση και η εκκαθάριση →
Στοιχεία τιμοκαταλόγου αναφοράς
Οι πίνακες αναφοράς του μοντέλου δεν αλλάζουν την επιλογή μεθόδου, τις εκτιμήσεις τιμής ή τις χρεώσεις. Οι εφαρμοζόμενες χρεώσεις χρησιμοποιούν τις τιμές της επιλεγμένης μεθόδου Ailoot.
Διαμορφώσεις τιμολόγησης εικόνων
Τιμές ανά διαμόρφωση
| Διαμόρφωση | Συνθήκες χρέωσης | Χρέωση |
|---|---|---|
| ΔιαμόρφωσηΕικόνα εξόδου | Συνθήκες χρέωσηςΔεν δηλώνεται παραλλαγή τιμολόγησης. | Χρέωση Έξοδος · Εικόνα εξόδου $0.5 ανά εικόνα Οι ισοδύναμες καταχωρίσεις περιγράφουν την ίδια χρέωση· δεν προσθέτουν δεύτερη χρέωση. |
Παραδείγματα αιτημάτων
Ailoot Ultra · Εικόνες
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p={'model': 'recraft/recraft-v4-pro', 'prompt': 'a red panda astronaut floating in space, studio lighting'}
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin
def save_images(items):
if not items: raise SystemExit("No completed images; retain the full response")
for index, item in enumerate(items):
encoded=item.get("b64_json")
uri=item.get("url", "")
if not encoded and uri.startswith("data:image/"):
header, separator, encoded=uri.partition(",")
if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
if encoded:
raw=base64.b64decode(encoded,validate=True)
elif uri:
uri=urljoin("https://api.ailoot.ai",uri)
parsed=urlsplit(uri)
if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
raise SystemExit("Invalid returned image URL")
owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
args=["curl","--fail-with-body","--silent","--show-error",uri]
if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
temporary=Path(f"image-{index}.bin")
subprocess.run(args+["-o",str(temporary)],check=True)
raw=temporary.read_bytes()
temporary.unlink()
else: raise SystemExit("Image has neither bytes nor URL")
if not raw: raise SystemExit("Empty image result")
ext="png" if raw.startswith(b"\x89PNG") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "svg" if raw.lstrip().startswith((b"<svg",b"<?xml")) else "bin"
Path(f"image-{index}.{ext}").write_bytes(raw)
print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT
from openai import OpenAI
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin
def save_images(items):
if not items: raise SystemExit("No completed images; retain the full response")
for index, item in enumerate(items):
encoded=item.get("b64_json")
uri=item.get("url", "")
if not encoded and uri.startswith("data:image/"):
header, separator, encoded=uri.partition(",")
if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
if encoded:
raw=base64.b64decode(encoded,validate=True)
elif uri:
uri=urljoin("https://api.ailoot.ai",uri)
parsed=urlsplit(uri)
if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
raise SystemExit("Invalid returned image URL")
owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
args=["curl","--fail-with-body","--silent","--show-error",uri]
if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
temporary=Path(f"image-{index}.bin")
subprocess.run(args+["-o",str(temporary)],check=True)
raw=temporary.read_bytes()
temporary.unlink()
else: raise SystemExit("Image has neither bytes nor URL")
if not raw: raise SystemExit("Empty image result")
ext="png" if raw.startswith(b"\x89PNG") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "svg" if raw.lstrip().startswith((b"<svg",b"<?xml")) else "bin"
Path(f"image-{index}.{ext}").write_bytes(raw)
print("Every returned image saved; complete response metadata retained")
request={'model': 'recraft/recraft-v4-pro', 'prompt': 'a red panda astronaut floating in space, studio lighting'}
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.images.generate(**request)
Path("sdk-result.txt").write_text(str(result),encoding="utf-8")
save_images([{"b64_json":getattr(item,"b64_json",None),"url":getattr(item,"url",None)} for item in result.data])
import OpenAI from "openai";
import { readFileSync, writeFileSync } from "node:fs";
const key=process.env.AILOOT_API_KEY;
if(!key) throw new Error("Set your actual Ailoot API key");
const client=new OpenAI({baseURL:"https://api.ailoot.ai/v1",apiKey:key,maxRetries:0});
const request={"model": "recraft/recraft-v4-pro", "prompt": "a red panda astronaut floating in space, studio lighting"};
const result=await client.images.generate(request);
writeFileSync("sdk-result.json",JSON.stringify(result,null,2));
if(!result.data?.length) throw new Error("No completed images");
for(let index=0;index<result.data.length;index++) {
const item=result.data[index];let encoded=item.b64_json,uri=item.url||"",raw;
if(!encoded && uri.startsWith("data:image/")) {
const comma=uri.indexOf(",");if(comma<0 || !uri.slice(0,comma).includes(";base64")) throw new Error("Unsupported image data URI");
encoded=uri.slice(comma+1);
}
if(encoded) {
if(encoded.length%4!==0 || !/^[A-Za-z0-9+/]*={0,2}$/.test(encoded)) throw new Error("Invalid Base64");
raw=Buffer.from(encoded,"base64");
} else if(uri) {
const u=new URL(uri,"https://api.ailoot.ai");
if(u.protocol!=="https:" || u.username || u.password) throw new Error("Invalid returned URL");
const owned=u.origin==="https://api.ailoot.ai" && u.pathname.startsWith("/v1/media/assets/") && u.pathname.endsWith("/content");
const response=await fetch(u,{headers:owned?{Authorization:"Bearer "+key}:{},redirect:"manual"});
if(!response.ok) throw new Error("Image content download failed: "+response.status);
raw=Buffer.from(await response.arrayBuffer());
} else throw new Error("Image has neither bytes nor URL");
if(!raw.length) throw new Error("Empty image result");
const ext=raw.subarray(0,4).equals(Buffer.from([137,80,78,71]))?"png":raw[0]===255&&raw[1]===216?"jpg":raw.toString("ascii",0,4)==="RIFF"&&raw.toString("ascii",8,12)==="WEBP"?"webp":raw.toString("utf8").trimStart().startsWith("<svg")||raw.toString("utf8").trimStart().startsWith("<?xml")?"svg":"bin";
writeFileSync(`image-${index}.${ext}`,raw);
}
console.log("Every returned image saved; sdk-result.json retains complete metadata");
Λήψη και αποθήκευση αποτελεσμάτων
Ailoot Ultra · Εικόνες
Κατεβάστε κάθε εικόνα που επιστρέφεται ή αποθηκεύστε το περιεχόμενο Base64
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Διατηρήστε όλα τα ολοκληρωμένα αποτελέσματα
Αποθηκεύστε κάθε ολοκληρωμένη εικόνα· ανακτήστε κάθε URL που επιστρέφεται ή αποκωδικοποιήστε το περιεχόμενο Base64.
Διατηρήστε κάθε στοιχείο δεδομένων και ολόκληρη τη χρήση· εξασφαλίστε ότι όλες οι πραγματικές εικόνες που επιστρέφονται σας ανήκουν και αποθηκεύστε τις. Χωρίς επινοημένα URL ή ID.
Αν χρειάζεται έλεγχος της αρχικής απάντησης
Αν το αποτέλεσμα παραγωγής ή επεξεργασίας εικόνας χρειάζεται έλεγχο, διατηρήστε το αρχικό operation_id/X-Client-Request-ID και τις πληροφορίες αποτελέσματος που επιστράφηκαν. Ανακτήστε τα υπάρχοντα αποτελέσματα που σας ανήκουν μέσω της βιβλιοθήκης πολυμέσων χρησιμοποιώντας πραγματικές τιμές task_id ή asset_id. Μην υποβάλετε ξανά το αίτημα παραγωγής/επεξεργασίας και μην κατασκευάσετε URL περιοδικού ελέγχου από το operation_id.
Πεδία απάντησης
| Πεδίο | Τύπος |
|---|---|
Πεδίοcreated | Τύποςinteger |
Πεδίοdata[].url | Τύποςstring |
Πεδίοdata[].b64_json | Τύποςbase64 string |
Πεδίοusage | Τύποςobject |
Εναλλακτικά ονόματα
Εναλλακτικά ονόματα μοντέλου
Ailoot Ultra recraft/recraft-v4-pro
Εναλλακτικές διαδρομές μεθόδων
/v1/images
Σχετικά ID μοντέλων
FAQ · Recraft: Recraft V4 Pro
- Ποιες είσοδοι και αποτελέσματα διατίθενται;
POST /v1/images/generations·recraft/recraft-v4-pro:text,image→image- Ποια πεδία χρησιμοποιεί το αίτημα;
POST /v1/images/generations·recraft/recraft-v4-pro:model,prompt,n,aspect_ratio,input_references- Ποια όρια ισχύουν;
POST /v1/images/generations·recraft/recraft-v4-pro:n.minimum:1;n.maximum:6