Diana, a Assistente de Inteligência Artificial é um componente essencial no Cronapp, cujo objetivo principal é facilitar o desenvolvimento das aplicações Cronapp e fornecer suporte, a partir do uso de linguagem natural, utilizando textos como conteúdo de entrada e saída. No contexto de blocos de programação, auxilia a criação de funções em blocos Servidor e Cliente, ajustadas às necessidades do projeto, bem como na geração automática de funções de teste, aumentando a confiabilidade e a eficiência das aplicações desenvolvidas no Cronapp.

Dessa forma, Diana acelera o desenvolvimento de soluções complexas, simplificando processos e oferecendo uma experiência personalizada, garantindo a privacidade e a segurança dos dados dos usuários. Esta documentação fornece uma visão detalhada sobre a Assistente de IA integrada ao Cronapp, destacando seus recursos e benefícios para o desenvolvimento de soluções. Vale ressaltar que Diana, assim como outros assistentes de IA, pode ocasionalmente apresentar inconsistências nas respostas fornecidas.


Figura 1 - Assistente de IA do Cronapp

Acessando a funcionalidade

A Figura 2 apresenta a tela inicial da Assistente Diana. Para acessar a funcionalidade, clique no botão exibido no destaque 1 da Figura 2. Caso seja o primeiro acesso à Assistente, será exibida a janela de Termos de Serviço e Condições (Figura 2.1), onde será necessário aceitar todos os termos e condições apresentados. Após concordar com os termos, a tela inicial da Assistente será disponibilizada para uso.


Figura 2 - Janela da Assistente de IA do Cronapp


A imagem a seguir apresenta a janela de Termos de Serviço e Condições, exibida ao acessar a Assistente Diana pela primeira vez. Para prosseguir, é necessário aceitar todos os termos e condições listados. Para visualizar os termos e condições de uso, basta clicar nos links fornecidos, que redirecionarão o usuário para a página correspondente.


Figura 2.1 - Janela de Termos de Serviço e Condições


A janela da Assistente Diana (Figura 2) possui duas abas:

  • Pergunte a Diana: permite que o usuário insira suas solicitações diretamente para a IA.
  • Chat: exibe as respostas geradas pela IA.


Além disso, ao clicar no ícone de informação (destaque 2 da Figura 2), será exibida a janela da imagem abaixo, informando que a Assistente Diana pode eventualmente cometer erros. Por isso, é fundamental sempre revisar as respostas fornecidas.


Figura 2.2 - Janela de informação

Pergunte a Diana

Na aba Pergunte a Diana, o usuário pode inserir solicitações diretamente para a IA. Além disso, possui algumas sugestões e insights adicionais de prompts ou entradas para facilitar a interação com a Assistente (destaque 1 da Figura 3). A usabilidade é simples, basta digitar o comando desejado (2) e clicar no botão "Gerar" (3). Em seguida, o usuário será automaticamente direcionado para a aba Chat, onde as respostas geradas pela IA serão exibidas.

Além disso, a Assistente permite anexar arquivos de até 10 MB, oferecendo suporte a múltiplos formatos, como HTML, Java, SQL, JSON, entre outros. Para anexar um arquivo, clique no botão "Anexar" (4). Em seguida, uma janela será exibida para a seleção de arquivos do projeto Cronapp. Após a seleção de um ou mais arquivos, você poderá fazer perguntas à Assistente sobre o conteúdo anexado, facilitando a extração de informações e o desenvolvimento de soluções dentro da plataforma.

Diana também permite que o usuário solicite a geração de códigos específicos, facilitando o desenvolvimento de funcionalidades dentro do projeto. O código gerado é formatado corretamente para garantir melhor legibilidade e usabilidade. Além disso, o usuário pode copiá-lo com a formatação preservada, garantindo uma integração mais eficiente. Esse recurso agiliza o desenvolvimento ao oferecer soluções prontas para implementação, reduzindo o tempo necessário para escrever códigos manualmente. Para visualizar um exemplo de geração de código, consulte a Figura 4.1.


Figura 3 - Enviando uma solicitação para a Assistente Diana


É importante destacar que a qualidade das solicitações que você fornece à Diana pode afetar a qualidade das respostas do modelo. O conjunto específico de entradas fornecidas pelo usuário é chamado de prompt, que orienta a Assistente para gerar uma resposta ou saída apropriada para uma determinada tarefa ou instrução.  

Um prompt eficaz é composto por vários elementos, incluindo a tarefa ou instrução completa que o usuário deseja realizar, uma descrição clara do contexto da tarefa, exemplos que ilustram a solicitação, e o texto de entrada que orienta a Diana a gerar a resposta desejada. Dependendo do seu objetivo, da natureza dos dados disponíveis e da complexidade da tarefa, o prompt deve integrar um ou mais desses componentes de maneira estratégica para obter os melhores resultados. Para mais detalhes de como criar prompts eficazes, consulte a documentação Estratégias para desenvolver prompts eficazes.

Chat

A aba Chat exibe as respostas geradas pela Assistente Diana, permitindo que o usuário acompanhe o resultado de sua solicitação. A imagem a seguir, mostra a resposta à terceira pergunta apresentada nas sugestões e insights da aba Pergunte a Diana. Editamos a imagem para reduzir o conteúdo exibido na resposta, permitindo uma melhor visualização das funcionalidades.

É importante destacar que a Assistente Diana mantém um histórico de perguntas e respostas durante até 10 minutos de inatividade. Passado esse período sem interação, o histórico é descartado, e a Assistente não retém os dados das conversas anteriores. Além disso, é importante lembrar que a Assistente pode apresentar erros ou inconsistências nas respostas fornecidas, sendo importante revisá-las. 


Figura 4 - Aba Chat


Botões em destaque na Figura 4:

  1. Resposta gerada: resposta à solicitação do usuário. Em perguntas específicas sobre a plataforma Cronapp, a resposta inclui as referências das documentações utilizadas.
  2. Copiar: permite copiar a resposta gerada pela IA.
  3. Tentar novamente: repete a solicitação enviada à Assistente.
  4. Feedback: permite avaliar de forma anônima as respostas geradas pela IA, com opções de avaliação positiva ou negativa. A Figura 4.2 exibe a janela para descrição da avaliação.


A imagem abaixo apresenta um outro exemplo de resposta da Assistente, no qual um código foi gerado a partir de uma solicitação do usuário. Editamos a imagem para reduzir o conteúdo exibido, permitindo uma melhor visualização da funcionalidade. Caso queira utilizar o código gerado, basta clicar no botão "Copiar", garantindo a formatação correta para uso imediato.


Figura 4.1 - Código gerado na aba Chat


Ao clicar nos botões do destaque 4 da Figura 4, será exibida a janela de avaliação das respostas geradas pela IA (Figura 4.2). Se desejar, o usuário pode, de forma anônima, realizar uma avaliação dos resultados de sua solicitação. Esses feedbacks são fundamentais para aprimorar a funcionalidade, e nenhum dado pessoal é coletado durante o processo. Como exibe a imagem abaixo, é possível adicionar um comentário opcional da avaliação realizada, e, em caso de avaliação negativa, o usuário pode selecionar entre várias opções pré-definidas na caixa de seleção apresentada. 


Figura 4.2 - Janela de avaliação das respostas geradas pela IA

Geração de blocos de programação

No Cronapp, Diana permite a criação de classes de blocos de programação personalizados tanto do tipo Servidor quanto Cliente, ajustadas especificamente ao contexto da aplicação. Isso inclui a geração de códigos em Java e JavaScript, diretamente a partir de prompts personalizados fornecidos pelo usuário. Com essa funcionalidade, podem ser criados, de forma rápida e eficiente, funções que atendem às necessidades do projeto, sem a necessidade de escrever manualmente cada linha de código, otimizando o processo de desenvolvimento e melhorando a produtividade.

Para criar uma classe de bloco de programação do tipo Servidor ou Cliente, clique no botão "+" localizado ao lado diretório correspondente (destaque 1 da Figura 5). Para este exemplo, vamos criar uma classe do tipo Servidor. Em seguida, será exibida uma janela para seleção do tipo de criação do arquivo. Selecione a opção que utiliza a Assistente Diana (2) e, clique em "Avançar".


Figura 5 - Geração de blocos utilizando a Diana


Por fim, será exibida a janela de configuração da classe, preencha os campos informados na Figura 5.1 e clique em "Finalizar". Para este exemplo, vamos criar uma classe que retorne informações de um endereço a partir de um CEP informado pelo usuário.


Figura 5.1 - Configuração da classe a ser criada


Campos da Figura 5.1:

  • Nome da Classe: define o nome da classe Java onde está inserida a função.

  • Nome da Categoria: define o nome da nova categoria que será criada para o bloco.

  • Prompt: define o objetivo do bloco. Lembre-se que prompts bem elaborados melhoram a qualidade das respostas da IA, tornando-as mais precisas e alinhadas com a necessidade da aplicação. Para mais detalhes de como criar prompts eficazes, consulte a documentação Estratégias para desenvolver prompts eficazes.


A imagem abaixo exibe a classe gerada após a conclusão dos passos anteriores, demonstrando a estrutura do código conforme as definições estabelecidas durante o processo de criação. Para acessar a classe criada, ative o Modo Avançado e navegue até o diretório blockly correspondente.


Figura 5.2 - Classe Java gerada 


Após a geração da classe, recomendamos limpar o cache do projeto para garantir que as alterações sejam refletidas corretamente. Para isso, acesse no menu do sistema Projeto > Limpar Todos os Caches. Em seguida, abra qualquer arquivo blockly para visualizar a nova categoria criada (destaque 1 da Figura 5.3) e utilizar o bloco gerado.

A imagem a seguir apresenta um exemplo de uso do bloco gerado pela Diana. Na função, informamos um CEP e o resultado de execução, contendo as informações do endereço correspondente, pode ser visualizado no console do depurador.


Figura 5.3 - Exemplo de uso do bloco criado pela Diana

Geração de Testes Unitários

A Assistente também permite a criação automática de funções de testes unitários com JUnit a partir de classes Java existentes, contribuindo para a melhoria da qualidade e confiabilidade das aplicações. Para criar um classe de teste, clique com o botão direito do mouse sobre a classe desejada e selecione Diana > Gerar Testes Unitários (Figura 6).


Figura 6 - Geração de Testes Unitários utilizando a Diana


Após finalizar a criação da classe de testes unitários (destaque 1 da Figura 6.1), o arquivo gerado é armazenado automaticamente no diretório test (src/test/java). 


Figura 6.1 - Classe de testes unitários

Nesta página