countTokens method
Counts the total number of tokens in contents.
Sends a "countTokens" API request for the configured model, and waits for the response.
Example:
final promptContent = [Content.text(prompt)];
final totalTokens =
(await model.countTokens(promptContent)).totalTokens;
if (totalTokens > maxPromptSize) {
print('Prompt is too long!');
} else {
final response = await model.generateContent(promptContent);
print(response.text);
}
Implementation
Future<CountTokensResponse> countTokens(
Iterable<Content> contents,
) async {
final parameters = _serializationStrategy.countTokensRequest(
contents,
model,
_safetySettings,
_generationConfig,
tools,
_toolConfig,
);
return makeRequest(Task.countTokens, parameters,
_serializationStrategy.parseCountTokensResponse);
}