Suy luận linh hoạt

Gemini Flex API là một cấp suy luận giúp giảm 50% chi phí so với mức giá tiêu chuẩn, đổi lại độ trễ có thể thay đổi và khả năng cung cấp tốt nhất có thể. API này được thiết kế cho các tải có thể chịu được độ trễ, yêu cầu xử lý đồng bộ nhưng không cần hiệu suất theo thời gian thực của API tiêu chuẩn.

Cách sử dụng Flex

Để sử dụng cấp Flex, hãy chỉ định service_tierflex trong yêu cầu của bạn. Theo mặc định, các yêu cầu sẽ sử dụng cấp tiêu chuẩn nếu bạn bỏ qua trường này.

Python

from google import genai

client = genai.Client()

try:
    interaction = client.interactions.create(
        model="gemini-3-flash-preview",
        input="Analyze this dataset for trends...",
        service_tier='flex'
    )
    print(interaction.steps[-1].content[0].text)
except Exception as e:
    print(f"Flex request failed: {e}")

JavaScript

import { GoogleGenAI } from '@google/genai';

const client = new GoogleGenAI({});

async function main() {
    try {
        const interaction = await client.interactions.create({
            model: 'gemini-3-flash-preview',
            input: 'Analyze this dataset for trends...',
            serviceTier: 'flex'
        });
        console.log(interaction.steps.at(-1).content[0].text);
    } catch (e) {
        console.log(`Flex request failed: ${e}`);
    }
}
await main();

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "Content-Type: application/json" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -d '{
      "model": "gemini-3-flash-preview",
      "input": "Analyze this dataset for trends...",
      "service_tier": "flex"
  }'

Cách hoạt động của suy luận Flex

Suy luận Gemini Flex giúp thu hẹp khoảng cách giữa API tiêu chuẩn và thời gian xử lý 24 giờ của Batch API. Nó sử dụng năng lực điện toán "có thể giảm tải" vào thời gian thấp điểm để cung cấp một giải pháp tiết kiệm chi phí cho các tác vụ nền và quy trình làm việc tuần tự.

Tính năng Gập Mức độ ưu tiên Tiêu chuẩn Theo nhóm
Định giá Giảm giá 50% Cao hơn 75 – 100% so với gói Standard Giá đầy đủ Giảm giá 50%
Độ trễ Phút (mục tiêu 1 – 15 phút) Thấp (Giây) Giây sang phút Tối đa 24 giờ
Độ tin cậy Nỗ lực tối đa (Có thể loại bỏ) Cao (Không rụng lông) Cao / Cao vừa Cao (đối với thông lượng)
Giao diện Đồng bộ Đồng bộ Đồng bộ Không đồng bộ

Lợi ích chính

  • Hiệu quả về chi phí: Tiết kiệm đáng kể cho các hoạt động đánh giá không phải sản xuất, tác nhân nền và việc làm phong phú dữ liệu.
  • Ít gặp trở ngại: Bạn chỉ cần thêm một tham số duy nhất vào các yêu cầu hiện có.
  • Quy trình đồng bộ: Phù hợp với các chuỗi API tuần tự, trong đó yêu cầu tiếp theo phụ thuộc vào đầu ra của yêu cầu trước đó, giúp quy trình này linh hoạt hơn Batch đối với quy trình làm việc dựa trên tác nhân.

Trường hợp sử dụng

  • Đánh giá ngoại tuyến: Chạy các bài kiểm thử hồi quy "LLM-as-a-judge" hoặc bảng xếp hạng.
  • Tác nhân nền: Các tác vụ tuần tự như cập nhật CRM, tạo hồ sơ hoặc kiểm duyệt nội dung mà có thể chấp nhận độ trễ tính bằng phút.
  • Nghiên cứu ràng buộc ngân sách: Các thử nghiệm học thuật đòi hỏi số lượng token lớn trong khi ngân sách hạn chế.

Giới hạn số lượng yêu cầu

Lưu lượng truy cập suy luận linh hoạt được tính vào giới hạn tốc độ chung của bạn; lưu lượng truy cập này không cung cấp giới hạn tốc độ mở rộng như Batch API.

Công suất có thể giảm

Lưu lượng truy cập linh hoạt được xử lý với mức độ ưu tiên thấp hơn. Nếu lưu lượng truy cập tiêu chuẩn tăng đột biến, các yêu cầu Flex có thể bị ưu tiên hoặc bị loại bỏ để đảm bảo dung lượng cho người dùng có mức độ ưu tiên cao. Nếu bạn đang tìm kiếm suy luận có mức độ ưu tiên cao, hãy xem Suy luận ưu tiên

Mã lỗi

Khi không có dung lượng linh hoạt hoặc hệ thống bị tắc nghẽn, API sẽ trả về mã lỗi tiêu chuẩn:

  • 503 Không có dịch vụ: Hệ thống hiện đang bận.
  • 429 Quá nhiều yêu cầu: Giới hạn về tốc độ hoặc cạn kiệt tài nguyên.

Trách nhiệm của khách hàng

  • Không có phương án dự phòng phía máy chủ: Để tránh các khoản phí không mong muốn, hệ thống sẽ không tự động nâng cấp yêu cầu Flex lên cấp Standard nếu hết hạn mức Flex.
  • Thử lại: Bạn phải triển khai logic thử lại phía máy khách của riêng mình bằng thuật toán đợi luỹ tuyến.
  • Hết thời gian chờ: Vì các yêu cầu Flex có thể nằm trong hàng đợi, nên bạn nên tăng thời gian chờ phía máy khách lên 10 phút trở lên để tránh đóng kết nối quá sớm.

Điều chỉnh khoảng thời gian chờ

Bạn có thể định cấu hình thời gian chờ cho mỗi yêu cầu đối với API REST và thư viện ứng dụng. Luôn đảm bảo thời gian chờ phía máy khách bao gồm cả khoảng thời gian chờ dự kiến của máy chủ (ví dụ: 600 giây trở lên đối với hàng đợi chờ Flex). Các SDK dự kiến giá trị thời gian chờ tính bằng mili giây.

Thời gian chờ cho mỗi yêu cầu

Python

from google import genai

client = genai.Client()

try:
    interaction = client.interactions.create(
        model="gemini-3-flash-preview",
        input="why is the sky blue?",
        service_tier="flex",
        http_options={"timeout": 900000}
    )
except Exception as e:
    print(f"Flex request failed: {e}")

JavaScript

import { GoogleGenAI } from '@google/genai';

const client = new GoogleGenAI({});

async function main() {
    try {
        const interaction = await client.interactions.create({
            model: "gemini-3-flash-preview",
            input: "why is the sky blue?",
            serviceTier: "flex",
            httpOptions: {timeout: 900000}
        });
    } catch (e) {
        console.log(`Flex request failed: ${e}`);
    }
}

await main();

Triển khai các lần thử lại

Vì Flex có thể bị huỷ và gặp lỗi 503, nên đây là ví dụ về cách triển khai logic thử lại (không bắt buộc) để tiếp tục với các yêu cầu không thành công:

Python

import time
from google import genai

client = genai.Client()

def call_with_retry(max_retries=3, base_delay=5):
    for attempt in range(max_retries):
        try:
            return client.interactions.create(
                model="gemini-3-flash-preview",
                input="Analyze this batch statement.",
                service_tier="flex",
            )
        except Exception as e:
            if attempt < max_retries - 1:
                delay = base_delay * (2 ** attempt) # Exponential Backoff
                print(f"Flex busy, retrying in {delay}s...")
                time.sleep(delay)
            else:
                # Fallback to standard on last strike (Optional)
                print("Flex exhausted, falling back to Standard...")
                return client.interactions.create(
                    model="gemini-3-flash-preview",
                    input="Analyze this batch statement."
                )

# Usage
interaction = call_with_retry()
print(interaction.steps[-1].content[0].text)

JavaScript

import { GoogleGenAI } from '@google/genai';

const ai = new GoogleGenAI({});

async function sleep(ms) {
  return new Promise(resolve => setTimeout(resolve, ms));
}

async function callWithRetry(maxRetries = 3, baseDelay = 5) {
  for (let attempt = 0; attempt < maxRetries; attempt++) {
    try {
      console.log(`Attempt ${attempt + 1}: Calling Flex tier...`);
      const interaction = await ai.interactions.create({
        model: "gemini-3-flash-preview",
        input: "Analyze this batch statement.",
        serviceTier: 'flex',
      });
      return interaction;
    } catch (e) {
      if (attempt < maxRetries - 1) {
        const delay = baseDelay * (2 ** attempt);
        console.log(`Flex busy, retrying in ${delay}s...`);
        await sleep(delay * 1000);
      } else {
        console.log("Flex exhausted, falling back to Standard...");
        return await ai.interactions.create({
          model: "gemini-3-flash-preview",
          input: "Analyze this batch statement.",
        });
      }
    }
  }
}

async function main() {
    const interaction = await callWithRetry();
    console.log(interaction.steps.at(-1).content[0].text);
}

await main();

Giá

Suy luận linh hoạt có giá bằng 50% API tiêu chuẩn và được tính phí theo mã thông báo.

Mô hình được hỗ trợ

Các mô hình sau đây hỗ trợ suy luận linh hoạt:

Mô hình Suy luận linh hoạt
Gemini 3.1 Flash-Lite ✔️
Bản xem trước Gemini 3.1 Flash-Lite ✔️
Bản dùng thử Gemini 3.1 Pro ✔️
Bản dùng thử Gemini 3 Flash ✔️
Gemini 2.5 Pro ✔️
Gemini 2.5 Flash ✔️
Gemini 2.5 Flash-Lite ✔️

Bước tiếp theo