Curso
AI do 8.º ano: Programador de aplicações inteligentes
Junta Python, páginas web, modelos e APIs de AI numa aplicação que testas e apresentas.
Faz as lições por ordem. No fim, sabes dizer as partes de uma aplicação de AI: interface, backend, modelo e dados, e desenhar a arquitetura de uma aplicação de AI real. Sabes dividir o código em módulos, ler e escrever ficheiros JSON, e construir um sítio pequeno com HTML e CSS. Sabes mostrar a previsão de um classificador numa página web, construir um prompt a partir de um template, e verificar que a resposta do modelo tem o formato certo. Sabes chamar em Python uma API de AI gerida pelo professor, manter uma chave API em segredo, construir um conjunto de avaliação com 20 testes, escrever uma lista de verificação de segurança, e fazer a demo de um assistente de aprendizagem de AI já testado.
Como usar estas lições
- Começa na lição marcada Faz isto. Segue quando conseguires fazer sozinho a linha por baixo do título.
- Joga os Jogos primeiro. Depois faz os Testes. 8 de 10 certas para passar. As Fichas são em papel. As respostas estão em baixo.
- Cada lição apoia-se na anterior. Guarda uma pasta do projeto e acrescenta-lhe algo em cada lição.
- Usa só os serviços de AI que o teu professor aprovar. Mantém as chaves API fora do código e nunca as partilhes. Nunca envies informação privada a um modelo, e testa cada resposta de AI que a tua aplicação mostra.
Cada lição tem jogos, testes e fichas.
0 de 36
Arquitetura de uma aplicação de AI
- 1Partes de uma aplicação de AIDiz as partes de uma aplicação de AI: interface, backend, modelo e dados.
- Define cada uma das quatro partes.
- Encontra-as numa aplicação de tradutor.
- Diz qual é a parte que os utilizadores veem.
- 2Segue um pedidoSegue um pedido do clique até à resposta.
- Lista cada passo do clique até ao ecrã.
- Diz onde o modelo corre.
- Diz onde podem acontecer atrasos.
- 3Onde ficam os dadosDiz onde uma aplicação guarda os dados e porquê.
- Compara o navegador, um servidor e uma base de dados.
- Diz o que nunca se deve guardar.
- Diz quem pode ver cada sítio.
- 4Desenha a arquitetura de uma aplicaçãoDesenha a arquitetura de uma aplicação de AI real.
- Escolhe uma aplicação.
- Desenha uma caixa para cada parte.
- Desenha setas para o fluxo dos dados.
Python intermédio
- 5MódulosDivide o código em módulos e importa-os.
- Move as funções para um ficheiro próprio.
- Importa-as noutro ficheiro.
- Dá nomes claros aos módulos.
- 6FicheirosLê e escreve ficheiros de texto e ficheiros JSON.
- Lê e escreve um ficheiro de texto.
- Guarda e carrega JSON.
- Trata um ficheiro em falta.
- 7BibliotecasInstala e usa uma biblioteca Python.
- Instala uma biblioteca com pip.
- Lê a documentação dela.
- Usa uma função dela.
- 8Código reutilizávelTransforma código repetido numa função reutilizável.
- Encontra código repetido.
- Transforma-o numa função com parâmetros claros.
- Escreve uma docstring curta.
Bases de aplicações web
- 9HTMLConstrói uma página HTML com títulos, texto e um formulário.
- Usa títulos, parágrafos e listas.
- Adiciona uma imagem e uma ligação.
- Adiciona um formulário com uma caixa de texto e um botão.
- 10CSSDá estilo a uma página com CSS: cores, espaçamento e disposição.
- Define cores e tipos de letra.
- Adiciona margin e padding.
- Dispõe a página com flexbox.
- 11Formulários e entradaLê a entrada que um utilizador escreve num formulário.
- Lê o valor do formulário com JavaScript.
- Mostra-o de novo na página.
- Verifica uma entrada vazia.
- 12Sítio pequenoConstrói um sítio pequeno com duas páginas.
- Constrói uma página inicial e uma página de ferramenta.
- Liga-as uma à outra.
- Faz com que funcionem no ecrã de um telemóvel.
Integração de modelos
- 13InferênciaExplica a diferença entre treino e inferência.
- Diz que o treino acontece uma vez e a inferência em cada pedido.
- Guarda e carrega um modelo treinado.
- Mede o tempo de uma previsão.
- 14Entradas do modeloPrepara a entrada do modelo na forma que o modelo espera.
- Redimensiona uma imagem.
- Põe as características na ordem certa.
- Recusa entrada que o modelo não consegue usar.
- 15Saídas do modeloLê etiquetas e pontuações da saída do modelo.
- Lê a etiqueta de cima.
- Lê a pontuação de confiança.
- Mostra “não tenho a certeza” abaixo de um limiar.
- 16Liga um classificadorMostra a previsão de um classificador numa página web.
- Carrega um modelo no navegador ou num servidor pequeno.
- Envia-lhe a entrada a partir da página.
- Mostra a etiqueta e a pontuação.
Aplicações baseadas em prompts
- 17Templates de promptConstrói um prompt a partir de um template e da entrada do utilizador.
- Escreve um template com espaços em branco.
- Preenche os espaços com a entrada do utilizador.
- Impede que a entrada do utilizador mude as tuas instruções.
- 18ContextoDá a um modelo o contexto de que precisa.
- Adiciona o ano e o tema.
- Adiciona uma resposta de exemplo.
- Compara respostas com contexto e sem contexto.
- 19Verificar o formatoVerifica que a resposta do modelo tem o formato certo.
- Pede JSON.
- Analisa-o e verifica os campos.
- Tenta de novo ou mostra um erro quando está errado.
- 20Fluxo de promptsEncadeia dois prompts num fluxo para acabar uma tarefa.
- Faz perguntas com um prompt.
- Verifica as respostas com um segundo prompt.
- Passa dados entre os passos.
APIs de AI
- 21Pedidos e respostasEnvia um pedido e lê a resposta JSON.
- Envia um pedido GET e um POST.
- Lê os códigos de estado.
- Analisa uma resposta JSON.
- 22Chaves APIMantém uma chave API em segredo.
- Guarda uma chave numa variável de ambiente.
- Mantém as chaves fora do código partilhado.
- Diz por que uma chave nunca pode estar no navegador.
- 23Limites e custoExplica limites de ritmo e custos de uso.
- Lê um erro de limite de ritmo.
- Estima o custo de 100 pedidos.
- Espera e tenta de novo quando estás limitado.
- 24Chama uma APIChama em Python uma API de AI gerida pelo professor.
- Envia um prompt.
- Lê a resposta.
- Trata erros e tempos esgotados.
Testes de AI
- 25Casos de testeEscreve casos de teste: entradas com saídas esperadas.
- Escreve 10 entradas de teste.
- Escreve como é uma boa saída.
- Executa-os à mão.
- 26FiabilidadeTesta a fiabilidade: corre o mesmo teste muitas vezes e compara os resultados.
- Corre um prompt 10 vezes.
- Conta quantas vezes está certo.
- Baixa a aleatoriedade e compara.
- 27Casos limiteTesta casos limite: entradas vazias, longas e ardilosas.
- Experimenta uma entrada vazia e uma entrada muito longa.
- Experimenta uma entrada noutra língua.
- Experimenta uma entrada que tenta enganar a aplicação.
- 28Conjunto de avaliaçãoConstrói um conjunto de avaliação com 20 testes e pontua a tua aplicação.
- Mistura testes fáceis, difíceis e ardilosos.
- Pontua cada resposta como passar ou não passar.
- Regista a pontuação depois de cada mudança.
Design responsável da aplicação
- 29Privacidade desde o desenhoAplica privacidade desde o desenho: recolhe só os dados de que a aplicação precisa.
- Lista os dados que a tua aplicação recolhe.
- Tira o que não é preciso.
- Diz durante quanto tempo os dados ficam guardados.
- 30SalvaguardasPõe salvaguardas para bloquear entradas e saídas inseguras.
- Filtra temas inseguros.
- Verifica as respostas antes de as mostrar.
- Dá uma resposta segura quando bloqueias.
- 31Experiência do utilizadorMostra na experiência do utilizador quando a AI responde e que pode errar.
- Etiqueta as respostas da AI.
- Adiciona uma forma de reportar uma resposta errada.
- Mostra um estado de carregamento.
- 32Lista de verificação de segurançaEscreve uma lista de verificação de segurança para a tua aplicação.
- Cobre privacidade, segurança e exatidão.
- Verifica a tua aplicação com a lista.
- Corrige um item que falha.
Estúdio de desenvolvimento da aplicação
- 33Planeia o assistenteEscreve as funcionalidades e os testes de um assistente de aprendizagem.
- Escolhe as disciplinas.
- Lista as funcionalidades.
- Escreve primeiro o conjunto de avaliação.
- 34Constrói a interfaceConstrói a interface: o seletor de disciplinas e o ecrã das perguntas.
- Constrói o seletor de disciplinas.
- Constrói o ecrã de pergunta e resposta.
- Constrói a área de feedback.
- 35Liga a AILiga a AI para acrescentar perguntas e feedback de um modelo.
- Gera perguntas de prática com um modelo.
- Verifica as respostas e dá feedback.
- Corre o conjunto de avaliação.
- 36O teu assistente de aprendizagem de AIFaz a demo de um assistente de aprendizagem de AI já testado.
- Faz a demo da aplicação completa.
- Mostra a pontuação de avaliação.
- Explica o frontend, o backend e o modelo.