Gemini API hỗ trợ việc tạo nội dung bằng hình ảnh, âm thanh, mã nguồn, công cụ và nhiều nội dung khác. Để biết thông tin chi tiết về từng tính năng này, hãy đọc tiếp và xem mã mẫu tập trung vào tác vụ hoặc đọc hướng dẫn toàn diện.
Phương thức: models.generateContent
Tạo câu trả lời của mô hình dựa trên dữ liệu đầu vào GenerateContentRequest
. Hãy tham khảo hướng dẫn tạo văn bản để biết thông tin chi tiết về cách sử dụng. Các tính năng đầu vào khác nhau giữa các mô hình, bao gồm cả mô hình được điều chỉnh. Hãy tham khảo hướng dẫn về mô hình và hướng dẫn điều chỉnh để biết thông tin chi tiết.
Điểm cuối
bài đăng https://generativelanguage.googleapis.com/v1beta/{model=models/*}:generateContentTham số đường dẫn
model
string
Bắt buộc. Tên của Model
dùng để tạo thao tác hoàn tất.
Định dạng: name=models/{model}
. Phương thức này có dạng models/{model}
.
Nội dung yêu cầu
Nội dung yêu cầu chứa dữ liệu có cấu trúc sau:
contents[]
object (Content
)
Bắt buộc. Nội dung của cuộc trò chuyện hiện tại với mô hình.
Đối với truy vấn một lượt, đây là một thực thể duy nhất. Đối với các truy vấn nhiều lượt như trò chuyện, đây là trường lặp lại chứa nhật ký trò chuyện và yêu cầu mới nhất.
tools[]
object (Tool
)
Không bắt buộc. Danh sách Tools
mà Model
có thể dùng để tạo phản hồi tiếp theo.
Tool
là một đoạn mã cho phép hệ thống tương tác với các hệ thống bên ngoài để thực hiện một hành động hoặc một tập hợp hành động nằm ngoài kiến thức và phạm vi của Model
. Các Tool
được hỗ trợ là Function
và codeExecution
. Hãy tham khảo hướng dẫn về Lệnh gọi hàm và Thực thi mã để tìm hiểu thêm.
toolConfig
object (ToolConfig
)
Không bắt buộc. Cấu hình công cụ cho mọi Tool
được chỉ định trong yêu cầu. Hãy tham khảo Hướng dẫn gọi hàm để xem ví dụ về cách sử dụng.
safetySettings[]
object (SafetySetting
)
Không bắt buộc. Danh sách các thực thể SafetySetting
riêng biệt để chặn nội dung không an toàn.
Thay đổi này sẽ được thực thi trên GenerateContentRequest.contents
và GenerateContentResponse.candidates
. Không được có nhiều chế độ cài đặt cho mỗi loại SafetyCategory
. API sẽ chặn mọi nội dung và phản hồi không đáp ứng ngưỡng do các chế độ cài đặt này đặt ra. Danh sách này ghi đè chế độ cài đặt mặc định cho mỗi SafetyCategory
được chỉ định trong safetySettings. Nếu không có SafetySetting
cho một SafetyCategory
nhất định được cung cấp trong danh sách, thì API sẽ sử dụng chế độ cài đặt an toàn mặc định cho danh mục đó. Các danh mục gây hại HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT được hỗ trợ. Hãy tham khảo hướng dẫn để biết thông tin chi tiết về các chế độ cài đặt an toàn hiện có. Ngoài ra, hãy tham khảo Hướng dẫn về an toàn để tìm hiểu cách tích hợp những yếu tố cần cân nhắc về an toàn vào các ứng dụng dựa trên AI.
systemInstruction
object (Content
)
Không bắt buộc. (Các) hướng dẫn hệ thống dành cho nhà phát triển. Hiện tại, chỉ có văn bản.
generationConfig
object (GenerationConfig
)
Không bắt buộc. Các tuỳ chọn cấu hình để tạo mô hình và đầu ra.
cachedContent
string
Không bắt buộc. Tên của nội dung được lưu vào bộ nhớ đệm để dùng làm ngữ cảnh phân phát nội dung dự đoán. Định dạng: cachedContents/{cachedContent}
Yêu cầu mẫu
Văn bản
Python
Node.js
Go
Vỏ
Kotlin
Swift
Dart
Java
Hình ảnh
Python
Node.js
Go
Vỏ
Kotlin
Swift
Dart
Java
Âm thanh
Python
Node.js
Vỏ
Video
Python
Node.js
Go
Vỏ
Python
Vỏ
Chat (Trò chuyện)
Python
Node.js
Go
Vỏ
Kotlin
Swift
Dart
Java
Bộ nhớ đệm
Python
Node.js
Mô hình được điều chỉnh
Python
Chế độ JSON
Python
Node.js
Go
Vỏ
Kotlin
Swift
Dart
Java
Thực thi mã
Python
Kotlin
Java
Gọi hàm
Python
Node.js
Vỏ
Kotlin
Swift
Dart
Java
Cấu hình tạo
Python
Node.js
Go
Vỏ
Kotlin
Swift
Dart
Java
Cài đặt an toàn
Python
Node.js
Go
Vỏ
Kotlin
Swift
Dart
Java
Hướng dẫn về hệ thống
Python
Node.js
Go
Vỏ
Kotlin
Swift
Dart
Java
Nội dung phản hồi
Nếu thành công, nội dung phản hồi sẽ chứa một phiên bản của GenerateContentResponse
.
Phương thức: models.streamGenerateContent
Tạo phản hồi theo luồng từ mô hình dựa trên dữ liệu đầu vào GenerateContentRequest
.
Điểm cuối
đăng https://generativelanguage.googleapis.com/v1beta/{model=models/*}:streamGenerateContentTham số đường dẫn
model
string
Bắt buộc. Tên của Model
dùng để tạo thao tác hoàn tất.
Định dạng: name=models/{model}
. Phương thức này có dạng models/{model}
.
Nội dung yêu cầu
Nội dung yêu cầu chứa dữ liệu có cấu trúc sau:
contents[]
object (Content
)
Bắt buộc. Nội dung của cuộc trò chuyện hiện tại với mô hình.
Đối với truy vấn một lượt, đây là một thực thể duy nhất. Đối với các truy vấn nhiều lượt như trò chuyện, đây là trường lặp lại chứa nhật ký trò chuyện và yêu cầu mới nhất.
tools[]
object (Tool
)
Không bắt buộc. Danh sách Tools
mà Model
có thể sử dụng để tạo phản hồi tiếp theo.
Tool
là một đoạn mã cho phép hệ thống tương tác với các hệ thống bên ngoài để thực hiện một hành động hoặc một tập hợp hành động, nằm ngoài phạm vi kiến thức và phạm vi của Model
. Các Tool
được hỗ trợ là Function
và codeExecution
. Hãy tham khảo hướng dẫn về Lệnh gọi hàm và Thực thi mã để tìm hiểu thêm.
toolConfig
object (ToolConfig
)
Không bắt buộc. Cấu hình công cụ cho mọi Tool
được chỉ định trong yêu cầu. Hãy tham khảo Hướng dẫn gọi hàm để biết ví dụ về cách sử dụng.
safetySettings[]
object (SafetySetting
)
Không bắt buộc. Danh sách các thực thể SafetySetting
riêng biệt dùng để chặn nội dung không an toàn.
Điều này sẽ được thực thi trên GenerateContentRequest.contents
và GenerateContentResponse.candidates
. Không được có nhiều chế độ cài đặt cho mỗi loại SafetyCategory
. API sẽ chặn mọi nội dung và phản hồi không đáp ứng ngưỡng do các chế độ cài đặt này đặt ra. Danh sách này ghi đè chế độ cài đặt mặc định cho mỗi SafetyCategory
được chỉ định trong safetySettings. Nếu không có SafetySetting
cho một SafetyCategory
nhất định được cung cấp trong danh sách, API sẽ sử dụng chế độ cài đặt an toàn mặc định cho danh mục đó. Các danh mục gây hại HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT được hỗ trợ. Hãy tham khảo hướng dẫn để biết thông tin chi tiết về các chế độ cài đặt an toàn hiện có. Ngoài ra, hãy tham khảo Hướng dẫn về an toàn để tìm hiểu cách tích hợp những yếu tố cần cân nhắc về an toàn vào các ứng dụng dựa trên AI.
systemInstruction
object (Content
)
Không bắt buộc. Nhà phát triển đặt (các) lệnh hệ thống. Hiện tại, chỉ có văn bản.
generationConfig
object (GenerationConfig
)
Không bắt buộc. Các tuỳ chọn cấu hình để tạo mô hình và đầu ra.
cachedContent
string
Không bắt buộc. Tên của nội dung được lưu vào bộ nhớ đệm để dùng làm ngữ cảnh phân phát nội dung dự đoán. Định dạng: cachedContents/{cachedContent}
Yêu cầu mẫu
Văn bản
Python
Node.js
Go
Vỏ
Kotlin
Swift
Dart
Java
Hình ảnh
Python
Node.js
Go
Vỏ
Kotlin
Swift
Dart
Java
Âm thanh
Python
Vỏ
Video
Python
Node.js
Go
Vỏ
Python
Vỏ
Chat (Trò chuyện)
Python
Node.js
Go
Vỏ
Kotlin
Swift
Dart
Java
Nội dung phản hồi
Nếu thành công, nội dung phản hồi sẽ chứa một luồng gồm các thực thể GenerateContentResponse
.
GenerateContentResponse
Phản hồi từ mô hình hỗ trợ nhiều câu trả lời đề xuất.
Mức phân loại an toàn và bộ lọc nội dung được báo cáo cho cả lời nhắc trong GenerateContentResponse.prompt_feedback
và cho từng đề xuất trong finishReason
và safetyRatings
. API: – Trả về tất cả hoặc không trả về ứng cử viên nào được yêu cầu – Không trả về ứng cử viên nào nếu có vấn đề với câu lệnh (kiểm tra promptFeedback
) – Báo cáo phản hồi về từng ứng cử viên trong finishReason
và safetyRatings
.
candidates[]
object (Candidate
)
Câu trả lời đề xuất của mô hình.
promptFeedback
object (PromptFeedback
)
Trả về phản hồi của câu lệnh liên quan đến bộ lọc nội dung.
usageMetadata
object (UsageMetadata
)
Chỉ có đầu ra. Siêu dữ liệu về mức sử dụng mã thông báo của các yêu cầu tạo.
Biểu diễn dưới dạng JSON |
---|
{ "candidates": [ { object ( |
PromptFeedback
Một tập hợp siêu dữ liệu phản hồi mà lời nhắc chỉ định trong GenerateContentRequest.content
.
blockReason
enum (BlockReason
)
Không bắt buộc. Nếu được đặt, lời nhắc sẽ bị chặn và không có đề xuất nào được trả về. Diễn đạt lại câu lệnh.
safetyRatings[]
object (SafetyRating
)
Điểm xếp hạng về độ an toàn của câu lệnh. Mỗi danh mục có tối đa một điểm xếp hạng.
Biểu diễn dưới dạng JSON |
---|
{ "blockReason": enum ( |
BlockReason
Chỉ định lý do chặn lời nhắc.
Enum | |
---|---|
BLOCK_REASON_UNSPECIFIED |
Giá trị mặc định. Giá trị này chưa được sử dụng. |
SAFETY |
Lời nhắc đã bị chặn vì lý do an toàn. Hãy kiểm tra safetyRatings để nắm được danh mục an toàn nào đã chặn nó. |
OTHER |
Lời nhắc đã bị chặn vì lý do không xác định. |
BLOCKLIST |
Lời nhắc bị chặn do các từ khoá có trong danh sách chặn thuật ngữ. |
PROHIBITED_CONTENT |
Lời nhắc bị chặn do có nội dung bị cấm. |
UsageMetadata
Siêu dữ liệu về mức sử dụng mã thông báo của yêu cầu tạo.
promptTokenCount
integer
Số lượng mã thông báo trong lời nhắc. Khi bạn đặt cachedContent
, đây vẫn là tổng kích thước lời nhắc hiệu quả, tức là bao gồm cả số lượng mã thông báo trong nội dung được lưu vào bộ nhớ đệm.
cachedContentTokenCount
integer
Số mã thông báo trong phần của câu lệnh được lưu vào bộ nhớ đệm (nội dung được lưu vào bộ nhớ đệm)
candidatesTokenCount
integer
Tổng số mã thông báo trên tất cả các đề xuất phản hồi đã tạo.
totalTokenCount
integer
Tổng số mã thông báo cho yêu cầu tạo (lời nhắc + đề xuất phản hồi).
Biểu diễn dưới dạng JSON |
---|
{ "promptTokenCount": integer, "cachedContentTokenCount": integer, "candidatesTokenCount": integer, "totalTokenCount": integer } |
Ứng viên
- Biểu diễn dưới dạng JSON
- FinishReason
- GroundingAttribution
- AttributionSourceId
- GroundingPassageId
- SemanticRetrieverChunk
- GroundingMetadata
- SearchEntryPoint
- GroundingChunk
- Web
- GroundingSupport
- Phân đoạn
- RetrievalMetadata
- LogprobsResult
- TopCandidates
- Ứng viên
Một đề xuất phản hồi được tạo từ mô hình.
content
object (Content
)
Chỉ có đầu ra. Nội dung được tạo được trả về từ mô hình.
finishReason
enum (FinishReason
)
Không bắt buộc. Chỉ có đầu ra. Lý do khiến mô hình ngừng tạo mã thông báo.
Nếu trống, mô hình chưa ngừng tạo mã thông báo.
safetyRatings[]
object (SafetyRating
)
Danh sách điểm xếp hạng mức độ an toàn của một đề xuất phản hồi.
Mỗi danh mục chỉ có tối đa một mức phân loại.
citationMetadata
object (CitationMetadata
)
Chỉ có đầu ra. Thông tin trích dẫn cho đề xuất do mô hình tạo.
Trường này có thể được điền thông tin đọc thuộc lòng cho bất kỳ văn bản nào có trong content
. Đây là những đoạn văn "được đọc" từ tài liệu có bản quyền trong dữ liệu huấn luyện cơ bản của LLM.
tokenCount
integer
Chỉ có đầu ra. Số lượng mã thông báo cho đề xuất này.
groundingAttributions[]
object (GroundingAttribution
)
Chỉ có đầu ra. Thông tin phân bổ cho các nguồn đóng góp vào một câu trả lời có căn cứ.
Trường này được điền sẵn cho các lệnh gọi GenerateAnswer
.
groundingMetadata
object (GroundingMetadata
)
Chỉ có đầu ra. Siêu dữ liệu cơ sở cho đề xuất.
Trường này được điền sẵn cho các lệnh gọi GenerateContent
.
avgLogprobs
number
Chỉ có đầu ra.
logprobsResult
object (LogprobsResult
)
Chỉ có đầu ra. Điểm xác suất logarit cho mã thông báo phản hồi và mã thông báo hàng đầu
index
integer
Chỉ có đầu ra. Chỉ mục của ứng viên trong danh sách các ứng viên trả lời.
Biểu diễn dưới dạng JSON |
---|
{ "content": { object ( |
FinishReason
Xác định lý do khiến mô hình ngừng tạo mã thông báo.
Enum | |
---|---|
FINISH_REASON_UNSPECIFIED |
Giá trị mặc định. Giá trị này không được sử dụng. |
STOP |
Điểm dừng tự nhiên của mô hình hoặc trình tự dừng được cung cấp. |
MAX_TOKENS |
Đã đạt đến số lượng mã thông báo tối đa như đã chỉ định trong yêu cầu. |
SAFETY |
Nội dung đề xuất phản hồi đã bị gắn cờ vì lý do an toàn. |
RECITATION |
Nội dung câu trả lời của đề xuất đã bị gắn cờ vì lý do đọc thuộc lòng. |
LANGUAGE |
Nội dung đề xuất phản hồi đã bị gắn cờ vì sử dụng ngôn ngữ không được hỗ trợ. |
OTHER |
Lý do không xác định. |
BLOCKLIST |
Quá trình tạo mã thông báo đã dừng do nội dung chứa các cụm từ bị cấm. |
PROHIBITED_CONTENT |
Quá trình tạo mã thông báo đã dừng do có thể chứa nội dung bị cấm. |
SPII |
Quá trình tạo mã thông báo đã dừng vì nội dung có thể chứa Thông tin nhạy cảm có thể nhận dạng cá nhân (SPII). |
MALFORMED_FUNCTION_CALL |
Lệnh gọi hàm do mô hình tạo không hợp lệ. |
GroundingAttribution
Thông tin ghi công cho một nguồn đã đóng góp vào câu trả lời.
sourceId
object (AttributionSourceId
)
Chỉ có đầu ra. Giá trị nhận dạng cho nguồn đóng góp vào mô hình phân bổ này.
content
object (Content
)
Nội dung nguồn cơ sở tạo nên mô hình phân bổ này.
Biểu diễn dưới dạng JSON |
---|
{ "sourceId": { object ( |
AttributionSourceId
Giá trị nhận dạng cho nguồn đóng góp vào mô hình phân bổ này.
Trường hợp hợp nhất source
.
source
chỉ có thể là một trong những trạng thái sau đây:
groundingPassage
object (GroundingPassageId
)
Giá trị nhận dạng cho một đoạn văn cùng dòng.
semanticRetrieverChunk
object (SemanticRetrieverChunk
)
Giá trị nhận dạng cho Chunk
được tìm nạp qua Trình truy xuất dữ liệu theo ngữ nghĩa.
Biểu diễn dưới dạng JSON |
---|
{ // Union field |
GroundingPassageId
Giá trị nhận dạng cho một phần trong GroundingPassage
.
passageId
string
Chỉ có đầu ra. Mã nhận dạng của đoạn văn khớp với GroundingPassage.id
của GenerateAnswerRequest
.
partIndex
integer
Chỉ có đầu ra. Chỉ mục của phần trong GroundingPassage.content
của GenerateAnswerRequest
.
Biểu diễn dưới dạng JSON |
---|
{ "passageId": string, "partIndex": integer } |
SemanticRetrieverChunk
Giá trị nhận dạng cho Chunk
được truy xuất thông qua Trình truy xuất ngữ nghĩa được chỉ định trong GenerateAnswerRequest
bằng SemanticRetrieverConfig
.
source
string
Chỉ có đầu ra. Tên của nguồn khớp với SemanticRetrieverConfig.source
của yêu cầu. Ví dụ: corpora/123
hoặc corpora/123/documents/abc
chunk
string
Chỉ có đầu ra. Tên của Chunk
chứa văn bản được ghi nguồn. Ví dụ: corpora/123/documents/abc/chunks/xyz
Biểu diễn dưới dạng JSON |
---|
{ "source": string, "chunk": string } |
GroundingMetadata
Siêu dữ liệu được trả về máy khách khi tính năng nối đất được bật.
groundingChunks[]
object (GroundingChunk
)
Danh sách các tệp tham chiếu hỗ trợ được truy xuất từ nguồn nối đất đã chỉ định.
groundingSupports[]
object (GroundingSupport
)
Danh sách các dịch vụ hỗ trợ nối đất.
webSearchQueries[]
string
Các cụm từ tìm kiếm trên web cho nội dung tìm kiếm tiếp theo trên web.
searchEntryPoint
object (SearchEntryPoint
)
Không bắt buộc. Mục nhập tìm kiếm trên Google cho các tìm kiếm trên web tiếp theo.
retrievalMetadata
object (RetrievalMetadata
)
Siêu dữ liệu liên quan đến việc truy xuất trong luồng tiếp đất.
Biểu diễn dưới dạng JSON |
---|
{ "groundingChunks": [ { object ( |
SearchEntryPoint
Điểm truy cập Google Tìm kiếm.
renderedContent
string
Không bắt buộc. Đoạn mã nội dung web có thể được nhúng vào một trang web hoặc một thành phần hiển thị web trong ứng dụng.
sdkBlob
string (bytes format)
Không bắt buộc. JSON được mã hoá Base64 đại diện cho mảng của cặp <cụm từ tìm kiếm, url tìm kiếm>.
Chuỗi được mã hoá base64.
Biểu diễn dưới dạng JSON |
---|
{ "renderedContent": string, "sdkBlob": string } |
GroundingChunk
Phần kết nối đất.
chunk_type
. Loại phân đoạn. chunk_type
chỉ có thể là một trong những giá trị sau:
web
object (Web
)
Đoạn kết nối với đất từ web.
Biểu diễn dưới dạng JSON |
---|
{ // Union field |
Web
Đoạn từ web.
uri
string
Tham chiếu URI của đoạn.
title
string
Tiêu đề của đoạn.
Biểu diễn dưới dạng JSON |
---|
{ "uri": string, "title": string } |
GroundingSupport
Hỗ trợ nối đất.
groundingChunkIndices[]
integer
Danh sách các chỉ mục (vào "grounding_chunk") chỉ định các trích dẫn liên quan đến thông báo xác nhận quyền sở hữu. Ví dụ: [1,3,4] có nghĩa là grounding_chunk[1], grounding_chunk[3], grounding_chunk[4] là nội dung được truy xuất được phân bổ cho thông báo xác nhận quyền sở hữu.
confidenceScores[]
number
Điểm tin cậy của các tài liệu tham khảo hỗ trợ. Phạm vi từ 0 đến 1. 1 là mức độ tự tin nhất. Danh sách này phải có cùng kích thước với groundingChunkIndices.
segment
object (Segment
)
Phần nội dung mà yêu cầu hỗ trợ này thuộc về.
Biểu diễn dưới dạng JSON |
---|
{
"groundingChunkIndices": [
integer
],
"confidenceScores": [
number
],
"segment": {
object ( |
Phân đoạn
Phân đoạn nội dung.
partIndex
integer
Chỉ có đầu ra. Chỉ mục của đối tượng Phần trong đối tượng Nội dung mẹ.
startIndex
integer
Chỉ có đầu ra. Chỉ mục bắt đầu trong Phần đã cho, được đo bằng byte. Độ lệch từ đầu Phần, bao gồm cả độ lệch bắt đầu từ 0.
endIndex
integer
Chỉ có đầu ra. Chỉ mục kết thúc trong Phần đã cho, được đo bằng byte. Bù trừ từ đầu Phần, không bao gồm, bắt đầu từ 0.
text
string
Chỉ có đầu ra. Văn bản tương ứng với đoạn trong câu trả lời.
Biểu diễn dưới dạng JSON |
---|
{ "partIndex": integer, "startIndex": integer, "endIndex": integer, "text": string } |
RetrievalMetadata
Siêu dữ liệu liên quan đến việc truy xuất trong luồng tiếp đất.
googleSearchDynamicRetrievalScore
number
Không bắt buộc. Điểm cho biết khả năng thông tin từ Google Tìm kiếm có thể giúp trả lời câu lệnh. Điểm số nằm trong khoảng [0, 1], trong đó 0 là ít có khả năng nhất và 1 là có khả năng nhất. Điểm số này chỉ được điền khi bạn bật tính năng liên kết với Google Tìm kiếm và truy xuất động. Giá trị này sẽ được so sánh với ngưỡng để xác định xem có kích hoạt Google Tìm kiếm hay không.
Biểu diễn dưới dạng JSON |
---|
{ "googleSearchDynamicRetrievalScore": number } |
LogprobsResult
Kết quả Logprobs
topCandidates[]
object (TopCandidates
)
Độ dài = tổng số bước giải mã.
chosenCandidates[]
object (Candidate
)
Độ dài = tổng số bước giải mã. Các đề xuất được chọn có thể có hoặc không có trong topCandidates.
Biểu diễn dưới dạng JSON |
---|
{ "topCandidates": [ { object ( |
TopCandidates
Các ứng viên có xác suất nhật ký cao nhất ở mỗi bước giải mã.
candidates[]
object (Candidate
)
Sắp xếp theo xác suất nhật ký theo thứ tự giảm dần.
Biểu diễn dưới dạng JSON |
---|
{
"candidates": [
{
object ( |
Ứng viên
Ứng viên cho mã thông báo xác suất nhật ký và điểm số.
token
string
Giá trị chuỗi mã thông báo của đề xuất.
tokenId
integer
Giá trị mã nhận dạng mã thông báo của đề xuất.
logProbability
number
Xác suất lôgarit của đề xuất.
Biểu diễn dưới dạng JSON |
---|
{ "token": string, "tokenId": integer, "logProbability": number } |
CitationMetadata
Tập hợp thông tin ghi nhận nguồn cho một nội dung.
citationSources[]
object (CitationSource
)
Câu trích dẫn đến các nguồn cho một câu trả lời cụ thể.
Biểu diễn dưới dạng JSON |
---|
{
"citationSources": [
{
object ( |
CitationSource
Nội dung trích dẫn nguồn cho một phần của một câu trả lời cụ thể.
startIndex
integer
Không bắt buộc. Điểm bắt đầu của phân đoạn phản hồi được phân bổ cho nguồn này.
Chỉ mục cho biết điểm bắt đầu của phân đoạn, được đo bằng byte.
endIndex
integer
Không bắt buộc. Kết thúc phân đoạn được phân bổ, không bao gồm giá trị đầu và giá trị cuối.
uri
string
Không bắt buộc. URI được phân bổ làm nguồn cho một phần văn bản.
license
string
Không bắt buộc. Giấy phép cho dự án GitHub được phân bổ dưới dạng nguồn cho phân khúc.
Bạn phải cung cấp thông tin giấy phép để trích dẫn mã.
Biểu diễn dưới dạng JSON |
---|
{ "startIndex": integer, "endIndex": integer, "uri": string, "license": string } |
GenerationConfig
Các tuỳ chọn cấu hình để tạo và xuất mô hình. Không phải thông số nào cũng có thể định cấu hình cho mọi mô hình.
stopSequences[]
string
Không bắt buộc. Tập hợp các trình tự ký tự (tối đa 5) sẽ dừng quá trình tạo đầu ra. Nếu được chỉ định, API sẽ dừng tại lần xuất hiện đầu tiên của stop_sequence
. Trình tự dừng sẽ không được đưa vào phản hồi.
responseMimeType
string
Không bắt buộc. Loại MIME của văn bản đề xuất được tạo. Các loại MIME được hỗ trợ là: text/plain
: (mặc định) Đầu ra văn bản. application/json
: Phản hồi JSON trong các đề xuất phản hồi. text/x.enum
: ENUM dưới dạng phản hồi chuỗi trong các đề xuất phản hồi. Hãy tham khảo tài liệu để biết danh sách tất cả các loại MIME văn bản được hỗ trợ.
responseSchema
object (Schema
)
Không bắt buộc. Lược đồ đầu ra của văn bản đề xuất được tạo. Giản đồ phải là một tập hợp con của giản đồ OpenAPI và có thể là đối tượng, đối tượng gốc hoặc mảng.
Nếu được đặt, bạn cũng phải đặt responseMimeType
tương thích. Các loại MIME tương thích: application/json
: Giản đồ cho phản hồi JSON. Tham khảo hướng dẫn tạo văn bản JSON để biết thêm thông tin chi tiết.
candidateCount
integer
Không bắt buộc. Số lượng câu trả lời đã tạo cần trả về.
Hiện tại, bạn chỉ có thể đặt giá trị này thành 1. Nếu bạn không đặt giá trị, giá trị mặc định sẽ là 1.
maxOutputTokens
integer
Không bắt buộc. Số lượng mã thông báo tối đa để đưa vào một đề xuất phản hồi.
Lưu ý: Giá trị mặc định sẽ khác nhau tuỳ theo mô hình. Hãy xem thuộc tính Model.output_token_limit
của Model
được trả về từ hàm getModel
.
temperature
number
Không bắt buộc. Kiểm soát tính ngẫu nhiên của kết quả.
Lưu ý: Giá trị mặc định thay đổi tuỳ theo mẫu, hãy xem thuộc tính Model.temperature
của Model
được trả về từ hàm getModel
.
Giá trị có thể nằm trong khoảng từ [0,0, 2,0].
topP
number
Không bắt buộc. Xác suất tích luỹ tối đa của mã thông báo cần xem xét khi lấy mẫu.
Mô hình này sử dụng phương pháp lấy mẫu Top-k và Top-p (hạt nhân) kết hợp.
Mã thông báo được sắp xếp dựa trên xác suất được chỉ định để chỉ những mã thông báo có nhiều khả năng nhất mới được xem xét. Phương pháp lấy mẫu Top-k trực tiếp giới hạn số lượng mã thông báo tối đa cần xem xét, trong khi phương pháp lấy mẫu Nucleus giới hạn số lượng mã thông báo dựa trên xác suất tích luỹ.
Lưu ý: Giá trị mặc định thay đổi theo Model
và được chỉ định bởi thuộc tính Model.top_p
được trả về từ hàm getModel
. Thuộc tính topK
trống cho biết mô hình không áp dụng phương pháp lấy mẫu hàng đầu và không cho phép đặt topK
trên các yêu cầu.
topK
integer
Không bắt buộc. Số lượng mã thông báo tối đa cần xem xét khi lấy mẫu.
Mô hình Gemini sử dụng phương pháp lấy mẫu Top-p (nhân) hoặc kết hợp giữa phương pháp lấy mẫu Top-k và hạt nhân. Tính năng lấy mẫu Top-k xem xét tập hợp các mã thông báo topK
có nhiều khả năng nhất. Các mô hình chạy bằng tính năng lấy mẫu hạt nhân không cho phép cài đặt topK.
Lưu ý: Giá trị mặc định thay đổi theo Model
và được chỉ định bằng thuộc tính Model.top_p
trả về từ hàm getModel
. Thuộc tính topK
trống cho biết rằng mô hình không áp dụng tính năng lấy mẫu top-k và không cho phép đặt topK
trên các yêu cầu.
presencePenalty
number
Không bắt buộc. Hình phạt về sự hiện diện được áp dụng cho logprobs của mã thông báo tiếp theo nếu mã thông báo đó đã xuất hiện trong phản hồi.
Hình phạt này được bật/tắt ở chế độ nhị phân và không phụ thuộc vào số lần mã thông báo được sử dụng (sau lần đầu tiên). Sử dụng frequencyPenalty
để áp dụng mức phạt tăng dần theo mỗi lần sử dụng.
Một hình phạt tích cực sẽ không khuyến khích việc dùng những mã thông báo đã được dùng trong câu trả lời, qua đó giúp tăng vốn từ.
Hình phạt tiêu cực sẽ khuyến khích việc dùng những mã thông báo đã được dùng trong câu trả lời, từ đó làm giảm số lượng từ vựng.
frequencyPenalty
number
Không bắt buộc. Hình phạt tần suất được áp dụng cho logprobs của mã thông báo tiếp theo, nhân với số lần mỗi mã thông báo đã xuất hiện trong phản hồi cho đến thời điểm hiện tại.
Một hình phạt tích cực sẽ ngăn cản việc sử dụng mã thông báo đã được dùng, tỷ lệ với số lần mã thông báo đã được sử dụng: Mã thông báo được dùng càng nhiều thì càng hữu ích để mô hình sử dụng lại mã thông báo đó, từ đó tăng vốn từ vựng của phản hồi.
Lưu ý: Hình phạt âm sẽ khuyến khích mô hình sử dụng lại mã thông báo theo tỷ lệ với số lần sử dụng mã thông báo. Các giá trị âm nhỏ sẽ làm giảm vốn từ vựng của câu trả lời. Giá trị âm lớn hơn sẽ khiến mô hình bắt đầu lặp lại một mã thông báo phổ biến cho đến khi đạt đến giới hạn maxOutputTokens
: "...the the the the the...".
responseLogprobs
boolean
Không bắt buộc. Nếu đúng, hãy xuất kết quả logprobs trong phản hồi.
logprobs
integer
Không bắt buộc. Chỉ hợp lệ nếu responseLogprobs=True
. Thao tác này sẽ đặt số lượng logprob hàng đầu để trả về ở mỗi bước giải mã trong Candidate.logprobs_result
.
Biểu diễn dưới dạng JSON |
---|
{
"stopSequences": [
string
],
"responseMimeType": string,
"responseSchema": {
object ( |
HarmCategory
Danh mục của điểm xếp hạng.
Các danh mục này bao gồm nhiều loại tác hại mà nhà phát triển có thể muốn điều chỉnh.
Enum | |
---|---|
HARM_CATEGORY_UNSPECIFIED |
Danh mục chưa được chỉ định. |
HARM_CATEGORY_DEROGATORY |
PaLM – Bình luận tiêu cực hoặc gây hại nhắm đến danh tính và/hoặc thuộc tính được bảo vệ. |
HARM_CATEGORY_TOXICITY |
PaLM – Nội dung thô lỗ, thiếu tôn trọng hoặc tục tĩu. |
HARM_CATEGORY_VIOLENCE |
PaLM – Mô tả các tình huống mô tả hành vi bạo lực đối với một cá nhân hoặc nhóm người, hoặc nội dung mô tả chung về cảnh đẫm máu. |
HARM_CATEGORY_SEXUAL |
PaLM – Có đề cập đến hành vi tình dục hoặc nội dung dâm ô khác. |
HARM_CATEGORY_MEDICAL |
PaLM – Quảng bá nội dung tư vấn y tế không kiểm tra. |
HARM_CATEGORY_DANGEROUS |
PaLM – Nội dung nguy hiểm cổ xuý, tạo điều kiện hoặc khuyến khích việc thực hiện hành động gây hại. |
HARM_CATEGORY_HARASSMENT |
Gemini – Nội dung quấy rối. |
HARM_CATEGORY_HATE_SPEECH |
Gemini – Nội dung và lời nói hận thù. |
HARM_CATEGORY_SEXUALLY_EXPLICIT |
Gemini – Nội dung khiêu dâm. |
HARM_CATEGORY_DANGEROUS_CONTENT |
Gemini – Nội dung nguy hiểm. |
HARM_CATEGORY_CIVIC_INTEGRITY |
Gemini – Nội dung có thể được dùng để gây hại cho tính liêm chính của công dân. |
SafetyRating
Mức phân loại an toàn cho một nội dung.
Mức phân loại an toàn cho biết nội dung có mức độ an toàn theo danh mục nguy hại và khả năng gây hại thuộc danh mục đó. Nội dung được phân loại theo một số danh mục gây hại về mặt an toàn, trong đó có xác suất phân loại nội dung theo danh mục gây hại.
category
enum (HarmCategory
)
Bắt buộc. Danh mục của điểm xếp hạng này.
probability
enum (HarmProbability
)
Bắt buộc. Khả năng gây hại của nội dung này.
blocked
boolean
Nội dung này có bị chặn do mức phân loại này không?
Biểu diễn dưới dạng JSON |
---|
{ "category": enum ( |
HarmProbability
Xác suất một nội dung là nội dung gây hại.
Hệ thống phân loại đưa ra xác suất nội dung không an toàn. Điều này không cho biết mức độ nghiêm trọng của nội dung.
Enum | |
---|---|
HARM_PROBABILITY_UNSPECIFIED |
Xác suất chưa được xác định. |
NEGLIGIBLE |
Nội dung có khả năng không an toàn rất thấp. |
LOW |
Nội dung có ít khả năng không an toàn. |
MEDIUM |
Nội dung có nguy cơ không an toàn ở mức trung bình. |
HIGH |
Nội dung có nhiều nguy cơ không an toàn. |
SafetySetting
Chế độ cài đặt an toàn, ảnh hưởng đến hành vi chặn vì lý do an toàn.
Việc truyền chế độ cài đặt an toàn cho một danh mục sẽ thay đổi xác suất được phép chặn nội dung.
category
enum (HarmCategory
)
Bắt buộc. Danh mục cho chế độ cài đặt này.
threshold
enum (HarmBlockThreshold
)
Bắt buộc. Kiểm soát ngưỡng xác suất mà nội dung gây hại sẽ bị chặn.
Biểu diễn dưới dạng JSON |
---|
{ "category": enum ( |
HarmBlockThreshold
Chặn khi có khả năng gây hại đạt đến một mức nhất định.
Enum | |
---|---|
HARM_BLOCK_THRESHOLD_UNSPECIFIED |
Chưa chỉ định ngưỡng. |
BLOCK_LOW_AND_ABOVE |
Nội dung có NEGLIGIBLE sẽ được chấp nhận. |
BLOCK_MEDIUM_AND_ABOVE |
Nội dung có mức độ NEGLIGIBLE (Không đáng kể) và LOW (Thấp) sẽ được chấp nhận. |
BLOCK_ONLY_HIGH |
Nội dung có mức độ NEGLIGIBLE (Không đáng kể), LOW (Thấp) và MEDIUM (Trung bình) sẽ được chấp nhận. |
BLOCK_NONE |
Tất cả nội dung đều được phép. |
OFF |
Tắt bộ lọc an toàn. |