Repositório de atividades da residência, de introdução à API de LLM até projeto de arquitetura RAG.
Autora: Pamela Freitas
| Aula | Tema | Entrega |
|---|---|---|
| 01 | Primeira chamada à API de LLM | AULA_01/ — hello_llm.py e notebook |
| 02 | Extração de PDF e saída estruturada | AULA_02/ — conversores e JSON dos artigos |
| 03 | Embeddings: vetores, distância e similaridade | AULA_03/Aula_Embeddings.ipynb — notebook com visualização 2D via MDS |
| 04 | Experimentos de chunking e contagem de tokens | AULA_04/results/ — 10 estratégias em 6 documentos |
| 05 | Embeddings e schema de metadados | AULA_05/ — exercícios e schema_metadados.md |
| 06 | Projeto e arquitetura de uma aplicação RAG | ➡️ AULA_06/README.md |
Utilitário: ConverterPDFtoMd/ — conversão dos PDFs de referência para Markdown, usada nas Aulas 04 e 05.
A entrega mais completa do repositório. Projeto de duas arquiteturas RAG para cenários contrastantes, do documento original até a resposta ao usuário:
- Cenário A — suporte técnico para laboratório de fotografia e impressão de grandes formatos (documento denso, erro crítico, usuário técnico).
- Cenário B — assistente de e-commerce de produtos fotográficos personalizados (documento volátil, erro comercial, usuário leigo).
Inclui identificação do problema, organização dos documentos, pipeline de ingestão, metadados, chunking, embeddings, diagramas de arquitetura, tabela de decisões, riscos reconhecidos e comparação entre os dois projetos.
As atividades com código usam Python e a API da OpenAI. Recomendado rodar em ambiente virtual (venv) para isolar as dependências.
# Linux/macOS
python3 -m venv venv
# Windows
python -m venv venv# Linux/macOS
source venv/bin/activate
# Windows
venv\Scripts\activateO ambiente está ativo quando aparece (venv) no início da linha do terminal.
pip install -r requirements.txtChave de API nunca vai dentro do código nem para o repositório. Crie um arquivo .env a partir do .env.example:
OPENAI_API_KEY=sua_chave_de_api_aqui
OPENAI_MODEL=gpt-4o-miniO .env já está listado no .gitignore, então não é enviado ao GitHub.
cd AULA_01
python hello_llm.pydeactivate