# GPT 6 Luna API Tài liệu tham chiếu API đầy đủ cho các mô hình LLM GPT 6 Luna do OpenAI cung cấp. ## Các biến thể mô hình API này hỗ trợ bốn biến thể mô hình: | Mô hình | ID | Mô tả | |-------|----|-------------| | **GPT 6 Luna Text to Text** | `gpt-6-luna-text-to-text` | Suy luận và viết văn bản đa dụng | | **GPT 6 Luna Image to Text** | `gpt-6-luna-image-to-text` | Hiểu hình ảnh theo chỉ dẫn bằng văn bản | | **GPT 6 Luna Web Search** | `gpt-6-luna-web-search` | Quy trình LLM văn bản có khả năng tìm kiếm trên web | | **GPT 6 Luna File Analysis** | `gpt-6-luna-file-analysis` | Phân tích tệp theo chỉ dẫn bằng văn bản | ## So sánh nhanh | Tính năng | Văn bản sang văn bản | Hình ảnh sang văn bản | Tìm kiếm trên web | Phân tích tệp | |---------|--------------|---------------|------------|---------------| | Đầu vào văn bản | Bắt buộc ✅ | Tùy chọn | Bắt buộc ✅ | Tùy chọn | | Đầu vào hình ảnh | Không hỗ trợ ❌ | Tùy chọn | Tùy chọn | Tùy chọn | | Đầu vào tệp | Không hỗ trợ ❌ | Không hỗ trợ ❌ | Tùy chọn | Tùy chọn | | Phản hồi dạng luồng | SSE | SSE | SSE | SSE | | `max_tokens` | Tùy chọn | Tùy chọn | Tùy chọn | Tùy chọn | ## GPT 6 Luna Text to Text ### Điểm cuối ```http POST /api/v1/chat/completions ``` ### Tham số yêu cầu #### Bắt buộc | Tham số | Kiểu | Mô tả | |-----------|------|-------------| | `model` | string | Phải là `"gpt-6-luna-text-to-text"`. | | `messages` | array | Các tin nhắn theo thứ tự. Xem LLM API để biết cấu trúc tin nhắn. | | `stream` | boolean | `true` để nhận SSE, `false` để nhận một phản hồi JSON duy nhất. | #### Nội dung được hỗ trợ trong tin nhắn | Trường | Văn bản | Tệp | Hình ảnh | |-------|------|------|-------| | `messages` | Bắt buộc ✅ | Không hỗ trợ ❌ | Không hỗ trợ ❌ | #### Tùy chọn | Tham số | Kiểu | Phạm vi | Mô tả | |-----------|------|-------|-------------| | `max_tokens` | integer | `> 1` | Số token đầu ra tối đa. Không có giới hạn tối đa mặc định. | ### Yêu cầu mẫu ```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-luna-text-to-text', messages: [ { role: 'user', content: 'Write a short launch announcement for a new AI feature.' } ], stream: true, max_tokens: 2048 }) }); ``` ## GPT 6 Luna Image to Text ### Điểm cuối ```http POST /api/v1/chat/completions ``` ### Tham số yêu cầu #### Bắt buộc | Tham số | Kiểu | Mô tả | |-----------|------|-------------| | `model` | string | Phải là `"gpt-6-luna-image-to-text"`. | | `messages` | array | Các tin nhắn theo thứ tự. Xem LLM API và Tệp đính kèm tin nhắn. | | `stream` | boolean | `true` để nhận SSE, `false` để nhận một phản hồi JSON duy nhất. | #### Nội dung được hỗ trợ trong tin nhắn | Trường | Văn bản | Tệp | Hình ảnh | |-------|------|------|-------| | `messages` | Tùy chọn | Không hỗ trợ ❌ | Tùy chọn | #### Tùy chọn | Tham số | Kiểu | Phạm vi | Mô tả | |-----------|------|-------|-------------| | `max_tokens` | integer | `> 1` | Số token đầu ra tối đa. Không có giới hạn tối đa mặc định. | ### Yêu cầu mẫu ```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-luna-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 Luna Web Search ### Điểm cuối ```http POST /api/v1/chat/completions ``` ### Tham số yêu cầu #### Bắt buộc | Tham số | Kiểu | Mô tả | |-----------|------|-------------| | `model` | string | Phải là `"gpt-6-luna-web-search"`. | | `messages` | array | Các tin nhắn theo thứ tự. Xem LLM API và Tệp đính kèm tin nhắn. | | `stream` | boolean | `true` để nhận SSE, `false` để nhận một phản hồi JSON duy nhất. | #### Nội dung được hỗ trợ trong tin nhắn | Trường | Văn bản | Tệp | Hình ảnh | |-------|------|------|-------| | `messages` | Bắt buộc ✅ | Tùy chọn | Tùy chọn | #### Tùy chọn | Tham số | Kiểu | Phạm vi | Mô tả | |-----------|------|-------|-------------| | `max_tokens` | integer | `> 1` | Số token đầu ra tối đa. Không có giới hạn tối đa mặc định. | ### Yêu cầu mẫu ```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-luna-web-search', messages: [ { role: 'user', content: 'Find recent product launch trends in AI developer tools.' } ], stream: true, max_tokens: 2048 }) }); ``` ## GPT 6 Luna File Analysis ### Điểm cuối ```http POST /api/v1/chat/completions ``` ### Tham số yêu cầu #### Bắt buộc | Tham số | Kiểu | Mô tả | |-----------|------|-------------| | `model` | string | Phải là `"gpt-6-luna-file-analysis"`. | | `messages` | array | Các tin nhắn theo thứ tự. Xem LLM API và Tệp đính kèm tin nhắn. | | `stream` | boolean | `true` để nhận SSE, `false` để nhận một phản hồi JSON duy nhất. | #### Nội dung được hỗ trợ trong tin nhắn | Trường | Văn bản | Tệp | Hình ảnh | |-------|------|------|-------| | `messages` | Tùy chọn | Tùy chọn | Tùy chọn | #### Tùy chọn | Tham số | Kiểu | Phạm vi | Mô tả | |-----------|------|-------|-------------| | `max_tokens` | integer | `> 1` | Số token đầu ra tối đa. Không có giới hạn tối đa mặc định. | ### Yêu cầu mẫu ```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-luna-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 }) }); ``` ## Định dạng phản hồi Các mô hình LLM GPT 6 Luna trả về phản hồi hoàn thành tương thích với OpenAI. Với `stream: true`, phản hồi là sự kiện do máy chủ gửi (SSE); với `stream: false`, phản hồi là một đối tượng JSON duy nhất. ### Phản hồi thành công ```text data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"gpt-6-luna-image-to-text","choices":[{"index":0,"delta":{"role":"assistant"},"finish_reason":null}]} data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"gpt-6-luna-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-luna-image-to-text","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]} data: {"id":"chatcmpl-...","object":"chat.completion.chunk","created":1710000000,"model":"gpt-6-luna-image-to-text","choices":[],"usage":{"prompt_tokens":12,"completion_tokens":8,"total_tokens":20}} data: [DONE] ``` ### Phản hồi lỗi ```text event: error data: {"error":{"message":"API requests too frequent, exceeding rate limit","type":"rate_limit_error","code":"1302","param":null}} ``` ## Các phương pháp thực hành tốt nhất 1. **Giữ cấu trúc tin nhắn:** Dùng `messages[]` cho lịch sử hội thoại thay vì gộp ngữ cảnh vào một lời nhắc. 2. **Đính kèm tệp và hình ảnh vào tin nhắn:** Đặt các phần `image_url` và `file` trong tin nhắn giới thiệu chúng. 3. **Phân tích SSE:** Nối thêm `choices[0].delta.content` để hiển thị dần nội dung và coi `data: [DONE]` là hoàn tất thành công. 4. **Chỉ gửi đầu vào được hỗ trợ:** Bảo đảm các phần văn bản, hình ảnh và tệp phù hợp với biến thể mô hình đã chọn. 5. **Lưu trạng thái yêu cầu cục bộ:** Các khối dữ liệu có chứa `id` của phản hồi hoàn thành, nhưng máy khách vẫn nên định tuyến các khối qua trạng thái yêu cầu đang hoạt động.