View a markdown version of this page

Otimização seletiva - Amazon Bedrock

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Otimização seletiva

Por padrão, o Advanced Prompt Optimization reescreve qualquer parte de todo o seu modelo de prompt de ponta a ponta. Com a otimização seletiva, você controla exatamente quais seções do seu prompt o otimizador pode modificar. Use a otimização seletiva quando sua solicitação for grande ou complexa e algumas seções já estiverem bem ajustadas. Isso permite que você melhore somente as partes que ainda precisam ser trabalhadas.

Sintaxe da tag

Anote seu modelo de prompt com XML-style tags reservadas usando o namespace advpo: (Advanced Prompt Optimization) para controlar o escopo da otimização:

  • <advpo:optimize>...</advpo:optimize>— Marca uma seção como a área de foco para otimização. O otimizador reescreve o conteúdo dentro dessas tags.

  • <advpo:exclude>...</advpo:exclude>— Marca uma seção como congelada. O otimizador não modifica o conteúdo dentro dessas tags sob nenhuma circunstância.

O prefixo do advpo: namespace evita conflitos com solicitações que já usam XML-like marcação para outras finalidades.

Como o otimizador determina o que reescrever

O comportamento do otimizador depende de quais tags estão presentes no seu modelo de prompt.

Etiquetas presentes

Comportamento

Modo

Sem tags

Todo o prompt é otimizado de ponta a ponta (o mesmo que o comportamento atual)

Modo legado

Pelo menos um <advpo:optimize>

O otimizador reescreve somente o conteúdo dentro <advpo:optimize> dos blocos. Todo o conteúdo não marcado é preservado.

Modo de inclusão explícita

Somente <advpo:exclude> tags (não<advpo:optimize>)

O otimizador reescreve tudo o que não está dentro dos blocos <advpo:exclude>

Exclusion-only modo

Ambos os tipos de tag estão presentes

O modo de inclusão explícita se aplica. O otimizador reescreve somente <advpo:optimize> o conteúdo. O otimizador aceita <advpo:exclude> tags, mas as trata como redundantes.

Modo de inclusão explícita

dica

Você não precisa dos dois tipos de tag. Se você envolver suas áreas de foco<advpo:optimize>, todo o resto será preservado automaticamente. Você não precisa adicionar <advpo:exclude> tags ao conteúdo que deseja manter. Use <advpo:exclude> somente quando você não tiver <advpo:optimize> etiquetas. Ele congela seções específicas enquanto otimiza todo o resto.

Exemplos

Os exemplos a seguir mostram como usar <advpo:optimize> <advpo:exclude> tags para controlar quais seções do seu modelo de prompt o otimizador reescreve.

exemplo Usando advpo:optimize para focar em uma seção

Neste exemplo, somente as instruções de resposta à reclamação são otimizadas. O otimizador preserva a declaração de identidade e a restrição da política exatamente como estão escritas.

You are a helpful customer service agent for Acme Corp. Always be polite and professional. <advpo:optimize>When responding to a complaint, acknowledge the customer's frustration, summarize the issue, and propose exactly one concrete resolution. Use bullet points for clarity.</advpo:optimize> Never disclose internal pricing or employee information.
exemplo Usando advpo:exclude para congelar seções específicas

Neste exemplo, a declaração de identidade e a restrição de política estão congeladas. Todo o resto (as instruções de resposta à reclamação) é otimizado.

<advpo:exclude>You are a helpful customer service agent for Acme Corp. Always be polite and professional.</advpo:exclude> When responding to a complaint, acknowledge the customer's frustration, summarize the issue, and propose exactly one concrete resolution. Use bullet points for clarity. <advpo:exclude>Never disclose internal pricing or employee information.</advpo:exclude>
exemplo Vários blocos de otimização

Você pode marcar várias seções não contíguas para otimização. O otimizador pode reescrever qualquer um deles ou todos eles.

You are a technical support assistant for CloudWidget. <advpo:optimize>When diagnosing an issue, ask clarifying questions about the customer's environment before suggesting solutions.</advpo:optimize> Always check the knowledge base before escalating. <advpo:optimize>When providing a solution, include step-by-step instructions with numbered steps. End with a verification step the customer can perform.</advpo:optimize> Never share internal ticket IDs with customers.
exemplo Bloco de otimização vazio para geração de conteúdo

Um <advpo:optimize> bloco vazio diz ao otimizador que gere e insira um novo conteúdo de prompt nesse local.

You are a helpful assistant that summarizes documents. {{document}} <advpo:optimize></advpo:optimize> Respond in plain English. Keep your summary under 200 words.

Interação com variáveis de espaço reservado

As regras a seguir descrevem como as variáveis de espaço reservado interagem com as tags de otimização seletiva.

  • Variáveis internas<advpo:exclude>: o tempo de execução ainda substitui as variáveis, como {{variableName}} no tempo de execução. A exclusão se aplica ao texto do modelo em torno deles — “não reescreva esse texto modelo” não significa “não substitua variáveis”.

  • Variáveis internas<advpo:optimize>: os espaços reservados variáveis são preservados como espaços reservados. O otimizador reescreve as instruções ao redor, mas mantém as {{variableName}} referências intactas.

  • Tags dentro de valores variáveis em tempo de execução: o otimizador ignora essas tags. A análise de tags ocorre somente no modelo, antes da substituição da variável. Isso evita a injeção de diretivas de otimização por meio de valores de entrada fornecidos pelo usuário.

Regras de validação

As configurações a seguir causam um erro de validação.

Configuração inválida

Erro

Resolução

Tags aninhadas (por exemplo<advpo:exclude>, <advpo:optimize> internas ou vice-versa)

ValidationException

Remova o aninhamento. Use somente um tipo de tag em qualquer local em seu modelo.

Tags malformadas ou não fechadas (por exemplo, <advpo:optimize> sem tag de fechamento)

ValidationException

Certifique-se de que cada etiqueta de abertura tenha uma etiqueta de fechamento correspondente.

Tags com erros ortográficos no advpo: namespace (por exemplo,) <advpo:optmize>

ValidationException

Verifique a ortografia de optimize e. exclude A Otimização Avançada de Prompt valida as tags de abertura e fechamento.

Comportamento de saída

Na solicitação otimizada retornada no final do trabalho, o otimizador remove todas <advpo:optimize> as <advpo:exclude> etiquetas. Você recebe um aviso limpo sem nenhuma marcação de otimização. O conteúdo dentro dos <advpo:exclude> blocos (e o conteúdo não marcado no modo de inclusão explícita) parece inalterado. O conteúdo dentro dos <advpo:optimize> blocos contém a versão reescrita do otimizador.

Comportamentos adicionais

A tabela a seguir descreve como o otimizador lida com cenários adicionais.

Cenário

Comportamento

Vários <advpo:optimize> blocos

Todos são elegíveis para otimização. O otimizador pode reescrever qualquer um deles ou todos eles.

Vários <advpo:exclude> blocos

Todo o conteúdo dentro de todas as <advpo:exclude> tags está congelado.

<advpo:optimize>Bloco vazio

Válido. O otimizador gera e insere novos conteúdos nesse local.

Whitespace-only <advpo:optimize>bloquear

Tratada da mesma forma que um bloco vazio.

<advpo:exclude>Bloco vazio

Ignorado (sem operação). Não há conteúdo para congelar.

Tags dividem uma frase no meio da palavra ou no meio da frase

Permitido. O otimizador opera no conteúdo marcado como uma unidade. O otimizador pode emitir um aviso.

Práticas recomendadas

Siga essas melhores práticas ao usar a otimização seletiva.

  • Comece com <advpo:optimize> tags. O modo de inclusão explícita é o mais intuitivo: você marca o que deseja melhorar e todo o resto permanece o mesmo.

  • Mantenha os blocos de otimização independentes. Coloque instruções completas ou seções lógicas dentro de cada bloco. A divisão no meio da frase é permitida, mas pode produzir resultados embaraçosos.

  • Use a otimização seletiva quando seu prompt já estiver parcialmente ajustado. Se você já ajustou suas restrições de segurança ou instruções de formato de saída, congele-as para que o otimizador se concentre nas seções que ainda precisam ser trabalhadas.

  • Combine com padrões de várias voltas. Em um prompt monolítico multifásico (consulteOtimizando solicitações em vários turnos e em etapas), use <advpo:optimize> para direcionar somente as instruções de fase que precisam ser aprimoradas, mantendo o padrão de tratamento de conversas congelado.