{"id":50505255,"url":"https://github.com/zolppy/contextus","last_synced_at":"2026-06-02T15:04:31.841Z","repository":{"id":348405466,"uuid":"1191972472","full_name":"zolppy/contextus","owner":"zolppy","description":"Trabalho de Conclusão do Curso (TCC) de Licenciatura em Computação do Instituto Federal da Bahia (IFBA), Campus Jacobina.","archived":false,"fork":false,"pushed_at":"2026-05-23T23:25:02.000Z","size":4418,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-24T01:18:42.865Z","etag":null,"topics":["groq-cloud","ifba","langchain","llm","plataforma-nilo-pecanha","python","sqlite","streamlit","tcc","text-to-sql"],"latest_commit_sha":null,"homepage":"https://contextus.streamlit.app","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zolppy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-25T19:08:41.000Z","updated_at":"2026-05-23T23:25:05.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/zolppy/contextus","commit_stats":null,"previous_names":["zolppy/tcc","zolppy/contextus"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/zolppy/contextus","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zolppy%2Fcontextus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zolppy%2Fcontextus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zolppy%2Fcontextus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zolppy%2Fcontextus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zolppy","download_url":"https://codeload.github.com/zolppy/contextus/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zolppy%2Fcontextus/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33827085,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-02T02:00:07.132Z","response_time":109,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["groq-cloud","ifba","langchain","llm","plataforma-nilo-pecanha","python","sqlite","streamlit","tcc","text-to-sql"],"created_at":"2026-06-02T15:04:30.836Z","updated_at":"2026-06-02T15:04:31.836Z","avatar_url":"https://github.com/zolppy.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🤖 Contextus — Assistente Virtual para Dados Educacionais do IFBA\r\n\r\n![Status](https://img.shields.io/badge/Status-Finalizado-red?style=for-the-badge)\r\n![Acesso](https://img.shields.io/badge/Acesso-Gratuito%20via%20Web-green?style=for-the-badge)\r\n\r\n**Contextus** é parte do meu Trabalho de Conclusão de Curso de Licenciatura em Computação do Instituto Federal de Educação, Ciência e Tecnologia da Bahia, Campus Jacobina. Trata-se de um protótipo de assistente virtual inteligente que responde perguntas sobre os **indicadores educacionais** do **Instituto Federal da Bahia – Campus Jacobina**, a partir dos dados públicos da **Plataforma Nilo Peçanha (PNP)**.\r\n\r\n\u003e 🔍 _“Transformando dados educacionais em conhecimento acessível.”_\r\n\r\n---\r\n\r\n## 📑 Tabela de Conteúdos\r\n\r\n- [Sobre o Projeto](#sobre-o-projeto)\r\n- [Escopo e Limitações](#escopo-e-limitações)\r\n- [Funcionalidades Principais](#funcionalidades-principais)\r\n- [Como Acessar](#como-acessar)\r\n- [Primeiros Passos (Exemplos de Perguntas)](#primeiros-passos-exemplos-de-perguntas)\r\n- [Entendendo os Indicadores](#entendendo-os-indicadores)\r\n- [Conjuntos de Dados Disponíveis](#conjuntos-de-dados-disponíveis)\r\n- [Dúvidas Frequentes](#dúvidas-frequentes)\r\n- [Autor e Orientação](#autor-e-orientação)\r\n- [Licença](#licença)\r\n- [Agradecimentos](#agradecimentos)\r\n\r\n---\r\n\r\n\u003ca id=\"sobre-o-projeto\"\u003e\u003c/a\u003e\r\n\r\n## 📌 Sobre o Projeto\r\n\r\nO Contextus foi criado para apoiar **gestores, coordenadores e pesquisadores** do **IFBA – Campus Jacobina** que precisam analisar os dados de **evasão** de forma simples. Em vez de aprender uma ferramenta técnica ou escrever consultas, você faz uma pergunta em **português natural** e o assistente:\r\n\r\n1. Interpreta sua pergunta.\r\n2. Consulta os dados da PNP (já carregados no sistema).\r\n3. Devolve uma resposta em texto e, quando apropriado, gera **gráficos dinâmicos**.\r\n\r\n🌐 **Atalho para uso imediato:** acesse \u003ca href=\"https://contextus.streamlit.app\" target=\"_blank\"\u003e\u003cstrong\u003ehttps://contextus.streamlit.app\u003c/strong\u003e\u003c/a\u003e.\r\n\r\n💻 **Código-fonte:** caso tenha interesse em aspectos técnicos de implementação, o código-fonte do projeto está disponível em \u003ca href=\"https://github.com/zolppy/contextus\" target=\"_blank\"\u003e\u003cstrong\u003ehttps://github.com/zolppy/contextus\u003c/strong\u003e\u003c/a\u003e.\r\n\r\n📄 **Documentação:** Se você estiver lendo isto através do GitHub, este mesmo conteúdo (README.md) pode ser acessado em uma página web em \u003ca href=\"https://zolppy.github.io/contextus\" target=\"_blank\"\u003e\u003cstrong\u003ehttps://zolppy.github.io/contextus\u003c/strong\u003e\u003c/a\u003e, hospedado via GitHub Pages. Se já estiver na página, não precisa abrir.\r\n\r\n---\r\n\r\n\u003ca id=\"escopo-e-limitações\"\u003e\u003c/a\u003e\r\n\r\n## 📌 Escopo e Limitações\r\n\r\n- **O que o assistente sabe responder:** apenas perguntas relacionadas aos **dados de evasão do Campus Jacobina** do IFBA disponíveis na PNP.\r\n- **O que ele NÃO responde:** consultas sobre outros campi, outras instituições, comparações entre IFs ou temas fora do domínio da evasão do Campus Jacobina.\r\n- **Período dos dados:** os arquivos utilizados cobrem os anos de **2017 a 2024**, dependendo da tabela. Consulte os dicionários de dados para detalhes.\r\n- **Indicadores disponíveis:** Concluídos, Evadidos, Retidos, Taxa de Evasão, Índice de Eficiência Acadêmica. As definições exatas estão na seção [Entendendo os Indicadores](#-entendendo-os-indicadores).\r\n\r\n---\r\n\r\n\u003ca id=\"funcionalidades-principais\"\u003e\u003c/a\u003e\r\n\r\n## ✨ Funcionalidades Principais\r\n\r\n- 🧠 **Respostas em linguagem natural** – você pergunta como se estivesse conversando com um colega.\r\n- 📊 **Gráficos automáticos** – ao comparar cursos, anos ou categorias, o assistente gera gráficos para facilitar a visualização.\r\n- 🏫 **Foco exclusivo no Campus Jacobina** – o agente nunca inventa informações; se não souber, ele avisa.\r\n- 📁 **Histórico de conversas** – você pode manter até 6 conversas separadas, acessar perguntas anteriores e excluí-las quando desejar.\r\n- 🔒 **Segurança** – o sistema não armazena dados pessoais além das perguntas feitas; as chaves de acesso são protegidas.\r\n\r\n---\r\n\r\n\u003ca id=\"como-acessar\"\u003e\u003c/a\u003e\r\n\r\n## 🌐 Como Acessar\r\n\r\n1. Abra o navegador e vá para \u003ca href=\"https://contextus.streamlit.app\" target=\"_blank\"\u003e\u003cstrong\u003ehttps://contextus.streamlit.app\u003c/strong\u003e\u003c/a\u003e.\r\n2. Na tela inicial, você verá uma caixa de mensagem na parte inferior.\r\n3. Digite sua pergunta sobre os dados de evasão do Campus Jacobina e pressione **Enter**.\r\n4. A resposta aparecerá em texto e, se houver dados comparativos, um gráfico será exibido automaticamente.\r\n\r\n**Dica:** Use a barra lateral para iniciar uma **nova conversa** ou acessar conversas anteriores.\r\n\r\n---\r\n\r\n\u003ca id=\"primeiros-passos-exemplos-de-perguntas\"\u003e\u003c/a\u003e\r\n\r\n## 🧭 Primeiros Passos (Exemplos de Perguntas)\r\n\r\nExperimente perguntas como estas:\r\n\r\n- _“Qual a taxa de evasão do Campus Jacobina em 2024?”_\r\n- _“Quantos alunos evadiram do curso Técnico em Informática no último ano?”_\r\n- _“Evolução anual do número de concluintes desde 2017.”_\r\n- _“Comparar a evasão entre cursos integrados e subsequentes.”_\r\n- _“Qual curso teve a maior taxa de evasão em 2023?”_\r\n- _“Mostre um gráfico do número de evasões por curso desde 2017.”_\r\n- _“Quantos alunos evadiram do curso Técnico em Mineração no ano de 2020?”_\r\n- _“Qual a evolução do índice de eficiência acadêmica do Campus Jacobina de 2017 a 2024?”_\r\n- _“Quantos alunos estavam com matrícula ativa (em curso) em 2024?”_\r\n- _“Qual a taxa de evasão dos cursos subsequentes em 2023?”_\r\n\r\nSe o assistente não puder responder, ele indicará claramente que os dados não estão disponíveis ou que a pergunta está fora do escopo.\r\n\r\n---\r\n\r\n\u003ca id=\"entendendo-os-indicadores\"\u003e\u003c/a\u003e\r\n\r\n## 📊 Entendendo os Indicadores\r\n\r\n- **Concluídos (Eficiência Acadêmica | Concluídos):** número de alunos que concluíram o curso no ciclo de referência.\r\n- **Concluídos %:** percentual de concluintes em relação às matrículas dos ciclos concluídos no ano anterior.\r\n- **Índice de Eficiência Acadêmica %:** medida composta que combina o percentual de concluintes com uma projeção dos retidos que ainda podem concluir.\r\n- **Número de Evadidos:** alunos que abandonaram, foram desligados, transferidos ou reprovados no período.\r\n- **Retidos:** alunos que ultrapassaram o prazo previsto para conclusão, mas ainda estão matriculados.\r\n- **Taxa de Evasão %:** percentual de evadidos em relação ao total de matrículas dos ciclos concluídos no ano anterior.\r\n\r\nPara definições mais detalhadas, consulte os dicionários de dados disponíveis na Plataforma Nilo Peçanha.\r\n\r\n---\r\n\r\n\u003ca id=\"conjuntos-de-dados-disponíveis\"\u003e\u003c/a\u003e\r\n\r\n## 📂 Conjuntos de Dados Disponíveis\r\n\r\nO Contextus organiza os indicadores da Plataforma Nilo Peçanha em **três grandes grupos** (tabelas), todos filtrados exclusivamente para o Campus Jacobina. Entender o que cada grupo contém ajuda a formular perguntas ainda mais úteis.\r\n\r\n### 1. Indicadores Anuais de Eficiência Acadêmica\r\n\r\n- **O que traz:** visão geral do campus, ano a ano, com totais de concluintes, evadidos, retidos e as respectivas taxas.\r\n- **Principais informações disponíveis:**\r\n  - `Eficiência Acadêmica | Concluídos` e `Concluídos %`\r\n  - `Número de Evadidos` e `Taxa de Evasão %`\r\n  - `Retidos` e `Retidos %`\r\n  - `Índice de Eficiência Acadêmica %`\r\n- **Pergunta típica:** _“Qual a taxa de evasão do Campus Jacobina em 2024?”_\r\n\r\n### 2. Taxa de Evasão por Curso\r\n\r\n- **O que traz:** dados de evasão detalhados por curso, turno, tipo de oferta e modalidade de ensino.\r\n- **Principais informações disponíveis:**\r\n  - `nomeCurso` (ex.: Técnico em Informática, Computação)\r\n  - `tipoOferta` (Integrado, Subsequente, PROEJA etc.)\r\n  - `turnoCurso` e `ModalidadeEnsino`\r\n  - `Número de Matrículas`, `Matrículas | Número de Evadidos` e `Matrículas | Taxa de Evasão %`\r\n- **Perguntas típicas:** _“Qual curso teve a maior evasão em 2023?”_, _“Comparar evasão entre cursos integrados e subsequentes.”_\r\n\r\n### 3. Situação de Matrícula\r\n\r\n- **O que traz:** o detalhamento de cada matrícula (concluinte, em curso ou evadido) e o motivo da evasão.\r\n- **Principais informações disponíveis:**\r\n  - `categoriaSituacao` (Concluintes, Em curso, Evadidos)\r\n  - `nomeSituacao` (Abandono, Desligada, Concluída, Integralizada etc.)\r\n  - `FluxoRetido` (indica se o aluno ultrapassou o prazo regular)\r\n  - `Número de Matrículas`\r\n- **Perguntas típicas:** _“Quantos alunos abandonaram o curso em 2024?”_, _“Quantos estavam com matrícula ativa em 2023?”_\r\n\r\n\u003e 💡 **Lembre‑se:** todas as tabelas cobrem aproximadamente os anos de **2017 a 2024** e referem‑se apenas ao **Campus Jacobina**. O assistente se baseia nelas para responder suas dúvidas.\r\n\r\n---\r\n\r\n\u003ca id=\"dúvidas-frequentes\"\u003e\u003c/a\u003e\r\n\r\n## ❓ Dúvidas Frequentes\r\n\r\n**1. Preciso instalar alguma coisa?**\r\nNão. O Contextus está disponível online e pode ser usado diretamente pelo navegador.\r\n\r\n**2. Posso perguntar sobre outros campi do IFBA?**\r\nNo momento, o assistente está limitado aos dados do **Campus Jacobina**.\r\n\r\n**3. Os dados são atualizados automaticamente?**\r\nOs dados carregados refletem as versões dos arquivos fornecidos pela PNP até 2024. Novas edições podem ser incorporadas futuramente.\r\n\r\n**4. Minhas conversas ficam salvas?**\r\nSim, até 6 conversas ficam armazenadas no seu navegador (vinculadas ao dispositivo que você está usando). Você pode excluí‑las a qualquer momento.\r\n\r\n**5. O que fazer se a resposta não fizer sentido?**\r\nTente reformular a pergunta com termos mais diretos (ex.: “taxa de evasão por curso em 2023”). Se o problema persistir, entre em contato com o desenvolvedor através do e-mail \u003ca href=\"mailto:zolppy.me@gmail.com\" target=\"_blank\"\u003e\u003cstrong\u003ezolppy.me@gmail.com\u003c/strong\u003e\u003c/a\u003e.\r\n\r\n---\r\n\r\n\u003ca id=\"autor-e-orientação\"\u003e\u003c/a\u003e\r\n\r\n## 👨‍🎓 Autor e Orientação\r\n\r\n- **Desenvolvedor:** Gabriel Cavalcante de Jesus Oliveira\r\n- **Curso:** Licenciatura em Computação\r\n- **Instituição:** Instituto Federal da Bahia – Campus Jacobina\r\n- **Orientador(a):** Prof. Me. Ivo Chaves de França\r\n\r\n---\r\n\r\n\u003ca id=\"licença\"\u003e\u003c/a\u003e\r\n\r\n## 📄 Licença\r\n\r\nEste projeto está licenciado sob a **Licença MIT** – veja o arquivo [LICENSE](LICENSE) para detalhes.\r\n\r\n---\r\n\r\n\u003ca id=\"agradecimentos\"\u003e\u003c/a\u003e\r\n\r\n## 🙏 Agradecimentos\r\n\r\n- À **Plataforma Nilo Peçanha** por disponibilizar os dados públicos da Rede Federal.\r\n- Ao **IFBA Campus Jacobina** pelo suporte e formação.\r\n- Ao orientador **Prof. Me. Ivo Chaves de França**.\r\n- À comunidade open‑source pelas ferramentas que tornaram este projeto possível.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzolppy%2Fcontextus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzolppy%2Fcontextus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzolppy%2Fcontextus/lists"}