A Vertex AI oferece ferramentas para ajudar a gerenciar modelos e dados de comandos. Os modelos de comandos podem ser versionados e usados em conjunto com modelos generativos na Vertex AI. Cada comando pode ser montado e versionado no Vertex AI Studio ou no SDK da Vertex AI.
O SDK da Vertex AI inclui o módulo vertexai.preview.prompts
para que
os comandos funcionem com modelos generativos. O módulo vertexai.preview.prompts
permite definir, salvar e gerenciar comandos para gerar texto
com o Gemini.
Prompt
A classe Prompt representa uma solicitação que pode ser usada para gerar texto com um método do Gemini, que encapsula os dados, as variáveis, a configuração de geração e outras informações relevantes.
Para criar um objeto Prompt
, use o construtor vertexai.preview.prompts.Prompt()
.
É possível definir os dados de solicitação, as variáveis e outras configurações nesse objeto.
Criar um comando local e gerar conteúdo
SDK da Vertex AI para Python
Python
project
: . Esses IDs estão na página de boas-vindas do console Google Cloud .location
: consulte locais da Vertex AI.prompt_name
: o nome de exibição do comando criado pelo usuário, se armazenado em um recurso on-line.prompt_data
: um comandoPartsType
, que pode ser um modelo com variáveis ou um comando sem variáveis.variables
: uma lista de dicionários que contêm os nomes e valores das variáveis.generation_config
: um objetoGenerationConfig
que contém parâmetros para geração.model_name
: nome do recurso do modelo do Model Garden. Como alternativa, um nome de recurso de endpoint de modelo ajustado pode ser fornecido. Se nenhum modelo for fornecido, será usado o modelo padrão mais recente.safety_settings
: um objetoSafetySetting
que contém configurações de segurança para geração.system_instruction
: um objetoPartsType
que representa a instrução do sistema.
Depois da criação de um objeto Prompt
, os dados e as propriedades do comando que representam várias configurações podem ser usados para gerar conteúdo.
Os comandos também são compatíveis com a chamada de função. Consulte Introdução à chamada de função para saber mais.
Salvar um comando
Para salvar um comando em um recurso on-line, que pode ser acessado no
consoleGoogle Cloud , use o método
vertexai.preview.prompts.create_version()
. Esse método usa um objeto Prompt
como entrada e cria uma nova versão da solicitação na loja on-line.
Um novo objeto Prompt
associado ao recurso on-line é retornado.
Todas as atualizações feitas em um objeto Prompt
são locais até que create_version()
seja chamado. O exemplo de código a seguir mostra como salvar um comando:
SDK da Vertex AI para Python
from vertexai.preview import prompts # Save Prompt to online resource. # Returns a new Prompt object associated with the online resource. prompt1 = prompts.create_version(prompt=prompt)
Carregar um comando salvo
Para carregar um comando salvo no recurso on-line, use o método
vertexai.preview.prompts.get()
. Esse método usa o ID da solicitação como entrada e retorna o objeto Prompt
correspondente. Este exemplo de código mostra como carregar um comando salvo:
SDK da Vertex AI para Python
from vertexai.preview import prompts
# Get prompt
prompt = prompts.get(prompt_id="123456789")
Recuperar o comando criado no console Google Cloud
Para atualizar um comando salvo, primeiro carregue-o usando o
método get()
,
modifique as propriedades conforme necessário e salve o comando atualizado usando o
método create_version()
. Isso cria uma nova versão do comando com as informações atualizadas.
SDK da Vertex AI para Python
from vertexai.preview import prompts
from vertexai.preview.prompts import Prompt
# Get prompt
prompt = prompts.get(prompt_id="123456789")
# Generate content using the assembled prompt (a prompt without variables)
prompt.generate_content(
contents=prompt.assemble_contents()
)
# Update prompt (changes are local until create_version is called)
prompt.prompt_data = "new prompt"
# Save Prompt to online resource. Since the prompt is associated with a prompt resource, it creates a new version under the same prompt_id. Returns a new Prompt object associated with the online resource
prompt1 = prompts.create_version(prompt=prompt)
Listar comandos
Para conferir os nomes de exibição e IDs de solicitação de todos os comandos salvos noGoogle Cloud projeto atual, use o método list_prompts()
.
SDK da Vertex AI para Python
from vertexai.preview import prompts
prompts_metadata = prompts.list()
# Get a prompt from the list
prompt1 = prompts.get(prompt_id=prompts_metadata[0].prompt_id)
Listar versões de comandos
Para conferir os nomes de exibição e IDs de versão de todas as versões de solicitação salvas na
solicitação, use o método list_versions()
.
SDK da Vertex AI para Python
from vertexai.preview import prompts
prompt_versions_metadata = prompts.list_versions(prompt_id="123456789")
# Get a specific prompt version from the versions metadata list
prompt1 = prompts.get(
prompt_id=prompt_versions_metadata[3].prompt_id,
version_id=prompt_versions_metadata[3].version_id
)
Restaurar uma versão de comando
Um recurso de solicitação também contém um histórico de versões que armazena versões salvas
anteriores da solicitação. Você pode usar o
método restore_version()
para restaurar uma versão mais antiga como a mais recente do comando. Isso retorna PromptVersionMetadata, que pode ser usado com uma chamada get()
para buscar a versão recém-restaurada.
SDK da Vertex AI para Python
from vertexai.preview import prompts
# Restore to prompt version id 1 (original)
prompt_version_metadata = prompts.restore_version(prompt_id="123456789", version_id="1")
# Fetch the newly restored latest version of the prompt
prompt1 = prompts.get(prompt_id=prompt_version_metadata.prompt_id)
Excluir um comando
Para excluir o recurso on-line associado a um ID de solicitação, use o
método delete()
.
SDK da Vertex AI para Python
from vertexai.preview import prompts
prompts.delete(prompt_id="123456789")