[artículo] [proyecto] [conjunto de datos] [bibtex]
Presentamos una formulación moderna de respuesta a preguntas incorporadas (EQA) como la tarea de comprender un entorno lo suficientemente bien como para responder preguntas sobre él en lenguaje natural. Un agente puede lograr esa comprensión recurriendo a la memoria episódica, ejemplificada por agentes con gafas inteligentes, o explorando activamente el entorno, como en el caso de los robots móviles. Acompañamos nuestra formulación con OpenEQA, el primer conjunto de datos de referencia de vocabulario abierto para EQA que admite casos de uso de memoria episódica y exploración activa. OpenEQA contiene más de 1600 preguntas de alta calidad generadas por humanos extraídas de más de 180 entornos del mundo real. Además del conjunto de datos, también proporcionamos un protocolo de evaluación automático basado en LLM que tiene una excelente correlación con el juicio humano. Utilizando este conjunto de datos y protocolo de evaluación, evaluamos varios modelos básicos de última generación, incluido GPT-4V, y descubrimos que están significativamente por detrás del rendimiento a nivel humano. En consecuencia, OpenEQA se destaca como un punto de referencia sencillo, mensurable y prácticamente relevante que plantea un desafío considerable para la generación actual de modelos básicos. Esperamos que esto inspire y estimule futuras investigaciones en la intersección de la IA incorporada, los agentes conversacionales y los modelos mundiales.
El conjunto de datos de OpenEQA consta de más de 1600 pares de preguntas y respuestas
Los pares de preguntas y respuestas están disponibles en data/open-eqa-v0.json y los historiales de episodios se pueden descargar siguiendo las instrucciones aquí.
Vista previa: aquí se proporciona una herramienta sencilla para ver muestras en el conjunto de datos.
El código requiere un entorno python>=3.9
. Recomendamos usar conda:
conda create -n openeqa python=3.9
conda activate openeqa
pip install -r requirements.txt
pip install -e .
Se implementan varias líneas de base en openeqa/baselines. En general, las líneas de base se ejecutan de la siguiente manera:
# set an environment variable to your personal API key for the baseline
python openeqa/baselines/ < baseline > .py --dry-run # remove --dry-run to process the full benchmark
Consulte openeqa/baselines/README.md para obtener más detalles.
La evaluación automática se implementa con GPT-4 mediante las indicaciones que se encuentran aquí y aquí.
# set the OPENAI_API_KEY environment variable to your personal API key
python evaluate-predictions.py < path/to/results/file.json > --dry-run # remove --dry-run to evaluate on the full benchmark
OpenEQA se publica bajo la licencia MIT.
Arjun Majumdar*, Anurag Ajay*, Xiaohan Zhang*, Pranav Putta, Sriram Yenamandra, Mikael Henaff, Sneha Silwal, Paul Mcvay, Oleksandr Maksymets, Sergio Arnaud, Karmesh Yadav, Qiyang Li, Ben Newman, Mohit Sharma, Vincent Berges, Shiqi Zhang , Pulkit Agrawal, Yonatan Bisk, Dhruv Batra, Mrinal Kalakrishnan, Franziska Meier, Chris Paxton, Sasha Sax, Aravind Rajeswaran
@inproceedings{majumdar2023openeqa,
author={Arjun Majumdar, Anurag Ajay, Xiaohan Zhang, Pranav Putta, Sriram Yenamandra, Mikael Henaff, Sneha Silwal, Paul Mcvay, Oleksandr Maksymets, Sergio Arnaud, Karmesh Yadav, Qiyang Li, Ben Newman, Mohit Sharma, Vincent Berges, Shiqi Zhang, Pulkit Agrawal, Yonatan Bisk, Dhruv Batra, Mrinal Kalakrishnan, Franziska Meier, Chris Paxton, Sasha Sax, Aravind Rajeswaran},
title={{OpenEQA: Embodied Question Answering in the Era of Foundation Models}},
booktitle={{CVPR}},
year={2024},
}