Pular para o conteúdo principal
PromptQuorumFeito para humanos. Estruturado para IA.
Início/LLMs locais avançados
Local AI Agents & Tool Use

DSPy: análise, recursos e alternativas

·11 min de leituraPor Hans Kuepper · Fundador do PromptQuorum · Mecanismo de descoberta de IA de pesos abertos e código aberto

DSPy é um framework Python gratuito e de código aberto (licença MIT) criado pela Stanford NLP para programar, em vez de dar prompts, a modelos de linguagem, disponível no repositório GitHub stanfordnlp/dspy. Os desenvolvedores definem Signatures tipadas que descrevem as entradas e saídas de uma tarefa, combinam-nas em Modules (Predict, ChainOfThought, ReAct, entre outros) que definem a estratégia de execução, e executam um Optimizer — BootstrapFewShot, MIPROv2 ou GEPA — que busca automaticamente a formulação das instruções e os exemplos few-shot com melhor pontuação segundo uma métrica, em vez de uma pessoa ajustar um prompt manualmente. O repositório já ultrapassou 37.900 estrelas no GitHub e 3.300 forks, é distribuído como o pacote dspy no PyPI (pip install dspy, versão atual 3.3.1) e está em desenvolvimento ativo, com uso em produção documentado em empresas como Shopify, Databricks e AWS.

Principais conclusões

  • Licença MIT — gratuito para usar, modificar e hospedar você mesmo, inclusive comercialmente
  • O repositório GitHub stanfordnlp/dspy já ultrapassou 37.900 estrelas e 3.300 forks (iniciado na Stanford NLP em dezembro de 2022)
  • Pacote PyPI dspy, versão atual 3.3.1 (21 de agosto de 2026) — mantido ativamente
  • Abstrações principais: Signatures (E/S tipadas), Modules (Predict, ChainOfThought, ReAct), Optimizers (BootstrapFewShot, MIPROv2, GEPA)
  • Categoria: otimização de prompts/pesos para programas LLM — não é um framework de orquestração multiagente como LangChain ou CrewAI
  • Instalação: pip install dspy, requer configurar um provedor de LLM antes de executar um programa

📍 Em uma frase

DSPy é um framework Python gratuito, licença MIT, da Stanford NLP que permite programar tarefas de LLM com Signatures e Modules tipados e depois otimiza automaticamente os prompts e exemplos few-shot com algoritmos como MIPROv2, em vez de engenharia de prompts manual.

💬 Em termos simples

Com o DSPy, você descreve como código o que quer que um LLM faça — entradas, saídas, as etapas — e o framework busca sozinho a melhor formulação real do prompt testando opções contra exemplos, em vez de você adivinhar e editar o texto do prompt manualmente.

📌Nota: O DSPy resolve um problema diferente da maioria dos frameworks de agentes desta série — ele otimiza os prompts dentro de um pipeline em vez de orquestrar conversas multiagente. Veja o Local LLM Software Directory para entender onde o DSPy se encaixa entre frameworks de agentes e pipelines.

DSPy é um framework Python gratuito e de código aberto (licença MIT) da Stanford NLP para programar, em vez de dar prompts, a modelos de linguagem, disponível no repositório GitHub stanfordnlp/dspy. Em vez de escrever e ajustar strings de prompt manualmente, os desenvolvedores definem Signatures tipadas (as entradas e saídas de uma tarefa), combinam-nas em Modules (Predict, ChainOfThought, ReAct, entre outros) e executam um Optimizer — como BootstrapFewShot ou MIPROv2 — que busca automaticamente a formulação do prompt e os exemplos few-shot com melhor pontuação segundo uma métrica sobre um conjunto de treinamento. O DSPy não orquestra conversas multiagente como LangChain ou CrewAI; ele otimiza os prompts, e opcionalmente os pesos, dentro do pipeline que você constrói.

DSPy: análise, recursos e alternativas

Da pesquisa em Stanford ao framework de produção

A Stanford NLP começou a desenvolver o DSPy em dezembro de 2022, e o repositório GitHub stanfordnlp/dspy o descreve como "o framework para programar — em vez de dar prompts a — modelos de linguagem". O projeto nasceu de pesquisa acadêmica sobre compilar pipelines de LLM declarativos, em vez de escrever strings de prompt manualmente.

O framework introduziu cedo Signatures e Modules como abstrações principais, e ampliou seus algoritmos de otimização ao longo do tempo: BootstrapFewShot para seleção rápida de exemplos few-shot, seguido de MIPROv2, que busca conjuntamente instruções e exemplos few-shot via otimização bayesiana, e mais recentemente GEPA, descrito na documentação como o ajuste automático de prompts "até a qualidade convergir" a partir de exemplos e uma função de pontuação.

O DSPy está em desenvolvimento ativo no momento desta análise: o pacote dspy no PyPI estava na versão 3.3.1, lançada em 21 de agosto de 2026. O site do projeto reporta mais de 454 colaboradores e documenta uso em produção em empresas como Shopify, Databricks e AWS.

Diferente de vários outros frameworks desta série, o DSPy não foi arquivado, não entrou em um modo declarado de apenas manutenção e não tem projeto sucessor anunciado — é a implementação canônica, ativamente desenvolvida, das ideias que introduziu.

Desenvolvimento começa na Stanford NLP

Date:
2022-12
What it means:
O repositório stanfordnlp/dspy e as abstrações principais Signature/Module surgem

Otimizador BootstrapFewShot

Date:
Primeiras versões
What it means:
Um otimizador básico rápido gera exemplos few-shot a partir de um conjunto de treinamento

Otimizador MIPROv2

Date:
Versões posteriores
What it means:
Busca conjunta de instruções e exemplos few-shot via otimização bayesiana é lançada

Otimizador GEPA

Date:
Versões recentes
What it means:
Um otimizador mais novo para ajuste automático de prompts contra uma função de pontuação

dspy 3.3.1 no PyPI

Date:
2026-08-21
What it means:
Última versão verificada no momento desta análise — o desenvolvimento ativo continua

📌Nota: O nome do pacote PyPI do DSPy tem uma história interessante: o nome dspy já estava ocupado no PyPI, então o projeto foi distribuído primeiro como dspy-ai. O nome canônico atual é dspy — use pip install dspy para instalações atuais.

O que é o DSPy?

O DSPy é um framework Python de código aberto (licença MIT, mantido ativamente, github.com/stanfordnlp/dspy) criado pela Stanford NLP para programar tarefas de modelos de linguagem de forma declarativa, e depois compilar essas declarações em prompts otimizados — e opcionalmente pesos otimizados — em vez de uma pessoa iterar manualmente sobre texto de prompt.

  • Signature: uma definição tipada das entradas e saídas de uma tarefa, escrita como uma classe curta ou string (por exemplo, "question -> answer"), portável entre diferentes LLMs subjacentes e estratégias de prompt
  • Module: um componente que implementa uma estratégia de execução em torno de uma Signature — Predict para conclusão direta, ChainOfThought para raciocínio passo a passo, ReAct para loops de raciocínio que usam ferramentas, entre outros
  • Optimizer (antes chamado de teleprompter): um algoritmo que ajusta os prompts e exemplos few-shot dentro de um programa DSPy segundo uma métrica, de forma automática em vez de manual — otimizadores nomeados incluem BootstrapFewShot, MIPROv2 e GEPA
  • Compilar um programa: executar um otimizador sobre um conjunto de treinamento e uma função de pontuação produz um programa compilado com instruções e exemplos ajustados já incorporados, que você então executa como qualquer outro programa DSPy
  • Agnóstico de modelo: o DSPy se conecta ao provedor de LLM que você configura, em vez de trazer um modelo embutido, e o mesmo código de Signature/Module pode ser reotimizado para um modelo subjacente diferente
  • Não é um orquestrador multiagente: o DSPy não tem um conceito embutido de vários agentes se comunicando, como o CrewAI ou o AutoGen — um programa DSPy é tipicamente um único pipeline de Modules, embora módulos ReAct possam chamar ferramentas dentro de um loop de raciocínio

Programar, não dar prompts — o que essa frase significa na prática

No DSPy, você não escreve uma string de prompt cuja redação ajusta manualmente. Você descreve o formato da tarefa com uma Signature e escolhe um Module que define a estratégia de raciocínio; o texto do prompt realmente enviado ao LLM é gerado e, ao compilar com um Optimizer, ajustado automaticamente. Essa é a diferença central de posicionamento do framework em relação a bibliotecas de prompts e frameworks de orquestração que tratam a própria string de prompt como a unidade que se redige.

python
pip install dspy

# Exemplo mínimo: Signature + Module + Optimizer
import dspy

class AnswerQuestion(dspy.Signature):
    """Answer a question factually."""
    question: str = dspy.InputField()
    answer: str = dspy.OutputField()

qa = dspy.ChainOfThought(AnswerQuestion)
result = qa(question="What is the capital of France?")
print(result.answer)

Quanto custa o DSPy?

O DSPy em si é gratuito sob a licença MIT — não há assinatura, nível pago ou serviço hospedado pela Stanford a pagar. Você paga pela sua própria computação, além de eventuais taxas de API do provedor de LLM que configurar.

  • DSPy (o framework de código aberto): gratuito para sempre sob a licença MIT, autogerenciado, sem limites de uso, sem necessidade de conta para executá-lo
  • Nenhum produto hospedado ou assinatura: o DSPy é uma biblioteca que você importa e executa por conta própria, não um serviço gerenciado — não há nada para assinar
  • Custo opcional: taxas de API do provedor de LLM configurado (por exemplo, preços por token de um provedor em nuvem), caso você conecte um modelo em nuvem em vez de um local
  • Consideração de custo dos otimizadores: executar um otimizador como o MIPROv2 faz múltiplas chamadas ao LLM para buscar a melhor configuração de prompt, então compilar um programa tem seu próprio custo de chamadas de API, além de executar o programa compilado depois

Como instalar e começar a usar o DSPy?

Instale o DSPy pelo PyPI com pip install dspy. Não é necessário clonar, usar Docker ou um binário de CLI separado — o DSPy é usado como um import Python comum.

  1. 1
    Instale o pacote: pip install dspy.
  2. 2
    Configure um provedor de LLM — por exemplo, dspy.configure(lm=dspy.LM('openai/gpt-4o-mini', api_key='your-key')) para um modelo hospedado, ou aponte para um endpoint local compatível com OpenAI.
  3. 3
    Defina uma Signature descrevendo as entradas e saídas da sua tarefa, seja como uma string curta ("question -> answer") ou como uma classe tipada com dspy.InputField() / dspy.OutputField().
  4. 4
    Envolva a Signature em um Module — dspy.Predict(...) para uma chamada direta, ou dspy.ChainOfThought(...) para raciocínio passo a passo — e chame-o como uma função.
  5. 5
    Opcional: monte um pequeno conjunto de treinamento e uma função de pontuação, e então execute um otimizador como dspy.BootstrapFewShot ou dspy.MIPROv2 para compilar uma versão ajustada do seu programa.
  6. 6
    Veja a documentação do DSPy para o conjunto completo de tutoriais, incluindo pipelines RAG, loops de agente com ReAct e configuração de otimizadores.

Nome de pacote antigo

Tutoriais mais antigos e algumas bases de código existentes referenciam pip install dspy-ai — esse era o nome original no PyPI antes de o projeto recuperar o nome mais curto dspy. Instalações novas devem usar pip install dspy.

É preciso Docker ou GPU para rodar o DSPy?

Não. O DSPy é uma biblioteca Python que chama um provedor de LLM que você configura — não exige Docker ou GPU local, a menos que você esteja rodando separadamente um servidor de modelo local.

O DSPy funciona com modelos locais?

Sim, se o modelo local for servido por um endpoint compatível com OpenAI ou outro suportado, para o qual você aponte a configuração de LM do DSPy — o DSPy em si não traz um modelo embutido.

Quem deveria usar o DSPy?

O DSPy se encaixa para desenvolvedores que já escrevem pipelines de LLM em Python e querem que os prompts dentro delas sejam ajustados com base em resultados mensuráveis, em vez de tentativa e erro manual. É menos adequado para equipes que precisam principalmente de coordenação multiagente ou de uma interface sem código.

Use o DSPy se

  • Você tem um pipeline de LLM em Python e uma forma de pontuar suas saídas — os otimizadores do DSPy precisam de uma métrica e de um conjunto de treinamento para buscar
  • Você quer que prompts e exemplos few-shot sejam gerados e ajustados de forma programática, reprodutível e reotimizável ao trocar o modelo subjacente
  • Você se sente confortável definindo tarefas como Signatures tipadas e compondo Modules em código, em vez de trabalhar em um construtor visual sem código
  • Sua tarefa se beneficia de estratégias de raciocínio estruturadas como ChainOfThought ou loops que usam ferramentas como ReAct, e você quer que essas estratégias sejam ajustadas em vez de receberem prompts manuais

Evite o DSPy se

  • Você precisa de orquestração multiagente — vários agentes de LLM se comunicando, delegando e coordenando tarefas — esse é o trabalho principal do CrewAI, do AutoGen ou do LangGraph, não do DSPy
  • Você precisa de uma interface sem código ou low-code — o DSPy é uma biblioteca Python sem construtor visual, diferente de ferramentas como Langflow ou Flowise
  • Você não tem exemplos rotulados nem uma função de pontuação para sua tarefa — os otimizadores do DSPy precisam de algo contra o qual medir; sem isso, você volta a escrever prompts manualmente de qualquer forma
  • Você precisa do ecossistema mais amplo possível de integrações prontas (carregadores de documentos, conectores de bancos vetoriais, ferramentas de agentes) — o LangChain tem uma superfície de integração maior para isso

Quando você NÃO deveria usar o DSPy?

Evite o DSPy quando sua tarefa na verdade envolve coordenar vários agentes ou conectar integrações de ferramentas de terceiros, em vez de otimizar o prompt dentro de um único pipeline.

  • Uma equipe que precisa de um construtor de fluxo visual e sem código — o DSPy é code-first, sem interface de arrastar e soltar
  • Um projeto que é fundamentalmente coordenação multiagente (agentes delegando subtarefas uns aos outros) — um framework feito para esse padrão, como CrewAI ou AutoGen, se encaixa melhor estruturalmente
  • Um script pontual em que um único prompt escrito manualmente já funciona bem o suficiente — introduzir Signatures, Modules e um loop de otimização adiciona uma sobrecarga de engenharia que só compensa quando é preciso uma melhoria de prompt mensurável e repetível
  • Uma tarefa sem forma de pontuar a correção — os otimizadores do DSPy exigem uma função de métrica, então tarefas puramente subjetivas sem exemplos rotulados ganham pouco com a etapa de otimização
  • Use o DSPy justamente quando você tiver um pipeline, uma métrica e um conjunto de treinamento, e quiser automatizar e tornar reprodutível a etapa de engenharia de prompts

DSPy vs. alternativas

O DSPy ocupa uma categoria diferente da maioria dos frameworks de orquestração de agentes: ele otimiza prompts e exemplos few-shot dentro de um pipeline, em vez de coordenar vários agentes. Os pontos de comparação mais próximos são outros frameworks Python para construir pipelines de LLM, ainda que sua tarefa principal difira da do DSPy.

Ferramenta
Tarefa principal
Licença
Status
Melhor para
DSPyOtimização de prompts/pesosMITAtivoAjustar prompts com base em uma métrica
LangChainConstrução geral de pipelines de LLMMITAtivoO ecossistema de integrações mais amplo
LlamaIndexFramework de dados focado em RAGMITAtivoPipelines de geração aumentada por recuperação
Semantic KernelComposição estruturada de prompts/skillsMITAtivo (convergindo para o MAF)SDK empresarial .NET/Python/Java

Esta tabela compara o DSPy com frameworks de pipeline Python com a sobreposição conceitual mais próxima, não com orquestradores multiagente — o DSPy não compete diretamente com CrewAI ou AutoGen, que resolvem coordenação de agentes, não otimização de prompts.

Comparar no diretório

Erros comuns ao avaliar o DSPy

Esses erros vêm de tratar o DSPy como um framework multiagente, ou de pular a etapa de otimização que é o real propósito do framework.

Erro 1: esperar que o DSPy orquestre vários agentes

Os Modules do DSPy se compõem em um único pipeline, não em uma equipe de agentes que se comunicam. Equipes que precisam de agentes delegando subtarefas uns aos outros devem avaliar em vez disso CrewAI, AutoGen ou LangGraph — o DSPy pode otimizar os prompts dentro de uma etapa de um desses pipelines, mas não substitui a própria camada de orquestração.

Erro 2: nunca executar um otimizador

Escrever Signatures e Modules sem nunca compilar o programa com um otimizador como BootstrapFewShot ou MIPROv2 pula a parte do DSPy que realmente melhora prompts escritos manualmente — um Module executado com prompting padrão, não otimizado, pode ter desempenho pior do que um prompt cuidadosamente ajustado à mão em um fluxo de trabalho tradicional.

Erro 3: confundir dspy-ai e dspy no PyPI

Tutoriais antigos referenciam pip install dspy-ai, o nome de pacote original no PyPI do projeto antes de recuperar o nome mais curto dspy. Instalações atuais devem usar pip install dspy para obter o pacote mantido e atualizado.

Perguntas frequentes

O DSPy ainda é mantido?

Sim. O repositório stanfordnlp/dspy está em desenvolvimento ativo; o pacote dspy no PyPI estava na versão 3.3.1, lançada em 21 de agosto de 2026, no momento desta análise.

O DSPy é gratuito para usar?

Sim. O DSPy tem licença MIT e é gratuito para uso comercial, modificação e hospedagem própria. Não há assinatura ou produto hospedado a pagar.

Qual é a diferença entre DSPy e LangChain?

O LangChain é um framework de propósito geral para construir pipelines de LLM com um amplo ecossistema de integrações; o DSPy foca especificamente em programar tarefas com Signatures e Modules tipados e depois otimiza automaticamente os prompts e exemplos few-shot com base em uma métrica. Eles resolvem problemas diferentes e complementares.

O que são Signatures e Modules do DSPy?

Uma Signature é uma definição tipada das entradas e saídas de uma tarefa (por exemplo, "question -> answer"). Um Module implementa uma estratégia de execução em torno de uma Signature — Predict para conclusão direta, ChainOfThought para raciocínio passo a passo, ReAct para loops de raciocínio que usam ferramentas.

O que são os otimizadores do DSPy?

Otimizadores, antes chamados de teleprompters, são algoritmos que ajustam automaticamente os prompts e exemplos few-shot dentro de um programa DSPy com base em uma métrica e um conjunto de treinamento — otimizadores nomeados incluem BootstrapFewShot, MIPROv2 e GEPA.

Como instalar o DSPy?

Execute pip install dspy. Esse é o nome canônico atual do pacote no PyPI; um pacote dspy-ai mais antigo o precedeu.

O DSPy substitui frameworks multiagente como CrewAI ou AutoGen?

Não. O DSPy otimiza prompts dentro de um pipeline; ele não orquestra vários agentes se comunicando como o CrewAI ou o AutoGen fazem. As duas categorias são complementares, não concorrentes.

Sob qual licença o DSPy é distribuído?

MIT, que permite uso comercial gratuito, modificação e hospedagem própria.

Quem criou o DSPy?

O DSPy foi criado na Stanford NLP, com desenvolvimento iniciado em dezembro de 2022. O projeto reporta mais de 454 colaboradores e uso em produção documentado em empresas como Shopify, Databricks e AWS.

Quantas estrelas no GitHub o DSPy tem?

O repositório stanfordnlp/dspy já ultrapassou 37.900 estrelas no GitHub e 3.300 forks, em setembro de 2026.

Fontes

← Voltar para LLMs locais avançados

MCP