View source on GitHub |
API for using Generative Language Models (GLMs) trained to generate text.
google.ai.generativelanguage.TextServiceClient(
*,
credentials: Optional[ga_credentials.Credentials] = None,
transport: Optional[Union[str, TextServiceTransport]] = None,
client_options: Optional[Union[client_options_lib.ClientOptions, dict]] = None,
client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO
) -> None
Also known as Large Language Models (LLM)s, these generate text given an input prompt from the user.
Raises | |
---|---|
google.auth.exceptions.MutualTLSChannelError
|
If mutual TLS transport creation failed for any reason. |
Attributes | |
---|---|
transport
|
Returns the transport used by the client instance. |
Methods
batch_embed_text
batch_embed_text(
request: Optional[Union[google.ai.generativelanguage.BatchEmbedTextRequest
, dict]] = None,
*,
model: Optional[str] = None,
texts: Optional[MutableSequence[str]] = None,
retry: OptionalRetry = gapic_v1.method.DEFAULT,
timeout: Union[float, object] = gapic_v1.method.DEFAULT,
metadata: Sequence[Tuple[str, str]] = ()
) -> google.ai.generativelanguage.BatchEmbedTextResponse
Generates multiple embeddings from the model given input text in a synchronous call.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# <a href="https://googleapis.dev/python/google-api-core/latest/client_options.html">https://googleapis.dev/python/google-api-core/latest/client_options.html</a>
from google.ai import generativelanguage_v1beta
def sample_batch_embed_text():
# Create a client
client = generativelanguage_v1beta.TextServiceClient()
# Initialize request argument(s)
request = generativelanguage_v1beta.BatchEmbedTextRequest(
model="model_value",
)
# Make the request
response = client.batch_embed_text(request=request)
# Handle the response
print(response)
Args | |
---|---|
request
|
Union[google.ai.generativelanguage.BatchEmbedTextRequest, dict]
The request object. Batch request to get a text embedding from the model. |
model
|
str
Required. The name of the This corresponds to the |
texts
|
MutableSequence[str]
Optional. The free-form input texts that the model will turn into an embedding. The current limit is 100 texts, over which an error will be thrown. This corresponds to the |
retry
|
google.api_core.retry.Retry
Designation of what errors, if any, should be retried. |
timeout
|
float
The timeout for this request. |
metadata
|
Sequence[Tuple[str, str]]
Strings which should be sent along with the request as metadata. |
Returns | |
---|---|
google.ai.generativelanguage.BatchEmbedTextResponse
|
The response to a EmbedTextRequest. |
count_text_tokens
count_text_tokens(
request: Optional[Union[google.ai.generativelanguage.CountTextTokensRequest
, dict]] = None,
*,
model: Optional[str] = None,
prompt: Optional[google.ai.generativelanguage.TextPrompt
] = None,
retry: OptionalRetry = gapic_v1.method.DEFAULT,
timeout: Union[float, object] = gapic_v1.method.DEFAULT,
metadata: Sequence[Tuple[str, str]] = ()
) -> google.ai.generativelanguage.CountTextTokensResponse
Runs a model's tokenizer on a text and returns the token count.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# <a href="https://googleapis.dev/python/google-api-core/latest/client_options.html">https://googleapis.dev/python/google-api-core/latest/client_options.html</a>
from google.ai import generativelanguage_v1beta
def sample_count_text_tokens():
# Create a client
client = generativelanguage_v1beta.TextServiceClient()
# Initialize request argument(s)
prompt = generativelanguage_v1beta.TextPrompt()
prompt.text = "text_value"
request = generativelanguage_v1beta.CountTextTokensRequest(
model="model_value",
prompt=prompt,
)
# Make the request
response = client.count_text_tokens(request=request)
# Handle the response
print(response)
Args | |
---|---|
request
|
Union[google.ai.generativelanguage.CountTextTokensRequest, dict]
The request object. Counts the number of tokens in the Models may tokenize text differently, so each model may
return a different |
model
|
str
Required. The model's resource name. This serves as an ID for the Model to use. This name should match a model name returned by the
Format: This corresponds to the |
prompt
|
google.ai.generativelanguage.TextPrompt
Required. The free-form input text given to the model as a prompt. This corresponds to the |
retry
|
google.api_core.retry.Retry
Designation of what errors, if any, should be retried. |
timeout
|
float
The timeout for this request. |
metadata
|
Sequence[Tuple[str, str]]
Strings which should be sent along with the request as metadata. |
Returns | |
---|---|
google.ai.generativelanguage.CountTextTokensResponse
|
A response from CountTextTokens.
It returns the model's token_count for the prompt. |
embed_text
embed_text(
request: Optional[Union[google.ai.generativelanguage.EmbedTextRequest
, dict]] = None,
*,
model: Optional[str] = None,
text: Optional[str] = None,
retry: OptionalRetry = gapic_v1.method.DEFAULT,
timeout: Union[float, object] = gapic_v1.method.DEFAULT,
metadata: Sequence[Tuple[str, str]] = ()
) -> google.ai.generativelanguage.EmbedTextResponse
Generates an embedding from the model given an input message.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# <a href="https://googleapis.dev/python/google-api-core/latest/client_options.html">https://googleapis.dev/python/google-api-core/latest/client_options.html</a>
from google.ai import generativelanguage_v1beta
def sample_embed_text():
# Create a client
client = generativelanguage_v1beta.TextServiceClient()
# Initialize request argument(s)
request = generativelanguage_v1beta.EmbedTextRequest(
model="model_value",
)
# Make the request
response = client.embed_text(request=request)
# Handle the response
print(response)
Args | |
---|---|
request
|
Union[google.ai.generativelanguage.EmbedTextRequest, dict]
The request object. Request to get a text embedding from the model. |
model
|
str
Required. The model name to use with the format model=models/{model}. This corresponds to the |
text
|
str
Optional. The free-form input text that the model will turn into an embedding. This corresponds to the |
retry
|
google.api_core.retry.Retry
Designation of what errors, if any, should be retried. |
timeout
|
float
The timeout for this request. |
metadata
|
Sequence[Tuple[str, str]]
Strings which should be sent along with the request as metadata. |
Returns | |
---|---|
google.ai.generativelanguage.EmbedTextResponse
|
The response to a EmbedTextRequest. |
from_service_account_file
@classmethod
from_service_account_file( filename: str, *args, **kwargs )
Creates an instance of this client using the provided credentials file.
Args | |
---|---|
filename
|
str
The path to the service account private key json file. |
args
|
Additional arguments to pass to the constructor. |
kwargs
|
Additional arguments to pass to the constructor. |
Returns | |
---|---|
TextServiceClient
|
The constructed client. |
from_service_account_info
@classmethod
from_service_account_info( info: dict, *args, **kwargs )
Creates an instance of this client using the provided credentials info.
Args | |
---|---|
info
|
dict
The service account private key info. |
args
|
Additional arguments to pass to the constructor. |
kwargs
|
Additional arguments to pass to the constructor. |
Returns | |
---|---|
TextServiceClient
|
The constructed client. |
from_service_account_json
@classmethod
from_service_account_json( filename: str, *args, **kwargs )
Creates an instance of this client using the provided credentials file.
Args | |
---|---|
filename
|
str
The path to the service account private key json file. |
args
|
Additional arguments to pass to the constructor. |
kwargs
|
Additional arguments to pass to the constructor. |
Returns | |
---|---|
TextServiceClient
|
The constructed client. |
generate_text
generate_text(
request: Optional[Union[google.ai.generativelanguage.GenerateTextRequest
, dict]] = None,
*,
model: Optional[str] = None,
prompt: Optional[google.ai.generativelanguage.TextPrompt
] = None,
temperature: Optional[float] = None,
candidate_count: Optional[int] = None,
max_output_tokens: Optional[int] = None,
top_p: Optional[float] = None,
top_k: Optional[int] = None,
retry: OptionalRetry = gapic_v1.method.DEFAULT,
timeout: Union[float, object] = gapic_v1.method.DEFAULT,
metadata: Sequence[Tuple[str, str]] = ()
) -> google.ai.generativelanguage.GenerateTextResponse
Generates a response from the model given an input message.
# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in:
# <a href="https://googleapis.dev/python/google-api-core/latest/client_options.html">https://googleapis.dev/python/google-api-core/latest/client_options.html</a>
from google.ai import generativelanguage_v1beta
def sample_generate_text():
# Create a client
client = generativelanguage_v1beta.TextServiceClient()
# Initialize request argument(s)
prompt = generativelanguage_v1beta.TextPrompt()
prompt.text = "text_value"
request = generativelanguage_v1beta.GenerateTextRequest(
model="model_value",
prompt=prompt,
)
# Make the request
response = client.generate_text(request=request)
# Handle the response
print(response)
Args | |
---|---|
request
|
Union[google.ai.generativelanguage.GenerateTextRequest, dict]
The request object. Request to generate a text completion response from the model. |
model
|
str
Required. The name of the This corresponds to the |
prompt
|
google.ai.generativelanguage.TextPrompt
Required. The free-form input text given to the model as a prompt. Given a prompt, the model will generate a TextCompletion response it predicts as the completion of the input text. This corresponds to the |
temperature
|
float
Optional. Controls the randomness of the output. Note:
The default value varies by model, see the
Values can range from [0.0,1.0], inclusive. A value closer to 1.0 will produce responses that are more varied and creative, while a value closer to 0.0 will typically result in more straightforward responses from the model. This corresponds to the |
candidate_count
|
int
Optional. Number of generated responses to return. This value must be between [1, 8], inclusive. If unset, this will default to 1. This corresponds to the |
max_output_tokens
|
int
Optional. The maximum number of tokens to include in a candidate. If unset, this will default to output_token_limit
specified in the This corresponds to the |
top_p
|
float
Optional. The maximum cumulative probability of tokens to consider when sampling. The model uses combined Top-k and nucleus sampling. Tokens are sorted based on their assigned probabilities so that only the most likely tokens are considered. Top-k sampling directly limits the maximum number of tokens to consider, while Nucleus sampling limits number of tokens based on the cumulative probability. This corresponds to the |
top_k
|
int
Optional. The maximum number of tokens to consider when sampling. The model uses combined Top-k and nucleus sampling. Top-k sampling considers the set of This corresponds to the |
retry
|
google.api_core.retry.Retry
Designation of what errors, if any, should be retried. |
timeout
|
float
The timeout for this request. |
metadata
|
Sequence[Tuple[str, str]]
Strings which should be sent along with the request as metadata. |
Returns | |
---|---|
google.ai.generativelanguage.GenerateTextResponse
|
The response from the model, including candidate completions. |
get_mtls_endpoint_and_cert_source
@classmethod
get_mtls_endpoint_and_cert_source( client_options: Optional[client_options_lib.ClientOptions] = None )
Return the API endpoint and client cert source for mutual TLS.
The client cert source is determined in the following order:
(1) if GOOGLE_API_USE_CLIENT_CERTIFICATE
environment variable is not "true", the
client cert source is None.
(2) if client_options.client_cert_source
is provided, use the provided one; if the
default client cert source exists, use the default one; otherwise the client cert
source is None.
The API endpoint is determined in the following order:
(1) if client_options.api_endpoint
if provided, use the provided one.
(2) if GOOGLE_API_USE_CLIENT_CERTIFICATE
environment variable is "always", use the
default mTLS endpoint; if the environment variable is "never", use the default API
endpoint; otherwise if client cert source exists, use the default mTLS endpoint, otherwise
use the default API endpoint.
More details can be found at https://google.aip.dev/auth/4114
Args | |
---|---|
client_options
|
google.api_core.client_options.ClientOptions
Custom options for the
client. Only the |
Returns | |
---|---|
Tuple[str, Callable[[], Tuple[bytes, bytes]]]: returns the API endpoint and the client cert source to use. |
Raises | |
---|---|
google.auth.exceptions.MutualTLSChannelError
|
If any errors happen. |
__enter__
__enter__() -> 'TextServiceClient'
__exit__
__exit__(
type, value, traceback
)
Releases underlying transport's resources.
.. warning:: ONLY use as a context manager if the transport is NOT shared with other clients! Exiting the with block will CLOSE the transport and may cause errors in other clients!
Class Variables | |
---|---|
DEFAULT_ENDPOINT |
'generativelanguage.googleapis.com'
|
DEFAULT_MTLS_ENDPOINT |
'generativelanguage.mtls.googleapis.com'
|