ScienceWorld는 표준화된 초등 과학 커리큘럼의 과제 수행을 중심으로 한 텍스트 기반 가상 환경입니다. 이 코드는 ScienceWorld: Is your Textual Agent Smarter than a 5th grader? 논문과 함께 제공됩니다.
HuggingFace Space를 통해 ScienceWorld를 직접 시험해 보거나 플레이 대본 중 일부를 읽어볼 수 있습니다.
@misc{scienceworld2022, title={ScienceWorld: Is your Agent Smarter than a 5th Grader?}, author={Ruoyao Wang and Peter Jansen and Marc-Alexandre C{^o}t{'e} and Prithviraj Ammanabrolu}, year={2022}, eprint={2203.07540}, archivePrefix={arXiv}, primaryClass={cs.CL}, url={https://arxiv.org/abs/2203.07540} }
실행하기 전에: 시스템에 Java 1.8+
(대부분의 Linux 배포판과 함께 제공) 및 Python 3.8+
설치되어 있어야 합니다. 다음과 같은 conda 환경을 만드는 것이 좋습니다.
conda create --name scienceworld python=3.8 콘다는 과학 세계를 활성화합니다
그런 다음 PyPi에서 ScienceWorld를 설치하십시오.
pip install scienceworld
또는 개발 모드의 소스에서:
git clone https://github.com/allenai/ScienceWorld.git cd ScienceWorld pip install .
5개의 에피소드에 대해 작업 13(분류: 무생물을 상자에 넣기)에서 예제 무작위 에이전트를 실행합니다.
python examples/random_agent.py --task-num=13 --num-episodes=5 --simplifications-preset easy
작업 3(상태 변경: 용해)에서 환경과 상호 작용할 수 있는 사용자 콘솔을 실행합니다.
python examples/human.py --task-num=3 --num-episodes=5
웹 브라우저에서 상호 작용할 수 있는 ScienceWorld 사용자 콘솔을 실행할 수 있는 웹 서버 데모도 제공됩니다.
웹 서버 데모를 실행하려면:
conda create --name scienceworld python=3.8 콘다는 과학 세계를 활성화합니다 pip install scienceworld[웹서버]
웹 서버를 실행합니다:
python examples/scienceworld-web-server-example.py
웹 브라우저에서 localhost:8080
가리키십시오.
ScienceWorld는 Scala(2.12.9)로 작성되었으며 sbt
사용하여 Java로 실행되는 JAR 파일로 컴파일됩니다. 편의를 위해 py4j
패키지를 사용하여 인터페이스하는 Python API(Python >= 3.8)가 제공됩니다.
Scala 코드를 수정한 경우 다음을 실행하여 JAR 파일을 다시 컴파일할 수 있습니다.
./simulator/package.sh pip 설치 -e .
작업은 변형 수와 함께 아래 표에 나열되어 있습니다. 작업 ID 또는 해당 이름은 env.load()
사용하여 작업에 사용될 수 있습니다.
작업 ID | 작업 이름 | # 변형 |
---|---|---|
1-1 | 종기 | 30 |
1-2 | 녹다 | 30 |
1-3 | 꼭 매달리게 하다 | 30 |
1-4 | 문제의 상태 변경 | 30 |
2-1 | 사용온도계 | 540 |
2-2 | 측정 융점 알려진 물질 | 436 |
2-3 | 측정-용융점-알 수 없는 물질 | 300 |
3-1 | 전력 구성 요소 | 20 |
3-2 | 전력 구성요소-재생 가능-vs-재생 불가능-에너지 | 20 |
3-3 | 테스트 전도성 | 900 |
3-4 | 알려지지 않은 물질의 전도도 테스트 | 600 |
4-1 | 살아있는 것 찾기 | 300 |
4-2 | 무생물 찾기 | 300 |
4-3 | 식물 찾기 | 300 |
4-4 | 동물 찾기 | 300 |
5-1 | 식물을 키우다 | 126 |
5-2 | 과일 재배 | 126 |
6-1 | 화학 혼합 | 32 |
6-2 | 화학 혼합 페인트 보조 색상 | 36 |
6-3 | 화학 혼합 페인트 3차 색상 | 36 |
7-1 | 수명이 가장 길다 | 125 |
7-2 | 수명이 가장 짧은 | 125 |
7-3 | 수명-가장 오래 산 다음-가장 짧은 수명 | 125 |
8-1 | 식별 수명 단계-1 | 14 |
8-2 | 식별 수명 단계-2 | 10 |
9-1 | 경사면 결정 각도 | 168 |
9-2 | 경사면 마찰 명명된 표면 | 1386 |
9-3 | 경사면 마찰 이름 없는 표면 | 162 |
10-1 | 멘델의 유전학으로 알려진 식물 | 120 |
10-2 | 멘델리안 유전학-알 수 없는 식물 | 480 |
DRRN: https://github.com/cognitiveailab/drrn-scienceworld
KG-A2C: https://github.com/cognitiveailab/kga2c-scienceworld
CALM: https://github.com/cognitiveailab/calm-scienceworld
행동 복제 및 의사 결정 변환기: https://github.com/cognitiveailab/t5-scienceworld