Class GenerativeModel (1.73.0)

GenerativeModel(
    model_name: str,
    *,
    generation_config: typing.Optional[
        typing.Union[
            vertexai.generative_models._generative_models.GenerationConfig,
            typing.Dict[str, typing.Any],
        ]
    ] = None,
    safety_settings: typing.Optional[
        typing.Union[
            typing.List[vertexai.generative_models._generative_models.SafetySetting],
            typing.Dict[
                google.cloud.aiplatform_v1beta1.types.content.HarmCategory,
                google.cloud.aiplatform_v1beta1.types.content.SafetySetting.HarmBlockThreshold,
            ],
        ]
    ] = None,
    tools: typing.Optional[
        typing.List[vertexai.generative_models._generative_models.Tool]
    ] = None,
    tool_config: typing.Optional[
        vertexai.generative_models._generative_models.ToolConfig
    ] = None,
    system_instruction: typing.Optional[
        typing.Union[
            str,
            vertexai.generative_models._generative_models.Image,
            vertexai.generative_models._generative_models.Part,
            typing.List[
                typing.Union[
                    str,
                    vertexai.generative_models._generative_models.Image,
                    vertexai.generative_models._generative_models.Part,
                ]
            ],
        ]
    ] = None,
    labels: typing.Optional[typing.Dict[str, str]] = None
)

Initializes GenerativeModel.

Usage:

model = GenerativeModel("gemini-pro")
print(model.generate_content("Hello"))
```

Methods

compute_tokens

compute_tokens(
    contents: typing.Union[
        typing.List[vertexai.generative_models._generative_models.Content],
        typing.List[typing.Dict[str, typing.Any]],
        str,
        vertexai.generative_models._generative_models.Image,
        vertexai.generative_models._generative_models.Part,
        typing.List[
            typing.Union[
                str,
                vertexai.generative_models._generative_models.Image,
                vertexai.generative_models._generative_models.Part,
            ]
        ],
    ]
) -> google.cloud.aiplatform_v1beta1.types.llm_utility_service.ComputeTokensResponse

Computes tokens.

Returns
Type Description
A ComputeTokensResponse object that has the following attributes tokens_info: Lists of tokens_info from the input. The input contents: ContentsType could have multiple string instances and each tokens_info item represents each string instance. Each token info consists tokens list, token_ids list and a role.

compute_tokens_async

compute_tokens_async(
    contents: typing.Union[
        typing.List[vertexai.generative_models._generative_models.Content],
        typing.List[typing.Dict[str, typing.Any]],
        str,
        vertexai.generative_models._generative_models.Image,
        vertexai.generative_models._generative_models.Part,
        typing.List[
            typing.Union[
                str,
                vertexai.generative_models._generative_models.Image,
                vertexai.generative_models._generative_models.Part,
            ]
        ],
    ]
) -> google.cloud.aiplatform_v1beta1.types.llm_utility_service.ComputeTokensResponse

Computes tokens asynchronously.

Returns
Type Description
And awaitable for a ComputeTokensResponse object that has the following attributes tokens_info: Lists of tokens_info from the input. The input contents: ContentsType could have multiple string instances and each tokens_info item represents each string instance. Each token info consists tokens list, token_ids list and a role.

count_tokens

count_tokens(
    contents: typing.Union[
        typing.List[vertexai.generative_models._generative_models.Content],
        typing.List[typing.Dict[str, typing.Any]],
        str,
        vertexai.generative_models._generative_models.Image,
        vertexai.generative_models._generative_models.Part,
        typing.List[
            typing.Union[
                str,
                vertexai.generative_models._generative_models.Image,
                vertexai.generative_models._generative_models.Part,
            ]
        ],
    ],
    *,
    tools: typing.Optional[
        typing.List[vertexai.generative_models._generative_models.Tool]
    ] = None
) -> google.cloud.aiplatform_v1beta1.types.prediction_service.CountTokensResponse

Counts tokens.

Returns
Type Description
A CountTokensResponse object that has the following attributes total_tokens: The total number of tokens counted across all instances from the request. total_billable_characters: The total number of billable characters counted across all instances from the request.

count_tokens_async

count_tokens_async(
    contents: typing.Union[
        typing.List[vertexai.generative_models._generative_models.Content],
        typing.List[typing.Dict[str, typing.Any]],
        str,
        vertexai.generative_models._generative_models.Image,
        vertexai.generative_models._generative_models.Part,
        typing.List[
            typing.Union[
                str,
                vertexai.generative_models._generative_models.Image,
                vertexai.generative_models._generative_models.Part,
            ]
        ],
    ],
    *,
    tools: typing.Optional[
        typing.List[vertexai.generative_models._generative_models.Tool]
    ] = None
) -> google.cloud.aiplatform_v1beta1.types.prediction_service.CountTokensResponse

Counts tokens asynchronously.

Returns
Type Description
And awaitable for a CountTokensResponse object that has the following attributes total_tokens: The total number of tokens counted across all instances from the request. total_billable_characters: The total number of billable characters counted across all instances from the request.

from_cached_content

from_cached_content(
    cached_content: typing.Union[str, caching.CachedContent],
    *,
    generation_config: typing.Optional[
        typing.Union[GenerationConfig, typing.Dict[str, typing.Any]]
    ] = None,
    safety_settings: typing.Optional[
        typing.Union[
            typing.List[SafetySetting],
            typing.Dict[
                google.cloud.aiplatform_v1beta1.types.content.HarmCategory,
                google.cloud.aiplatform_v1beta1.types.content.SafetySetting.HarmBlockThreshold,
            ],
        ]
    ] = None
) -> _GenerativeModel

Creates a model from cached content.

Creates a model instance with an existing cached content. The cached content becomes the prefix of the requesting contents.

generate_content

generate_content(
    contents: typing.Union[
        typing.List[vertexai.generative_models._generative_models.Content],
        typing.List[typing.Dict[str, typing.Any]],
        str,
        vertexai.generative_models._generative_models.Image,
        vertexai.generative_models._generative_models.Part,
        typing.List[
            typing.Union[
                str,
                vertexai.generative_models._generative_models.Image,
                vertexai.generative_models._generative_models.Part,
            ]
        ],
    ],
    *,
    generation_config: typing.Optional[
        typing.Union[
            vertexai.generative_models._generative_models.GenerationConfig,
            typing.Dict[str, typing.Any],
        ]
    ] = None,
    safety_settings: typing.Optional[
        typing.Union[
            typing.List[vertexai.generative_models._generative_models.SafetySetting],
            typing.Dict[
                google.cloud.aiplatform_v1beta1.types.content.HarmCategory,
                google.cloud.aiplatform_v1beta1.types.content.SafetySetting.HarmBlockThreshold,
            ],
        ]
    ] = None,
    tools: typing.Optional[
        typing.List[vertexai.generative_models._generative_models.Tool]
    ] = None,
    tool_config: typing.Optional[
        vertexai.generative_models._generative_models.ToolConfig
    ] = None,
    labels: typing.Optional[typing.Dict[str, str]] = None,
    stream: bool = False
) -> typing.Union[
    vertexai.generative_models._generative_models.GenerationResponse,
    typing.Iterable[vertexai.generative_models._generative_models.GenerationResponse],
]

Generates content.

generate_content_async

generate_content_async(
    contents: typing.Union[
        typing.List[vertexai.generative_models._generative_models.Content],
        typing.List[typing.Dict[str, typing.Any]],
        str,
        vertexai.generative_models._generative_models.Image,
        vertexai.generative_models._generative_models.Part,
        typing.List[
            typing.Union[
                str,
                vertexai.generative_models._generative_models.Image,
                vertexai.generative_models._generative_models.Part,
            ]
        ],
    ],
    *,
    generation_config: typing.Optional[
        typing.Union[
            vertexai.generative_models._generative_models.GenerationConfig,
            typing.Dict[str, typing.Any],
        ]
    ] = None,
    safety_settings: typing.Optional[
        typing.Union[
            typing.List[vertexai.generative_models._generative_models.SafetySetting],
            typing.Dict[
                google.cloud.aiplatform_v1beta1.types.content.HarmCategory,
                google.cloud.aiplatform_v1beta1.types.content.SafetySetting.HarmBlockThreshold,
            ],
        ]
    ] = None,
    tools: typing.Optional[
        typing.List[vertexai.generative_models._generative_models.Tool]
    ] = None,
    tool_config: typing.Optional[
        vertexai.generative_models._generative_models.ToolConfig
    ] = None,
    labels: typing.Optional[typing.Dict[str, str]] = None,
    stream: bool = False
) -> typing.Union[
    vertexai.generative_models._generative_models.GenerationResponse,
    typing.AsyncIterable[
        vertexai.generative_models._generative_models.GenerationResponse
    ],
]

Generates content asynchronously.

start_chat

start_chat(
    *,
    history: typing.Optional[
        typing.List[vertexai.generative_models._generative_models.Content]
    ] = None,
    response_validation: bool = True,
    responder: typing.Optional[
        vertexai.generative_models._generative_models.AutomaticFunctionCallingResponder
    ] = None
) -> vertexai.generative_models._generative_models.ChatSession

Creates a stateful chat session.