Introdução
A tecnologia evolui a passos largos, e com ela, a necessidade de educação contínua em campos tecnológicos se torna cada vez mais crítica. Glaucia Lemos, numa apresentação detalhada e rica em conteúdo, explora o uso combinado de TypeScript, Azure OpenAI e GitHub Copilot para criar aplicações inteligentes, ilustrando o poder da integração de ferramentas avançadas no desenvolvimento de software.
Vejamos os principais pontos abordados durante a live session da DIO em parceria com a Microsoft Brasil.
O que foi abordado na live session
Caso você tenha perdido a live session, não se preocupe! Você pode conferir o vídeo completo abaixo:
Agora vamos resumir os principais pontos abordados durante a live session:
Desenvolvimento de Aplicações com TypeScript, Azure OpenAI e GitHub Copilot
A apresentação se aprofunda no uso prático de TypeScript em conjunto com o Azure OpenAI e GitHub Copilot.
Glaucia explica como essas ferramentas podem ser integradas para desenvolver aplicações que não apenas automatizam tarefas. Mas, também aprimoram a capacidade de inovação dos desenvolvedores. O TypeScript, com sua tipagem estática, oferece uma base robusta para criar aplicações escaláveis e de fácil manutenção.
Live Coding: Criando uma Aplicação DALL-E com Azure OpenAI e TypeScript
Um ponto alto da apresentação é o tutorial passo a passo onde Glaucia demonstra a criação de uma aplicação para gerar imagens usando Azure OpenAI integrado com o modelo DALL-E. Ela detalha a configuração do ambiente, desde a instalação de dependências até a autenticação e interação com a API do Azure OpenAI. O exemplo prático ilustra como enviar um prompt textual para o modelo DALL-E da OpenAI, que então retorna uma imagem gerada baseada na descrição fornecida.
Abaixo está o código TypeScript utilizado para interagir com a API do Azure OpenAI:
import { OpenAIClient, AzureKeyCredential } from "@azure/openai";
import * as dotenv from "dotenv";
dotenv.config();
const endpoint = process.env.AZURE_OPENAI_ENDPOINT || '';
const azureApiKey = process.env.AZURE_OPENAI_KEY || '';
const promptImage = "A captain with parrot on his shoulder";
export async function main() {
try {
console.log("=== Image Generation App with Dall-E ===");
const client = new OpenAIClient(endpoint, new AzureKeyCredential(azureApiKey));
const deploymentName = 'dall-e-3';
const imageGeneration = await client.getImages(deploymentName, promptImage, {
n: 1,
size: "1024x1024",
responseFormat: "url",
quality: "standard",
style: "vivid",
});
for (const image of imageGeneration.data) {
console.log(`Image URL: ${image.url}`);
}
} catch (error) {
console.log("The sample encountered an error...: ", error);
}
}
main();
Vamos destacar alguns pontos-chave do código de exemplo criado durante a live session:
- Configuração do Ambiente: A aplicação TypeScript faz uso do pacote
dotenv
para carregar variáveis de ambiente a partir de um arquivo.env
. Isso permite que informações sensíveis, como chaves de API, sejam mantidas fora do código fonte.
Dentro desse arquivo .env
, você deve adicionar as seguintes variáveis:
AZURE_OPENAI_ENDPOINT="<URL_DO_ENDPOINT_AZURE_OPENAI>"
AZURE_OPENAI_KEY="<CHAVE_DE_AUTENTICAÇÃO_AZURE_OPENAI>"
-
Na variável
promptImage
, é definida a descrição textual que será enviada ao modelo DALL-E para gerar a imagem. Neste caso específico pedimos que seja gerada uma imagem de: "Um capitão com um papagaio no seu ombro" -
Durante a live, a Glaucia destaca que, para criar modelos de imagem com o DALL-E, só está disponível no servidor do Azure na região da Sweden Central.
-
Também durante , a live a Glaucia mostra como criar esse modelo no Azure AI Studio, que é uma plataforma para criar, treinar e gerenciar modelos de IA.
-
A função
main()
é responsável por orquestrar a interação com a API do Azure OpenAI. Ela cria uma instância do clienteOpenAIClient
e chama o métodogetImages()
para gerar uma imagem baseada no prompt fornecido. -
Os parâmetros passados para o método
getImages()
incluem o nome do modelo DALL-E, o prompt de imagem, o número de imagens a serem geradas, o tamanho da imagem, o formato de resposta, a qualidade e o estilo da imagem. -
O resultado da chamada à API é uma URL que aponta para a imagem gerada. Essa URL é então exibida no console para que o usuário possa visualizar o resultado.
E, o resultado final é uma imagem gerada pelo modelo DALL-E da OpenAI, baseada na descrição textual fornecida.
Muito realista a imagem, não é mesmo? A cada dia que passa, os modelos do DALL-E tem gerado imagens com mais perfeição! E abaixo o gif do resultado final da aplicação:
Discussão sobre Inteligência Artificial e Aprendizado Contínuo
Glaucia não apenas mostra o "como" mas também discute o "porquê", abordando as implicações éticas e práticas do uso de Inteligência Artificial, em relação da preocupação da Microsoft seguir os princípios da IA Responsável que, pode ser resumido em 6 princípios:
- Equidade: A IA deve ser projetada para ser justa e imparcial, protegendo os direitos humanos e garantindo que todos sejam tratados de forma
- Transparência: A IA deve ser transparente e explicável, permitindo que as pessoas entendam como as decisões são tomadas.
- Privacidade e Segurança: A IA deve ser segura e respeitar a privacidade das pessoas.
- Inclusão: A IA deve ser projetada para ser acessível e inclusiva, capacitando todas as pessoas.
- Responsabilidade: A IA deve ser responsável e confiável, garantindo que as pessoas possam confiar nas decisões tomadas.
- Robustez: A IA deve ser robusta e confiável, garantindo que funcione de forma consistente e previsível.
Para saber mais sobre os princípios da IA Responsável, acesse o site da Microsoft.
Ela também enfatiza a necessidade de considerar a Inteligência Artificial como uma ferramenta de auxílio ao invés de uma ameaça, realçando como a AI pode ser usada para aumentar a produtividade sem substituir o elemento humano.
A Importância da Adaptação Tecnológica mediante aos avanços na área de Inteligência Artificial
A apresentação conclui com uma reflexão sobre a importância de se manter atualizado com as tendências tecnológicas.
Glaucia reitera que o aprendizado e a adaptação contínua são essenciais para qualquer profissional da área de tecnologia. A habilidade de integrar novas ferramentas e tecnologias é muito importante seja ela para o desenvolvimento de soluções inovadoras e eficientes ou até mesmo pessoal!
Conclusão
Durante a live poder ver como a busca contínua por conhecimento e a educacão tecnológica pode ser transformadora. Através da exploração de TypeScript, Azure OpenAI e GitHub Copilot, podemos ver que quando é bem aplicada e acompanhada de uma base educacional sólida, abre caminhos para o futuro do desenvolvimento de software e para a evolução contínua dos profissionais envolvidos.
Não podemos negar que devido a constante evolução no mundo de IA, a necessidade de se manter sempre atualizado será algo importante. E, principalmente, procurar fazer uso dessas ferramentas para que as pessoas, em diferentes escopos de trabalho, tenham ganhos de produtividade e eficiência.
Recursos Adicionais
Se você deseja saber mais sobre TypeScript, Azure OpenAI e GitHub Copilot, confira os cursos gratuitos que a Microsoft disponibiliza através da plataforma Microsoft Learn.
E, para ficar por dentro das novidades e tendências em tecnologia, siga a Glaucia Lemos no Twitter e acompanhem as lives sessions que também ocorrem no canal do Microsoft Reactor! Acessem agora a página oficial do Microsoft Reactor para ficar por dentro de todas as lives sessions e outras novidades em relação a: Nuvem, Dados e Inteligência Artificial.
Esperamos que este artigo tenha sido útil e inspirador para você! Continue aprendendo e explorando novas possibilidades no mundo da tecnologia. Até a próxima!