models

Recraft: Recraft V4

Markdown · JSON

Recraft: Recraft V4

Recraft V4 สร้างภาพราสเตอร์ 1K โดยเน้นองค์ประกอบ ความสัมพันธ์สี และทิศทางสร้างสรรค์ละเอียด ครอบคลุมภาพประกอบ ฉากถ่ายสมจริง และแนวคิดออกแบบกราฟิก มีข้อมูลเข้าสไตล์ตามต้องการและเวิร์กโฟลว์ image-to-image แยก

เกี่ยวกับโมเดล

คำอธิบายนี้ครอบคลุมความสามารถของโมเดล อินพุต เอาต์พุต และตัวเลือกที่ใช้ได้ใน Ailoot แสดงด้านล่างตามเมธอดที่เลือก

Recraft V4 เป็นโมเดลราสเตอร์มาตรฐานในรุ่น V4 ของ Recraft ผู้ผลิตเน้นวิจารณญาณการออกแบบ ได้แก่ องค์ประกอบสมดุล ความสัมพันธ์สีสอดคล้อง และรายละเอียดที่สนับสนุนเจตนาของภาพ ทำงานกับภาพประกอบมีสไตล์ ฉากถ่าย และแนวคิดออกแบบกราฟิกได้ ใช้เมื่อบรีฟต้องการภาพที่รวมการเลือกสุนทรียะกับความแม่นยำตามพรอมป์ต์ ทั้งการสำรวจอารมณ์จากทิศทางสั้นหรือระบุเลย์เอาต์ตั้งใจอย่างละเอียด

รหัสโมเดลที่แน่นอนคือ recraftv4 เอกสารผู้ผลิตระบุผลราสเตอร์ 1K เป็น WebP แบบไม่สูญเสียข้อมูลหรือ PNG จัตุรัส 1024 × 1024 พิกเซล, 16:9 คือ 1344 × 768 และ 2:3 คือ 832 × 1280 อัตราส่วนอื่นที่รองรับมีขนาดของตน V4 Pro เป็นรุ่นราสเตอร์ 2K แยก ขณะที่ V4 Vector กับ Pro Vector ให้ SVG แก้ไขได้ เลือกรุ่น V4 ที่เจาะจงให้ตรงชิ้นงานที่ตั้งใจ แทนรวมคุณสมบัติผลต่างกันเหล่านี้

คู่มือผู้ผลิตแยกพรอมป์ต์ตีความสั้นจากทิศทางสร้างสรรค์มีโครงสร้าง วลีสั้นเปิดโอกาสให้สำรวจรูปทรง อารมณ์ และกรอบภาพ บรีฟมีโครงสร้างระบุตัวแบบ สถานที่ ท่า วัสดุ องค์ประกอบรอง แสง และลำดับภาพได้ สำหรับภาพประกอบเล่าเรื่อง บรรยายคนขี่จักรยานข้ามสะพานเล็ก รูปทรงลดทอนเด่น สีอุ่นหม่น และการเคลื่อนซ้ายไปขวาชัด การเลือกเนื้อหาและองค์ประกอบเช่นนี้นำไปทำได้มากกว่ารายการคำคุณศัพท์สไตล์ไม่เกี่ยวข้องยาว ๆ

ขอบเขต V4 รวมภาพประกอบ ภาพมีมิติ และภาพสมจริง คู่มือแนะนำบรรยายตรรกะการวาดสำหรับภาพประกอบ และวัสดุ แสง กล้อง และความลึกสำหรับภาพดู 3D อย่างหลังยังเป็นภาพราสเตอร์แทน mesh แก้ไขได้ สำหรับแนวคิดโปสเตอร์หรือบรรจุภัณฑ์ ระบุคำหลัก ตำแหน่ง และความสัมพันธ์ระหว่างภาพกับตัวพิมพ์ ผู้ผลิตเน้นข้อความสั้นและกลางอ่านได้ ให้ตรวจถ้อยคำกับการจัดจริงในภาพที่ส่งคืนก่อนใช้

การสร้างรองรับพรอมป์ต์สูงสุด 10,000 อักขระ seed สุ่ม ผลหนึ่งถึงหกภาพ สีที่ต้องการและสีพื้นหลังที่ต้องการ สามารถใช้สไตล์กำหนดเองที่เข้ากันได้หรือภาพอ้างอิงเป็นตัวเลือกเพื่อชี้นำแนวทางภาพผ่านการจับคู่แบบ flexible หรือ precise ได้ เลือกภาพอ้างอิงสะอาดหรือชุดที่เป็นโลกภาพเดียว แล้วให้พรอมป์ต์บรรยายตัวแบบกับฉากใหม่ ไม่รับประกันสีจากภาพอ้างอิงสู่ผลตรง จึงระบุชุดสีที่ต้องการชัดและเทียบผล สำหรับการสร้างแบบอ้างอิงสไตล์ ใช้ภาพ PNG, JPG หรือ WebP หนึ่งถึงสิบภาพ รวมไม่เกิน 64 MB และแต่ละภาพต่ำกว่า 20 MB แต่ละภาพต้องมีด้านสั้นอย่างน้อย 256 พิกเซล ด้านยาวไม่เกิน 4,096 พิกเซล และความละเอียดไม่เกิน 16 เมกะพิกเซล ใช้ภาพอ้างอิงเหล่านี้หรือสไตล์ที่บันทึกซึ่งเข้ากันได้อย่างใดอย่างหนึ่ง แทนใช้ทั้งสอง

image-to-image ตามเอกสารรวมภาพเดิมกับพรอมป์ต์ โดย strength ตั้งแต่ 0 ถึง 1 กำหนดว่าผลใหม่ออกห่างต้นฉบับเท่าใด การทำงานนั้นไม่รับตัวควบคุมสไตล์ V4 เอกสารสร้างปัจจุบันยังไม่รวมชื่อสไตล์ที่คัดสรร negative_prompt, text_layout, artistic_level และ no_text เตรียมคำบรรยายเชิงบวกของผลที่ต้องการและประเมินชิ้นงานในองค์ประกอบเป้าหมาย V4 มาตรฐานให้การตีความออกแบบราสเตอร์ที่ตรงประเด็น พร้อมรุ่น รูปแบบ และขนาดผลเฉพาะ สำหรับ image-to-image ให้ส่ง PNG, JPG, WebP หรือ SVG ต่ำกว่า 20 MB ไม่เกิน 16 เมกะพิกเซล โดยทั้งสองด้านอยู่ระหว่าง 256 ถึง 4,096 พิกเซล

Ailoot Ultra · รูปภาพ POST /v1/images/generations recraft/recraft-v4

recraft/recraft-v4

Recraft /recraft/recraft-v4

เริ่มต้น

Recraft V4 สร้างภาพราสเตอร์ 1K โดยเน้นองค์ประกอบ ความสัมพันธ์สี และทิศทางสร้างสรรค์ละเอียด ครอบคลุมภาพประกอบ ฉากถ่ายสมจริง และแนวคิดออกแบบกราฟิก มีข้อมูลเข้าสไตล์ตามต้องการและเวิร์กโฟลว์ image-to-image แยก

อินพุตที่รองรับ
ข้อความ · รูปภาพ
ผลลัพธ์
รูปภาพ

ใช้งานได้ใน Ailoot · อินพุตและเมธอด

Ailoot Ultra · รูปภาพ POST /v1/images/generations
ขาเข้า
text, image
ขาออก
image
รูปแบบเอาต์พุต
ไฟล์ภาพ
ฟิลด์ประเภทข้อกำหนดค่าและข้อจำกัดค่าเริ่มต้น
ฟิลด์modelประเภทstringข้อกำหนดจำเป็นค่าและข้อจำกัด
recraft/recraft-v4
ค่าเริ่มต้น—
ฟิลด์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

reference_guided_image · จำเป็น: prompt, actual image reference

พารามิเตอร์และวงจรการทำงานของเมธอด
พารามิเตอร์ข้อกำหนด
พารามิเตอร์content_typeข้อกำหนดapplication/json
พารามิเตอร์requiredข้อกำหนดmodel, prompt
พารามิเตอร์material_typesข้อกำหนดtext, image
พารามิเตอร์optional_controlsข้อกำหนดn, aspect_ratio, input_references
พารามิเตอร์nข้อกำหนด{"minimum":1,"maximum":6}
พารามิเตอร์reference_imagesข้อกำหนด{"minimum":0,"maximum":1,"source":"เนื้อหาจริงที่ลูกค้าให้มา"}
พารามิเตอร์provider_specific_optionsข้อกำหนดใช้เฉพาะ style/controls/text_layout ในรายการอนุญาตของเอนด์พอยต์ที่บันทึกไว้ตรงตามที่กำหนด ห้ามเดารูปแบบข้อมูล

ชื่ออื่นของเมธอด: /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}

ตัวอย่างที่ใช้เฉพาะพรอมป์ต์คงโครงสร้าง ImageGenerationRequest ทางการไว้

เก็บภาพทุกภาพที่ส่งกลับและการตอบกลับทั้งหมด จำนวนผลลัพธ์ยึดตามจำนวนจริง ไม่ใช่ค่า n ที่ขอ

ราคา

วิธีคำนวณค่าบริการสุดท้าย

อัตราที่แสดงใช้ประมาณการค่าใช้จ่ายก่อนการสร้างผลลัพธ์ ยอดเรียกเก็บสุดท้ายคำนวณจากค่าใช้จ่ายที่บันทึกไว้สำหรับการสร้างผลลัพธ์ครั้งเดิม ระยะเวลาของผลลัพธ์ที่วัดได้และปริมาณที่คาดการณ์ไว้ไม่ใช่ปริมาณสุดท้ายที่ใช้คิดค่าบริการ

ข้อมูลอัตราราคาไม่ได้เพิ่มตัวเลือกคำขอ พารามิเตอร์ที่รองรับระบุไว้สำหรับเมธอดที่เลือก

โหมดรวดเร็ว
ไม่ได้ระบุ เมื่อเลือกโหมดรวดเร็ว
โหมดยืดหยุ่น
ไม่ได้ระบุ เมื่อเลือกโหมด flex
ระดับการใช้เหตุผลสูงสุด
ไม่ได้ระบุ เมื่อใช้การปรับตามค่าเริ่มต้น (default) สำหรับระดับการใช้เหตุผลสูงสุด

อัตราประมาณการเพื่อเปรียบเทียบ

ราคาตามการตั้งค่า

เทียบค่าบริการแต่ละรายการกับเงื่อนไขที่แสดง เลือกใช้อัตราเดียวสำหรับแต่ละชุดการตั้งค่าที่เป็นตัวเลือกทดแทนกัน

การตั้งค่าตารางอัตราค่าบริการปริมาณคาดการณ์หน่วยคิดค่าบริการค่าบริการ
การตั้งค่าอัตราค่าบริการโทเคนพื้นฐานตารางอัตราค่าบริการอัตราพื้นฐานปริมาณคาดการณ์—หน่วยคิดค่าบริการ—ค่าบริการ
ขาเข้า · โทเค็นอินพุต · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น
ขาออก · โทเค็นเอาต์พุต · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น
ขาเข้า · การอ่านแคช · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น
ขาเข้า · การเขียนแคช · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น
ขาเข้า · การเขียนแคช, 1 ชั่วโมง · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น
การตั้งค่าUltraตารางอัตราค่าบริการ—ปริมาณคาดการณ์—หน่วยคิดค่าบริการต่อภาพเอาต์พุตค่าบริการ
ขาออก · ภาพขาออก · ประมาณการเพื่อเปรียบเทียบเท่านั้น $0.08 ต่อภาพเอาต์พุต
การตั้งค่าต้นทุนการสร้างโดยประมาณตารางอัตราค่าบริการ—ปริมาณคาดการณ์ค่าประมาณสำหรับการสร้างหนึ่งครั้งหน่วยคิดค่าบริการ—ค่าบริการ
ขาออก · ค่าใช้จ่ายในการสร้างโดยประมาณ · ประมาณการเพื่อเปรียบเทียบเท่านั้น $0.08 ประมาณการก่อนสร้าง

ค่าประมาณนี้ไม่ใช่ค่าใช้จ่ายเพิ่มเติมหรืออัตราคงที่สำหรับการสร้างผลลัพธ์ที่เสร็จสมบูรณ์แล้ว

Ailoot กันยอดเงินประมาณการไว้ก่อนส่งคำขอ หลังได้ผลลัพธ์ จะคิดค่าบริการสุดท้ายตามการใช้งานที่วัดได้ การคิดค่าบริการแบบสตรีมใช้บันทึกการใช้งานสุดท้าย วิธีกันยอดเงินและคิดค่าบริการสุดท้าย →

รายละเอียดอัตราอ้างอิง

ตารางอัตราอ้างอิงระดับโมเดลไม่เปลี่ยนเมธอดที่เลือก ยอดประมาณการ หรือค่าบริการ การคิดค่าบริการจริงใช้อัตราของเมธอด Ailoot ที่เลือก

การตั้งค่าราคาภาพ

ราคาตามการตั้งค่า

การตั้งค่าเงื่อนไขคิดค่าบริการค่าบริการ
การตั้งค่าภาพขาออกเงื่อนไขคิดค่าบริการไม่ได้ประกาศรูปแบบราคาย่อยค่าบริการ
ขาออก · ภาพขาออก $0.08 ต่อภาพ

รายการที่เทียบเท่ากันอธิบายยอดเรียกเก็บเดียวกัน ไม่ได้เพิ่มค่าธรรมเนียมครั้งที่สอง

ตัวอย่างคำขอ

Ailoot Ultra · รูปภาพ

curlPython SDKNode.js SDK
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', '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', '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", "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}/content
  • GET /v1/media/assets
  • GET /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
ข้อผิดพลาดและขั้นตอนถัดไป
การตอบกลับเงื่อนไขขั้นตอนถัดไป
การตอบกลับ400 · invalid_request_errorเงื่อนไขฟิลด์จำเป็น รูปแบบการแทนข้อมูล หรือค่าพารามิเตอร์ไม่ถูกต้องขั้นตอนถัดไปแก้ฟิลด์ที่ระบุก่อนส่งคำขอสร้างครั้งใหม่
การตอบกลับserver_errorเงื่อนไขการตอบกลับที่ได้รับระบุว่าต้องตรวจสอบการดำเนินการหรือผลลัพธ์ขั้นตอนถัดไปเก็บ ID การดำเนินการ/งานที่ส่งกลับมาแต่เดิม ส่วนหัวของคำขอ และการตอบกลับไว้ แล้วอ่านข้อมูลการดำเนินการเดิมนั้นต่อด้วยวิธีที่รองรับ ห้ามส่งคำขอสร้างซ้ำ

ชื่ออื่น

ชื่ออื่นของโมเดล

Ailoot Ultra recraft/recraft-v4

ชื่อพาธเมธอดอื่น

/v1/images

ID ที่เกี่ยวข้องสำหรับเรียกใช้โมเดล

recraft/recraft-v4

FAQ · Recraft: Recraft V4
มีอินพุตและผลลัพธ์ใดบ้าง?

POST /v1/images/generations · recraft/recraft-v4: text, image → image

คำขอใช้ฟิลด์ใดบ้าง?

POST /v1/images/generations · recraft/recraft-v4: model, prompt, n, aspect_ratio, input_references

มีข้อจำกัดใดบ้าง?

POST /v1/images/generations · recraft/recraft-v4: n.minimum: 1; n.maximum: 6

รายละเอียดเพิ่มเติม

เชื่อม Ailoot กับ Claude Code, OpenCode, Hermes หรือแอปของคุณ

บริษัทและพอร์ตโฟลิโอโครงการของบริษัท

บริษัทและพอร์ตโฟลิโอโครงการของบริษัท: ลูกค้าหลายล้านราย; ยอดขายระดับหลายพันล้านต่อเดือน.

ซื้อโทเคนพร้อมส่วนลด

ส่วนลดสมาชิกสำหรับงานประจำ โค้ดโปรโมชั่นลดซื้อโทเคนสูงสุด 50%

สมาชิก
เลือกแพ็กเกจมีส่วนลดสำหรับคำขอประจำ
โค้ดลดสูงสุด 50%
ใส่โค้ดขณะซื้อ ราคาคำนวณใหม่ตามโปรโมชั่นที่ใช้
รายจ่ายในประวัติ
เก็บโมเดล โทเคน และยอดสำหรับทุกคำขอ

เลือกสมาชิก · ดูราคาโมเดล

เชื่อม API กับผลิตภัณฑ์ ที่คุณขาย

SaaS แอป และบอต ตามข้อเสนอและสัญญาอนุญาต Ailoot หากขายต่อให้ขอใบอนุญาตรีเซลเลอร์

แอปเชิงพาณิชย์
ใส่การสร้างข้อความ ภาพ วิดีโอ และเสียงในฟีเจอร์เสียเงินของบริการคุณ
ใบอนุญาตรีเซลเลอร์
ส่งคำอธิบายโครงการและรูปแบบการเข้าถึง ขอเงื่อนไขใช้และขายต่อเป็นลายลักษณ์อักษร
เอกสารบนเว็บไซต์
อ่านข้อเสนอ สัญญาอนุญาต และนโยบายประมวลผลข้อมูลก่อนเชื่อมได้

ขอใบอนุญาตขายต่อ · ข้อเสนอและสัญญาอนุญาต