ontogpt Logotipo" estilo="ancho máximo: 100%;">
ontogpt es un paquete de Python para extraer información estructurada de texto con modelos de lenguaje grandes (LLM), indicaciones de instrucciones y bases basadas en ontologías.
Para obtener más detalles, consulte la documentación completa.
ontogpt se ejecuta en la línea de comandos, aunque también hay una interfaz de aplicación web mínima (consulte la sección Web Application
a continuación).
Asegúrese de tener Python 3.9 o superior instalado.
Instalar con pip
:
pip install ontogpt
Configure su clave API de OpenAI:
runoak set-apikey -e openai < your openai api key >
Vea la lista de todos los comandos ontogpt :
ontogpt --help
Pruebe un ejemplo simple de extracción de información:
echo " One treatment for high blood pressure is carvedilol. " > example.txt
ontogpt extract -i example.txt -t drug
ontogpt recuperará las ontologías necesarias y enviará los resultados a la línea de comando. Su salida proporcionará todos los objetos extraídos bajo el título extracted_object
.
Existe una aplicación web básica para ejecutar ontogpt y ver los resultados.
Primero, instale las dependencias requeridas con pip
ejecutando el siguiente comando:
pip install ontogpt [web]
Luego ejecute este comando para iniciar la aplicación web:
web- ontogpt
NOTA: No recomendamos alojar esta aplicación web públicamente sin autenticación.
ontogpt utiliza el paquete litellm
(https://litellm.vercel.app/) para interactuar con los LLM.
Esto significa que la mayoría de las API son compatibles, incluidas OpenAI, Azure, Anthropic, Mistral, Replicate y más.
El nombre del modelo a usar se puede encontrar en el comando ontogpt list-models
; use el nombre en la primera columna con la opción --model
.
En la mayoría de los casos, esto requerirá configurar la clave API para un servicio en particular como se indica arriba:
runoak set-apikey -e anthropic-key < your anthropic api key >
Algunos puntos finales, como los modelos OpenAI a través de Azure, requieren la configuración de detalles adicionales. Estos se pueden configurar de manera similar:
runoak set-apikey -e azure-key < your azure api key >
runoak set-apikey -e azure-base < your azure endpoint url >
runoak set-apikey -e azure-version < your azure api version, e.g. " 2023-05-15 " >
Estos detalles también se pueden configurar como variables de entorno de la siguiente manera:
export AZURE_API_KEY= " my-azure-api-key "
export AZURE_API_BASE= " https://example-endpoint.openai.azure.com "
export AZURE_API_VERSION= " 2023-05-15 "
Los LLM abiertos se pueden recuperar y ejecutar a través del paquete ollama
(https://ollama.com/).
Necesitará instalar ollama
(consulte el repositorio de GitHub) y es posible que deba iniciarlo como un servicio con un comando como ollama serve
o sudo systemctl start ollama
.
Luego recupere un modelo con ollama pull <modelname>
, por ejemplo, ollama pull llama3
.
El modelo puede luego usarse en ontogpt anteponiendo su nombre con ollama/
, por ejemplo, ollama/llama3
, junto con la opción --model
.
Es posible que algunos modelos de ollama no aparezcan en ontogpt list-models
pero la lista completa de LLM descargados se puede ver con el comando ollama list
.
Las funciones de ontogpt se han evaluado en datos de prueba. Consulte la documentación completa para obtener detalles sobre estas evaluaciones y cómo reproducirlas.
El enfoque de extracción de información utilizado en ontogpt , SPIRES, se describe con más detalle en: Caufield JH, Hegde H, Emonet V, Harris NL, Joachimiak MP, Matentzoglu N, et al. Interrogación rápida estructurada y extracción recursiva de semántica (SPIRES): un método para completar bases de conocimiento mediante el aprendizaje de disparo cero. Bioinformática , volumen 40, número 3, marzo de 2024, btae104, https://doi.org/10.1093/bioinformatics/btae104.
Este proyecto es parte de la Iniciativa Monarca. También agradecemos a Bosch Research por su apoyo a este proyecto de investigación.