Google: Gemini 3 Flash Preview (batch)
Gemini 3 Flash Preview kết hợp hiểu biết đa phương thức và suy luận với đầu ra văn bản. Mô hình hỗ trợ phân tích mã, tài liệu và hình ảnh, kết quả có cấu trúc cùng quy trình hướng đến công cụ, với bốn mức suy nghĩ được tài liệu hóa để lựa chọn độ sâu phân tích.
Về mô hình
Mô tả này trình bày khả năng của mô hình. Đầu vào, đầu ra và tùy chọn có trên Ailoot được liệt kê bên dưới cho phương thức đã chọn.
Gemini 3 Flash Preview là mô hình suy luận của Google dành cho hiểu biết đa phương thức, lập trình và tác vụ tác nhân. Mô hình nhận văn bản, hình ảnh, video, âm thanh và PDF rồi trả về văn bản. Vì vậy, một yêu cầu có thể kết hợp chỉ dẫn bằng chữ, tệp nguồn, quan sát trực quan và lịch sử hội thoại xoay quanh một vấn đề. Kết quả có thể là lời giải thích, đề xuất mã, dữ liệu trích xuất hoặc kế hoạch dựa trên những tài liệu đó, thay vì ảnh được tạo hay câu trả lời bằng giọng nói.
Thẻ mô hình chính xác đưa ra giới hạn đầu vào 1,048,576 token và giới hạn đầu ra 65,536 token. Lập kế hoạch riêng cho nguồn và kết quả: đoạn trích dài từ kho mã, tập tài liệu hoặc bản ghi chỉ vừa khi biểu diễn sau xử lý và chỉ dẫn nằm trong ngân sách đầu vào, còn câu trả lời vẫn cần độ dài được phân bổ riêng. Gắn nhãn các nguồn liên quan và xác định tài liệu nào là nguồn tham chiếu có thẩm quyền. Với câu lệnh dài, hướng dẫn dành cho nhà phát triển khuyến nghị đặt câu hỏi cụ thể sau dữ liệu và liên kết rõ câu hỏi với thông tin phía trước.
Khả năng suy nghĩ có tính động, với high là mức mặc định được tài liệu hóa cho mô hình này. Các mức được hỗ trợ là minimal, low, medium và high. Đây là các hạn mức suy luận tương đối, không phải số token được bảo đảm. Minimal vẫn có thể bao gồm một phần suy luận với bài toán lập trình khó. Chọn mức theo tác vụ: phép biến đổi ngắn và bài gỡ lỗi nhiều điều kiện cần cách xử lý khác nhau. Dùng chỉ dẫn trực tiếp, rõ ràng thay vì ép những quy trình suy luận cầu kỳ vào câu lệnh; yêu cầu sản phẩm cuối cùng và các kiểm tra giúp sử dụng được sản phẩm đó.
Thẻ của nhà sản xuất liệt kê đầu ra có cấu trúc, gọi hàm, thực thi mã, sử dụng máy tính, tìm kiếm tệp, grounding bằng tìm kiếm, grounding bằng Google Maps, ngữ cảnh URL và bộ nhớ đệm. Công cụ tích hợp có thể kết hợp với gọi hàm tùy chỉnh trong quy trình Gemini 3 được tài liệu hóa. Ứng dụng định nghĩa hàm, kiểm tra đối số, thực thi hành động đã chấp nhận và gửi lại kết quả. Với trợ lý lập trình, công cụ đọc tệp hoặc công cụ chạy kiểm thử có kiểm soát có thể cung cấp bằng chứng cụ thể cho bước tiếp theo. Hành động được đề xuất và kết quả công cụ được quan sát cần tiếp tục được phân biệt trong báo cáo cuối cùng.
Đối với lập trình, cung cấp các tệp liên quan, ngôn ngữ, hành vi dự kiến và đầu vào thể hiện vấn đề. Xác định phạm vi thay đổi và nêu giao diện hoặc hành vi cần được giữ. Yêu cầu bản triển khai đã sửa cùng các trường hợp cần kiểm tra. Với tác vụ phân tích tài liệu, định nghĩa câu hỏi, trường bắt buộc và tham chiếu nguồn. Nếu dùng đầu ra có cấu trúc, cung cấp lược đồ với ý nghĩa trường rõ ràng và quy tắc cho giá trị thiếu. Kiểm tra cả cú pháp lẫn việc từng giá trị có xuất phát từ tài liệu gốc hay không.
Đối với phân tích đa phương thức, xác định điều quan trọng trong từng nguồn. Ảnh chụp màn hình có thể hỗ trợ giải thích giao diện, PDF có thể cung cấp bảng hoặc biểu đồ, và bản ghi có thể cung cấp sự kiện nghe hoặc nhìn thấy. Hướng dẫn dành cho nhà phát triển bàn về điều khiển độ phân giải phương tiện vì mức chi tiết thay đổi biểu diễn sau xử lý và lượng token dùng. Quy trình thực thi mã của nhà sản xuất có thể cắt hoặc phóng to ảnh được cung cấp, tính toán từ dữ liệu trực quan và thêm chú thích trước khi mô hình chuẩn bị câu trả lời. Chữ nhỏ cần đọc được có thể đòi hỏi thiết lập khác với mô tả cảnh tổng thể. Giữ trang, ảnh hoặc đoạn ghi liên quan sẵn có để có thể kiểm tra quan sát, thay vì xem bản tóm tắt trôi chảy là bằng chứng rằng mọi chi tiết đã được đọc đúng.
Trạng thái hội thoại và công cụ cần được giữ trong giao diện đã chọn. Gemini 3 sử dụng thought signatures để chuyển tiếp ngữ cảnh suy luận giữa các lần gọi; hướng dẫn dành cho nhà phát triển phân biệt lịch sử có trạng thái được quản lý với lịch sử không trạng thái do người tích hợp tự quản lý. Giữ ngữ cảnh cần thiết khi tiếp tục tác vụ công cụ hoặc sửa kết quả. Google cũng khuyến nghị giữ temperature mặc định 1.0 thay vì áp dụng công thức temperature thấp có thể gây vòng lặp hoặc làm giảm chất lượng hành vi ở tác vụ phức tạp. Đây là thực hành tích hợp của nhà sản xuất, không phải khẳng định mới về cơ chế truyền tải của bất kỳ ứng dụng cụ thể nào.
Mô hình văn bản không quảng bá khả năng tạo hình ảnh, âm thanh hoặc Live API. Hướng dẫn cũng phân biệt hiểu hình ảnh với phân đoạn ảnh ở mức pixel, vốn không phải khả năng được Gemini 3 Flash hỗ trợ. Dùng kết quả cuối cùng phù hợp với tác vụ thực tế: quan sát gắn với nguồn, bản ghi có cấu trúc, thay đổi mã hoặc quyết định nêu rõ giả định. Kiểm tra số học, xác minh mã trong môi trường dự kiến và xem xét thông tin công cụ trả về. Khi dữ kiện mới quan trọng, sử dụng nguồn grounding đã cấu hình hoặc dữ liệu hiện tại được cung cấp, thay vì giả định kiến thức mô hình là cơ sở dữ liệu trực tiếp.
Ailoot Ultra · Xử lý hàng loạt POST /v1/batches google/gemini-3-flash-preview:batch
google/gemini-3-flash-preview:batch
google/gemini-3-flash-preview:batchBắt đầu
Gemini 3 Flash Preview kết hợp hiểu biết đa phương thức và suy luận với đầu ra văn bản. Mô hình hỗ trợ phân tích mã, tài liệu và hình ảnh, kết quả có cấu trúc cùng quy trình hướng đến công cụ, với bốn mức suy nghĩ được tài liệu hóa để lựa chọn độ sâu phân tích.
- Đầu vào được chấp nhận
- Văn bản
- Kết quả
- Văn bản
Có trên Ailoot · đầu vào & phương thức
Ailoot Ultra · Xử lý hàng loạt POST /v1/batches
- Đầu vào
text- Đầu ra
text- Định dạng đầu ra
- JSON nội tuyến tại results[].response.body
| Trường | Loại | Yêu cầu | Giá trị & giới hạn | Mặc định |
|---|---|---|---|---|
Trườngendpoint | Loạistring | Yêu cầuBắt buộc | Giá trị & giới hạn /v1/chat/completions | Mặc định— |
Trườngmodel | Loạistring | Yêu cầuBắt buộc | Giá trị & giới hạn google/gemini-3-flash-preview:batch | Mặc định— |
Trườngrequests | Loạibatch_item[] | Yêu cầuBắt buộc | Giá trị & giới hạn Số mục tối thiểu: 1 | Mặc định— |
Trườngrequests[].custom_id | Loạistring | Yêu cầuBắt buộc | Giá trị & giới hạn | Mặc định— |
Trườngrequests[].body.messages | Loạimessage[] | Yêu cầuBắt buộc | Giá trị & giới hạn | Mặc định— |
Trườngcompletion_window | Loạistring | Yêu cầuKhông bắt buộc | Giá trị & giới hạn 24h | Mặc định— |
Trườngprovider | Loạiobject|null | Yêu cầuKhông bắt buộc | Giá trị & giới hạn | Mặc định— |
Trườngrequests[].body.model | Loạistring | Yêu cầuKhông bắt buộc | Giá trị & giới hạn google/gemini-3-flash-preview:batch, google/gemini-3-flash-preview | Mặc định— |
Trườngprovider.only | Loạistring[] | Yêu cầuKhông bắt buộc | Giá trị & giới hạn google-vertex/global | Mặc định— |
Trườngprovider.allow_fallbacks | Loạiboolean|null | Yêu cầuKhông bắt buộc | Giá trị & giới hạn false, null | Mặc định— |
Tham số phương thức và vòng đời
| Tham số | Hợp đồng |
|---|---|
Tham sốcontent_type | Hợp đồngapplication/json |
Tham sốrequired | Hợp đồngendpoint, model, requests |
Tham sốmaterial_types | Hợp đồngtext |
Tham sốrepresentation | Hợp đồngrequests[] nội tuyến; mỗi phần tử có custom_id và body |
Tham sốrequest_endpoint_profile | Hợp đồng/v1/chat/completions |
Tham sốfile_material | Hợp đồngBên gọi có thể đọc dữ liệu JSONL UTF-8 thực tế trên máy cục bộ vào requests[]. Không sử dụng mục đích tải lên, input_file_id hay tham chiếu tệp. Nếu thiếu tài liệu của khách hàng hoặc tài liệu rỗng, dừng khâu chuẩn bị trước POST. |
Tham sốserialization_order | Hợp đồngendpoint, model, provider (nếu được cung cấp), completion_window (nếu được cung cấp), requests ở cuối |
Tham sốoptional_controls | Hợp đồngprovider.only, provider.allow_fallbacks, completion_window |
Tham sốschema_scope | Hợp đồngPhần thân yêu cầu Chat Completions dạng văn bản trong cấu trúc Batch nội tuyến được mô tả trong tài liệu. |
Vòng đời: asynchronous
GET /v1/batches/{operation_id} · response.id thực tế từ phản hồi tạo gốc; cùng người dùng/khóa/nhóm
Bảng giá
Thông tin biểu giá không bổ sung tùy chọn yêu cầu. Các tham số được hỗ trợ nằm trong phương thức đã chọn.
- Chế độ nhanh
- Chưa chỉ định Khi chọn chế độ nhanh
- Chế độ Flex
- Chưa chỉ định Khi chọn chế độ flex
- Mức độ suy luận tối đa
- Chưa chỉ định Khi áp dụng mức điều chỉnh mặc định (default) cho mức độ suy luận tối đa
- Giá lưu đệm tường minh
- Chưa bật Khi yêu cầu lưu đệm tường minh
Mức phí Ailoot
Giá theo cấu hình
Đối chiếu từng khoản phí với điều kiện hiển thị. Dùng một mức phí cho mỗi nhóm cấu hình thay thế.
| Cấu hình | Biểu mức phí | Token ngữ cảnh, lớn hơn | Token ngữ cảnh, tối đa và bao gồm | Phí |
|---|---|---|---|---|
| Cấu hìnhGiá cơ sở cho token | Biểu mức phíMức phí cơ bản | Token ngữ cảnh, lớn hơn— | Token ngữ cảnh, tối đa và bao gồmKhông có giới hạn trên | Phí Đầu vào · Token đầu vào $0.0005 / 1K token Đầu ra · Token đầu ra $0.003 / 1K token Đầu vào · Đọc bộ nhớ đệm — / 1K token Đầu vào · Ghi bộ nhớ đệm — / 1K token Đầu vào · Ghi bộ nhớ đệm, 1 giờ — / 1K token |
| Cấu hìnhBậc 1 theo độ dài yêu cầu | Biểu mức phí— | Token ngữ cảnh, lớn hơn0 | Token ngữ cảnh, tối đa và bao gồmKhông có giới hạn trên | Phí Đầu vào · Token đầu vào $0.0005 / 1K token Đầu ra · Token đầu ra $0.003 / 1K token Đầu vào · Đọc bộ nhớ đệm — / 1K token Đầu vào · Ghi bộ nhớ đệm — / 1K token Đầu vào · Ghi bộ nhớ đệm, 1 giờ — / 1K token |
Ailoot tạm giữ một khoản ước tính trước yêu cầu. Sau khi có kết quả, phí cuối cùng được quyết toán theo mức sử dụng đo được. Việc quyết toán khi truyền luồng dùng bản ghi mức sử dụng cuối cùng. Cách hoạt động của cơ chế tạm giữ và quyết toán →
Ví dụ yêu cầu
Ailoot Ultra · Xử lý hàng loạt
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json
from pathlib import Path
body=json.loads('{"endpoint":"/v1/chat/completions","model":"google/gemini-3-flash-preview:batch","requests":[{"custom_id":"req-0001","body":{"messages":[{"role":"user","content":"Hello!"}],"max_tokens":16}}]}')
Path("batch-request.json").write_text(json.dumps(body,ensure_ascii=False),encoding="utf-8")
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/batches \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @batch-request.json -D batch-response-headers.txt -o batch-create-response.json
import json, os
from pathlib import Path
from urllib.request import Request, urlopen
def prepare_requests(customer_path):
path = Path(customer_path)
if not path.is_file(): raise ValueError("Customer JSONL file is missing")
items = [json.loads(line) for line in path.read_text(encoding="utf-8").splitlines() if line.strip()]
if not items: raise ValueError("Customer JSONL contains no requests")
ids = set()
for item in items:
if set(item) != {"custom_id", "body"}: raise ValueError("Each item needs custom_id and body")
cid = item["custom_id"]
if not isinstance(cid, str) or not cid.strip() or cid in ids: raise ValueError("custom_id must be nonempty and unique")
ids.add(cid)
if not isinstance(item["body"], dict) or not item["body"].get("messages"): raise ValueError("Supply actual text messages")
supplied_model = item["body"].get("model")
if supplied_model is not None and supplied_model not in ['google/gemini-3-flash-preview:batch', 'google/gemini-3-flash-preview']: raise ValueError("body.model must be an exact documented caller or wire ID")
return {"endpoint":"/v1/chat/completions", "model":"google/gemini-3-flash-preview:batch", "requests":items}
if __name__ == "__main__":
material = os.environ.get("AILOOT_BATCH_REQUESTS_JSONL", "")
if not material: raise SystemExit("Set AILOOT_BATCH_REQUESTS_JSONL to your actual customer file")
body = prepare_requests(material)
key = os.environ.get("AILOOT_API_KEY", "")
if not key: raise SystemExit("Set AILOOT_API_KEY")
request = Request("https://api.ailoot.ai/v1/batches", data=json.dumps(body, ensure_ascii=False).encode("utf-8"), headers={"Authorization":"Bearer " + key, "Content-Type":"application/json"}, method="POST")
with urlopen(request) as response:
raw = response.read()
Path("batch-create-response.json").write_bytes(raw)
print(raw.decode("utf-8"))
import json
from pathlib import Path
raw = Path("batch-status-response.json").read_bytes()
response = json.loads(raw)
if response.get("status") != "completed":
raise SystemExit("Keep the original operation; read its status without resubmitting")
results = response.get("results")
if not isinstance(results, list) or not results:
raise SystemExit("Preserve the original response; completed results are missing")
Path("batch-results.jsonl").write_text("".join(json.dumps(item, ensure_ascii=False) + "\n" for item in results), encoding="utf-8")
# Preserve batch-status-response.json with aggregate usage and every result/error.
Nhận và lưu kết quả
Ailoot Ultra · Xử lý hàng loạt
JSON nội tuyến tại results[].response.body
GET /v1/batches/{operation_id}
Kiểm tra trạng thái tác vụ
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
BATCH_OPERATION_ID="$(python3 - <<'PY_ID'
import json
from pathlib import Path
from urllib.parse import quote
response = json.loads(Path("batch-create-response.json").read_text(encoding="utf-8"))
operation = response.get("id")
if not isinstance(operation, str) or not operation: raise SystemExit("No actual original operation ID; preserve the response and do not resubmit")
print(quote(operation, safe=""))
PY_ID
)"
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/batches/$BATCH_OPERATION_ID" \
-H "Authorization: Bearer $AILOOT_API_KEY" -o batch-status-response.json
Lưu tất cả kết quả đã hoàn tất
Lưu mọi phản hồi hoàn chỉnh, tệp và phần nội dung được trả về.
Giữ lại toàn bộ JSON trạng thái gốc, mọi kết quả/custom_id và toàn bộ phần thân phản hồi hoặc lỗi. Lưu results[] đã hoàn tất dưới dạng JSONL mà không lọc.
Nếu cần kiểm tra phản hồi gốc
Giữ nguyên ID thao tác gốc. Phản hồi 503 result_pending_check có X-Should-Retry:false; tuyệt đối không gửi lại lô gốc có trạng thái chưa xác định.
Trường phản hồi
| Trường | Loại |
|---|---|
Trườngresults[].custom_id | Loạistring |
Trườngresults[].response.body.choices[].message.content | Loạistring|null |
Trườngresults[].error | Loạiobject|null |
Trườngusage | Loạiobject|null |
Trườngid | Loạistring |
Trườngmodel | Loạistring |
Trườngendpoint | Loạistring |
Trườngstatus | Loạistring |
Trườngrequest_counts | Loạiobject |
Trườngresults[].id | Loạistring |
Trườngresults[].response.status_code | Loạiinteger |
Trườngresults[].response.request_id | Loạistring |
Lỗi và bước tiếp theo
| Phản hồi | Điều kiện | Bước tiếp theo |
|---|---|---|
Phản hồi400 · invalid_request_error | Điều kiệnCấu trúc nội tuyến không đúng tài liệu, có khóa trùng, định danh phần tử không hợp lệ hoặc xung đột với khả năng đã cấu hình của mô hình. | Bước tiếp theoSửa các trường được chỉ ra trước khi gửi bất kỳ yêu cầu mới nào. |
Phản hồi401 · authentication_error | Điều kiệnKhóa API không hợp lệ. | Bước tiếp theoSử dụng khóa Ailoot đã được cấp quyền. |
Phản hồi403 · permission_error | Điều kiệnNhóm xử lý hàng loạt không khả dụng. | Bước tiếp theoKiểm tra quyền sử dụng của khóa/nhóm. |
Phản hồi422 · invalid_request_error | Điều kiệnXử lý hàng loạt tính phí từ số dư; yêu cầu tạo qua gói thuê bao bị từ chối. | Bước tiếp theoSử dụng nhóm đã được cấp quyền và tính phí từ số dư. |
Phản hồi422 · price_unavailable | Điều kiệnKhông thể báo giá cho dữ liệu đầu vào của lô. | Bước tiếp theoGiữ lại phản hồi; sử dụng dữ liệu đầu vào của họ API được mô tả trong tài liệu. |
Phản hồi402 · billing_error | Điều kiệnKhoản dự trữ cho xử lý hàng loạt không khả dụng. | Bước tiếp theoKhắc phục vấn đề về điều kiện tiếp nhận trước khi gửi yêu cầu mới. |
Phản hồi503 · price_unavailable | Điều kiệnGiá phương thức xử lý hàng loạt/đơn giá gốc không khả dụng. | Bước tiếp theoGiữ lại phản hồi; không thay thế đơn giá. |
Phản hồi503 · api_error | Điều kiệnTuyến cụ thể tới nhà cung cấp không khả dụng. | Bước tiếp theoGiữ lại phản hồi để sửa tuyến. |
Phản hồi503 · result_pending_check | Điều kiệnKết quả gốc cần được kiểm tra; X-Should-Retry:false. | Bước tiếp theoGiữ lại operation_id/id gốc và truy xuất trạng thái của thao tác đó; tuyệt đối không lặp lại POST gốc. |
Phản hồi404 · not_found | Điều kiệnKhông tìm thấy thao tác kiểm tra trạng thái lô hoặc thao tác thuộc một danh tính khác. | Bước tiếp theoSử dụng đúng id gốc và cùng người dùng/khóa/nhóm. |
Bí danh
Bí danh mô hình
Ailoot Ultra google/gemini-3-flash-preview:batch
Bí danh đường dẫn phương thức
Dùng các đường dẫn phương thức hiển thị ở trên.
ID gọi liên quan
FAQ · Google: Gemini 3 Flash Preview (batch)
- Có những đầu vào và kết quả nào?
POST /v1/batches·google/gemini-3-flash-preview:batch:text→text- Yêu cầu sử dụng những trường nào?
POST /v1/batches·google/gemini-3-flash-preview:batch:endpoint,model,requests,completion_window,provider- Áp dụng những giới hạn nào?
POST /v1/batches·google/gemini-3-flash-preview:batch:requests.min_items:1