Anote documentos automaticamente usando LLMs
annotateai
anota automaticamente artigos usando Large Language Models (LLMs). Embora os LLMs possam resumir artigos, pesquisar artigos e construir textos generativos sobre artigos, este projeto se concentra em fornecer aos leitores humanos o contexto enquanto lêem.
Uma chamada de uma linha faz o seguinte:
Lê o jornal
Encontra o título e conceitos-chave importantes
Percorre cada página e encontra seções que melhor enfatizam os conceitos-chave
Lê a seção e constrói um tópico curto e conciso
Anota o documento e destaca essas seções
A maneira mais fácil de instalar é via pip e PyPI
pip install annotateai
Python 3.9+ é compatível. É recomendado usar um ambiente virtual Python.
annotateai
também pode ser instalado diretamente do GitHub para acessar os recursos mais recentes e não lançados.
pip install git+https://github.com/neuml/annotateai
annotateai
pode anotar qualquer PDF, mas funciona especialmente bem para artigos médicos e científicos. A seguir mostra uma série de exemplos usando artigos do arXiv.
Este projeto também funciona bem com artigos do PubMed, bioRxiv e medRxiv!
Instale o seguinte.
# Altere autoawq[kernels] para "autoawq autoawq-kernels" se um erro flash-attn for geradopip install annotateai autoawq[kernels]# usuários do macOS devem executar este pip install annotateai llama-cpp-python
O parâmetro de entrada principal é o caminho para o LLM. Este projeto é apoiado por txtai e oferece suporte a qualquer LLM compatível com txtai.
from annotateai import Annotate# Este modelo funciona bem com literatura médica e científicaannotate = Annotate("NeuML/Llama-3.1_OpenScholar-8B-AWQ")# usuários do macOS devem executar este em vez dissoannotate = Annotate( "bartowski/Llama-3.1_OpenScholar-8B-GGUF/Llama-3.1_OpenScholar-8B-Q4_K_M.gguf")
Este artigo propôs o RAG antes que a maioria de nós soubesse que precisávamos dele.
anotar("https://arxiv.org/pdf/2005.11401")
Fonte: https://arxiv.org/pdf/2005.11401
Este artigo constrói o maior modelo de geração de vídeo de código aberto. É tendência em Papers With Code em dezembro de 2024.
anotar("https://arxiv.org/pdf/2412.03603v2")
Fonte: https://arxiv.org/pdf/2412.03603v2
Este artigo foi apresentado na 38th Conference on Neural Information Processing Systems (NeurIPS 2024) Track on Datasets and Benchmarks
.
anotar("https://arxiv.org/pdf/2406.14657")
Fonte: https://arxiv.org/pdf/2406.14657
Conforme mencionado anteriormente, este projeto oferece suporte a qualquer LLM compatível com txtai. Alguns exemplos abaixo.
pip install txtai[pipeline-llm]
# LLM API servicesannotate = Annotate("gpt-4o")annotate = Annotate("claude-3-5-sonnet-20240620")# Ollama endpointannotate = Annotate("ollama/llama3.1")# llama.cpp GGUF from Hugging Face Hubannotate = Anotar ( "bartowski/Llama-3.1_OpenScholar-8B-GGUF/Llama-3.1_OpenScholar-8B-Q4_K_M.gguf")
O modo padrão para uma instância annotate
é gerar automaticamente os conceitos-chave a serem pesquisados. Mas esses conceitos podem ser fornecidos através do parâmetro keywords
.
anotar("https://arxiv.org/pdf/2005.11401", palavras-chave=["alucinações", "llm"])
Isso é útil para situações em que temos um grande lote de artigos e queremos identificar um conjunto específico de conceitos para ajudar na revisão.
A barra de progresso pode ser desativada da seguinte forma:
anotar("https://arxiv.org/pdf/2005.11401", progresso=Falso)
neuml/annotateai é uma aplicação web disponível no Docker Hub.
Isso pode ser executado com as configurações padrão da seguinte maneira.
docker run -d --gpus=all -it -p 8501:8501 neuml/annotateai
O LLM também pode ser definido através de parâmetros ENV.
docker run -d --gpus=all -it -p 8501:8501 -e LLM=bartowski/Llama-3.2-1B-Instruct-GGUF/Llama-3.2-1B-Instruct-Q4_K_M.gguf neuml/annotateai
O código deste aplicativo pode ser encontrado na pasta do aplicativo.
Apresentando o AnnotateAI