Source: https://ailoot.ai/models/th/gemini-2-5-flash-preview-09-2025/
Canonical: https://ailoot.ai/models/th/gemini-2-5-flash-preview-09-2025/
Language: th

# gemini-2.5-flash-preview-09-2025

[Markdown](https://ailoot.ai/models/th/gemini-2-5-flash-preview-09-2025/index.md) · [JSON](https://ailoot.ai/models/th/gemini-2-5-flash-preview-09-2025/facts.json)

## [gemini-2.5-flash-preview-09-2025](https://ailoot.ai/models/th/gemini-2-5-flash-preview-09-2025/)

Gemini 2.5 Flash Preview 09-2025 เป็นรุ่นเดือนกันยายนของ Google สำหรับการวิเคราะห์ข้อมูลหลายรูปแบบและงานหลายขั้นตอนที่ใช้เครื่องมือ ผสานความเข้าใจข้อความ ภาพ วิดีโอ และเสียงเข้ากับการคิด คำตอบแบบมีโครงสร้าง และขีดจำกัดข้อมูลนำเข้า 1,048,576 โทเค็น พร้อมการปรับปรุงเฉพาะด้านการใช้เครื่องมือแบบเอเจนต์

- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `gemini-2.5-flash-preview-09-2025`](https://ailoot.ai/models/th/gemini-2-5-flash-preview-09-2025/#method-0)
- [**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `gemini-2.5-flash-preview-09-2025`](https://ailoot.ai/models/th/gemini-2-5-flash-preview-09-2025/#method-1)

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

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

Gemini 2.5 Flash Preview 09-2025 เป็นรุ่นพรีวิวเดือนกันยายนของโมเดลให้เหตุผลแบบไฮบริดของ Google ข้อมูลนำเข้าที่ระบุในเอกสาร ได้แก่ ข้อความ ภาพ วิดีโอ และเสียง ส่วนผลลัพธ์เป็นข้อความ โมเดลสามารถรวมคำถามเข้ากับสื่อภาพหรือเสียงพูด แล้วสร้างคำอธิบาย เอกสาร โค้ด หรือคำตอบแบบมีโครงสร้าง รุ่นที่ระบุวันที่แน่นอนนี้แยกต่างหากจาก Gemini 2.5 Flash รุ่นเสถียรและจากชื่อแทน latest ที่เปลี่ยนไปตามรุ่น จุดประสงค์คือความเข้าใจข้อมูลหลายรูปแบบและการทำงานโดยมีเครื่องมือช่วย เพื่อให้ได้ผลลัพธ์เป็นลายลักษณ์อักษร

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

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

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

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

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

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

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

งานตัวอย่างจริง

### งานตัวอย่างจริง

ตัวอย่างทางเทคนิคภาษาอังกฤษ

```
Review a proposed retention design

Assess this design against the requirement. Requirement R: delete inactive guest records after 30 days; paid accounts are excluded. Design D: a nightly job deletes every account whose last_login is older than 30 days. List mismatches with R/D references, propose a corrected selection rule in plain English, and give boundary cases to test.
```

#### ผลลัพธ์ที่คาดหวัง

```
A concise requirements review, a corrected guest-only rule and tests for day 30, day 31 and an inactive paid account.
```

#### ตรวจสอบผลลัพธ์

```
The proposal excludes paid accounts and explicitly resolves what after 30 days means at the boundary.
```

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `gemini-2.5-flash-preview-09-2025`

[`gemini-2.5-flash-preview-09-2025`](https://ailoot.ai/models/th/#m=gemini-2.5-flash-preview-09-2025&route=Ultra&caller=gemini-2.5-flash-preview-09-2025&fmt=chat)

Google /`gemini-2.5-flash-preview-09-2025`

### เริ่มต้น

Gemini 2.5 Flash Preview 09-2025 เป็นรุ่นเดือนกันยายนของ Google สำหรับการวิเคราะห์ข้อมูลหลายรูปแบบและงานหลายขั้นตอนที่ใช้เครื่องมือ ผสานความเข้าใจข้อความ ภาพ วิดีโอ และเสียงเข้ากับการคิด คำตอบแบบมีโครงสร้าง และขีดจำกัดข้อมูลนำเข้า 1,048,576 โทเค็น พร้อมการปรับปรุงเฉพาะด้านการใช้เครื่องมือแบบเอเจนต์

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

ข้อความ

ผลลัพธ์

ข้อความ

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

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions`

ขาเข้า

`text`

ขาออก

`text`

รูปแบบเอาต์พุต

json หรือ SSE

| ฟิลด์ | ประเภท | ข้อกำหนด | ค่าและข้อจำกัด | ค่าเริ่มต้น |
| --- | --- | --- | --- | --- |
| ฟิลด์`model` | ประเภท`string` | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด gemini-2.5-flash-preview-09-2025 | ค่าเริ่มต้น— |
| ฟิลด์`messages` | ประเภท`message[]` | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด จำนวนรายการขั้นต่ำ: 1 | ค่าเริ่มต้น— |
| ฟิลด์`messages[].role` | ประเภท`string` | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด ตัวอย่าง: system, user, assistant, tool, function เงื่อนไข: บทบาทเหล่านี้แทนอย่างชัดเจนด้วยชนิดข้อมูลเพื่อความเข้ากันได้ในซอร์สโค้ด แต่ชุดบทบาทที่แน่นอนยังขึ้นกับแต่ละโมเดล ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`messages[].content` | ประเภท`string\|content_part[]\|null` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด | ค่าเริ่มต้น— |
| ฟิลด์`messages[].tool_calls` | ประเภท`tool_call[]` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด | ค่าเริ่มต้น— |
| ฟิลด์`messages[].tool_call_id` | ประเภท`string` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ใช้เมื่อ: role=tool โดยใช้ ID ที่ส่งกลับจริง | ค่าเริ่มต้น— |
| ฟิลด์`messages[].name` | ประเภท`string` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด | ค่าเริ่มต้น— |
| ฟิลด์`messages[].reasoning_content` | ประเภท`string` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ใช้เมื่อ: ส่งเนื้อหาการใช้เหตุผลที่คืนจริงกลับในคำขอถัดไป เมื่อโมเดลนี้ใช้เนื้อหานั้น | ค่าเริ่มต้น— |
| ฟิลด์`messages[].reasoning_details` | ประเภท`object\|array` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`max_tokens` | ประเภท`integer` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขั้นต่ำ: 1 ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`max_completion_tokens` | ประเภท`integer` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขั้นต่ำ: 1 ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`stream` | ประเภท`boolean` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด | ค่าเริ่มต้นfalse |
| ฟิลด์`stream_options.include_usage` | ประเภท`boolean` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`temperature` | ประเภท`number` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`top_p` | ประเภท`number` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`stop` | ประเภท`string\|string[]` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`tools` | ประเภท`function_tool[]` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`tools[].type` | ประเภท`string` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด function ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`tools[].function.name` | ประเภท`string` | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด ใช้เมื่อ: มีเครื่องมือฟังก์ชันให้ใช้ | ค่าเริ่มต้น— |
| ฟิลด์`tools[].function.description` | ประเภท`string` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด | ค่าเริ่มต้น— |
| ฟิลด์`tools[].function.parameters` | ประเภท`JSON_schema` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด | ค่าเริ่มต้น— |
| ฟิลด์`tool_choice` | ประเภท`string\|object` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`parallel_tool_calls` | ประเภท`boolean` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`response_format` | ประเภท`object` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`reasoning_effort` | ประเภท`string` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`reasoning` | ประเภท`object` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`service_tier` | ประเภท`string` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`instructions` | ประเภท`string` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ฟิลด์เพื่อความเข้ากันได้ | ค่าเริ่มต้น— |
| ฟิลด์`functions` | ประเภท`function[]` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`function_call` | ประเภท`string\|object` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`prompt_cache_options` | ประเภท`object` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด ขึ้นอยู่กับโมเดล | ค่าเริ่มต้น— |
| ฟิลด์`modalities` | ประเภท`string[]` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด text | ค่าเริ่มต้น— |
| ฟิลด์`provider` | ประเภท`object` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด เงื่อนไข: เส้นทางข้อความ Ultra นี้ปฏิเสธ provider.options | ค่าเริ่มต้น— |
| ฟิลด์`cache_control.ttl` | ประเภท`string` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด เงื่อนไข: ตำแหน่งแคชพรอมป์ต์จริงปฏิเสธ 1h | ค่าเริ่มต้น— |

ชุดผสมของสื่ออินพุต

**ข้อความ** · ข้อความ UTF8

`messages[].content`

พารามิเตอร์และวงจรการทำงานของเมธอด

| พารามิเตอร์ | ข้อกำหนด |
| --- | --- |
| พารามิเตอร์`content_type` | ข้อกำหนดapplication/json |
| พารามิเตอร์`required` | ข้อกำหนดmodel, messages |
| พารามิเตอร์`material_types` | ข้อกำหนดtext |
| พารามิเตอร์`messages` | ข้อกำหนดอาร์เรย์ข้อความที่มีโครงสร้าง role/content |
| พารามิเตอร์`file_material` | ข้อกำหนดแทรกเอกสาร UTF-8 จริงเป็นข้อความตามต้นฉบับ โดยไม่อนุมาน ID ไฟล์ |
| พารามิเตอร์`optional_controls` | ข้อกำหนดstream, temperature, top\_p, stop, max\_tokens, max\_completion\_tokens, reasoning, response\_format, tools, tool\_choice |
| พารามิเตอร์`control_scope` | ข้อกำหนดขึ้นกับโมเดล เครื่องมือฟังก์ชันของผู้ใช้ต่างจากเครื่องมือที่โฮสต์จัดให้ |
| พารามิเตอร์`output_modalities` | ข้อกำหนดtext |
| พารามิเตอร์`hosted_operations` | ข้อกำหนดfalse |
| พารามิเตอร์`multimodal_input_binding` | ข้อกำหนดnull |

วงจรการทำงาน: `synchronous_or_streamed`

ส่ง ID โมเดลที่ตรงทุกตัวพร้อม messages

ความยาวบริบทไม่ใช่เพดานผลลัพธ์

ไฟล์ข้อความให้ข้อความตามต้นฉบับได้ ส่วนข้อมูลเข้าภาพ/เสียง/ออบเจ็กต์ไฟล์ต้องมีการผูกที่ตรงตามจริง

### ราคา

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

โหมดรวดเร็ว

ไม่ได้ระบุ เมื่อเลือกโหมดรวดเร็ว

โหมดยืดหยุ่น

ไม่ได้ระบุ เมื่อเลือกโหมด flex

ระดับการใช้เหตุผลสูงสุด

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

การคิดราคาแคชแบบระบุชัด

ไม่ได้เปิดใช้ เมื่อร้องขอแคชแบบระบุชัด

#### อัตราค่าบริการ Ailoot

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

| การตั้งค่า | ตารางอัตราค่าบริการ | ค่าบริการ |
| --- | --- | --- |
| การตั้งค่าอัตราราคาพื้นฐานของโทเคน | ตารางอัตราค่าบริการอัตราพื้นฐาน | ค่าบริการ ขาเข้า · โทเค็นอินพุต **$0.0006** / 1K โทเค็น ขาออก · โทเค็นเอาต์พุต **$0.005** / 1K โทเค็น ขาเข้า · การอ่านแคช **$0** / 1K โทเค็น ขาเข้า · การเขียนแคช **$0** / 1K โทเค็น ขาเข้า · การเขียนแคช, 1 ชั่วโมง **—** / 1K โทเค็น |

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

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

#### Ailoot Ultra · OpenAI Chat

curlPython SDKสตรีมด้วย Python

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "gemini-2.5-flash-preview-09-2025", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')

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/chat/completions \
  -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 json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
    if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
```

```python
from openai import OpenAI
import os

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model='gemini-2.5-flash-preview-09-2025',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

save_result(result.to_dict(mode="json"))
```

```python
from openai import OpenAI
import os
from pathlib import Path

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

with client.chat.completions.stream(model='gemini-2.5-flash-preview-09-2025',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
    with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
        for event in stream:
            payload=event.to_dict(mode="json")
            log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
            print(json.dumps(payload,ensure_ascii=False))
    final=stream.get_final_completion()
    save_result(final.to_dict(mode="json"),"stream-result")
```

### รับและบันทึกผลลัพธ์

#### Ailoot Ultra · OpenAI Chat

json หรือ SSE

##### เก็บผลลัพธ์ที่เสร็จสมบูรณ์ทั้งหมด

เก็บทุกการตอบกลับ ไฟล์ และส่วนเนื้อหาที่ส่งกลับมาอย่างครบถ้วน

เก็บทุกตัวเลือกพร้อมเนื้อหา/การเรียกเครื่องมือ/การใช้เหตุผล ใน SSE ให้ประกอบส่วนเพิ่มตามดัชนีตัวเลือก/เครื่องมือ และเก็บเหตุผลสิ้นสุดกับข้อมูลการใช้งานสุดท้าย

##### เมื่อต้องตรวจสอบการตอบกลับต้นฉบับ

เก็บ ID และส่วนหัวของคำขอ/คำตอบ ไม่มี URL ทั่วไปสำหรับดึงงานข้อความให้ใช้

ฟิลด์การตอบกลับ

| ฟิลด์ | ประเภท |
| --- | --- |
| ฟิลด์`choices[].index` | ประเภทinteger |
| ฟิลด์`choices[].message.content` | ประเภทstring\|null |
| ฟิลด์`choices[].message.tool_calls` | ประเภทtool\_call\[\] |
| ฟิลด์`choices[].message.reasoning_content` | ประเภทstring |
| ฟิลด์`choices[].message.reasoning_details` | ประเภทobject\|array |
| ฟิลด์`choices[].finish_reason` | ประเภทstring\|null |
| ฟิลด์`usage` | ประเภทobject |

ข้อผิดพลาดและขั้นตอนถัดไป

| การตอบกลับ | เงื่อนไข | ขั้นตอนถัดไป |
| --- | --- | --- |
| การตอบกลับ400 · `invalid_request_error` | เงื่อนไขฟิลด์จำเป็น รูปแบบการแทนข้อมูล หรือค่าพารามิเตอร์ไม่ถูกต้อง | ขั้นตอนถัดไปแก้ฟิลด์ที่ระบุก่อนส่งคำขอสร้างครั้งใหม่ |

### ชื่ออื่น

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

**Ailoot Ultra** [`gemini-2.5-flash-preview-09-2025`](https://ailoot.ai/models/th/#m=gemini-2.5-flash-preview-09-2025&route=Ultra&caller=gemini-2.5-flash-preview-09-2025&fmt=chat)

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

ใช้พาธเมธอดที่แสดงด้านบน

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

[`gemini-2.5-flash-preview-09-2025`](https://ailoot.ai/models/th/#m=gemini-2.5-flash-preview-09-2025&route=Ultra&caller=gemini-2.5-flash-preview-09-2025&fmt=chat)

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `gemini-2.5-flash-preview-09-2025`

[`gemini-2.5-flash-preview-09-2025`](https://ailoot.ai/models/th/#m=gemini-2.5-flash-preview-09-2025&route=Ultra&caller=gemini-2.5-flash-preview-09-2025&fmt=messages)

Google /`gemini-2.5-flash-preview-09-2025`

### เริ่มต้น

Gemini 2.5 Flash Preview 09-2025 เป็นรุ่นเดือนกันยายนของ Google สำหรับการวิเคราะห์ข้อมูลหลายรูปแบบและงานหลายขั้นตอนที่ใช้เครื่องมือ ผสานความเข้าใจข้อความ ภาพ วิดีโอ และเสียงเข้ากับการคิด คำตอบแบบมีโครงสร้าง และขีดจำกัดข้อมูลนำเข้า 1,048,576 โทเค็น พร้อมการปรับปรุงเฉพาะด้านการใช้เครื่องมือแบบเอเจนต์

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

ข้อความ

ผลลัพธ์

json · sse

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

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages`

ขาเข้า

`text`

ขาออก

`json`, `sse`

รูปแบบเอาต์พุต

JSON หรือ SSE

| ฟิลด์ | ประเภท | ข้อกำหนด | ค่าและข้อจำกัด | ค่าเริ่มต้น |
| --- | --- | --- | --- | --- |
| ฟิลด์`model` | ประเภท`string` | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด gemini-2.5-flash-preview-09-2025 | ค่าเริ่มต้น— |
| ฟิลด์`messages` | ประเภท`message[]` | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด | ค่าเริ่มต้น— |
| ฟิลด์`messages[].role` | ประเภท`string` | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด user, assistant | ค่าเริ่มต้น— |
| ฟิลด์`messages[].content` | ประเภท`string` | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด | ค่าเริ่มต้น— |
| ฟิลด์`max_tokens` | ประเภท`integer` | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด | ค่าเริ่มต้น— |
| ฟิลด์`stream` | ประเภท`boolean` | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด | ค่าเริ่มต้นfalse |

ชุดผสมของสื่ออินพุต

**ข้อความ** · ข้อความ UTF-8

`สตริง messages[].content`

พารามิเตอร์และวงจรการทำงานของเมธอด

| พารามิเตอร์ | ข้อกำหนด |
| --- | --- |
| พารามิเตอร์`content_type` | ข้อกำหนดapplication/json |
| พารามิเตอร์`required` | ข้อกำหนดmodel, messages, max\_tokens |
| พารามิเตอร์`optional_controls` | ข้อกำหนดstream |
| พารามิเตอร์`material_types` | ข้อกำหนดtext |
| พารามิเตอร์`text_file_material` | ข้อกำหนดอ่านเอกสาร UTF-8 จริง แล้วใส่ข้อความใน input หรือสตริงเนื้อหาข้อความที่ระบุ |

วงจรการทำงาน: `synchronous_or_streamed`

### ราคา

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

โหมดรวดเร็ว

ไม่ได้ระบุ เมื่อเลือกโหมดรวดเร็ว

โหมดยืดหยุ่น

ไม่ได้ระบุ เมื่อเลือกโหมด flex

ระดับการใช้เหตุผลสูงสุด

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

การคิดราคาแคชแบบระบุชัด

ไม่ได้เปิดใช้ เมื่อร้องขอแคชแบบระบุชัด

#### อัตราค่าบริการ Ailoot

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

| การตั้งค่า | ตารางอัตราค่าบริการ | ค่าบริการ |
| --- | --- | --- |
| การตั้งค่าอัตราราคาพื้นฐานของโทเคน | ตารางอัตราค่าบริการอัตราพื้นฐาน | ค่าบริการ ขาเข้า · โทเค็นอินพุต **$0.0006** / 1K โทเค็น ขาออก · โทเค็นเอาต์พุต **$0.005** / 1K โทเค็น ขาเข้า · การอ่านแคช **$0** / 1K โทเค็น ขาเข้า · การเขียนแคช **$0** / 1K โทเค็น ขาเข้า · การเขียนแคช, 1 ชั่วโมง **—** / 1K โทเค็น |

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

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

#### Ailoot Ultra · Anthropic Messages

เนื้อหาคำขอ JSON ขั้นต่ำที่ครบถ้วนcurl · ใช้เอกสาร UTF-8 ของคุณPython · บันทึกผลลัพธ์ให้ครบถ้วน

```json
{
  "model": "gemini-2.5-flash-preview-09-2025",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'gemini-2.5-flash-preview-09-2025', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
```

```python
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'gemini-2.5-flash-preview-09-2025', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
```

### รับและบันทึกผลลัพธ์

#### Ailoot Ultra · Anthropic Messages

JSON หรือ SSE

##### เก็บผลลัพธ์ที่เสร็จสมบูรณ์ทั้งหมด

เก็บทุกการตอบกลับ ไฟล์ และส่วนเนื้อหาที่ส่งกลับมาอย่างครบถ้วน

เก็บทุกบล็อกเนื้อหา ลายเซ็นการคิด และ ID การใช้เครื่องมือจริง ประกอบส่วนเพิ่มของบล็อก SSE ทั้งหมด บล็อกข้อความแรกไม่ใช่ผลลัพธ์ทั้งหมด

##### เมื่อต้องตรวจสอบการตอบกลับต้นฉบับ

เก็บ ID และส่วนหัวของคำขอ/คำตอบ ไม่มี URL ทั่วไปสำหรับดึงงานข้อความให้ใช้

ฟิลด์การตอบกลับ

| ฟิลด์ | ประเภท |
| --- | --- |
| ฟิลด์`id` | ประเภทstring |
| ฟิลด์`model` | ประเภทstring |
| ฟิลด์`content[]` | ประเภทtext\|thinking\|tool\_use\|other content block |
| ฟิลด์`stop_reason` | ประเภทstring\|null |
| ฟิลด์`usage` | ประเภทobject |

ข้อผิดพลาดและขั้นตอนถัดไป

| การตอบกลับ | เงื่อนไข | ขั้นตอนถัดไป |
| --- | --- | --- |
| การตอบกลับ400 · `invalid_request_error` | เงื่อนไขฟิลด์จำเป็น รูปแบบการแทนข้อมูล หรือค่าพารามิเตอร์ไม่ถูกต้อง | ขั้นตอนถัดไปแก้ฟิลด์ที่ระบุก่อนส่งคำขอสร้างครั้งใหม่ |

### ชื่ออื่น

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

**Ailoot Ultra** [`gemini-2.5-flash-preview-09-2025`](https://ailoot.ai/models/th/#m=gemini-2.5-flash-preview-09-2025&route=Ultra&caller=gemini-2.5-flash-preview-09-2025&fmt=messages)

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

ใช้พาธเมธอดที่แสดงด้านบน

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

[`gemini-2.5-flash-preview-09-2025`](https://ailoot.ai/models/th/#m=gemini-2.5-flash-preview-09-2025&route=Ultra&caller=gemini-2.5-flash-preview-09-2025&fmt=messages)

FAQ · gemini-2.5-flash-preview-09-2025

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

`POST /v1/chat/completions` · `gemini-2.5-flash-preview-09-2025`: `text` → `text` `POST /v1/messages` · `gemini-2.5-flash-preview-09-2025`: `text` → `json`, `sse`

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

`POST /v1/chat/completions` · `gemini-2.5-flash-preview-09-2025`: `model`, `messages`, `stream`, `modalities`, `provider` `POST /v1/messages` · `gemini-2.5-flash-preview-09-2025`: `model`, `messages`, `max_tokens`, `stream`

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

`POST /v1/chat/completions` · `gemini-2.5-flash-preview-09-2025`: `messages.min_items`: `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 ในผลิตภัณฑ์ของลูกค้า เอเจนต์ แอปพลิเคชัน และระบบอัตโนมัติ
