Repolode
cvs-health

cvs-health/uqlm

Biblioteca Python que avalia a probabilidade de respostas de LLM conterem alucinações usando quantificação de incerteza, com scorers black-box, white-box, judge e ensemble.

Estrelas
1,217
Forks
140
Issues abertas
26
Último commit
há 24 dias

O que é?

UQLM é uma biblioteca Python para detectar alucinações em respostas de LLMs. Cada scorer retorna uma pontuação de confiança entre 0 e 1; quanto maior o valor, menor a probabilidade de a resposta conter erros. Ela ajuda desenvolvedores a sinalizar respostas pouco confiáveis sem precisar de uma referência com a resposta correta para cada prompt.

O pacote organiza os scorers de acordo com a forma como obtêm seus sinais. Os scorers black-box geram várias respostas para o mesmo prompt e medem o quanto elas são consistentes, então funcionam com qualquer LLM. Os scorers white-box leem as probabilidades dos tokens em uma única geração: são mais baratos, mas precisam de acesso via API a essas probabilidades. Os scorers LLM-as-a-judge pedem que um ou mais modelos avaliem uma resposta, enquanto os scorers ensemble combinam vários scorers por meio de uma média ponderada.

UQLM também inclui um scorer para textos longos, que avalia afirmações individuais em uma resposta extensa e pode remover as que têm baixa confiança para refinar o resultado, além de uma interface CodeGenUQ para prever se o código gerado está funcionalmente correto sem executá-lo. O acesso aos modelos é feito por meio das integrações de LangChain Chat Model.

Recursos principais

  • 01Scorers black-box medem a consistência entre várias respostas geradas por amostragem.
  • 02Scorers white-box calculam a confiança com base nas probabilidades dos tokens em uma única geração.
  • 03Scorers LLM-as-a-judge usam um ou mais modelos como juízes, inclusive um painel de juízes.
  • 04Scorers ensemble combinam vários scorers, com pesos prontos ou ajustados.
  • 05Scorers para textos longos avaliam afirmações individuais e podem refinar respostas removendo as afirmações com baixa confiança.
  • 06Funciona com qualquer LangChain Chat Model.

Casos de uso

  • Sinalizar respostas pouco confiáveis de LLMs em um pipeline de produção de perguntas e respostas.
  • Filtrar ou refinar documentos longos gerados, removendo afirmações com baixa confiança.
  • Estimar se o código gerado por um LLM provavelmente está funcionalmente correto antes de executá-lo.
  • Comparar métodos de detecção de alucinações usando seus próprios prompts e respostas rotuladas.

Início rápido

  1. 1

    Instale o uqlm pelo PyPI

    pip install uqlm
  2. 2

    Crie um modelo de chat do LangChain (por exemplo, ChatOpenAI) e envolva-o com BlackBoxUQ para pontuar as respostas

Antes de usar

  • Os avaliadores de caixa-preta e os baseados em juiz fazem várias chamadas ao LLM, o que aumenta consideravelmente o custo e a latência.
  • Os avaliadores de caixa-branca precisam acessar as probabilidades dos tokens, que muitas APIs hospedadas não disponibilizam.

Em coleções

Tópicos

#hallucination-detection#uncertainty-quantification#llm-evaluation#confidence-estimation#llm-safety#python#ai-evaluation#ai-safety#confidence-score#hallucination

Perguntas frequentes

O que é uqlm?
Biblioteca Python que avalia a probabilidade de respostas de LLM conterem alucinações usando quantificação de incerteza, com scorers black-box, white-box, judge e ensemble. UQLM é uma biblioteca Python para detectar alucinações em respostas de LLMs. Cada scorer retorna uma pontuação de confiança entre 0 e 1; quanto maior o valor, menor a probabilidade de a resposta conter erros. Ela ajuda desenvolvedores a sinalizar respostas pouco confiáveis sem precisar de uma referência com a resposta correta para cada prompt.
uqlm é gratuito? Qual é a licença?
uqlm é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
uqlm ainda é mantido?
Manutenção ativa. O último commit de uqlm foi em 13 de out. de 2026.
Para que posso usar uqlm?
Sinalizar respostas pouco confiáveis de LLMs em um pipeline de produção de perguntas e respostas. Filtrar ou refinar documentos longos gerados, removendo afirmações com baixa confiança. Estimar se o código gerado por um LLM provavelmente está funcionalmente correto antes de executá-lo. Comparar métodos de detecção de alucinações usando seus próprios prompts e respostas rotuladas.
Como instalar uqlm?
Instale o uqlm pelo PyPI: pip install uqlm Crie um modelo de chat do LangChain (por exemplo, ChatOpenAI) e envolva-o com BlackBoxUQ para pontuar as respostas
Onde consigo uqlm?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/cvs-health/uqlm

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

Projetos relacionados