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.
Além do recurso de linguagem natural para SQL, você também pode usar o Azure OpenAI em Modelos de Fundição para gerar mensagens de email e SMS para melhorar a produtividade do usuário e simplificar os fluxos de trabalho de comunicação. Ao utilizar os recursos de geração de linguagem do Azure OpenAI, os usuários podem definir regras específicas, como "O pedido está atrasado 5 dias" e o sistema gerará automaticamente mensagens de email e SMS contextualmente apropriadas com base nessas regras.
Esse recurso serve como um ponto de partida para os usuários, fornecendo-lhes um modelo de mensagem cuidadosamente criado que eles podem personalizar facilmente antes de enviar. O resultado é uma redução significativa no tempo e esforço necessários para compor mensagens, permitindo que os usuários se concentrem em outras tarefas importantes. Além disso, a tecnologia de geração de linguagem do Azure OpenAI pode ser integrada em fluxos de trabalho de automação, permitindo que o sistema gere e envie mensagens de forma autônoma em resposta a gatilhos predefinidos. Esse nível de automação não apenas acelera os processos de comunicação, mas também garante mensagens consistentes e precisas em vários cenários.
Neste exercício, você irá:
- Experimente diferentes prompts.
- Use prompts para gerar finalizações para mensagens de e-mail e SMS.
- Explore o código que permite a conclusão de IA.
- Saiba mais sobre a importância da engenharia imediata e inclua regras em seus prompts.
Vamos começar experimentando diferentes regras que podem ser usadas para gerar mensagens de e-mail e SMS.
Usando o recurso de conclusão de IA
Em um exercício anterior , você iniciou o banco de dados, as APIs e o aplicativo. Você também atualizou o
.env
arquivo. Se você não concluiu essas etapas, siga as instruções no final do exercício antes de continuar.Volte para o navegador (http://localhost:4200) e selecione Entrar em contato com o cliente em qualquer linha na grade de dados seguida por E-mail/SMS Cliente para chegar à tela do Gerador de mensagens .
Isso usa o Azure OpenAI para converter regras de mensagem definidas em mensagens de email/SMS. Execute as seguintes tarefas:
Insira uma regra como Ordem atrasada 5 dias após a entrada e selecione o botão Gerar e-mail/mensagens SMS .
Você verá um assunto e corpo gerados para o e-mail e uma mensagem curta gerada para o SMS.
Observação
Como os Serviços de Comunicação do Azure ainda não estão habilitados, você não poderá enviar as mensagens de email ou SMS.
Feche a janela de diálogo e-mail/SMS no navegador. Agora que você já viu esse recurso em ação, vamos examinar como ele é implementado.
Explorando o código de conclusão de IA
Sugestão
Se você estiver usando o Visual Studio Code, poderá abrir arquivos diretamente selecionando:
- Windows/Linux: Ctrl + P
- Mac: Cmd + P
Em seguida, digite o nome do arquivo que deseja abrir.
Abra o arquivo server/apiRoutes.ts e localize a
completeEmailSmsMessages
rota. Essa API é chamada pela parte front-end do aplicativo quando o botão Gerar mensagens de e-mail/SMS é selecionado. Ele recupera os valores de prompt do usuário, empresa e nome de contato do corpo e os passa para acompleteEmailSMSMessages()
função no arquivo servidor/openAI.ts . Os resultados são então devolvidos ao cliente.router.post('/completeEmailSmsMessages', async (req, res) => { const { prompt, company, contactName } = req.body; if (!prompt || !company || !contactName) { return res.status(400).json({ status: false, error: 'The prompt, company, and contactName parameters must be provided.' }); } let result; try { // Call OpenAI to get the email and SMS message completions result = await completeEmailSMSMessages(prompt, company, contactName); } catch (e: unknown) { console.error('Error parsing JSON:', e); } res.json(result); });
Abra o arquivo server/openAI.ts e localize a
completeEmailSMSMessages()
função.async function completeEmailSMSMessages(prompt: string, company: string, contactName: string) { console.log('Inputs:', prompt, company, contactName); const systemPrompt = ` Assistant is a bot designed to help users create email and SMS messages from data and return a JSON object with the email and SMS message information in it. Rules: - Generate a subject line for the email message. - Use the User Rules to generate the messages. - All messages should have a friendly tone and never use inappropriate language. - SMS messages should be in plain text format and NO MORE than 160 characters. - Start the message with "Hi <Contact Name>,\n\n". Contact Name can be found in the user prompt. - Add carriage returns to the email message to make it easier to read. - End with a signature line that says "Sincerely,\nCustomer Service". - Return a valid JSON object with the emailSubject, emailBody, and SMS message values in it: { "emailSubject": "", "emailBody": "", "sms": "" } - The sms property value should be in plain text format and NO MORE than 160 characters. `; const userPrompt = ` User Rules: ${prompt} Contact Name: ${contactName} `; let content: EmailSmsResponse = { status: true, email: '', sms: '', error: '' }; let results = ''; try { results = await callOpenAI(systemPrompt, userPrompt, 0.5); if (results) { const parsedResults = JSON.parse(results); content = { ...content, ...parsedResults, status: true }; } } catch (e) { console.log(e); content.status = false; content.error = results; } return content; }
Esta função tem as seguintes características:
-
systemPrompt
é usado para definir que um assistente de IA capaz de gerar mensagens de e-mail e SMS é necessário. OsystemPrompt
também inclui:- Regras para o assistente seguir para controlar o tom das mensagens, o formato de início e fim, o comprimento máximo das mensagens SMS e muito mais.
- Informações sobre dados que devem ser incluídos na resposta - um objeto JSON neste caso.
-
userPrompt
é usado para definir as regras e o nome de contato que o usuário final gostaria de incluir à medida que as mensagens de e-mail e SMS são geradas. A regra Encomenda está atrasada 5 dias que introduziu anteriormente está incluída emuserPrompt
. - A função chama a
callOpenAI()
função que você explorou anteriormente para gerar as finalizações de e-mail e SMS.
-
Volte para o navegador, atualize a página e selecione Entrar em contato com o cliente em qualquer linha seguida por E-mail/SMS Cliente para acessar a tela do Gerador de mensagens novamente.
Insira as seguintes regras na entrada do Gerador de Mensagens :
- A encomenda está adiantada.
- Diga ao cliente para nunca mais encomendar connosco, não queremos o seu negócio.
Selecione Gerar mensagens de e-mail/SMS e anote a mensagem. A
All messages should have a friendly tone and never use inappropriate language.
regra no prompt do sistema está substituindo a regra negativa no prompt do usuário.Volte para o servidor/openAI.ts* no seu editor e remova a
All messages should have a friendly tone and never use inappropriate language.
regra do prompt nacompleteEmailSMSMessages()
função. Salve o arquivo.Volte para o gerador de mensagens de e-mail / SMS no navegador e execute as mesmas regras novamente:
- A encomenda está adiantada.
- Diga ao cliente para nunca mais encomendar connosco, não queremos o seu negócio.
Selecione Gerar mensagens de e-mail/SMS e observe a mensagem que é retornada.
O que está a acontecer nestes cenários? Ao usar o Azure OpenAI, a filtragem de conteúdo pode ser aplicada para garantir que a linguagem apropriada seja sempre usada. Se você estiver usando OpenAI, a regra definida no prompt do sistema é usada para garantir que a mensagem retornada seja apropriada.
Observação
Isso ilustra a importância de projetar seus prompts com as informações e regras corretas para garantir que os resultados adequados sejam retornados. Leia mais sobre esse processo na Introdução à documentação de engenharia imediata .
Desfaça as alterações feitas
systemPrompt
nocompleteEmailSMSMessages()
, salve o arquivo e execute-o novamente, mas use apenas aOrder is ahead of schedule.
regra (não inclua a regra negativa). Desta vez, você deve ver as mensagens de e-mail e SMS retornadas conforme o esperado.Alguns pontos finais a considerar antes de passar para o próximo exercício:
- É importante ter um humano no loop para rever as mensagens geradas. Neste exemplo, as finalizações do Azure OpenAI retornam mensagens de email e SMS sugeridas, mas o usuário pode substituí-las antes de serem enviadas. Se você planeja automatizar e-mails, ter algum tipo de processo de revisão humana para garantir que as mensagens aprovadas estejam sendo enviadas é importante. Veja a IA como sendo um copiloto, não um piloto automático.
- As finalizações serão tão boas quanto as regras que você adicionar ao prompt. Reserve um tempo para testar seus prompts e as conclusões que são retornadas. Considere o uso do fluxo de prompt para criar uma solução abrangente que simplifique a criação de protótipos, a experimentação, a iteração e a implantação de aplicativos de IA. Convide outras partes interessadas do projeto para revisar as conclusões também.
- Talvez seja necessário incluir o código de pós-processamento para garantir que os resultados inesperados sejam tratados corretamente.
- Use prompts do sistema para definir as regras e informações que o assistente de IA deve seguir. Use prompts do usuário para definir as regras e informações que o usuário final gostaria de incluir nas conclusões.