Sourceful: Riverflow V2.5 Pro
Riverflow 2.5 Pro เป็นโปรไฟล์สร้างและแก้ไขภาพของ Sourceful ที่เน้นคุณภาพสำหรับงานผลิตภัณฑ์และแคมเปญ ตระกูลนี้รวมการแก้ไขหลายขั้น การตัดสินตามเกณฑ์กำหนดเอง และการควบคุมฟอนต์ ช่วยให้บรีฟละเอียดคงเอกลักษณ์แบรนด์และเลย์เอาต์ที่ต้องการ
เกี่ยวกับโมเดล
คำอธิบายนี้ครอบคลุมความสามารถของโมเดล อินพุต เอาต์พุต และตัวเลือกที่ใช้ได้ใน Ailoot แสดงด้านล่างตามเมธอดที่เลือก
Riverflow 2.5 Pro เป็นโปรไฟล์ Pro ของตระกูลสร้างและแก้ไขภาพ Riverflow 2.5 จาก Sourceful มุ่งใช้งานสร้างสรรค์ที่ให้ความสำคัญกับการควบคุมและคุณภาพภาพสุดท้าย คำบรรยายงานสามารถสร้างภาพใหม่ได้ ส่วนภาพอ้างอิงใช้ส่งผลิตภัณฑ์ งานภาพ หรือฉากที่ต้องการแก้ไข แนวทางเด่นของตระกูลนี้คือวางแผนแก้ไขหลายขั้น ตรวจทานภาพตัวเลือก และปรับแก้เข้าหาผลลัพธ์ที่ต้องการ แทนที่จะถือว่าภาพแรกเป็นเวิร์กโฟลว์ที่เสร็จสมบูรณ์
สำหรับภาพแคมเปญ ให้เตรียมภาพอ้างอิงผลิตภัณฑ์และแนวทางแบรนด์ก่อนบรรยายฉาก ระบุคุณลักษณะที่แยกแต่ละ SKU ออกจากกัน การจัดวาง แสง และพื้นที่สำหรับข้อความ ตัวอย่างโจทย์ที่ดีอาจจัดผลิตภัณฑ์ติดป้ายกำกับสามชิ้นไว้ในองค์ประกอบเดียวกันอย่างสอดคล้อง โดยยังแยกสี ขนาด และเอกลักษณ์ที่มองเห็นของแต่ละชิ้นได้ สำหรับภาพไลฟ์สไตล์ของผลิตภัณฑ์ชิ้นเดียว ให้ระบุว่าภาพอ้างอิงใดให้ตัววัตถุ ภาพใดให้อารมณ์หรือสถานที่ แล้วบอกสิ่งที่ต้องรักษาระหว่างการปรับเปลี่ยน
Riverflow 2.5 เพิ่มเกณฑ์ให้คะแนนที่กำหนดเองในกระบวนการใช้เหตุผลและตรวจทาน อธิบายเกณฑ์ที่สำคัญต่อชิ้นงาน เช่น เอกลักษณ์ผลิตภัณฑ์ ความชัดเจนของฉลาก องค์ประกอบ ความสมจริงของฉาก หรือพื้นที่สำหรับหัวเรื่อง หลังขั้นตอนแก้ไข โมเดลใช้เหตุผลสามารถประเมินภาพตัวเลือกตามเกณฑ์และตัดสินใจว่าจะทำอย่างไรต่อ ผลลัพธ์ที่เน้นบรรจุภัณฑ์กับภาพแคมเปญเชิงแสดงออกต้องจัดลำดับความสำคัญต่างกัน จึงควรแยกคำสั่งสร้างภาพออกจากเกณฑ์ที่ใช้ตัดสินภาพ
ระดับการคิดควบคุมปริมาณงานแบบวนซ้ำและความเข้มงวดในการตรวจทานก่อนที่ตระกูลนี้จะยอมรับภาพ เวิร์กโฟลว์ของผู้พัฒนารุ่น 2.5 มีช่วงตั้งแต่ low ถึง xhigh ระดับต่ำเหมาะกับการสำรวจช่วงแรก ส่วนระดับสูงมีประโยชน์เมื่อโจทย์ต้องขัดเกลาเพิ่มเติม การตรวจทานภายในมากขึ้นไม่ได้ทำให้ไม่ต้องตรวจดูชิ้นงานที่เสร็จแล้ว สำหรับการจัดวางผลิตภัณฑ์ที่ซับซ้อน ให้ระบุรายละเอียดสำคัญและเกณฑ์ยอมรับอย่างชัดเจน เพื่อให้งานแก้ไขเพิ่มเติมมีเป้าหมายแน่นอน
Font Control รับไฟล์ฟอนต์ที่กำหนดเองได้สูงสุดสองไฟล์ และใช้รูปตัวอักษร ระยะห่าง และน้ำหนักที่ให้มาเป็นแนวทาง ส่งข้อความที่ต้องการให้ปรากฏอย่างตรงตัว บทบาทของแต่ละบล็อกข้อความ และฟอนต์อ้างอิงที่เกี่ยวข้อง หัวเรื่องกับคำบรรยายสนับสนุนสั้น ๆ สามารถใช้ฟอนต์ต่างกัน โดยยังระบุลำดับชั้นของตัวอักษรให้ชัด ตรวจสอบตัวอักษรและตัวเลขจริงในผลลัพธ์ โดยเฉพาะเมื่อฉลากบรรจุภัณฑ์หรือชื่อผลิตภัณฑ์ใช้ระบุสินค้า อย่าถือว่าการให้ฟอนต์อ้างอิงพิสูจน์ว่าทุกอักขระถูกต้อง
ตระกูล 2.5 มีโหมดพื้นหลังปกติ สีทึบ และโปร่งใส รวมถึง PNG โปร่งใสสำหรับนำไปประกอบภาพ พร้อมตัวเลือกส่งออก 1K, 2K และสูงสุด 4K เลือกชิ้นงานให้เหมาะกับตำแหน่งใช้งาน เช่น ภาพตัดพื้นหลังสำหรับประกอบในงานออกแบบอื่น พื้นหลังสีทึบที่ควบคุมได้สำหรับชุดผลิตภัณฑ์ที่สม่ำเสมอ หรือฉากสำเร็จสำหรับแคมเปญ เตรียมรูปทรงเอาต์พุตและตำแหน่งข้อความควบคู่กัน เพราะการเพิ่มรายละเอียดตอนส่งมอบไม่อาจแก้ปัญหาองค์ประกอบที่วางตัวแบบหลักผิดตำแหน่ง
Pro ยังคงแยกจากโปรไฟล์ Fast และ Riverflow 2.0 รุ่นก่อน ตระกูล 2.5 พัฒนาจากพื้นฐานหลายขั้นของ 2.0 โดยเพิ่มการควบคุมการตรวจทานที่ลึกขึ้น การตัดสินที่กำหนดเอง และตัวเลือกพื้นหลังกับการส่งออกที่กว้างขึ้น การตรวจทานครั้งสุดท้ายที่มีประโยชน์คือเปรียบเทียบภาพกับภาพอ้างอิงผลิตภัณฑ์ เกณฑ์ และรูปแบบตัวอักษร แล้วแก้คำสั่งหรือเกณฑ์เฉพาะที่ทำให้เกิดความไม่ตรงกัน เก็บภาพที่เลือกพร้อมโจทย์และภาพอ้างอิง เพื่อให้การแก้ไขครั้งถัดไปพัฒนาทิศทางเดิมต่อได้โดยไม่สูญเสียเอกลักษณ์ที่สร้างไว้
Ailoot Ultra · รูปภาพ POST /v1/images/generations sourceful/riverflow-v2.5-pro
sourceful/riverflow-v2.5-proเริ่มต้น
Riverflow 2.5 Pro เป็นโปรไฟล์สร้างและแก้ไขภาพของ Sourceful ที่เน้นคุณภาพสำหรับงานผลิตภัณฑ์และแคมเปญ ตระกูลนี้รวมการแก้ไขหลายขั้น การตัดสินตามเกณฑ์กำหนดเอง และการควบคุมฟอนต์ ช่วยให้บรีฟละเอียดคงเอกลักษณ์แบรนด์และเลย์เอาต์ที่ต้องการ
- อินพุตที่รองรับ
- ข้อความ · รูปภาพ
- ผลลัพธ์
- รูปภาพ
ใช้งานได้ใน Ailoot · อินพุตและเมธอด
Ailoot Ultra · รูปภาพ POST /v1/images/generations
- ขาเข้า
text,image- ขาออก
image
| ฟิลด์ | ประเภท | ข้อกำหนด | ค่าและข้อจำกัด | ค่าเริ่มต้น |
|---|---|---|---|---|
ฟิลด์model | ประเภทstring | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด sourceful/riverflow-v2.5-pro | ค่าเริ่มต้น— |
ฟิลด์prompt | ประเภทstring | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด ความยาวขั้นต่ำ: 1 | ค่าเริ่มต้น— |
ฟิลด์resolution | ประเภทstring | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด 1K, 2K, 4K | ค่าเริ่มต้น— |
ฟิลด์aspect_ratio | ประเภทstring | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด 1:1, 4:3, 3:4, 3:2, 2:3, 16:9, 9:16, 21:9, auto | ค่าเริ่มต้น— |
ฟิลด์output_format | ประเภทstring | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด png, jpeg, webp | ค่าเริ่มต้น— |
ฟิลด์background | ประเภทstring | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด auto, transparent, opaque | ค่าเริ่มต้น— |
ฟิลด์n | ประเภทinteger | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขั้นต่ำ: 1 สูงสุด: 1 | ค่าเริ่มต้น— |
ฟิลด์input_references | ประเภทarray | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด จำนวนรายการขั้นต่ำ: 0 จำนวนรายการสูงสุด: 10 | ค่าเริ่มต้น— |
ฟิลด์provider | ประเภทobject | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด | ค่าเริ่มต้น— |
พารามิเตอร์และวงจรการทำงานของเมธอด
| พารามิเตอร์ | ข้อกำหนด |
|---|---|
พารามิเตอร์content_type | ข้อกำหนดapplication/json |
พารามิเตอร์required | ข้อกำหนดmodel, prompt |
พารามิเตอร์material_types | ข้อกำหนดtext, image |
วงจรการทำงาน: 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}
ราคา
วิธีคำนวณค่าบริการสุดท้าย
อัตราที่แสดงใช้ประมาณการค่าใช้จ่ายก่อนการสร้างผลลัพธ์ ยอดเรียกเก็บสุดท้ายคำนวณจากค่าใช้จ่ายที่บันทึกไว้สำหรับการสร้างผลลัพธ์ครั้งเดิม ระยะเวลาของผลลัพธ์ที่วัดได้และปริมาณที่คาดการณ์ไว้ไม่ใช่ปริมาณสุดท้ายที่ใช้คิดค่าบริการ
ข้อมูลอัตราราคาไม่ได้เพิ่มตัวเลือกคำขอ พารามิเตอร์ที่รองรับระบุไว้สำหรับเมธอดที่เลือก
- โหมดรวดเร็ว
- ไม่ได้ระบุ เมื่อเลือกโหมดรวดเร็ว
- โหมดยืดหยุ่น
- ไม่ได้ระบุ เมื่อเลือกโหมด flex
- ระดับการใช้เหตุผลสูงสุด
- ไม่ได้ระบุ เมื่อใช้การปรับตามค่าเริ่มต้น (default) สำหรับระดับการใช้เหตุผลสูงสุด
อัตราประมาณการเพื่อเปรียบเทียบ
ราคาตามการตั้งค่า
เทียบค่าบริการแต่ละรายการกับเงื่อนไขที่แสดง เลือกใช้อัตราเดียวสำหรับแต่ละชุดการตั้งค่าที่เป็นตัวเลือกทดแทนกัน
| การตั้งค่า | ตารางอัตราค่าบริการ | ปริมาณคาดการณ์ | หน่วยคิดค่าบริการ | ค่าบริการ |
|---|---|---|---|---|
| การตั้งค่าอัตราค่าบริการโทเคนพื้นฐาน | ตารางอัตราค่าบริการอัตราพื้นฐาน | ปริมาณคาดการณ์— | หน่วยคิดค่าบริการ— | ค่าบริการ ขาเข้า · โทเค็นอินพุต · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น ขาออก · โทเค็นเอาต์พุต · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น ขาเข้า · การอ่านแคช · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น ขาเข้า · การเขียนแคช · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น ขาเข้า · การเขียนแคช, 1 ชั่วโมง · ประมาณการเพื่อเปรียบเทียบเท่านั้น — / 1K โทเค็น |
| การตั้งค่าภาพขาออก | ตารางอัตราค่าบริการ— | ปริมาณคาดการณ์— | หน่วยคิดค่าบริการต่อภาพเอาต์พุต | ค่าบริการ ขาออก · ภาพขาออก · ประมาณการเพื่อเปรียบเทียบเท่านั้น $0.26 ต่อภาพเอาต์พุต |
| การตั้งค่าต้นทุนการสร้างโดยประมาณ | ตารางอัตราค่าบริการ— | ปริมาณคาดการณ์ค่าประมาณสำหรับการสร้างหนึ่งครั้ง | หน่วยคิดค่าบริการ— | ค่าบริการ ขาออก · ค่าใช้จ่ายในการสร้างโดยประมาณ · ประมาณการเพื่อเปรียบเทียบเท่านั้น $0.26 ประมาณการก่อนสร้าง ค่าประมาณนี้ไม่ใช่ค่าใช้จ่ายเพิ่มเติมหรืออัตราคงที่สำหรับการสร้างผลลัพธ์ที่เสร็จสมบูรณ์แล้ว |
Ailoot กันยอดเงินประมาณการไว้ก่อนส่งคำขอ หลังได้ผลลัพธ์ จะคิดค่าบริการสุดท้ายตามการใช้งานที่วัดได้ การคิดค่าบริการแบบสตรีมใช้บันทึกการใช้งานสุดท้าย วิธีกันยอดเงินและคิดค่าบริการสุดท้าย →
ตัวอย่างคำขอ
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': 'sourceful/riverflow-v2.5-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
รับและบันทึกผลลัพธ์
Ailoot Ultra · รูปภาพ
ดาวน์โหลดภาพที่ส่งกลับมาทุกภาพ หรือบันทึกเนื้อหา Base64 ของภาพนั้น
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
การอ่านเนื้อหาแบบอื่น
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
เก็บผลลัพธ์ที่เสร็จสมบูรณ์ทั้งหมด
บันทึกภาพที่สร้างเสร็จทุกภาพ โดยดึงภาพจากทุก URL ที่ส่งกลับมา หรือถอดรหัสเนื้อหา Base64
เก็บการตอบกลับและส่วนหัวให้ครบถ้วน เก็บผลลัพธ์จริงทุกรายการ ตัวระบุที่ส่งกลับมาแต่เดิม และฟิลด์ข้อมูลการใช้งานทั้งหมด กู้คืนการดำเนินการเดิมโดยไม่ส่งคำขอสร้างซ้ำ
เมื่อต้องตรวจสอบการตอบกลับต้นฉบับ
เก็บ X-Client-Request-ID ที่ส่งกลับมาไว้เพื่อกระทบยอด อ่านเฉพาะค่า task_id/asset_id ที่ส่งกลับมาจริง หรืออ่านจากคลังสื่อที่เป็นของตนเอง ห้ามสร้าง URL ของงานจาก ID การดำเนินการ และห้ามส่งคำขอสร้างซ้ำเด็ดขาด
ฟิลด์การตอบกลับ
| ฟิลด์ | ประเภท |
|---|---|
ฟิลด์created | ประเภท |
ฟิลด์data[].url | ประเภท |
ฟิลด์data[].b64_json | ประเภท |
ฟิลด์usage | ประเภท |
ชื่ออื่น
ชื่ออื่นของโมเดล
Ailoot Ultra sourceful/riverflow-v2.5-pro
ชื่อพาธเมธอดอื่น
/v1/images
ID ที่เกี่ยวข้องสำหรับเรียกใช้โมเดล
FAQ · Sourceful: Riverflow V2.5 Pro
- มีอินพุตและผลลัพธ์ใดบ้าง?
POST /v1/images/generations·sourceful/riverflow-v2.5-pro:text,image→image- คำขอใช้ฟิลด์ใดบ้าง?
POST /v1/images/generations·sourceful/riverflow-v2.5-pro:model,prompt,resolution,aspect_ratio,output_format,background,n,input_references,provider- มีข้อจำกัดใดบ้าง?
POST /v1/images/generations·sourceful/riverflow-v2.5-pro:n.minimum:1;n.maximum:1