# "Tao anh bang gemini-nano-banana-2.1"

Nguồn: https://docs.openaihub.net/api-45208849/

> API origin: `https://api.openaihub.net`. Chọn đúng nhóm API và model. Thông số dưới đây là bản tham chiếu kỹ thuật; chưa phải kết quả kiểm thử từng endpoint bằng tài khoản của bạn.


## OpenAPI Specification

```yaml
openapi: 3.0.1
info:
  title: ''
  description: ''
  version: 1.0.0
paths:
  /v1beta/models/gemini-nano-banana-2.1:generateContent:
    post:
      summary: Tao anh bang gemini-nano-banana-2.1
      deprecated: false
      description: >-
        ## Mô tả mô hình

        `gemini-nano-banana-2.1` là mô hình tạo/chỉnh sửa hình ảnh thuộc dòng
        Gemini, hỗ trợ chuyển văn bản thành hình ảnh và chỉnh sửa dựa trên nhiều
        hình ảnh tham chiếu (hoán đổi khuôn mặt, thay đổi trang phục, chuyển đổi
        phong cách, v.v.).


        - Định dạng yêu cầu: `generateContent` gốc của Gemini

        - Đầu ra: `inlineData` (base64) trong `candidates[0].content.parts[]`;
        trả về URL hình ảnh khi truyền `response_format: "url"` (chỉ khi không
        phát trực tuyến)

        - Độ phân giải: `imageConfig.imageSize` chỉ hỗ trợ `1K` / `2K` / `4K`,
        mặc định là `1K`, không hỗ trợ `512`

        - Tỉ lệ khung hình: `imageConfig.aspectRatio` hỗ trợ `1:1, 16:9, 9:16,
        4:3, 3:4, 2:3, 3:2, 4:5, 5:4, 1:4, 4:1, 1:8, 8:1, 21:9`

        - Suy luận: `thinkingConfig.thinkingLevel` chỉ hỗ trợ `minimal` /
        `high`, không hỗ trợ `thinkingBudget`; cũng có thể dùng hậu tố tên mô
        hình `-thinking` / `-nothinking`

        - Tính phí: Dựa trên các mức độ phân giải, 1K ×1.0, 2K ×1.5, 4K ×3.375
        (dựa trên giá mô hình trong bảng điều khiển)


        Tài liệu chính thức:
        https://ai.google.dev/gemini-api/docs/image-generation?hl=en#gemini-image-editing
      operationId: post-v1beta-models-gemini-nano-banana-2.1:generateContent
      tags:
        - OpenAiHub Việt Nam/OpenAiHub Tiếng Việt/Trò chuyện/Gemini/Định dạng gốc
        - Google Gemini/định dạng gốc
      parameters:
        - name: Content-Type
          in: header
          description: ''
          required: true
          example: application/json
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
                - contents
              properties:
                contents:
                  type: array
                  items:
                    type: object
                    required:
                      - parts
                    properties:
                      parts:
                        type: array
                        items:
                          type: object
                          properties:
                            inline_data:
                              type: object
                              required:
                                - mime_type
                                - data
                              properties:
                                data:
                                  type: string
                                  description: >-
                                    Chuỗi Base64 của hình ảnh, không bao gồm
                                    tiền tố data:image/...;base64,
                                mime_type:
                                  type: string
                                  enum:
                                    - image/jpeg
                                    - image/png
                                    - image/webp
                                  description: Kiểu MIME của hình ảnh
                              description: >-
                                Hình ảnh tham chiếu (base64). Cũng tương thích
                                với cách viết camelCase `inlineData` /
                                `mimeType`.
                              x-apifox-orders:
                                - data
                                - mime_type
                              x-apidog-orders:
                                - data
                                - mime_type
                            text:
                              type: string
                              description: >-
                                Lời nhắc văn bản. Mô tả cảnh bạn muốn tạo/chỉnh
                                sửa; không đưa kích thước hoặc tỷ lệ khung hình
                                vào lời nhắc, hãy kiểm soát chúng bằng
                                imageConfig.
                          x-apifox-orders:
                            - inline_data
                            - text
                          x-apidog-orders:
                            - inline_data
                            - text
                        description: >-
                          Mảng các đoạn nội dung, mỗi phần tử chỉ được điền vào
                          một trong hai trường `text` hoặc `inline_data`.
                      role:
                        type: string
                        enum:
                          - user
                        description: Vai trò, phải được đặt thành `user`
                    x-apifox-orders:
                      - parts
                      - role
                    x-apidog-orders:
                      - parts
                      - role
                  description: >-
                    Nội dung hội thoại. Đối với chuyển văn bản thành hình ảnh,
                    chỉ nên đặt một văn bản; đối với chỉnh sửa hình ảnh/tham
                    chiếu nhiều hình ảnh, hãy đặt một văn bản + nhiều
                    `inline_data` trong cùng một `parts`.
                generationConfig:
                  type: object
                  properties:
                    imageConfig:
                      type: object
                      properties:
                        aspectRatio:
                          type: string
                          enum:
                            - '1:1'
                            - '16:9'
                            - '9:16'
                            - '4:3'
                            - '3:4'
                            - '2:3'
                            - '3:2'
                            - '4:5'
                            - '5:4'
                            - '1:4'
                            - '4:1'
                            - '1:8'
                            - '8:1'
                            - '21:9'
                          description: >-
                            Tỷ lệ khung hình của ảnh đầu ra, mặc định là 1:1 nếu
                            không được cung cấp (sử dụng tỷ lệ của ảnh tham
                            chiếu nếu có)
                        imageSize:
                          type: string
                          enum:
                            - 1K
                            - 2K
                            - 4K
                          description: >-
                            Cấp độ phân giải đầu ra, mặc định là 1K nếu không
                            được cung cấp. Không hỗ trợ 512. Hệ số tính phí: 1K
                            ×1.0, 2K ×1.5, 4K ×3.375.
                      description: Cấu hình đầu ra hình ảnh
                      x-apifox-orders:
                        - aspectRatio
                        - imageSize
                      x-apidog-orders:
                        - aspectRatio
                        - imageSize
                    responseModalities:
                      type: array
                      items:
                        type: string
                        enum:
                          - TEXT
                          - IMAGE
                      description: >-
                        Phương thức đầu ra. Nên truyền rõ ràng ["TEXT","IMAGE"]
                        khi tạo hình ảnh; nếu chỉ truyền ["IMAGE"] thì sẽ không
                        trả về phần mô tả bằng văn bản.
                    thinkingConfig:
                      type: object
                      properties:
                        thinkingLevel:
                          type: string
                          enum:
                            - minimal
                            - high
                          description: >-
                            Muc do suy luan. `minimal` nhanh hon, `high` cho
                            chat luong tot hon nhung cham hon. Cung co the su
                            dung hau to ten mo hinh
                            `gemini-nano-banana-2.1-thinking` / `-nothinking`.
                      description: >-
                        Cấu hình suy luận (tùy chọn). Không hỗ trợ
                        thinkingBudget, chỉ hỗ trợ thinkingLevel.
                      x-apifox-orders:
                        - thinkingLevel
                      x-apidog-orders:
                        - thinkingLevel
                  description: >-
                    Cấu hình tạo nội dung. Lưu ý: aspectRatio / imageSize phải
                    được đặt bên trong imageConfig; nếu đặt chúng ở cấp cao nhất
                    của generationConfig thì chúng sẽ bị bỏ qua; các trường
                    negativePrompt và resolution không được hỗ trợ.
                  x-apifox-orders:
                    - imageConfig
                    - responseModalities
                    - thinkingConfig
                  x-apidog-orders:
                    - imageConfig
                    - responseModalities
                    - thinkingConfig
                response_format:
                  type: string
                  enum:
                    - base64
                    - url
                  description: >-
                    Định dạng trả về của hình ảnh (trường mở rộng của nền tảng,
                    không phải là tham số Gemini chính thức). base64: hình ảnh
                    được trả về trong parts[].inlineData.data (mặc định); url:
                    hình ảnh trả về một liên kết tạm thời trong
                    parts[].fileData.fileUri, chỉ được hỗ trợ cho các yêu cầu
                    không truyền trực tuyến; việc truyền url trong chế độ truyền
                    trực tuyến sẽ dẫn đến lỗi 400.
              x-apifox-orders:
                - contents
                - generationConfig
                - response_format
              x-apidog-orders:
                - contents
                - generationConfig
                - response_format
            examples:
              example:
                value:
                  contents:
                    - parts:
                        - text: >-
                            Thay thế hoàn toàn khuôn mặt và tóc của nhân vật
                            trong Hình 1 vào nhân vật trong Hình 2: các đường
                            nét và chi tiết khuôn mặt phải hoàn toàn lấy từ Hình
                            1, không giữ lại đặc điểm khuôn mặt của Hình 2; điều
                            chỉnh góc khuôn mặt theo tư thế đầu trong Hình 2;
                            giữ nguyên trang phục, phần cơ thể không bao gồm phụ
                            kiện tóc và phông nền của Hình 2; màu da, ánh sáng
                            và bóng đổ hòa quyện tự nhiên, không xuất hiện đường
                            nối ghép rõ ràng; phong cách chân thực ở cấp độ
                            nhiếp ảnh.
                        - text: 'Hình tham khảo 1 ("Hình 1" trong câu lệnh):'
                        - inlineData:
                            data: >-
                              <base64 của Hình 1, không bao gồm tiền tố
                              data:image/jpeg;base64,>
                            mimeType: image/jpeg
                        - text: 'Tham khảo Hình 2 ("Hình 2" trong lời nhắc):'
                        - inlineData:
                            data: >-
                              <base64 của Hình 2, không bao gồm tiền tố
                              data:image/jpeg;base64,>
                            mimeType: image/jpeg
                      role: user
                  generationConfig:
                    imageConfig:
                      aspectRatio: '3:4'
                      imageSize: 2K
                    responseModalities:
                      - Vui lòng cung cấp nội dung tài liệu cần dịch.
                      - HÌNH ẢNH
                  response_format: base64
                summary: example
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                required:
                  - candidates
                properties:
                  candidates:
                    type: array
                    items:
                      type: object
                      required:
                        - content
                        - finishReason
                      properties:
                        content:
                          type: object
                          required:
                            - parts
                          properties:
                            parts:
                              type: array
                              items:
                                type: object
                                properties:
                                  fileData:
                                    type: object
                                    required:
                                      - mimeType
                                      - fileUri
                                    properties:
                                      fileUri:
                                        type: string
                                        description: >-
                                          Liên kết tải xuống tạm thời cho hình ảnh
                                          có giới hạn thời gian, vui lòng tải
                                          xuống và lưu lại ngay.
                                      mimeType:
                                        type: string
                                    description: >-
                                      Được trả về khi `response_format` là
                                      `url`.
                                    x-apifox-orders:
                                      - fileUri
                                      - mimeType
                                    x-apidog-orders:
                                      - fileUri
                                      - mimeType
                                  inlineData:
                                    type: object
                                    required:
                                      - mimeType
                                      - data
                                    properties:
                                      data:
                                        type: string
                                        description: >-
                                          Chuỗi Base64 của hình ảnh, không bao gồm
                                          tiền tố data:; khi giải mã, chuỗi này
                                          cho ra dữ liệu nhị phân của hình ảnh.
                                      mimeType:
                                        type: string
                                        description: Kiểu MIME của hình ảnh
                                    description: >-
                                      Được trả về khi response_format là base64
                                      (mặc định).
                                    x-apifox-orders:
                                      - data
                                      - mimeType
                                    x-apidog-orders:
                                      - data
                                      - mimeType
                                  text:
                                    type: string
                                    description: >-
                                      Phần mô tả văn bản do mô hình cung cấp, có
                                      thể không xuất hiện.
                                x-apifox-orders:
                                  - fileData
                                  - inlineData
                                  - text
                                x-apidog-orders:
                                  - fileData
                                  - inlineData
                                  - text
                              description: >-
                                Mảng các phân đoạn được trả về. Phần mô tả bằng
                                văn bản nằm trong text, hình ảnh nằm trong
                                inlineData (base64) hoặc fileData (url); chỉ cần
                                lấy phần tử đầu tiên có chứa hình ảnh.
                            role:
                              type: string
                              description: Đã cố định theo mô hình
                          x-apifox-orders:
                            - parts
                            - role
                          x-apidog-orders:
                            - parts
                            - role
                        finishReason:
                          type: string
                          enum:
                            - STOP
                            - MAX_TOKENS
                            - SAFETY
                            - RECITATION
                            - PROHIBITED_CONTENT
                            - OTHER
                          description: >-
                            Lý do kết thúc. STOP cho biết quá trình hoàn tất
                            bình thường; SAFETY / PROHIBITED_CONTENT cho biết
                            yêu cầu đã bị chính sách an toàn chặn lại, trong
                            trường hợp này không có hình ảnh nào được trả về.
                        index:
                          type: integer
                      x-apifox-orders:
                        - content
                        - finishReason
                        - index
                      x-apidog-orders:
                        - content
                        - finishReason
                        - index
                    description: Mảng kết quả tạo sinh, thường chỉ chứa 1 phần tử
                  modelVersion:
                    type: string
                    description: Phiên bản mô hình thực sự đã xử lý yêu cầu.
                  responseId:
                    type: string
                    description: >-
                      ID yêu cầu cho phiên làm việc này, vui lòng cung cấp khi
                      xử lý sự cố.
                  usageMetadata:
                    type: object
                    properties:
                      candidatesTokenCount:
                        type: integer
                        description: Số lượng token đầu ra (bao gồm cả hình ảnh được tạo).
                      promptTokenCount:
                        type: integer
                        description: >-
                          Số lượng token đầu vào (bao gồm cả hình ảnh tham
                          chiếu).
                      totalTokenCount:
                        type: integer
                        description: Tổng số token.
                    description: Thống kê mức sử dụng token, tính phí dựa trên console.
                    x-apifox-orders:
                      - candidatesTokenCount
                      - promptTokenCount
                      - totalTokenCount
                    x-apidog-orders:
                      - candidatesTokenCount
                      - promptTokenCount
                      - totalTokenCount
                x-apifox-orders:
                  - candidates
                  - modelVersion
                  - responseId
                  - usageMetadata
                x-apidog-orders:
                  - candidates
                  - modelVersion
                  - responseId
                  - usageMetadata
              examples:
                example:
                  summary: example
                  value:
                    candidates:
                      - content:
                          parts:
                            - text: >-
                                Đã thay khuôn mặt trong Hình 1 vào Hình 2, đồng
                                thời giữ nguyên trang phục và phông nền của Hình
                                2.
                            - inlineData:
                                data: >-
                                  /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/...(da
                                  cat ngan)
                                mimeType: image/jpeg
                          role: mô hình
                        finishReason: DỪNG LẠI
                        index: 0
                    modelVersion: gemini-nano-banana-2.1
                    responseId: abc123xyz
                    usageMetadata:
                      candidatesTokenCount: 1290
                      promptTokenCount: 1083
                      totalTokenCount: 2373
          headers: {}
          x-apidog-name: ''
      security: []
      x-apidog-folder: OpenAiHub Việt Nam/OpenAiHub Tiếng Việt/Trò chuyện/Gemini/Định dạng gốc
      x-apidog-status: released
      x-run-in-apidog: https://app.apidog.com/web/project/1218648/apis/api-45208849-run
components:
  schemas: {}
  securitySchemes: {}
servers:
  - url: https://api.openaihub.net
    description: Prod Env
security: []

```
