Системы генеративного искусственного интеллекта (Genai) все чаще развертываются во всех частях промышленности и исследований. Разработчики и конечные пользователи взаимодействуют с этими системами благодаря использованию подсказки или быстрого разработки. Хотя подсказка является широко распространенной и высоко исследованной концепцией, существует конфликтующая терминология и плохое онтологическое понимание того, что представляет собой быструю подсказку из -за районы. Этот репозиторий является кодом для быстрого отчета, наше исследование, которое устанавливает структурированное понимание подсказок, путем сборки таксономии методов подсказки и анализа их использования. Этот код допускает автоматический обзор документов, сбора данных и запуска экспериментов. Наш набор данных доступен для обнимающего лица, а наша бумага доступна на arxiv.org. Информация также доступна на нашем сайте.
После клонирования запустите pip install -r requirements.txt из ROOT
Сделайте файл в root call .env .
Для OpenAI: https://platform.openai.com/docs/quickstart
Для обнимающегося лица: https://huggingface.co/docs/hub/security-tokens, также запустите huggingface-cli login
Для сематического ученых: https://www.semanticscholar.org/product/api#api-Key
Используйте ссылочный файл example.env , чтобы заполнить свои клавиши API/токены.
OPENAI_API_KEY=sk.-...
SEMANTIC_SCHOLAR_API_KEY=...
HF_TOKEN=...
Затем, чтобы загрузить файл .env, введите:
pip install pytest-dotenv
Вы также можете обновить файл ENV, выполнив:
py.test --envfile path/to/.env
В случае, когда у вас есть несколько файлов.
env_files =
.env
.test.env
.deploy.env
Script main.py вызывает необходимые функции для загрузки всех бумаг, дедупликации и фильтрации их, а затем запустить все эксперименты.
Ядро репозитория находится в src/prompt_systematic_review . Скрипт config_data.py содержит конфигурации, которые важны для работы экспериментов и сохранения времени. Вы можете увидеть в main.py , как используются некоторые из этих вариантов.
Папка источника разделена на 4 основных раздела: 3 сценария ( automated_review.py , collect_papers.py , config_data.py ), которые experiments сбору данных и запуску автоматизированного обзора, папки utils , которая содержит функции утилиты, которые используются по всему репозитории, папку get_papers эксперименты.
В корне есть папка data . Он предварительно загружен с некоторыми данными, которые используются для экспериментов, однако основная часть набора данных может быть сгенерирована путем запуска main.py или загрузки данных от обнимающего лица. Именно в data/experiments_output результаты экспериментов сохраняются.
Примечательно, что ключевые слова, используемые в процессе автоматического обзора/скребки, находятся в src/prompt_systematic_review/utils/keywords.py . Любой, кто хочет запустить автоматический обзор, может настроить эти ключевые слова по своему вкусу в этом файле.
git clone https://github.com/trigaten/Prompt_Systematic_Review.git && cd Prompt_Systematic_Review
pip install -r requirements.txt
# create a .env file with your API keys
nano .env
git lfs install
git clone https://huggingface.co/datasets/PromptSystematicReview/ThePromptReport
mv ThePromptReport/ * data/
python main.py Запуск main.py будет загружать документы, запустить автоматический обзор и запустить эксперименты. Однако, если вы хотите сэкономить время и запустить только эксперименты, вы можете загрузить данные из обнимающегося лица и переместить папку бумаги и все файлы CSV в наборе данных в папку данных (должны выглядеть как data/papers/*.pdf и data/master_papers.csv и т. Д.). Соответственно настроить main.py.
Каждый сценарий эксперимента имеет функцию run_experiment , которая называется в main.py Функция run_experiment отвечает за работу эксперимента и сохранение результатов. Однако каждый скрипт может быть запускается индивидуально, просто запустив python src/prompt_systematic_review/experiments/<experiment_name>.py от root.
Существует один эксперимент, graph_internal_references , который из -за странных проблем с параллелизмом лучше запускается от корня как отдельный сценарий. Чтобы избежать этого, вызывая проблемы с другими экспериментами, он запускается последним, так как он упорядочен в нижней части списка в experiments/__init__.py .