Source: https://ailoot.ai/models/th/sourceful-riverflow-v2-5-fast/
Canonical: https://ailoot.ai/models/th/sourceful-riverflow-v2-5-fast/
Language: th

# Sourceful: Riverflow V2.5 Fast

[Markdown](https://ailoot.ai/models/th/sourceful-riverflow-v2-5-fast/index.md) · [JSON](https://ailoot.ai/models/th/sourceful-riverflow-v2-5-fast/facts.json)

## [Sourceful: Riverflow V2.5 Fast](https://ailoot.ai/models/th/sourceful-riverflow-v2-5-fast/)

Riverflow 2.5 Fast เป็นโปรไฟล์ Fast ของ Sourceful สำหรับสร้างและแก้ไขภาพผลิตภัณฑ์และการตลาด ใช้สำรวจองค์ประกอบและการแก้เฉพาะจุดในเวิร์กโฟลว์ของตระกูลที่ใช้การให้เหตุผล พร้อมภาพอ้างอิง ตัวอักษร และเกณฑ์ตรวจทานที่ชัดเจน

- [**Ailoot Ultra · รูปภาพ** `POST /v1/images/generations` `sourceful/riverflow-v2.5-fast`](https://ailoot.ai/models/th/sourceful-riverflow-v2-5-fast/#method-0)

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

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

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

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

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

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

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

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

Fast แยกจาก Pro และจากรุ่น 2.0 Riverflow 2.5 เพิ่มการให้เหตุผลลึกขึ้น เกณฑ์ตรวจเฉพาะ และตัวควบคุมฟอนต์กับพื้นหลังที่ดีขึ้นบนแนวทางหลายขั้นก่อนหน้า เพื่อให้การปรับรอบมีประโยชน์ ให้เก็บตัวเลือกที่ตรงองค์ประกอบ ระบุปัญหาที่เหลือให้แม่น และแก้ส่วนนั้นของบรีฟหรือเกณฑ์ เก็บภาพที่เลือก ภาพอ้างอิงต้นฉบับ และเกณฑ์ตรวจไว้ด้วยกัน เพื่อให้การเปลี่ยนต่อมาพัฒนางานเดิมแทนเริ่มเอกลักษณ์ใหม่

**Ailoot Ultra · รูปภาพ** `POST /v1/images/generations` `sourceful/riverflow-v2.5-fast`

[`sourceful/riverflow-v2.5-fast`](https://ailoot.ai/models/th/#m=sourceful%2Friverflow-v2.5-fast&route=Ultra&caller=sourceful%2Friverflow-v2.5-fast&fmt=images)

Sourceful /`sourceful/riverflow-v2.5-fast`

### เริ่มต้น

Riverflow 2.5 Fast เป็นโปรไฟล์ Fast ของ Sourceful สำหรับสร้างและแก้ไขภาพผลิตภัณฑ์และการตลาด ใช้สำรวจองค์ประกอบและการแก้เฉพาะจุดในเวิร์กโฟลว์ของตระกูลที่ใช้การให้เหตุผล พร้อมภาพอ้างอิง ตัวอักษร และเกณฑ์ตรวจทานที่ชัดเจน

อินพุตที่รองรับ

ข้อความ · รูปภาพ

ผลลัพธ์

รูปภาพ

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

**Ailoot Ultra · รูปภาพ** `POST /v1/images/generations`

ขาเข้า

`text`, `image`

ขาออก

`image`

| ฟิลด์ | ประเภท | ข้อกำหนด | ค่าและข้อจำกัด | ค่าเริ่มต้น |
| --- | --- | --- | --- | --- |
| ฟิลด์`model` | ประเภท`string` | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด sourceful/riverflow-v2.5-fast | ค่าเริ่มต้น— |
| ฟิลด์`prompt` | ประเภท`string` | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด ความยาวขั้นต่ำ: 1 | ค่าเริ่มต้น— |
| ฟิลด์`resolution` | ประเภท`string` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด 1K, 2K | ค่าเริ่มต้น— |
| ฟิลด์`aspect_ratio` | ประเภท`string` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด 1:1, 4:3, 3:4, 3:2, 2:3, 16:9, 9:16, 21:9, auto | ค่าเริ่มต้น— |
| ฟิลด์`output_format` | ประเภท`string` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด jpeg | ค่าเริ่มต้น— |
| ฟิลด์`background` | ประเภท`string` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด auto, transparent, opaque | ค่าเริ่มต้น— |
| ฟิลด์`n` | ประเภท`integer` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขั้นต่ำ: 1 สูงสุด: 1 | ค่าเริ่มต้น— |
| ฟิลด์`input_references` | ประเภท`array` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด จำนวนรายการขั้นต่ำ: 0 จำนวนรายการสูงสุด: 4 | ค่าเริ่มต้น— |
| ฟิลด์`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.038** ต่อภาพเอาต์พุต |
| การตั้งค่าต้นทุนการสร้างโดยประมาณ | ตารางอัตราค่าบริการ— | ปริมาณคาดการณ์ค่าประมาณสำหรับการสร้างหนึ่งครั้ง | หน่วยคิดค่าบริการ— | ค่าบริการ ขาออก · ค่าใช้จ่ายในการสร้างโดยประมาณ · ประมาณการเพื่อเปรียบเทียบเท่านั้น **$0.038** ประมาณการก่อนสร้าง ค่าประมาณนี้ไม่ใช่ค่าใช้จ่ายเพิ่มเติมหรืออัตราคงที่สำหรับการสร้างผลลัพธ์ที่เสร็จสมบูรณ์แล้ว |

Ailoot กันยอดเงินประมาณการไว้ก่อนส่งคำขอ หลังได้ผลลัพธ์ จะคิดค่าบริการสุดท้ายตามการใช้งานที่วัดได้ การคิดค่าบริการแบบสตรีมใช้บันทึกการใช้งานสุดท้าย [วิธีกันยอดเงินและคิดค่าบริการสุดท้าย →](https://ailoot.ai/docs/th/billing/reserve/)

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

#### Ailoot Ultra · รูปภาพ

curl

```bash
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-fast', '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}/content`
- `GET /v1/media/assets`
- `GET /v1/media/assets/{asset_id}`

การอ่านเนื้อหาแบบอื่น

อ่านไฟล์สื่อที่มีอยู่และเป็นของคุณ

```bash
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-fast`](https://ailoot.ai/models/th/#m=sourceful%2Friverflow-v2.5-fast&route=Ultra&caller=sourceful%2Friverflow-v2.5-fast&fmt=images)

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

`/v1/images`

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

[`sourceful/riverflow-v2.5-fast`](https://ailoot.ai/models/th/#m=sourceful%2Friverflow-v2.5-fast&route=Ultra&caller=sourceful%2Friverflow-v2.5-fast&fmt=images)

FAQ · Sourceful: Riverflow V2.5 Fast

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

`POST /v1/images/generations` · `sourceful/riverflow-v2.5-fast`: `text`, `image` → `image`

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

`POST /v1/images/generations` · `sourceful/riverflow-v2.5-fast`: `model`, `prompt`, `resolution`, `aspect_ratio`, `output_format`, `background`, `n`, `input_references`, `provider`

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

`POST /v1/images/generations` · `sourceful/riverflow-v2.5-fast`: `n.minimum`: `1`; `n.maximum`: `1`

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

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

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

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

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

สมาชิก

เลือกแพ็กเกจมีส่วนลดสำหรับคำขอประจำ

โค้ดลดสูงสุด 50%

ใส่โค้ดขณะซื้อ ราคาคำนวณใหม่ตามโปรโมชั่นที่ใช้

รายจ่ายในประวัติ

เก็บโมเดล โทเคน และยอดสำหรับทุกคำขอ

[เลือกสมาชิก](https://ailoot.ai/docs/th/billing/subscriptions/) · [ดูราคาโมเดล](https://ailoot.ai/models/th/)

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

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

แอปเชิงพาณิชย์

ใส่การสร้างข้อความ ภาพ วิดีโอ และเสียงในฟีเจอร์เสียเงินของบริการคุณ

ใบอนุญาตรีเซลเลอร์

ส่งคำอธิบายโครงการและรูปแบบการเข้าถึง ขอเงื่อนไขใช้และขายต่อเป็นลายลักษณ์อักษร

เอกสารบนเว็บไซต์

อ่านข้อเสนอ สัญญาอนุญาต และนโยบายประมวลผลข้อมูลก่อนเชื่อมได้

[ขอใบอนุญาตขายต่อ](mailto:support@ailoot.ai) · [ข้อเสนอและสัญญาอนุญาต](https://ailoot.ai/legal/offer?lang=th)

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





Ailoot อาศัยประสบการณ์การดำเนินงานที่สั่งสม ฐานลูกค้าขนาดใหญ่ บริการที่เสถียร และการติดตาม KPI อย่างต่อเนื่อง





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





Ailoot นำประสบการณ์การดำเนินงานนี้มาใช้เพื่อให้เข้าถึงฟังก์ชัน AI ผ่าน API ในผลิตภัณฑ์ของลูกค้า เอเจนต์ แอปพลิเคชัน และระบบอัตโนมัติ
