Biblioteca Python para executar avaliações e guardrails em agentes usando modelos de decisão no estilo Jev, hospedados ou locais, com todas as verificações de um trace enviadas em uma única requisição.
BoundaryML/baml
BAML é uma linguagem de programação para criar agentes de IA, com funções tipadas, compilador baseado em Rust e suporte a chamadas de TypeScript, Python, Go e outras linguagens.
- Estrelas
- 9,486
- Forks
- 514
- Issues abertas
- 366
- Último commit
- há 20 horas
O que é?
BAML é uma linguagem de programação voltada à criação de agentes. Sua sintaxe lembra TypeScript, e ela acrescenta um sistema de tipos que persiste em tempo de execução, erros tipados e analisados estaticamente e uma organização de módulos baseada no sistema de arquivos. O objetivo é reduzir os erros que os agentes cometem ao produzir ou manipular dados estruturados.
A linguagem inclui um framework integrado de testes e avaliação, uma biblioteca padrão para tarefas de agentes e concorrência no estilo green thread. O compilador é escrito em Rust. BAML pode ser executada de forma independente ou adotada gradualmente, chamando funções BAML de bases de código existentes em TypeScript, Python, Go, C#, Java e outras linguagens.
O projeto oferece uma CLI com comandos para instalar as ferramentas de agentes, inicializar um projeto e instalar uma extensão para IDE. Também é possível instalar o projeto via Homebrew.
Recursos principais
- 01Funções tipadas e erros verificados estaticamente
- 02Tipos preservados em tempo de execução, sem necessidade de converter para any
- 03Framework integrado de testes e avaliação
- 04Biblioteca padrão para tarefas de agentes
- 05Pode ser chamada de TypeScript, Python, Go, C#, Java e outras linguagens
Casos de uso
- Definir saídas estruturadas de LLM com esquemas tipados
- Adicionar funções BAML a uma base de código existente em TypeScript ou Python
- Escrever e executar evals para o comportamento de agentes
- Criar novos aplicativos de agentes em uma linguagem dedicada
Início rápido
- 1
Instalar o BAML com Homebrew
brew install baml - 2
Instalar a integração do agente
baml agent install - 3
Inicializar um novo projeto BAML
baml init - 4
Instalar a extensão de IDE para VS Code
baml ide install --code
Antes de usar
- O README não documenta como instalar no Windows, então não fica claro se há suporte para essa plataforma.
- A configuração exige várias etapas pela CLI, e o README direciona para um guia de início rápido externo com mais detalhes.
Em coleções
Tópicos
Perguntas frequentes
- O que é baml?
- BAML é uma linguagem de programação para criar agentes de IA, com funções tipadas, compilador baseado em Rust e suporte a chamadas de TypeScript, Python, Go e outras linguagens. BAML é uma linguagem de programação voltada à criação de agentes. Sua sintaxe lembra TypeScript, e ela acrescenta um sistema de tipos que persiste em tempo de execução, erros tipados e analisados estaticamente e uma organização de módulos baseada no sistema de arquivos. O objetivo é reduzir os erros que os agentes cometem ao produzir ou manipular dados estruturados.
- baml é gratuito? Qual é a licença?
- baml é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- baml ainda é mantido?
- Manutenção ativa. O último commit de baml foi em 6 de nov. de 2026.
- Para que posso usar baml?
- Definir saídas estruturadas de LLM com esquemas tipados Adicionar funções BAML a uma base de código existente em TypeScript ou Python Escrever e executar evals para o comportamento de agentes Criar novos aplicativos de agentes em uma linguagem dedicada
- Como instalar baml?
- Instalar o BAML com Homebrew: brew install baml Instalar a integração do agente: baml agent install Inicializar um novo projeto BAML: baml init Instalar a extensão de IDE para VS Code: baml ide install --code
- Onde consigo baml?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/BoundaryML/baml
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Framework Python que adiciona proteções de entrada e saída a aplicações com LLMs e gera dados estruturados validados a partir das respostas dos modelos.
Uma linguagem de programação com tipagem estática e uma calculadora para cálculos científicos, com dimensões físicas e unidades integradas.
Uma linguagem robustamente tipada da família ML que compila para JavaScript rápido e legível, com geração de tipos para TypeScript e integração fácil com JavaScript.
Uma linguagem de programação compilada experimental, pensada para código gerado por IA e revisado por pessoas, com sintaxe explícita, sem garbage collector e compilação para C.
Framework em TypeScript para criar agentes de IA e aplicações com LLMs, com workflows, tools, memória, servidores MCP e evals.