A Vertex AI oferece ferramentas para ajudar a gerir modelos de comandos e dados de comandos. Os modelos de comandos podem ter versões e ser usados em conjunto com modelos generativos no Vertex AI. Cada comando pode ser montado e ter versões no Vertex AI Studio ou no SDK Vertex AI.
O SDK do Vertex AI inclui o módulo vertexai.preview.prompts
para que os comandos possam funcionar com modelos generativos. O módulo vertexai.preview.prompts
suporta a capacidade de definir, guardar e gerir comandos para gerar texto com o Gemini.
Prompt
A classe de comando representa um comando que pode ser usado para gerar texto com um método Gemini, que encapsula os dados do comando, 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()
.
Pode definir os dados dos comandos, as variáveis e outras configurações neste objeto.
Crie um comando local e gere conteúdo
SDK Vertex AI para Python
Python
project
: . Pode encontrar estes IDs na página de Google Cloud boas-vindas da consola.location
: consulte as localizações do Vertex AI.prompt_name
: o nome a apresentar do comando criado pelo utilizador, se armazenado num recurso online.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 os valores das variáveis.generation_config
: um objetoGenerationConfig
que contém parâmetros para a geração.model_name
: nome do recurso do modelo do Model Garden. Em alternativa, pode ser fornecido um nome de recurso do ponto final do modelo otimizado. Se não for fornecido nenhum modelo, é usado o modelo mais recente predefinido.safety_settings
: um objetoSafetySetting
que contém definições de segurança para a geração.system_instruction
: um objetoPartsType
que representa a instrução do sistema.
Após a criação de um objeto Prompt
, os dados e as propriedades dos comandos
que representam várias configurações podem ser usados para gerar conteúdo.
Os comandos também suportam a chamada de funções. Consulte o artigo Introdução à chamada de funções para saber mais.
Guarde um comando
Para guardar um comando num recurso online, que pode ser acedido na
Google Cloud consola, use o método
vertexai.preview.prompts.create_version()
. Este método recebe um objeto Prompt
como entrada e cria uma nova versão do comando na loja online.
É devolvido um novo objeto Prompt
associado ao recurso online.
Todas as atualizações feitas a um objeto Prompt
são locais até que create_version()
seja chamado. O seguinte exemplo de código mostra como guardar um comando:
SDK 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)
Carregue um comando guardado
Para carregar um comando que foi guardado no recurso online, use o método vertexai.preview.prompts.get()
. Este método usa o ID do comando como entrada e devolve o objeto Prompt
correspondente. Este exemplo de código mostra como carregar um comando guardado:
SDK Vertex AI para Python
from vertexai.preview import prompts
# Get prompt
prompt = prompts.get(prompt_id="123456789")
Recupere o comando criado na Google Cloud consola
Para atualizar um comando guardado, primeiro carregue o comando através do
método get()
,
modifique as respetivas propriedades conforme necessário e, de seguida, guarde o comando atualizado através do
método create_version()
. Esta ação cria uma nova versão do comando com as informações atualizadas.
SDK 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)
Comandos de lista
Para ver os nomes a apresentar e os IDs de comandos de todos os comandos guardados noGoogle Cloud projeto atual, use o list_prompts()
método.
SDK 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)
Indique as versões de comandos
Para ver os nomes a apresentar e os IDs das versões de todos os comandos guardados no comando, use o método list_versions()
.
SDK 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
)
Restaure uma versão de comando
Um recurso de comando também contém um histórico de versões que armazena as versões guardadas anteriormente do comando. Pode usar o
método restore_version()
para restaurar uma versão mais antiga como a versão mais recente do comando. Isto devolve PromptVersionMetadata que pode ser usado com uma chamada get()
para obter a versão recentemente restaurada.
SDK 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)
Elimine um comando
Para eliminar o recurso online associado a um ID de comando, use o método delete()
.
SDK Vertex AI para Python
from vertexai.preview import prompts
prompts.delete(prompt_id="123456789")