Python Mínimo

Por que Python?

Python é a linguagem mais usada em IA por três motivos:

  1. Sintaxe simples → parece pseudocódigo
  2. Bibliotecas → milhões de pacotes prontos
  3. Comunidade → documentação e tutoriais em todo lugar

Mas mais importante: o ecossistema de IA vive em Python. Google Gemini, HuggingFace, Anthropic, Meta - todos lançam suas APIs primeiro em Python.

Fundamentos Teóricos

O que é uma API?

Definição formal: API (Application Programming Interface) é um conjunto de definições e protocolos que permite a comunicação entre sistemas de software, especificando os métodos e formatos de dados que podem ser usados para solicitar e trocar informações.

No contexto de LLMs: Uma API de LLM é uma interface HTTP que permite enviar prompts (requests) para um modelo hospedado remotamente e receber respostas (responses), sem precisar rodar o modelo localmente.

Arquitetura Cliente-Servidor

cliente-servidor.svg

Conceitos Fundamentais

  • Request (Requisição): Mensagem enviada do cliente para o servidor. Contém: endpoint URL, método (POST/GET), headers, body
  • Response (Resposta): Mensagem retornada pelo servidor. Contém: status code, headers, body (dados)
  • Endpoint: URL específica que recebe requisições (ex: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent)
  • Autenticação: Verificação de identidade via API Key (token secreto)
  • Rate Limiting: Limite de requisições por período (para evitar abuso)

O Mínimo que Você Precisa Saber de Python

Variáveis

# Tipos básicos
nome = "Maria"      # texto (string)
idade = 25          # número inteiro (int)
altura = 1.70       # número decimal (float)
estudante = True    # verdadeiro/falso (bool)

# F-strings (formatação moderna)
mensagem = f"{nome} tem {idade} anos"
print(mensagem)  # "Maria tem 25 anos"

Listas e Dicionários

# Lista: sequência ordenada
frutas = ["maçã", "banana", "laranja"]
frutas.append("uva")       # adiciona no final
frutas[0]                  # "maçã" (primeiro elemento)
frutas[-1]                 # "uva" (último elemento)
len(frutas)                # 4 (tamanho)

# Dicionário: pares chave-valor
pessoa = {
    "nome": "João",
    "idade": 30,
    "cidade": "São Paulo"
}
pessoa["nome"]             # "João"
pessoa["idade"] = 31       # atualiza valor
pessoa["profissao"] = "Dev"  # adiciona nova chave

Funções

# Definição básica
def saudar(nome):
    return f"Olá, {nome}!"

# Chamada
resultado = saudar("João")  # "Olá, João!"

# Com valor padrão
def saudar(nome, saudacao="Olá"):
    return f"{saudacao}, {nome}!"

saudar("Maria")            # "Olá, Maria!"
saudar("Maria", "Oi")      # "Oi, Maria!"

# Com retorno múltiplo
def processar(texto):
    return len(texto), texto.upper()

tamanho, maiusculo = processar("hello")  # (5, "HELLO")

Tratamento de Exceções

# Try-except básico
try:
    resultado = 10 / 0
except ZeroDivisionError:
    resultado = None
    print("Erro: divisão por zero")

# Com múltiplos erros
try:
    arquivo = open("nao_existe.txt")
except FileNotFoundError:
    print("Arquivo não encontrado")
except PermissionError:
    print("Sem permissão")
except Exception as e:
    print(f"Erro inesperado: {e}")
finally:
    print("Sempre executa")

← Voltar para Guilda de IA