https://a.storyblok.com/f/270183/122232/3a4103404b/version-control.png

Controle de versão para chatbots sem código/com pouco código no AI Studio da Vonage

Publicado em April 2, 2024

Tempo de leitura: 7 minutos

Introdução

Então, você vem desenvolvendo com o AI Studio e tudo está indo bem: seu Agente de IA para Conversação (chatbot) está crescendo, e sua empresa ou cliente está delegando cada vez mais tarefas a ele. Mas, inevitavelmente, pode chegar um momento em que seja necessário fazer um ajuste de rumo. Ao redigir documentos do Word ou trabalhar com planilhas do Excel, CTRL/CMD + Z (desfazer) costuma ser seu melhor amigo. Mas e se você precisar de um CTRL + Z para o seu agente do AI Studio?

Isso existe, e se chama Controle de Versões! Embora o AI Studio seja uma plataforma no-code/low-code, ele foi desenvolvido com grande parte dos recursos avançados de controle de versões que os desenvolvedores já esperam encontrar. Neste artigo, você aprenderá sobre o controle de versões e como ele pode ser a solução para seus agentes de IA conversacional no AI Studio.

O que é controle de versão?

O controle de versão é um sistema que ajuda os desenvolvedores a gerenciar as alterações no código-fonte ao longo do tempo. Ele permite que os desenvolvedores acompanhem e gerenciem as alterações em sua base de código, colaborem com outras pessoas e revertam facilmente as alterações, se necessário.

O controle de versão é importante no desenvolvimento de software porque permite que os desenvolvedores trabalhem em diferentes funcionalidades ou correções de bugs de forma independente, sem conflitos. Ele também ajuda a manter um histórico das alterações, facilitando a reversão para uma versão anterior caso algo dê errado.

O sistema de controle de versão mais popular e famoso se chama git. O git realiza três funções importantes: rastreia o que foi alterado, por que foi alterado e em que ordem essas alterações ocorreram. Esses três fatores facilitam muito o diagnóstico rápido da correção de uma nova alteração e a análise retrospectiva para identificar problemas quando eles surgirem.

A maioria das equipes usa o Git por meio da plataforma online chamada GitHub. O GitHub facilita muito para as equipes implementarem o Git em seus projetos, sem precisarem se preocupar com a hospedagem dos mesmos.

O AI Studio aproveita a poderosa tecnologia do Git e a coloca à sua disposição, sem que você precise realmente entender como o Git funciona!

Desenvolvimento de chatbots sem código/com pouco código no AI Studio

O AI Studio da Vonage é uma inovação revolucionária no desenvolvimento de chatbots, oferecendo uma plataforma sem código/com pouco código que facilita a criação de agentes de IA conversacional para canais de SMS, WhatsApp ou Voice (telefone). Com sua interface intuitiva do tipo “arrastar e soltar”, o AI Studio permite que tanto programadores experientes quanto usuários sem conhecimentos técnicos desenvolvam agentes de IA conversacional completos de forma rápida e fácil, economizando tempo e dinheiro.

Os recursos de low-code da plataforma também permitem que os usuários integrem uma ampla variedade de funcionalidades, como integrações com o Salesforce e a OpenAI ou conectores Webhook, possibilitando uma integração perfeita com outros sistemas. Isso torna o AI Studio uma ferramenta poderosa para empresas que buscam melhorar seu atendimento ao cliente, automatizar tarefas e aprimorar a experiência geral do cliente.

O AI Studio oferece uma interface intuitiva que facilita o uso, ao mesmo tempo em que proporciona amplas possibilidades de personalização e flexibilidade. Da mesma forma, o recurso de controle de versões do AI Studio permite que você gerencie com facilidade as alterações na base de código do seu chatbot. Isso significa que você pode se concentrar em criar um ótimo chatbot sem se preocupar com a complexidade do controle de versões. Portanto, se você cometer um erro, criar complexidade acidentalmente ou simplesmente quiser reverter um recurso que acabou se mostrando desnecessário, o Controle de Versões do Studio vai salvar o seu dia. E você nem precisa entender o que é um commit!

Implementação do controle de versão no AI Studio

Sempre que você publicar seu agente, o AI Studio salvará uma versão. Você precisará preencher dois campos para cada versão:

  • Nome da versão (obrigatório)

  • Descrição: o que foi alterado

Uma implementação básica de controle de versão pode atribuir nomes de versão sequencialmente (1, 2, 3, etc.) e fornecer uma descrição das alterações implementadas.

A basic commit in AI StudioA basic commit in AI Studio

Você poderá então encontrar as versões do seu agente na seção de detalhes do agente:

The Versions Dropdown in AI Studio DashboardThe Versions Dropdown in AI Studio Dashboard

Lá, você será direcionado para o modo “Versões”. No lado esquerdo, você verá todas as versões dos seus agentes e, respectivamente, como o agente aparecia nessa versão no painel principal do dashboard.

A basic Version History in AI StudioA basic Version History in AI Studio

Você vai perceber que a versão atual está destacada com a indicação “Publicada atualmente”. Em qualquer versão, você pode abrir o agente no editor completo ou ver a descrição da versão clicando nos três pontos verticais. Para a versão atual, você tem uma opção adicional para retirar o agente do ar. Isso não fará com que a versão anterior volte a ficar ativa; você precisará publicar novamente a versão que deseja que fique ativa.

E pronto: agora você tem controle de versão! Você pode reabrir uma versão antiga do seu agente no editor e republicá-la. Ou pode selecionar uma versão antiga, fazer algumas alterações e publicá-la como uma versão totalmente nova.

Melhores práticas para controle de versão no AI Studio

Mas ter um controle de versões não é o mesmo que ter um bom controle de versões. Para que o controle de versões seja eficaz, é preciso clareza e consistência, a fim de promover uma melhor colaboração com quaisquer futuros colegas de equipe (incluindo você mesmo!).

Precisamos lembrar que o objetivo do controle de versão é poder voltar facilmente caso algo dê errado. Usar nomes de versão descritivos deve tornar esse processo mais rápido e fácil do que verificar o agente subjacente a cada etapa. No exemplo anterior, ao usar os nomes Versão 1, Versão 2 etc., será que realmente alcançamos esse objetivo? Na verdade, não. Da mesma forma, nossa descrição nos ajudou a entender o que estava acontecendo no agente naquele momento? Não.

De acordo com as melhores práticas de controle de versão, sempre que você salvar uma versão, ela deve conter três informações essenciais:

  1. Que tipo de alteração foi essa? Significativa, menor ou correção de um bug?

  2. Qual recurso/fluxo foi alterado?

  3. Detalhes descritivos para entender quem alterou o agente e exatamente como a alteração foi feita

Version Control Best Practices Commit in AI StudioVersion Control Best Practices Commit in AI Studio

Que tipo de alteração: significativa, menor ou correção de bug

Você pode considerar uma alteração significativa como um novo fluxo ou subfluxo adicionado ou removido, ou uma mudança importante na funcionalidade que o usuário talvez não perceba, como uma integração ou conexão via webhook. Uma alteração menor seria uma melhoria, como a atualização da lógica de um agente, o aumento da eficiência da classificação de intençõesou alguma outra melhoria leve no desempenho de um agente ou na experiência do usuário. Por fim, uma correção de bug seria uma atualização para corrigir um comportamento indesejado ou inesperado no agente.

Qual recurso/fluxo foi alterado

A maneira mais fácil de organizar os recursos em agentes de IA conversacional é por fluxo. Em um agente para um banco, você pode ter um fluxo para localizar agências, um fluxo para acessar informações da conta, um fluxo para uma nova transação e outro fluxo para falar com um caixa. Cada um desses fluxos pode ser considerado um recurso e deixa imediatamente claro para qualquer pessoa que esteja desenvolvendo o agente onde os nós foram alterados.

Detalhes descritivos do commit

Por fim, na Descrição da Versão, é importante informar exatamente o que foi alterado no fluxo, por quê e por quem. Detalhes especialmente importantes a serem observados são quaisquer alterações na lógica subjacente do agente que não sejam imediatamente evidentes. Isso inclui quaisquer alterações nos parâmetros, atualizações lógicas, como o redirecionamento de nós condicionais ou de classificação, e, especialmente, quaisquer nós que dependam de funcionalidades externas, como webhooks ou integrações. Quanto mais detalhes forem adicionados à descrição, mais fácil será a vida do seu “eu” no futuro!

Version History of Best Practices CommitsVersion History of Best Practices Commits

Esse estilo de controle de versão foi inspirado no artigo sobre “Conventional Commits”. Recomendo dar uma olhada nele para ver como o controle de versão funciona em uma plataforma sem código, como o Studio, em comparação com um sistema totalmente baseado em código, como o git e o Github.

Conclusão

O controle de versão é uma ferramenta essencial para gerenciar alterações no seu AI Studio Agent, permitindo que você acompanhe e gerencie essas alterações, colabore com outras pessoas e reverta facilmente as alterações, se necessário. Ao implementar as melhores práticas, você pode garantir que seu sistema de controle de versão seja eficaz e fácil de usar, tanto para você quanto para futuros colegas de equipe. Com a interface intuitiva do AI Studio e suas poderosas opções de personalização, você pode gerenciar as alterações na base de código do seu chatbot e se concentrar na criação de um excelente chatbot sem se preocupar com a complexidade do controle de versão.

Se você gostou deste tutorial ou não gostou, por favor, me diga! Me encontre no Twitter ou na Slack da Comunidade Vonage (temos até um canal dedicado ao AI Studio). Estou muito curioso para ver o que vocês estão criando com o Low Code!

Recursos adicionais

Compartilhar:

https://a.storyblok.com/f/270183/384x384/e4e7d1452e/benjamin-aronov.png
Benjamin AronovDeveloper Advocate

Benjamin Aronov is a developer advocate at Vonage. He is a proven community builder with a background in Ruby on Rails. Benjamin enjoys the beaches of Tel Aviv which he calls home. His Tel Aviv base allows him to meet and learn from some of the world's best startup founders. Outside of tech, Benjamin loves traveling the world in search of the perfect pain au chocolat.