# GPT 6 Sol API เอกสารอ้างอิง API ฉบับสมบูรณ์สำหรับโมเดลภาษาขนาดใหญ่ GPT 6 Sol จาก OpenAI ## รุ่นย่อยของโมเดล API นี้รองรับโมเดลสี่รุ่นย่อย: | โมเดล | รหัส | คำอธิบาย | |-------|----|-------------| | **GPT 6 Sol Text to Text** | `gpt-6-sol-text-to-text` | การให้เหตุผลและการเขียนข้อความสำหรับงานทั่วไป | | **GPT 6 Sol Image to Text** | `gpt-6-sol-image-to-text` | การทำความเข้าใจภาพตามคำสั่งข้อความ | | **GPT 6 Sol Web Search** | `gpt-6-sol-web-search` | เวิร์กโฟลว์ LLM แบบข้อความที่สามารถค้นหาเว็บได้ | | **GPT 6 Sol File Analysis** | `gpt-6-sol-file-analysis` | การวิเคราะห์ไฟล์ตามคำสั่งข้อความ | ## การเปรียบเทียบโดยย่อ | คุณสมบัติ | ข้อความเป็นข้อความ | ภาพเป็นข้อความ | การค้นหาเว็บ | การวิเคราะห์ไฟล์ | |---------|--------------|---------------|------------|---------------| | ข้อความอินพุต | จำเป็น ✅ | ไม่บังคับ | จำเป็น ✅ | ไม่บังคับ | | ภาพอินพุต | ไม่รองรับ ❌ | ไม่บังคับ | ไม่บังคับ | ไม่บังคับ | | ไฟล์อินพุต | ไม่รองรับ ❌ | ไม่รองรับ ❌ | ไม่บังคับ | ไม่บังคับ | | การตอบกลับแบบสตรีม | SSE | SSE | SSE | SSE | | `max_tokens` | ไม่บังคับ | ไม่บังคับ | ไม่บังคับ | ไม่บังคับ | ## GPT 6 Sol Text to Text ### ปลายทาง API ```http POST /api/v1/chat/completions ``` ### พารามิเตอร์คำขอ #### จำเป็น | พารามิเตอร์ | ชนิด | คำอธิบาย | |-----------|------|-------------| | `model` | string | ต้องเป็น `"gpt-6-sol-text-to-text"` | | `messages` | array | ข้อความที่เรียงตามลำดับ ดูโครงสร้างข้อความได้ในเอกสาร LLM API | | `stream` | boolean | `true` สำหรับ SSE และ `false` สำหรับการตอบกลับ JSON ครั้งเดียว | #### เนื้อหาข้อความที่รองรับ | ฟิลด์ | ข้อความ | ไฟล์ | ภาพ | |-------|------|------|-------| | `messages` | จำเป็น ✅ | ไม่รองรับ ❌ | ไม่รองรับ ❌ | #### ไม่บังคับ | พารามิเตอร์ | ชนิด | ช่วงค่า | คำอธิบาย | |-----------|------|-------|-------------| | `max_tokens` | integer | `> 1` | จำนวนโทเค็นเอาต์พุตสูงสุด ไม่มีค่าสูงสุดเริ่มต้น | ### ตัวอย่างคำขอ ```javascript const response = await fetch('https://api.flaq.ai/api/v1/chat/completions', { method: 'POST', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'text/event-stream', 'Content-Type': 'application/json' }, body: JSON.stringify({ model: 'gpt-6-sol-text-to-text', messages: [ { role: 'user', content: 'Write a short launch announcement for a new AI feature.' } ], stream: true, max_tokens: 2048 }) }); ``` ## GPT 6 Sol Image to Text ### ปลายทาง API ```http POST /api/v1/chat/completions ``` ### พารามิเตอร์คำขอ #### จำเป็น | พารามิเตอร์ | ชนิด | คำอธิบาย | |-----------|------|-------------| | `model` | string | ต้องเป็น `"gpt-6-sol-image-to-text"` | | `messages` | array | ข้อความที่เรียงตามลำดับ ดูเอกสาร LLM API และไฟล์แนบในข้อความ | | `stream` | boolean | `true` สำหรับ SSE และ `false` สำหรับการตอบกลับ JSON ครั้งเดียว | #### เนื้อหาข้อความที่รองรับ | ฟิลด์ | ข้อความ | ไฟล์ | ภาพ | |-------|------|------|-------| | `messages` | ไม่บังคับ | ไม่รองรับ ❌ | ไม่บังคับ | #### ไม่บังคับ | พารามิเตอร์ | ชนิด | ช่วงค่า | คำอธิบาย | |-----------|------|-------|-------------| | `max_tokens` | integer | `> 1` | จำนวนโทเค็นเอาต์พุตสูงสุด ไม่มีค่าสูงสุดเริ่มต้น | ### ตัวอย่างคำขอ ```javascript const response = await fetch('https://api.flaq.ai/api/v1/chat/completions', { method: 'POST', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'text/event-stream', 'Content-Type': 'application/json' }, body: JSON.stringify({ model: 'gpt-6-sol-image-to-text', messages: [ { role: 'user', content: [ { type: 'text', text: 'Describe the image and extract any visible text.' }, { type: 'image_url', image_url: { url: 'https://example.com/sample-image.jpg' } } ] } ], stream: true, max_tokens: 2048 }) }); ``` ## GPT 6 Sol Web Search ### ปลายทาง API ```http POST /api/v1/chat/completions ``` ### พารามิเตอร์คำขอ #### จำเป็น | พารามิเตอร์ | ชนิด | คำอธิบาย | |-----------|------|-------------| | `model` | string | ต้องเป็น `"gpt-6-sol-web-search"` | | `messages` | array | ข้อความที่เรียงตามลำดับ ดูเอกสาร LLM API และไฟล์แนบในข้อความ | | `stream` | boolean | `true` สำหรับ SSE และ `false` สำหรับการตอบกลับ JSON ครั้งเดียว | #### เนื้อหาข้อความที่รองรับ | ฟิลด์ | ข้อความ | ไฟล์ | ภาพ | |-------|------|------|-------| | `messages` | จำเป็น ✅ | ไม่บังคับ | ไม่บังคับ | #### ไม่บังคับ | พารามิเตอร์ | ชนิด | ช่วงค่า | คำอธิบาย | |-----------|------|-------|-------------| | `max_tokens` | integer | `> 1` | จำนวนโทเค็นเอาต์พุตสูงสุด ไม่มีค่าสูงสุดเริ่มต้น | ### ตัวอย่างคำขอ ```javascript const response = await fetch('https://api.flaq.ai/api/v1/chat/completions', { method: 'POST', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'text/event-stream', 'Content-Type': 'application/json' }, body: JSON.stringify({ model: 'gpt-6-sol-web-search', messages: [ { role: 'user', content: 'Find recent product launch trends in AI developer tools.' } ], stream: true, max_tokens: 2048 }) }); ``` ## GPT 6 Sol File Analysis ### ปลายทาง API ```http POST /api/v1/chat/completions ``` ### พารามิเตอร์คำขอ #### จำเป็น | พารามิเตอร์ | ชนิด | คำอธิบาย | |-----------|------|-------------| | `model` | string | ต้องเป็น `"gpt-6-sol-file-analysis"` | | `messages` | array | ข้อความที่เรียงตามลำดับ ดูเอกสาร LLM API และไฟล์แนบในข้อความ | | `stream` | boolean | `true` สำหรับ SSE และ `false` สำหรับการตอบกลับ JSON ครั้งเดียว | #### เนื้อหาข้อความที่รองรับ | ฟิลด์ | ข้อความ | ไฟล์ | ภาพ | |-------|------|------|-------| | `messages` | ไม่บังคับ | ไม่บังคับ | ไม่บังคับ | #### ไม่บังคับ | พารามิเตอร์ | ชนิด | ช่วงค่า | คำอธิบาย | |-----------|------|-------|-------------| | `max_tokens` | integer | `> 1` | จำนวนโทเค็นเอาต์พุตสูงสุด ไม่มีค่าสูงสุดเริ่มต้น | ### ตัวอย่างคำขอ ```javascript const response = await fetch('https://api.flaq.ai/api/v1/chat/completions', { method: 'POST', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Accept': 'text/event-stream', 'Content-Type': 'application/json' }, body: JSON.stringify({ model: 'gpt-6-sol-file-analysis', messages: [ { role: 'user', content: [ { type: 'text', text: 'Summarize this document and list the key action items.' }, { type: 'file', file: { filename: 'demo.pdf', file_data: 'https://example.com/demo.pdf' } } ] } ], stream: true, max_tokens: 2048 }) }); ``` ## รูปแบบการตอบกลับ โมเดลภาษาขนาดใหญ่ GPT 6 Sol ส่งคืนการตอบกลับการสร้างคำตอบที่เข้ากันได้กับ OpenAI เมื่อใช้ `stream: true` การตอบกลับจะเป็นเหตุการณ์ที่ส่งจากเซิร์ฟเวอร์ และเมื่อใช้ `stream: false` การตอบกลับจะเป็นออบเจ็กต์ JSON เดียว ### การตอบกลับเมื่อสำเร็จ ```text data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"gpt-6-sol-image-to-text","choices":[{"index":0,"delta":{"role":"assistant"},"finish_reason":null}]} data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"gpt-6-sol-image-to-text","choices":[{"index":0,"delta":{"content":"The image shows"},"finish_reason":null}]} data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"gpt-6-sol-image-to-text","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]} data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"gpt-6-sol-image-to-text","choices":[],"usage":{"prompt_tokens":12,"completion_tokens":8,"total_tokens":20}} data: [DONE] ``` ### การตอบกลับข้อผิดพลาด ```text event: error data: {"error":{"message":"API requests too frequent, exceeding rate limit","type":"rate_limit_error","code":"1302","param":null}} ``` ## แนวทางปฏิบัติที่แนะนำ 1. **รักษาโครงสร้างข้อความ:** ใช้ `messages[]` สำหรับประวัติการสนทนา แทนการรวมบริบททั้งหมดเป็นพรอมต์เดียว 2. **แนบไฟล์และภาพกับข้อความ:** ใส่ส่วน `image_url` และ `file` ไว้ในข้อความที่นำเสนอไฟล์หรือภาพนั้น 3. **ใช้การแยกวิเคราะห์ SSE:** ต่อเนื้อหาจาก `choices[0].delta.content` เพื่อแสดงผลทีละส่วน และถือว่า `data: [DONE]` หมายถึงเสร็จสมบูรณ์แล้ว 4. **ส่งเฉพาะอินพุตที่รองรับ:** เลือกส่วนข้อความ ภาพ และไฟล์ให้สอดคล้องกับรุ่นย่อยของโมเดลที่เลือก 5. **เก็บสถานะคำขอไว้ในเครื่อง:** แต่ละส่วนข้อมูลมี `id` ของการสร้างคำตอบ แต่ไคลเอนต์ควรยังคงส่งต่อส่วนข้อมูลผ่านสถานะคำขอที่กำลังใช้งาน