Coach de IA: práticas recomendadas

Para otimizar as sugestões do treinador de IA, tem de fornecer as seguintes informações:

  • Um conjunto de instruções escritas
  • Uma transcrição da conversa
  • Dados da API

Em contrapartida, o formador de IA fornece instruções aplicáveis e respostas sugeridas dos agentes.

Para receber as sugestões mais úteis, use o treinador de IA nos seguintes cenários.

Vendas incrementadas e vendas cruzadas

Quando um agente do centro de contacto tem de oferecer outro produto ou serviço, o coach de IA pode fornecer as seguintes informações úteis.

  • Sugere quando iniciar as vendas e quando não tentar vender.
  • Fazer perguntas de averiguação para compreender as necessidades do cliente.
  • Recomendar um produto de uma pequena lista com base no contexto da conversa.
  • Sugira como lidar com objeções.

Retenção de clientes

Quando um agente do centro de contacto tenta convencer alguém a permanecer na respetiva empresa, o orientador de IA pode fornecer as seguintes informações úteis.

  • Sugere quando fazer ofertas de retenção.
  • Fazer perguntas de averiguação para compreender o motivo do cancelamento do cliente.
  • Recomendar ofertas de retenção com base no contexto da conversa.

Automatização de um passo com ferramentas

O coach de IA também pode automatizar os seguintes processos empresariais repetitivos com base numa conversa do serviço de apoio ao cliente.

  • Obter o estado da encomenda quando o cliente está autenticado e indicou o número da encomenda.
  • Cancelar uma encomenda quando o número da encomenda e o motivo do cancelamento estão disponíveis.
  • Configurar automatizações arriscadas para exigirem revisão e aprovação manuais.

Operações arriscadas

As operações arriscadas são processos empresariais automatizados que podem causar graves perdas financeiras, uma violação de dados ou a não conformidade regulamentar. Alguns exemplos incluem escrever bases de dados e obter informações confidenciais sem autenticação. O treinador de IA pode sugerir o momento e extrair parâmetros de uma conversa, mas as operações arriscadas requerem revisão e aprovação manuais e não devem ser totalmente automatizadas.

Instruções do personal trainer de IA

Escreva um conjunto de instruções para ensinar um coach de IA sobre as ações que um agente deve realizar e quando essas ações são necessárias ao longo de uma conversa de serviço ao cliente. As instruções podem especificar qualquer ação do agente, como pedir ao cliente o PIN da conta, verificar o estado da encomenda e informar o cliente ou enviar um pedido de cancelamento.

As instruções do coach de IA incluem as seguintes informações:

  • Título a apresentar: ajuda a gerir várias instruções. O título a apresentar não é visível para o MDG.

  • Mostrar detalhes: especifica o conteúdo estático que o modelo deve devolver quando a instrução é aplicável. Os detalhes de apresentação podem incluir um URL, um atalho para uma ferramenta ou um sistema interno, um guia de consulta rápida para os agentes ou uma chamada API de back-end. Estes detalhes só estão acessíveis aos agentes humanos. O detalhe de apresentação não é visível para o modelo.

  • Condição: especifica quando, na conversa, uma instrução é aplicável. A condição é visível para o modelo.

  • Ação do agente: especifica os passos que o agente deve seguir quando uma instrução é aplicável. A ação do agente está visível para o modelo.

  • Ação do sistema: especifica que ferramentas usar para a automatização quando uma instrução é aplicável. A ação do sistema é visível para o modelo.

A condição, a ação do agente e a ação do sistema afetam as sugestões do treinador de IA.

Condição

A condição tem de ser clara, concisa e autónoma. Pode usar uma breve descrição do problema de um cliente. Escreva a condição como se a estivesse a descrever a uma pessoa comum que não conhece o seu produto. Seguem-se alguns exemplos de condições úteis:

  • O cliente quer cancelar uma encomenda.
  • O cliente quer comprar um novo telemóvel.
  • O cliente tem uma ligação à Internet muito lenta.

Exemplo

Segue-se um exemplo de uma condição e uma ação do agente que pode usar.

  • Condição: o cliente pede para atualizar a morada de envio para uma nova morada.
  • Ação do agente: se a nova morada ainda não tiver sido facultada, pergunte ao cliente qual é a nova morada que quer usar para o envio.

Em geral, mostre apenas o texto de uma política da empresa depois de a condição relevante ser cumprida. Neste exemplo, isso significa que o coach de IA só apresenta a política de cancelamento depois de o cliente expressar que quer cancelar. No exemplo de entrada seguinte, o tópico pretendido da conversa reflete-se no título de apresentação e na condição. O conteúdo do texto apresentado ao agente é definido nos detalhes de apresentação.

A entrada para o preparador de IA:

display_title: order cancellation
display_detail: Company cancellation policy: Orders cannot be canceled more than 30 days after they have been placed. Only the cancellation team can process order cancellations.
condition: the customer wants to cancel an order
agent_action: N/A

Ação do agente

Idealmente, pode validar cada passo da ação do agente com base nas seguintes três fontes de informações:

  • Instruções: consulte os detalhes na secção anterior.
  • Transcrição da conversa: documenta o que um agente e um cliente dizem ao longo de uma conversa com o serviço de apoio ao cliente.
  • Dados carregados: consistem em dados de clientes relevantes que não se encontram diretamente na conversa, como transações recentes, faturas e promoções em curso.

Um exemplo de alguns dados carregados que o preparador de IA pode usar:

ingested_data_key: Product Recommendation
ingested_data_value:
* Microwave-safe, glass food container set, $29.99
* Gila Complete Window Film Application Kit, $19.99

Dados em falta

Se uma ação do agente exigir informações em falta noutras partes da instrução e na transcrição da conversa, a API que fornece os dados carregados também tem de fornecer as informações em falta.

  • Evite escrever qualquer ação que exija informações não encontradas nessas fontes.

  • Se não conseguir encontrar os dados correspondentes, evite:

    • Explicar a fatura ao cliente.
    • Informar o cliente sobre o respetivo saldo, data de vencimento ou estado do pedido.

Vários verbos

Embora a lista anterior de ações do agente contenha apenas um verbo, que indica uma ação que o agente deve realizar, um passo pode ter mais do que um verbo. Por exemplo, se uma empresa quiser que os respetivos agentes recomendem um produto específico e relacionem esse produto com a condição, tudo numa única resposta, pode escrever um único passo de ação do agente, como na entrada seguinte.

display_title: recommend device protection
display_detail:
 trade-in process: [list steps for trade-in]
 device protection plan: [list plan details]
condition: the customer has issues/questions about trade-in
agent_action:
Recommend the device protection plan and tell the customer it can help them get better trade-in values in the future.

Exemplo de saída de resposta

Uma ação do agente também pode usar dados carregados e especificar um modelo para a saída de resposta de exemplo. Por exemplo, se uma empresa tiver vários produtos para recomendar e quiser que os respetivos agentes façam recomendações relevantes para o contexto da conversa, a ação do agente pode pedir ao coach de IA para fazer sugestões específicas nos resultados de exemplo. Além disso, este exemplo ilustra como escrever uma ação do agente que pede ao coach de IA para gerar respostas de exemplo que seguem um modelo.

display_title: cross-selling
display_detail: see `Product Recommendations` for a relevant product
condition: the customer is inquiring about product availability
agent_action:
Summarize to the customer what product you have been discussing, then recommend a relevant product from the section titled "Product Recommendation" and provide a brief explanation of how the two products are relevant to each other. Use this template for sample responses: "Since we've been talking about ..., I'd like to recommend ... because ...".

Some examples:
- For TVs, recommend TV stands.
- For storage, recommend label writers.
- For slow cookers and microwaves, recommend food container sets.
- For air conditioners, recommend humidifiers.

Ação em vários passos

Por último, a ação do agente pode consistir em mais do que um passo. Uma ação do agente de vários passos indica como o agente deve proceder numa conversa quando uma única condição é cumprida.

Considere o seguinte exemplo de uma conversa de cancelamento de encomenda em que o agente tem de fazer uma série de perguntas antes de poder processar o cancelamento. Cada passo gera uma resposta de exemplo separada.

display_title: order cancellation
display_detail:
 cancellation policy: [list policies]
 look up `[order number]` in ordering system
 how to cancel an order [list steps]
condition: the customer wants to cancel an order
agent_action:
1. Ask the customer for the order number.
2. Ask the customer why they want to cancel the order.
3. Inform the customer you are working on the cancellation.
4. Inform the customer that you have canceled the order.
5. Inform the customer that they will receive the refund in 5-7 business days.

Tenha em atenção que um passo como cancelar a encomenda pode ser difícil de validar sem integrações adicionais. No exemplo anterior, substituímos o passo informar o cliente de que está a trabalhar no cancelamento.

Ação do sistema

Na ação do sistema, podemos fazer referência a ferramentas que já estão definidas. Esta secção numa instrução especifica que ferramentas devem ser consideradas quando a condição da instrução é cumprida. A referência a uma ferramenta deve estar neste formato: ${tool:tool_name|action_name}. Para ver detalhes sobre como configurar ferramentas, consulte a página Ferramentas OpenAPI e conectores de integração.

Seguem-se alguns exemplos de ações do sistema:

Exemplo 1: liste os nomes das ferramentas e das ações.

...
system_action:
${tool:order_management|cancel_order}, ${tool:order_management|check_order}

Exemplo 2: adicione um comportamento condicional.

...
system_action:
* if "RESPONSE TO ${TOOL:ORDER_MANAGEMENT|CANCEL_ORDER}" is already present without any error, skip ${tool:order_management|cancel_order} 
* if the order number has been provided, use ${tool:order_management|cancel_order} 
* if "RESPONSE TO ${TOOL:GETORDERDETAILS|GETORDERDETAILS}" shows errors or failures, retry ${tool: order_management | cancel_order}

Utilização de orientações gerais no treinador de IA

O preparador de IA adiciona uma secção de comando configurável denominada orientações gerais, que especifica o seguinte:

  • Glossário
  • Diretrizes de estilo, formato e tom para as sugestões de respostas de exemplo
  • Notas importantes sobre como usar e seguir as instruções

Glossário

O seguinte glossário define claramente cliente vulnerável e autenticação da conta. Com este glossário nas orientações gerais, pode usar termos nas instruções sem ter de os definir repetidamente, como nas versões anteriores do treinador de IA.

#### Vulnerable customer

A customer is considered a vulnerable customer when at least one of the following is true:

- The customer is experiencing financial hardship.
- The customer has a physical disability or chronic health condition.
- The customer is facing domestic abuse or is in an unsafe situation.

#### Account authentication

Account authentication is considered completed if the account PIN provided by the customer matches the account PIN in the data section *Account PIN*.

Diretrizes de estilo, formato e tom

Siga estas diretrizes de estilo, formato e tom nas suas respostas de exemplo:

  • Seja sempre empático, paciente e tranquilizador.
  • Evite linguagem demasiado informal ou calão. Manter um tom respeitoso, mas caloroso.
  • As respostas têm sempre de reconhecer explicitamente os sentimentos ou as preocupações do cliente (exemplo: "Compreendo a sua frustração").
  • Use frases curtas e evite linguagem complexa ou termos técnicos.
  • Nunca culpe nem contrarie o cliente. Em vez disso, encaminhe-os suavemente para as informações corretas.
  • Comece cada resposta com um reconhecimento claro da principal preocupação do cliente.

Notas sobre o seguimento de instruções

Adicione notas sobre como seguir as suas instruções. Para melhorar as sugestões automáticas, também pode usar notas para especificar o processo de raciocínio.

Exemplos

Exemplo 1: configure o comportamento do modelo

### Follow instructions
* An instruction is applicable if and only if both of the following are true:
  * The condition is met by the conversation and the contexts.
  * Some of the agent actions are not completed yet. (If all the agent actions are done, then the instruction no longer applies.)
* Notes on following the applicable instructions:
  * Do not suggest any sample responses or agent actions that are not specified in the applicable instructions.
  * Do not ask for information not specified in the instructions.
  * If an agent action step is to ask for information that the customer has already provided, then the step should be skipped.
  * **Your suggested responses should fit into the conversation flow**. For example, if the customer and the support agent has moved on to a new issue, you should stop making suggestions for the old issue.
* Each sample response (or agent action suggestion) must be concise and only carry out one step in the applicable instruction. Do not cover multiple steps within one sample response (or agent action suggestion).
* Avoid repetition:
  * Do not suggest sample responses or agent actions that the agent has already said or done earlier in the conversation.
  * Do not ask for information that is already available in the conversation or the contexts.
* For product names, when you provide parameters in system action suggestions, provide the full names, including available specs.
* If multiple instructions lead to the same or similar suggestion, give one suggestion, but with multiple sources.

Exemplo 2: ajuste as prioridades das instruções e especifique o processo de raciocínio para receber sugestões mais precisas

### Notes on how to use or follow instructions
If there are multiple instructions applicable at the same time, **suggest only one instruction as applicable based on the following priority (from highest to lowest)**:
* [Highest priority] security related

Example: Account authentication is required before anything else.

* [High priority] customer retention
* [Medium priority] issue resolution
* [Low priority] upselling or cross-selling

### Thinking process
Before you make any suggestions, answer the following questions in this output section:
* For each instruction, is it applicable? If yes, what is its priority?
* Which instruction has the highest priority?

O exemplo seguinte ilustra a mesma prioridade de instruções com exemplos do que o modelo deve sugerir em determinadas circunstâncias.

### Notes on how to use or follow instructions
If there are multiple instructions applicable at the same time, **suggest only one instruction as applicable based on the following priority (from highest to lowest)**:
* [Highest priority] security related

Examnple: Account authentication is required before anything else.

* [High priority] customer retention
* [Medium priority] issue resolution
* [Low priority] up-selling or cross-selling

#### Examples to follow
<example_1>
<instructions>
...
instruction I1
condition: the customer wants to inquire about their current plan
agent action: inform the customer of what plan they have and what features they get
...
instruction I2
condition: the authentication is not done yet
agent action: ask for the account PIN
...
</instructions>
<conversation>
customer: can you tell me what plan I have?
</conversation>
<good_suggestion>
may I have your account PIN, please?
</good_suggestion>
<bad_suggestion>
sure, let me pull up your account information.
</bad_suggestion>
<comment>
Both instructions I1 and I2 are applicable, but I1 should have the highest priority because it's security related. Therefore, asking for the account PIN is a good suggestion.
</comment>
</example_1>

Idioma de saída do assistente de IA

O preparador de IA gera sugestões no idioma de saída especificado. O modelo decide o idioma de saída das sugestões se o idioma de saída não for especificado.

Resultados do treinador de IA

O preparador de IA devolve um ou ambos os seguintes resultados:

  • Instruções aplicáveis: podem ser devolvidas várias instruções aplicáveis, e cada uma tem o respetivo título de apresentação e detalhes.

  • Respostas de exemplo: o coach de IA também gera exemplos de como um agente pode responder numa conversa. Estas respostas de exemplo baseiam-se nas instruções, nos contextos de conversa e nos dados carregados. A resposta de exemplo também pode estar vazia.

Exemplos de utilização

O coach de IA tem três exemplos de utilização principais:

  • Deteção de intenções: isto acontece quando só quer mostrar aos agentes que instruções são aplicáveis no momento e não precisa das respostas de exemplo. Pode confiar nos dados carregados (URLs, webhooks, folhas de consulta, etc.) armazenados nos detalhes de apresentação para fazer sugestões aos agentes ou acionar chamadas de API carregadas.

  • Orientação passo a passo: isto acontece quando quer mostrar aos agentes orientação passo a passo através de respostas de exemplo.

  • Recomendação de produtos: isto acontece quando quer usar o coach de IA para orientar os agentes sobre quando recomendar produtos e que produtos recomendar aos respetivos clientes. Os candidatos a recomendações de produtos podem ser gerados pelo sistema de recomendações do utilizador ou por um catálogo estático.

Melhoria da qualidade

As seguintes recomendações para escrever instruções para o treinador de IA podem ajudar a melhorar a qualidade das respostas de exemplo, mas não impedem que o treinador de IA faça sugestões inesperadas.

Formatação de texto para detalhes de apresentação

Use a sintaxe Markdown para apresentar detalhes num formato avançado (links, texto em negrito, etc.). Isto é renderizado no Google Cloud simulador de consola, mas também ajuda a implementar na interface Web.

Formatação de texto para a ação do agente

Quando o preparador de IA falha frequentemente um determinado passo ou requisito, use texto em negrito para ajudar a orientar o modelo a prestar mais atenção a um texto específico. Para criar texto em negrito com a sintaxe Markdown, adicione dois asteriscos de cada lado do texto.

display_title: order cancellation
display_detail:
 cancellation policy: [list policies]
 look up `[order number]` in ordering system
 how to cancel an order [list steps]
condition: the customer wants to cancel an order
agent_action:
1. ask the customer for the order number
2. **ask the customer why they want to cancel the order**
3. inform the customer you are working on the cancellation
4. inform the customer that you have canceled the order
5. inform the customer that they will receive the refund in 5-7 business days

O texto em negrito torna-se menos eficaz se, por exemplo, cada passo da ação do agente for colocado em negrito. Por isso, use esta técnica com moderação.

Adicionar exemplos concretos

Quando o preparador de IA não dá as respostas de exemplo que espera, adicionar alguns exemplos do que quer ver à ação do agente pode ajudar. O exemplo detalhado seguinte ilustra como podem ser usados exemplos simples (realçados):

display_title: smartwatch recommendation
display_detail: see `Smartwatch Catalog` for a relevant smartwatch
condition: the customer recently purchased phones
agent action:
recommend a specific smartwatch from the section titled "Smartwatch Catalog"; the recommendation should match the recently purchased phones from the section titled "Recent Purchases".
Following are some examples:
- For Galaxy phones, recommend Galaxy watch.
- For iPhones, recommend Apple Watch.
- For Pixel phones, recommend Pixel Watch. 
- For other phones, recommend Fitbit Sense.

Sem os exemplos simples, o treinador de IA sugeriria o Apple Watch para Androids ou apresentaria todos os smartwatches disponíveis. Com os exemplos simples, as sugestões são precisas.

Modelos de mensagens

Para controlar a redação e o formato das respostas de exemplo geradas, anexe um modelo de mensagem ou até mesmo uma mensagem fixa estática à ação do agente. Ao contrário dos exemplos simples, estes modelos indicam a formulação exata que deve ser usada numa resposta de exemplo. Segue-se um exemplo com os modelos de mensagens realçados.

display_title: bill explanation
display_detail:
 look up `[account number]`
 check `Recent Bills` to compare amounts
 https://www.[company name].com/promos
condition: the customer wonders why the bill is getting higher this month
agent_action:
1. ask the customer for the account number. use this fixed message for sample responses: "May I have your account number, please?"
2. compare the bills in the last two months from the section titled "Recent Bills" and inform the customer of the extra charge. use this template for sample responses: "Compared with last month, this month you have an extra charge for ..., which costs ..."

Raciocínio guiado

Se uma ou mais instruções especificarem um objetivo sem passos suficientes ou sem esclarecer o raciocínio oculto para alcançar o objetivo, modifique os passos para maior clareza. Por exemplo, quando é pedido a um agente que recomende um produto, o produto sugerido deve ser relevante para a conversa. Ajude o agente de IA a fazer sugestões relevantes adicionando uma subtarefa ao início da ação do agente que se refere ao contexto da conversa.

display_title: cross-selling
display_detail: sample response
condition: the customer is inquiring about product availability
agent_action:
summarize to the customer what product you have been discussing, then recommend a relevant product from the section titled "Product Recommendation" and provide a brief explanation of how the two products are relevant to each other. Use this template for sample responses: "Since we've been talking about ..., I'd like to recommend ... because ...".

No exemplo, a tarefa principal é sugerir um produto relevante para a conversa. O preparador de IA pode não compreender o objetivo e recomendar o primeiro produto apresentado na secção Recomendação de produtos. A adição da subtarefa pode melhorar drasticamente a relevância. Adicione também um modelo de mensagem no final da ação do agente para que o resultado da subtarefa se ajuste perfeitamente às respostas de exemplo.

Adicione a desduplicação de sugestões

A funcionalidade de desduplicação de sugestões do formador de IA impede que os agentes vejam sugestões duplicadas ou muito semelhantes. Use o campo SuggestionDedupingConfig no proto do gerador para comparar os componentes da sugestão (instruções, respostas de exemplo, etc.) com um histórico de sugestões recentes. Pode ajustar a sensibilidade da semelhança através de um limite configurável. A mensagem DuplicateCheckResult indica os resultados da verificação de duplicações na resposta de sugestão.

Configure a eliminação de duplicados de sugestões

Para gerir sugestões duplicadas do preparador de IA, configure o SuggestionDedupingConfig na configuração do gerador.

Campos de configuração

SuggestionDedupingConfig tem os seguintes campos:

  • enable_deduping: defina este campo booleano como verdadeiro para ativar a funcionalidade de desduplicação de sugestões. Se a política for definida como Falsa ou não for definida, a desduplicação é desativada. Exemplo:

    suggestion_deduping_config {
    enable_deduping: true
    }
    
  • similarity_threshold: use este limite do tipo flutuante para a desduplicação baseada na semelhança em determinados campos. O processo de remoção de duplicados considera as sugestões com uma pontuação de semelhança superior a este valor como duplicados. A pontuação varia entre 0,0 e 1,0. Se este campo for definido como 0,0 ou não for definido, é usado um limite predefinido de 0,8. Exemplo:

    suggestion_deduping_config {
    enable_deduping: true
    similarity_threshold: 0.85
    }
    

Como funciona a remoção de duplicados

Quando enable_deduping é verdadeiro, pode comparar sugestões com sugestões anteriores. O processo de desduplicação avalia a duplicação para cada um dos seguintes campos de sugestões:

  • Instruções (applicable_instructions): verifica se existem correspondências exatas com as sugestões do histórico.
  • Exemplos de respostas (sample_responses): verifica a semelhança entre a sugestão atual e as sugestões do histórico. A anulação da duplicação sinaliza resultados duplicados se a pontuação de semelhança exceder o limite de semelhança.
  • Ações do agente (agent_action_suggestions): verifica a semelhança entre a sugestão atual e as sugestões do histórico, semelhante às respostas de exemplo. A anulação da duplicação sinaliza resultados duplicados se a pontuação de semelhança exceder o limite de semelhança. Os resultados das verificações de remoção de duplicados são devolvidos na mensagem DuplicateCheckResult.

Saída: DuplicateCheckResult

A mensagem AgentCoachingSuggestion contém campos para diferentes tipos de sugestões (por exemplo, AgentActionSuggestion, SampleResponse). Cada um destes campos inclui uma mensagem DuplicateCheckResult para fornecer informações sobre potenciais duplicados encontrados no histórico. Exemplo:

// Example within AgentActionSuggestion
message AgentActionSuggestion {
  // ... other fields ...
  DuplicateCheckResult duplicate_check_result = 3;
}

// Duplication check for the suggestion.
message DuplicateCheckResult {
  // The duplicate suggestions.
  repeated DuplicateSuggestion duplicate_suggestions = 1 [
    (google.api.field_behavior) = OUTPUT_ONLY,
    (datapol.semantic_type) = ST_NOT_REQUIRED
  ];

  // The duplicate suggestion details.
  message DuplicateSuggestion {
    // The answer record ID of the past duplicate suggestion.
    string answer_record = 1 [
      (google.api.field_behavior) = OUTPUT_ONLY,
      (datapol.semantic_type) = ST_IDENTIFYING_ID
    ];
    // Sources for the suggestion.
    Sources sources = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
    // The index of the duplicate suggestion in the past suggestion list.
    int32 suggestion_index = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
    // The similarity score of between the past and current suggestion.
    // This is only populated for fields using similarity checks.
    float similarity_score = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
  }
}

Exemplo de configuração

A configuração do gerador de exemplos ativa a funcionalidade de remoção de duplicados de sugestões definindo enable_deduping como verdadeiro. Além disso, define o valor similarity_threshold como 0,75. Isto significa que, se o texto de uma nova sugestão (para respostas de exemplo e ações do agente) tiver uma pontuação de similaridade igual ou superior a 0,75 com qualquer uma das sugestões do histórico, a desduplicação marca-a como duplicada com DuplicateCheckResult.

# Example Generator configuration with Deduping enabled
generator {
  # ... other generator fields ...

  suggestion_deduping_config {
    enable_deduping: true
    similarity_threshold: 0.75 # Optional: Adjusts sensitivity for similarity checks
  }

  # ... rest of generator config ...
}