google.ai.generativelanguage.TextServiceClient

API for using Generative Language Models (GLMs) trained to generate text.

Also known as Large Language Models (LLM)s, these generate text given an input prompt from the user.

credentials Optional[google.auth.credentials.Credentials]

The authorization credentials to attach to requests. These credentials identify the application to the service; if none are specified, the client will attempt to ascertain the credentials from the environment.

transport Union[str, TextServiceTransport]

The transport to use. If set to None, a transport is chosen automatically.

client_options Optional[Union[google.api_core.client_options.ClientOptions, dict]]

Custom options for the client. It won't take effect if a transport instance is provided. (1) The api_endpoint property can be used to override the default endpoint provided by the client. GOOGLE_API_USE_MTLS_ENDPOINT environment variable can also be used to override the endpoint: "always" (always use the default mTLS endpoint), "never" (always use the default regular endpoint) and "auto" (auto switch to the default mTLS endpoint if client certificate is present, this is the default value). However, the api_endpoint property takes precedence if provided. (2) If GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is "true", then the client_cert_source property can be used to provide client certificate for mutual TLS transport. If not provided, the default SSL client certificate will be used if present. If GOOGLE_API_USE_CLIENT_CERTIFICATE is "false" or not set, no client certificate will be used.

client_info google.api_core.gapic_v1.client_info.ClientInfo

The client info used to send a user-agent string along with API requests. If None, then default info will be used. Generally, you only need to set this if you're developing your own client library.

google.auth.exceptions.MutualTLSChannelError If mutual TLS transport creation failed for any reason.

transport Returns the transport used by the client instance.

Methods

batch_embed_text

View source

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 Model to use for generating the embedding. Examples: models/embedding-gecko-001

This corresponds to the model field on the request instance; if request is provided, this should not be set.

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 texts field on the request instance; if request is provided, this should not be set.

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

View source

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 prompt sent to a model.

Models may tokenize text differently, so each model may return a different token_count.

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 ListModels method.

Format: models/{model}

This corresponds to the model field on the request instance; if request is provided, this should not be set.

prompt google.ai.generativelanguage.TextPrompt

Required. The free-form input text given to the model as a prompt.

This corresponds to the prompt field on the request instance; if request is provided, this should not be set.

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

View source

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 model field on the request instance; if request is provided, this should not be set.

text str

Optional. The free-form input text that the model will turn into an embedding.

This corresponds to the text field on the request instance; if request is provided, this should not be set.

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

View source

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

View source

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

View source

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

View source

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 Model or TunedModel to use for generating the completion. Examples: models/text-bison-001 tunedModels/sentence-translator-u3b7m

This corresponds to the model field on the request instance; if request is provided, this should not be set.

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 prompt field on the request instance; if request is provided, this should not be set.

temperature float

Optional. Controls the randomness of the output. Note: The default value varies by model, see the Model.temperature attribute of the Model returned the getModel function.

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 temperature field on the request instance; if request is provided, this should not be set.

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 candidate_count field on the request instance; if request is provided, this should not be set.

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 Model specification.

This corresponds to the max_output_tokens field on the request instance; if request is provided, this should not be set.

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_p field on the request instance; if request is provided, this should not be set.

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 top_k most probable tokens. Defaults to 40.

This corresponds to the top_k field on the request instance; if request is provided, this should not be set.

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

View source

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 api_endpoint and client_cert_source properties may be used in this method.

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__

View source

__exit__

View source

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!

DEFAULT_ENDPOINT 'generativelanguage.googleapis.com'
DEFAULT_MTLS_ENDPOINT 'generativelanguage.mtls.googleapis.com'