# Curso Intensivo do OpenAI Agents SDK

> Uma série de tutoriais abrangentes para aprender o SDK de Agentes da OpenAI, desde conceitos básicos até avançados. Este curso intensivo foi concebido para levá-lo do zero ao herói na construção de agentes de IA com o SDK de Agentes da OpenAI.

- Fonte: https://doutorai.pt/apps/openai-sdk-crash-course
- Categoria: Cursos de Frameworks
- Dificuldade: Médio
- Modelos: OpenAI
- Frameworks: OpenAI Agents SDK
- Corre local?: Precisa de APIs cloud
- Chaves necessárias: OPENAI_API_KEY
- Licença: Apache-2.0
- Site: Doutor AI (https://doutorai.pt) - ferramentas de IA para pequenos negócios em português

## Tutorial completo

# 🚀 Curso Intensivo do OpenAI Agents SDK

Uma série de tutoriais abrangentes para aprender o OpenAI Agents SDK desde os conceitos básicos até os avançados. Este curso intensivo foi concebido para te levar do zero ao herói na construção de agentes de IA com o OpenAI Agents SDK.

## 📚 O que é o OpenAI Agents SDK?

O OpenAI Agents SDK é um poderoso framework para **desenvolver e implementar agentes de IA**. Ele oferece:

### Principais Características:
- **Orquestração de Agentes**: Criar e gerir agentes de IA inteligentes
- **Integração de Ferramentas**: Expandir agentes com ferramentas personalizadas e integradas
- **Saídas Estruturadas**: Respostas seguras em termos de tipo utilizando modelos Pydantic
- **Fluxos de Trabalho Multi-Agente**: Coordenar múltiplos agentes com transferências
- **Execução em Tempo Real**: Métodos de execução síncrona, assíncrona e em streaming
- **Integração de Voz**: Capacidades de voz estática, em streaming e em tempo real
- **Gestão de Sessões**: Memória e histórico de conversação automáticos
- **Pronto para Produção**: Rastreio, guardrails e monitorização integrados

## 🎯 Caminho de Aprendizagem

Este curso intensivo cobre os conceitos essenciais do OpenAI Agents SDK através de tutoriais práticos:

### 📚 **Tutoriais**

#### **🌱 Camada de Fundação**

1. **1_starter_agent** - O teu primeiro agente OpenAI
   - Criação e configuração básica de agentes
   - Compreensão dos diferentes métodos de execução
   - Processamento de texto simples e respostas

2. **2_structured_output_agent** - Respostas seguras em termos de tipo
   - **Agente de Suporte** - Converter queixas em tickets estruturados
   - **Agente de Avaliação de Produto** - Extrair dados estruturados de avaliações
   - Modelos Pydantic e validação

#### **🔧 Camada de Capacidades Centrais**

3. **3_tool_using_agent** - Ferramentas e funções do agente
   - Ferramentas de função personalizadas com `@function_tool`
   - Ferramentas integradas (WebSearch, CodeInterpreter, FileSearch)
   - Integração de ferramentas e padrões de execução

4. **4_running_agents** - Domínio da execução e funcionamento
   - O ciclo do agente: Chamadas LLM, execução de ferramentas, transferências
   - Métodos de execução síncrona, assíncrona e em streaming  
   - Eventos de streaming avançados e tratamento de exceções
   - Configuração de execução e gestão de conversas

5. **5_context_management** - Gestão de estado e contexto
   - Passagem de contexto entre execuções
   - Persistência e gestão de estado
   - Controlo do fluxo de conversação

#### **🧠 Camada de Funcionalidades Avançadas**

6. **6_guardrails_validation** - Segurança e validação
   - Guardrails de entrada para validação do utilizador
   - Guardrails de saída para filtragem de respostas
   - Validação de regras de negócio personalizadas

7. **7_sessions** - Gestão de sessões e memória
   - Histórico de conversação automático com SQLiteSession
   - Operações de memória e correções de conversação
   - Gestão e organização de múltiplas sessões

#### **🤝 Camada Multi-Agente**

8. **8_handoffs_delegation** - Transferências e delegação de agentes
   - Delegação de tarefas de agente para agente
   - Sistemas de triagem e roteamento inteligente
   - Configuração avançada de transferências com callbacks

9. **9_multi_agent_orchestration** - Fluxos de trabalho complexos
   - Execução paralela de agentes com `asyncio.gather()`
   - Agentes como padrões de orquestração de ferramentas
   - Coordenação de fluxos de trabalho em múltiplas etapas

#### **🔍 Camada de Produção**

10. **10_tracing_observability** - Monitorização e depuração
    - Rastreio integrado e visualização de execução
    - Rastreios e spans personalizados para fluxos de trabalho complexos
    - Monitorização e otimização de desempenho

#### **🎙️ Voz e Funcionalidades Avançadas**

11. **11_voice** - Agentes de voz e conversação em tempo real
    - Processamento de voz estática (interação em turnos)
    - Processamento de voz em streaming (conversação em tempo real)
    - Agentes de voz em tempo real (latência ultra-baixa com WebSocket)
    - Conversão de fala em texto, texto em fala e pipelines de voz

## 🛠️ Pré-requisitos

Antes de começares este curso intensivo, assegura-te de que tens:

- **Python 3.8+** instalado (Python 3.9+ necessário para funcionalidades de voz)
- **Chave da API OpenAI** da [OpenAI Platform](https://platform.openai.com/api-keys)
- Compreensão básica de Python e APIs
- Familiaridade com conceitos async/await (útil mas não obrigatório)
- **Para tutoriais de voz**: Microfone e colunas/fones

## 📖 Como Usar Este Curso

Cada tutorial segue uma estrutura consistente:

- **README.md**: Explicação do conceito e objetivos de aprendizagem
- **Ficheiros Python**: Contém as implementações e exemplos do agente
- **Interfaces interativas**: Aplicações web Streamlit para testes práticos
- **Submódulos**: Exemplos organizados para diferentes conceitos
- **requirements.txt**: Dependências para o tutorial
- **env.example**: Modelo de variável de ambiente

### Abordagem de Aprendizagem:
1. **Lê o README** para entender o conceito
2. **Examina o código** para ver a implementação
3. **Executa os exemplos** para ver os agentes em ação
4. **Experimenta** modificando o código
5. **Usa interfaces interativas** para testes práticos
6. **Experimenta funcionalidades de voz** (tutorial 11) com o teu microfone
7. **Avança para o próximo tutorial** quando estiveres pronto

## 🎯 Características do Tutorial

Cada tutorial inclui:
- ✅ **Explicação clara do conceito**
- ✅ **Exemplos de código mínimos e funcionais**
- ✅ **Casos de uso do mundo real**
- ✅ **Instruções passo a passo**
- ✅ **Interfaces web interativas**
- ✅ **Melhores práticas e dicas**

## 🚀 Início Rápido

1. **Clona o repositório** e navega até este diretório
2. **Escolhe um tutorial** da lista acima
3. **Segue as instruções do README** para esse tutorial
4. **Instala as dependências**: `pip install -r requirements.txt`
5. **Configura o ambiente**: Copia `env.example` para `.env` e adiciona a tua chave de API
6. **Executa os exemplos** e começa a aprender!

## 🔧 Configuração do Ambiente

Cada tutorial requer uma chave de API da OpenAI. Cria um ficheiro `.env` em cada diretório de tutorial:

```bash
OPENAI_API_KEY=sk-your_openai_key_here
```

Get your API key from: [https://platform.openai.com/api-keys](https://platform.openai.com/api-keys)

## 💡 Dicas de Aprendizagem

- **Começa Sequencialmente**: Segue os tutoriais na ordem para uma melhor experiência de aprendizagem
- **Experimenta Livremente**: Modifica o código e vê o que acontece
- **Usa Interfaces Web**: Aplicações interativas tornam a aprendizagem mais envolvente
- **Lê as Mensagens de Erro**: Muitas vezes contêm orientações úteis
- **Junta-te à Comunidade**: Interage com outros aprendizes e partilha experiências

## 🚨 Problemas Comuns

### Problemas com a Chave da API
- Certifica-te de que o teu ficheiro `.env` está no diretório do tutorial
- Verifica se a tua chave da API é válida e tem créditos suficientes
- Verifica se há erros de digitação no nome da variável de ambiente

### Erros de Importação
- Assegura-te de que instalaste os requisitos: `pip install -r requirements.txt`
- Verifica se estás a usar Python 3.8 ou superior
- Tenta criar um ambiente virtual se tiveres conflitos

### Limitação de Taxa
- A OpenAI tem limites de taxa com base no teu plano
- Se atingires os limites, espera um momento antes de tentares novamente
- Considera atualizar o teu plano OpenAI para limites mais altos

## 📚 Recursos Adicionais

- [Documentação do OpenAI Agents SDK](https://openai.github.io/openai-agents-python/)
- [Plataforma OpenAI](https://platform.openai.com/)
- [Documentação do Pydantic](https://docs.pydantic.dev/)
- [Documentação do Streamlit](https://docs.streamlit.io/)

## 🤝 Contribuições

Sente-te à vontade para contribuir com melhorias, correções de bugs ou tutoriais adicionais. Cada tutorial deve:
- Ser autónomo e executável
- Incluir documentação clara
- Seguir a estrutura estabelecida
- Usar código mínimo e compreensível

## 📊 Acompanhamento de Progresso

Acompanha o teu progresso através do curso:

- [ ] **Tutorial 1**: Criação de agente básico ✨
- [ ] **Tutorial 2**: Saídas estruturadas com Pydantic
- [ ] **Tutorial 3**: Integração de ferramentas e funções personalizadas
- [ ] **Tutorial 4**: Domínio dos métodos de execução
- [ ] **Tutorial 5**: Gestão de contexto e estado
- [ ] **Tutorial 6**: Guardrails e validação
- [ ] **Tutorial 7**: Gestão de sessões e memória
- [ ] **Tutorial 8**: Transferências de agentes e delegação
- [ ] **Tutorial 9**: Orquestração multi-agente
- [ ] **Tutorial 10**: Rastreio e observabilidade
- [ ] **Tutorial 11**: Agentes de voz e conversa em tempo real 🎯

Boa aprendizagem! 🚀

## Poupe horas todas as semanas com IA, sem complicações

O **Doutor AI** dá-lhe 1859 prompts de IA prontos a copiar, por indústria e em português simples - mais uma biblioteca técnica completa para quem quer ir mais longe. [Ver planos →](https://doutorai.pt/precos)

---
Conteúdo de Doutor AI (https://doutorai.pt). Ao citar, indique a fonte: https://doutorai.pt/apps/openai-sdk-crash-course
