Repolode
567-labs

567-labs/instructor

Biblioteca Python que extrai dados estruturados e validados com Pydantic de LLMs de vários provedores, com novas tentativas automáticas em caso de falha na validação.

Estrelas
14,046
Forks
1,330
Issues abertas
214
Último commit
anteontem

O que é?

O Instructor extrai dados tipados das respostas de LLMs, permitindo definir o formato de saída desejado com um modelo Pydantic. Em vez de escrever schemas JSON manualmente e analisar texto bruto, você passa um response_model para o cliente e recebe de volta um objeto Python validado.

A biblioteca encapsula as APIs de vários provedores, incluindo OpenAI, Anthropic, Google, Ollama e Groq, em uma única interface criada com from_provider. Quando a validação falha, o Instructor envia a mensagem de erro de volta ao modelo e tenta novamente, até o limite configurável de max_retries. Também oferece suporte a objetos parciais em streaming e a modelos aninhados.

Além de Python, a documentação do projeto lista implementações em TypeScript, Ruby, Go, Elixir e Rust.

Recursos principais

  • 01Define schemas de saída com modelos Pydantic e retorna objetos validados.
  • 02Funciona com vários provedores de LLM por meio de uma única interface from_provider.
  • 03Repete automaticamente as tentativas quando a validação falha, enviando o erro de volta ao modelo.
  • 04Transmite objetos parciais conforme são gerados.
  • 05Oferece suporte a modelos aninhados e listas de modelos.

Casos de uso

  • Extrair campos como nomes, datas ou preços de texto livre.
  • Transformar as respostas de LLMs em dados tipados para o código da aplicação que os processa.
  • Criar pipelines que precisam de JSON confiável gerado por modelos, sem análise manual.

Início rápido

  1. 1

    Instale a biblioteca com pip

    pip install instructor
  2. 2

    Crie um cliente para seu provedor e extraia um modelo Pydantic

Antes de usar

  • É necessária uma chave de API ou um provedor de LLM em execução, como OpenAI ou Anthropic, ou um servidor Ollama local.

Tópicos

Perguntas frequentes

O que é instructor?
Biblioteca Python que extrai dados estruturados e validados com Pydantic de LLMs de vários provedores, com novas tentativas automáticas em caso de falha na validação. O Instructor extrai dados tipados das respostas de LLMs, permitindo definir o formato de saída desejado com um modelo Pydantic. Em vez de escrever schemas JSON manualmente e analisar texto bruto, você passa um response_model para o cliente e recebe de volta um objeto Python validado.
instructor é gratuito? Qual é a licença?
instructor é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
instructor ainda é mantido?
Manutenção ativa. O último commit de instructor foi em 20 de out. de 2026.
Para que posso usar instructor?
Extrair campos como nomes, datas ou preços de texto livre. Transformar as respostas de LLMs em dados tipados para o código da aplicação que os processa. Criar pipelines que precisam de JSON confiável gerado por modelos, sem análise manual.
Como instalar instructor?
Instale a biblioteca com pip: pip install instructor Crie um cliente para seu provedor e extraia um modelo Pydantic
Onde consigo instructor?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/567-labs/instructor

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados