TextGenerationModel(model_id: str, endpoint_name: typing.Optional[str] = None)
Crea un LanguageModel.
Questo costruttore non deve essere chiamato direttamente.
Usa invece il criterio LanguageModel.from_pretrained(model_name=...)
.
Parametri |
|
---|---|
Nome | Description |
model_id |
str
Identificatore di un LLM Vertex. Esempio: "text-bison@001" |
endpoint_name |
typing.Optional[str]
Nome della risorsa Vertex Endpoint per il modello |
Metodi
batch_predict
batch_predict(
*,
dataset: typing.Union[str, typing.List[str]],
destination_uri_prefix: str,
model_parameters: typing.Optional[typing.Dict] = None
) -> google.cloud.aiplatform.jobs.BatchPredictionJob
Avvia un job di previsione batch con il modello.
Eccezioni | |
---|---|
Tipo | Description |
ValueError |
Quando l'URI di origine o di destinazione non è supportato. |
from_pretrained
from_pretrained(model_name: str) -> vertexai._model_garden._model_garden_models.T
Carica un oggetto _ModelGardenModel.
Parametro | |
---|---|
Nome | Description |
model_name |
str
Nome del modello. |
Eccezioni | |
---|---|
Tipo | Description |
ValueError |
Se model_name è sconosciuto. |
ValueError |
Se il modello non supporta questa classe. |
get_tuned_model
get_tuned_model(
tuned_model_name: str,
) -> vertexai.language_models._language_models._LanguageModel
Carica il modello linguistico ottimizzato specificato.
list_tuned_model_names
list_tuned_model_names() -> typing.Sequence[str]
Elenca i nomi dei modelli ottimizzati.
predict
predict(
prompt: str,
*,
max_output_tokens: typing.Optional[int] = 128,
temperature: typing.Optional[float] = None,
top_k: typing.Optional[int] = None,
top_p: typing.Optional[float] = None,
stop_sequences: typing.Optional[typing.List[str]] = None,
candidate_count: typing.Optional[int] = None,
grounding_source: typing.Optional[
typing.Union[
vertexai.language_models._language_models.WebSearch,
vertexai.language_models._language_models.VertexAISearch,
vertexai.language_models._language_models.InlineContext,
]
] = None,
logprobs: typing.Optional[int] = None,
presence_penalty: typing.Optional[float] = None,
frequency_penalty: typing.Optional[float] = None,
logit_bias: typing.Optional[typing.Dict[int, float]] = None
) -> vertexai.language_models.MultiCandidateTextGenerationResponse
Recupera la risposta del modello per un singolo prompt.
Parametro | |
---|---|
Nome | Description |
prompt |
str
Domanda da porre al modello. |
predict_async
predict_async(
prompt: str,
*,
max_output_tokens: typing.Optional[int] = 128,
temperature: typing.Optional[float] = None,
top_k: typing.Optional[int] = None,
top_p: typing.Optional[float] = None,
stop_sequences: typing.Optional[typing.List[str]] = None,
candidate_count: typing.Optional[int] = None,
grounding_source: typing.Optional[
typing.Union[
vertexai.language_models._language_models.WebSearch,
vertexai.language_models._language_models.VertexAISearch,
vertexai.language_models._language_models.InlineContext,
]
] = None,
logprobs: typing.Optional[int] = None,
presence_penalty: typing.Optional[float] = None,
frequency_penalty: typing.Optional[float] = None,
logit_bias: typing.Optional[typing.Dict[int, float]] = None
) -> vertexai.language_models.MultiCandidateTextGenerationResponse
Recupera in modo asincrono la risposta del modello per un singolo prompt.
Parametro | |
---|---|
Nome | Description |
prompt |
str
Domanda da porre al modello. |
predict_streaming
predict_streaming(
prompt: str,
*,
max_output_tokens: int = 128,
temperature: typing.Optional[float] = None,
top_k: typing.Optional[int] = None,
top_p: typing.Optional[float] = None,
stop_sequences: typing.Optional[typing.List[str]] = None,
logprobs: typing.Optional[int] = None,
presence_penalty: typing.Optional[float] = None,
frequency_penalty: typing.Optional[float] = None,
logit_bias: typing.Optional[typing.Dict[int, float]] = None
) -> typing.Iterator[vertexai.language_models.TextGenerationResponse]
Recupera una risposta di un modello di flusso di dati per un singolo prompt.
Il risultato è un flusso (generatore) di risposte parziali.
Parametro | |
---|---|
Nome | Description |
prompt |
str
Domanda da porre al modello. |
predict_streaming_async
predict_streaming_async(
prompt: str,
*,
max_output_tokens: int = 128,
temperature: typing.Optional[float] = None,
top_k: typing.Optional[int] = None,
top_p: typing.Optional[float] = None,
stop_sequences: typing.Optional[typing.List[str]] = None,
logprobs: typing.Optional[int] = None,
presence_penalty: typing.Optional[float] = None,
frequency_penalty: typing.Optional[float] = None,
logit_bias: typing.Optional[typing.Dict[int, float]] = None
) -> typing.AsyncIterator[vertexai.language_models.TextGenerationResponse]
Riceve in modo asincrono una risposta del modello in modalità flusso per un singolo prompt.
Il risultato è un flusso (generatore) di risposte parziali.
Parametro | |
---|---|
Nome | Description |
prompt |
str
Domanda da porre al modello. |
tune_model
tune_model(
training_data: typing.Union[str, pandas.core.frame.DataFrame],
*,
train_steps: typing.Optional[int] = None,
learning_rate_multiplier: typing.Optional[float] = None,
tuning_job_location: typing.Optional[str] = None,
tuned_model_location: typing.Optional[str] = None,
model_display_name: typing.Optional[str] = None,
tuning_evaluation_spec: typing.Optional[
vertexai.language_models.TuningEvaluationSpec
] = None,
accelerator_type: typing.Optional[typing.Literal["TPU", "GPU"]] = None,
max_context_length: typing.Optional[str] = None
) -> vertexai.language_models._language_models._LanguageModelTuningJob
Ottimizza un modello in base ai dati di addestramento.
Questo metodo avvia e restituisce un job di ottimizzazione del modello asincrono. Utilizzo:
tuning_job = model.tune_model(...)
... do some other work
tuned_model = tuning_job.get_tuned_model() # Blocks until tuning is complete
Parametro | |
---|---|
Nome | Description |
training_data |
typing.Union[str, pandas.core.frame.DataFrame]
Un DataFrame Pandas o un URI che rimanda ai dati in formato righe JSON. Lo schema del set di dati è specifico del modello. Vedi https://cloud.google.com/vertex-ai/docs/generative-ai/models/tune-models#dataset_format |
Eccezioni | |
---|---|
Tipo | Description |
ValueError |
Se il valore "tune_job_location" non è supportato |
ValueError |
Se il valore "tuned_model_location" non è supportato |
RuntimeError |
Se il modello non supporta l'ottimizzazione |
tune_model_rlhf
tune_model_rlhf(
*,
prompt_data: typing.Union[str, pandas.core.frame.DataFrame],
preference_data: typing.Union[str, pandas.core.frame.DataFrame],
model_display_name: typing.Optional[str] = None,
prompt_sequence_length: typing.Optional[int] = None,
target_sequence_length: typing.Optional[int] = None,
reward_model_learning_rate_multiplier: typing.Optional[float] = None,
reinforcement_learning_rate_multiplier: typing.Optional[float] = None,
reward_model_train_steps: typing.Optional[int] = None,
reinforcement_learning_train_steps: typing.Optional[int] = None,
kl_coeff: typing.Optional[float] = None,
default_context: typing.Optional[str] = None,
tuning_job_location: typing.Optional[str] = None,
accelerator_type: typing.Optional[typing.Literal["TPU", "GPU"]] = None,
tuning_evaluation_spec: typing.Optional[
vertexai.language_models.TuningEvaluationSpec
] = None
) -> vertexai.language_models._language_models._LanguageModelTuningJob
Ottimizza un modello utilizzando l'apprendimento per rinforzo con feedback umano.
Questo metodo avvia e restituisce un job di ottimizzazione del modello asincrono. Utilizzo:
tuning_job = model.tune_model_rlhf(...)
... do some other work
tuned_model = tuning_job.get_tuned_model() # Blocks until tuning is complete
Eccezioni | |
---|---|
Tipo | Description |
ValueError |
Se il valore "tune_job_location" non è supportato |
RuntimeError |
Se il modello non supporta l'ottimizzazione |