Repositori ini berisi semua kumpulan data, kode, dan materi tambahan untuk melakukan tugas Pembuatan Kuesioner di domain Manajemen Sumber Daya Manusia (HRM) dengan memanfaatkan LLM. Saat ini kami berfokus pada Survei, yang biasanya tidak memiliki jawaban benar/salah atau bernilai. Secara khusus, kuesioner survei berperan penting dalam mengumpulkan umpan balik dan opini berkelanjutan dari karyawan, memungkinkan organisasi memantau dan meningkatkan berbagai aspek seperti kepuasan karyawan dan penilaian potensi.
Mengingat kurangnya kumpulan data yang memadai, kami membuat koleksi Survei SDM baru. Detail tentang kumpulan data dapat ditemukan di Kartu Data. Kami menguji dua model GPT (GPT-3.5-Turbo dan GPT-4-Turbo) dengan pengaturan berbeda, untuk mengetahui faktor mana yang paling berkontribusi terhadap kualitas survei yang lebih tinggi. Detail tersebut dapat ditemukan di Kartu Model. Dalam pekerjaan kami, kami merancang kerangka kerja baru untuk mengevaluasi konten yang dihasilkan secara otomatis, karena keterbatasan metrik tradisional seperti ROUGE mentah dan BLEU. Dengan demikian, metrik kami dapat memperkirakan kualitas survei dalam hal keterlibatan, variabilitas tematik internal, dan alur. Rincian lebih lanjut dilaporkan dalam Kartu Model.
Buku catatan menampilkan statistik kumpulan data baru, penggunaan sampel kode, dan hasil yang diperoleh.
Kami menyarankan untuk menggunakan Python 3.11.5 untuk menjalankan kode kami, karena kemungkinan ketidaksesuaian dengan versi yang lebih baru.
Proses instalasi dijelaskan di bawah ini:
git clone https://github.com/llaraspata/HRMQuestionnaireGenerationUsingLLM.git
python -m venv your_venv_name
source <your_venv_name>/bin/activate # On Windows, use: <your_venv_name>Scriptsactivate
pip install -r requirements.txt
Beberapa pengaturan eksperimental dikonfigurasi dalam file JSON. Untuk menjalankan semua konfigurasi gunakan perintah berikut:
python -W ignore <path_to_repo_folder>/src/models/predict.py
Jika tidak, untuk menjalankan konfigurasi tertentu gunakan perintah berikut:
python -W ignore <path_to_repo_folder>/src/models/predict.py --experiment-id "<experiment_id>"
Peringatan
Pastikan Anda memiliki kunci akses OpenAI (Azure) yang valid, jika tidak, panggilan ke layanan OpenAI akan dilarang. Kemudian atur sebagai variabel lingkungan bernama AZURE_OPENAI_KEY
.
Selain itu, perhatikan bahwa kami menggunakan penerapan pribadi, sehingga tidak dapat diakses oleh pengguna di luar Tim Litbang Talentia HCM. Oleh karena itu, kami merekomendasikan untuk mengganti nilai parameter azure_endpoint
dengan nilai yang valid dalam panggilan API.
Catatan
Opsi -W ignore
memungkinkan untuk tidak menampilkan potensi peringatan selama eksekusi skrip. Untuk menampilkannya, hapus saja opsi tersebut.
Untuk menjalankan langkah evaluasi jalankan perintah berikut:
python -W ignore <path_to_repo_folder>/src/models/evaluate.py
Untuk melakukan konversi otomatis data tambahan dari teks tidak terstruktur ke JSON, jalankan perintah berikut:
python -W ignore <path_to_repo_folder>/src/data/convert_qst_to_json.py
@inproceedings { laraspata2024SurveyGeneration4HCM ,
author = { Lucrezia Laraspata and Fabio Cardilli and Giovanna Castellano and Gennaro Vessio } ,
title = { Enhancing human capital management through GPT-driven questionnaire generation } ,
year = { 2024 } ,
booktitle = { Proceedings of the Eighth Workshop on Natural Language for Artificial Intelligence (NL4AI 2024) co-located with 23th International Conference of the Italian Association for Artificial Intelligence (AI*IA 2024) } ,
year = { 2024 }
}
├── LICENSE
├── Makefile <- Makefile with commands like `make data` or `make train`
├── README.md <- The top-level README for developers using this project.
├── data
│ ├── external <- Raw questionnaires derived from the augmentation process.
│ ├── interim <- Intermediate augmented data that has been transformed to JSON.
│ ├── processed <- The final, canonical data sets for modeling.
│ └── raw <- The data used as starting point from this project
│ (taken from Talentia Software HCM).
│
├── docs <- A default Sphinx project; see sphinx-doc.org for details
│
├── models <- Predictions for each run experiments. For each of the a log and a picke file are saved.
│
├── notebooks <- Jupyter notebooks used to illustrate class usage, dataset insights, and experimental results.
│
├── requirements.txt <- The requirements file for reproducing the analysis environment.
│
├── setup.py <- makes project pip installable (pip install -e .) so src can be imported
│
├── src <- Source code for use in this project.
│ ├── __init__.py <- Makes src a Python module
│ │
│ ├── data <- Scripts to download or generate data
│ │ ├── convert_qst_to_json.py
│ │ └── TFQuestionnairesDataset.py
│ │
│ ├── prompts <- Catalog of the employed prompts
│ │ ├── qst_to_json_prompts.py
│ │ ├── QstToJsonPromptGenerator.py
│ │ ├── QstToJsonScenarioGenerator.py
│ │ │
│ │ ├── prediction_prompts.py
│ │ ├── PredictionPromptGenerator.py
│ │ ├── PredictionScenarioGenerator.py
│ │ │
│ │ ├── topic_modeling_prompts.py
│ │ ├── TopicModelingPromptGenerator.py
│ │ └── TopicModelingScenarioGenerator.py
│ │
│ ├── models <- Scripts to run experiments and evaluations
│ │ ├── experiment_config.json
│ │ │
│ │ ├── predict.py
│ │ │
│ │ ├── QuestionnairesEvaluator.py
│ │ ├── ModelEvaluator.py
│ │ └── evaluate.py
│ │
│ └── visualization <- Scripts to create exploratory and results oriented visualizations
│ ├── experiment_pairs.json
│ │
│ ├── GlobalResultVisualizer.py
│ ├── PairResultVisualizer.py
│ └── visualize.py
│
└── tox.ini <- tox file with settings for running tox; see tox.readthedocs.io
Proyek berdasarkan templat proyek ilmu data cookiecutter. #ilmu data pemotong kue