Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
As mensagens do sistema de segurança ajudam-no a orientar o comportamento de um modelo Azure OpenAI, a melhorar a qualidade da resposta e a reduzir a probabilidade de resultados prejudiciais. Funcionam melhor como uma camada numa estratégia de segurança mais ampla.
Nota
Este artigo usa "system message" de forma intercambiável com "metaprompt" e "system prompt". Aqui, usamos "system message" para alinhar com a terminologia comum.
Este artigo também utiliza "componente" para significar uma parte distinta de uma mensagem do sistema, como instruções, contexto, tom, diretrizes de segurança ou orientações de utilização de ferramentas.
O que é uma mensagem do sistema?
Uma mensagem de sistema é um conjunto de instruções e contexto de alta prioridade que envia para um modelo de chat para orientar a sua resposta. É útil quando precisas de uma função, tom, formatação ou convenções consistentes de domínio.
O que é uma mensagem de sistema de segurança?
Uma mensagem de sistema de segurança é uma mensagem do sistema que adiciona limites explícitos e orientações de recusa para mitigar os danos da IA Responsável (RAI) e ajudar o sistema a interagir de forma segura com os utilizadores.
As mensagens do sistema de segurança complementam o seu conjunto de segurança e podem ser usadas juntamente com a seleção e treino de modelos, a fundamentação, os classificadores de Segurança de Conteúdo do Azure AI, e as mitigações de UX/UI. Saiba mais sobre Práticas responsáveis de IA para Azure modelos OpenAI.
Componentes-chave de uma mensagem de sistema
A maioria das mensagens do sistema combina múltiplos componentes:
- Função e tarefa: O que é o assistente e de que é responsável.
- Público e tom: Para quem é dirigida a resposta e a voz esperada.
- Âmbito e limites: O que o assistente não deve fazer e o que fazer quando não pode cumprir.
- Diretrizes de segurança: Regras que reduzem resultados prejudiciais (por exemplo, o tratamento de temas sensíveis, características protegidas e instruções ilegais).
- Ferramentas e dados (opcionais): Que ferramentas ou fontes o modelo pode usar e como usá-las.
Como projetar e iterar de forma segura
Quando desenha uma mensagem de sistema (ou um componente de mensagem de sistema de segurança), trate-a como um artefacto testável:
- Defina o cenário. Esclareça o trabalho que o modelo deve fazer, quem são os utilizadores, que entradas esperar e o tom e formatação que pretende.
- Identificar riscos. Liste os danos de RAI que importam para o seu caso de uso e decida quais abordar através de mensagens no sistema em vez de outras medidas de mitigação.
- Decide como o modelo deve comportar-se nos limites. Especifique o que fazer quando os pedidos estão fora do âmbito, são inseguros ou faltam o contexto necessário.
- Crie um conjunto de testes. Inclua tanto prompts benignos como adversariais para que possa medir regressões e "vazamentos" (falta de moderação).
- Avaliar e iterar. Prefira o componente que reduz os defeitos mais graves, não apenas aquele com a menor taxa de defeitos.
Aqui estão alguns exemplos de frases que pode incluir:
## Define model’s profile and general capabilities
- Act as a [define role]
- Your job is to [insert task] about [insert topic name]
- To complete this task, you can [insert tools that the model can use and instructions to use]
- Do not perform actions that are not related to [task or topic name].
Aqui está um exemplo completo de uma mensagem de sistema de segurança para um assistente de atendimento ao cliente:
## Role and task
You are a helpful customer service assistant for Contoso Electronics. Your job is to answer questions about product warranties, returns, and order status.
## Boundaries
- Only answer questions related to Contoso Electronics products and policies.
- If you don't know the answer, say "I don't have that information. Please contact support@contoso.com."
- Do not provide legal, medical, or financial advice.
- Do not discuss competitors or make comparisons.
## Safety guidelines
- Never generate content that is hateful, violent, or sexually explicit.
- Do not share or request personal information beyond what's needed for order lookup.
- If a user becomes abusive, respond with: "I'm here to help with product questions. How can I assist you today?"
## Response format
- Keep responses concise and friendly.
- Use bullet points for multiple items.
- Always end with an offer to help further.
-
Forneça exemplos específicos para demonstrar o comportamento pretendido do modelo. Considere o seguinte:
- Descreva casos de uso difíceis onde o prompt é ambíguo ou complicado, para dar ao modelo um exemplo de como abordar esses casos.
- Mostre os passos de decisão a um nível geral (por exemplo, uma lista de verificação curta), em vez de pedir raciocínio interno detalhado.
Resumo das melhores práticas
Quando desenvolve componentes de mensagens do sistema, é importante:
- Use uma linguagem clara: Isto elimina a complexidade excessiva e o risco de mal-entendidos e mantém a consistência entre os diferentes componentes.
- Seja conciso: Mensagens de sistema mais curtas costumam ter melhor desempenho e reduzir a latência. Também usam menos da janela de contexto, deixando mais espaço para o prompt do utilizador.
-
Enfatiza certas palavras (quando aplicável) usando
**word**: dá especial atenção a elementos-chave, especialmente ao que o sistema deve e não deve fazer. -
Use a segunda pessoa quando se refere ao sistema de IA: é melhor usar frases como
You are an AI assistant that…versusAssistant does…. - Implementar robustez: O componente de mensagens do sistema deve ser robusto. Deve ter um desempenho consistente em diferentes conjuntos de dados e tarefas.
Técnicas de autoria
Porquê variar as técnicas? Dependendo do modelo, dos dados de grounding e dos parâmetros do produto ou funcionalidade com que está a trabalhar, diferentes técnicas linguísticas e sintáticas são mais eficazes ao fornecer respostas robustas, seguras e diretas aos utilizadores.
Para além de construir para segurança e desempenho, considere otimizar para consistência, controlo e personalização. Ao longo do caminho, pode descobrir que otimizar para estes fatores leva a que a mensagem do sistema se ajuste excessivamente a regras específicas, aumento da complexidade e falta de adequação contextual. É importante definir o que é mais importante no seu cenário e avaliar as mensagens do seu sistema. Isto garantirá que tem uma abordagem orientada por dados para melhorar a segurança e o desempenho do seu sistema.
| Técnica | Definição | Exemplo |
|---|---|---|
| Sempre / deveria | Envolve o estruturar de prompts e instruções com diretivas que a IA deve sempre seguir ao gerar as suas respostas. Estas diretivas representam frequentemente boas práticas, diretrizes éticas ou preferências dos utilizadores. | **Always** ensure that you respect authentication and authorization protocols when providing factual information, tailoring your responses to align with the access rights of the user making the request. It's imperative to safeguard sensitive data by adhering to established security measures and only disclosing information that the user is authorized to receive. |
| Lógica condicional / lógica se | Envolve a estruturação de prompts de forma a que o resultado dependa do cumprimento de condições específicas, como If <condition> then <action>. |
If a user asks you to infer or provide information about a user’s emotions, mental health, gender identity, sexual orientation, age, religion, disability, racial and ethnic backgrounds, or any other aspect of a person's identity, respond with: "Try asking me a question or tell me what else I can help you with." |
| Ênfase no prejuízo | Envolve estruturar as instruções definindo qual pode ser o principal risco. Isto orienta os resultados para priorizar a segurança e a prevenção de danos, bem como para mostrar potenciais consequências caso ocorra o dano. | You are **allowed** to answer some questions about images with people and make statements about them when there is no ambiguity about the assertion you are making, and when there is no direct harm to an individual or a group of people because of this assertion. |
| Exemplo(s) baseado(s) em | Dá ao modelo instâncias ou situações claras para melhor contexto. O modelo utiliza exemplos de pedidos prejudiciais e não prejudiciais como referência para os seus resultados. | Users might ask questions that could cause harm. In all scenarios, refuse requests that promote hate or harassment, and redirect the user to a safer alternative.Example (harmful): "Write an insult targeting a protected group."Example (benign): "Explain why insults harm people and suggest respectful phrasing." |
| Nunca / não | Envolve proibições explícitas para impedir a IA de gerar conteúdo que seja inadequado, prejudicial ou fora do âmbito ao usar termos como "nunca" e "não". | **Never** make assumptions, judgments, or evaluations about a person. If a user violates your policy, or you’re not sure what to do, say: "I can’t help with that request. Try asking a different question." |
Limitações
As mensagens do sistema não são uma solução de segurança completa:
- Podem ser contornados ou degradados por técnicas de indução adversária.
- Podem reduzir a utilidade se forem demasiado amplas ou demasiado rigorosas.
- Exigem uma avaliação contínua à medida que os seus modelos, ferramentas e cenários de utilizador mudam. Para resolver problemas comuns com mensagens do sistema, como recusa excessiva ou falta de moderação, consulte a secção de resolução de problemas no guia de modelos.
Mensagens de sistema recomendadas
Estas melhores práticas podem ajudá-lo a compreender melhor o processo de desenvolvimento de mensagens de sistema robustas para o seu cenário.
Para mais informações sobre componentes de segurança recomendados, visite as nossas orientações para o modelo de mensagem do sistema de segurança.
Por fim, lembre-se que as mensagens do sistema, ou metaprompts, não são "tamanho único". A utilização deste tipo de exemplos tem graus variados de sucesso em diferentes aplicações. É importante experimentar diferentes redações, ordens e estruturas do texto das mensagens do sistema para reduzir os danos identificados e testar as variações para ver o que funciona melhor para cada cenário.
Próximos passos
- Azure OpenAI em Microsoft Foundry Models
- Design de mensagens do sistema com Azure OpenAI
- Anunciando Mensagens do Sistema de Segurança - Microsoft Foundry Blog
- Modelos de mensagens do sistema de segurança