task_categories:question-answering multilinguality:monolingual size_categories:1K<n<10K language:pl license:cc-by-nc-sa-4.0 region:us
---
language:
- pl
license:
- cc-by-nc-sa-4.0
multilinguality:
- monolingual
size_categories:
- 1K<n<10K
task_categories:
- question-answering
pretty_name: GPT-exams
dataset_info:
  features:
    - name: _id
      dtype: int32
    - name: question
      dtype: string
    - name: answer
      dtype: string
    - name: domain
      dtype: string
  splits:
    - name: train
      num_bytes: 17237681
      num_examples: 8131
---

# GPT-exams

### Dataset summary

The dataset contains 8131 multi-domain question-answer pairs. It was created semi-automatically using the `gpt-3.5-turbo-0613` model available in the OpenAI API. The process of building the dataset was as follows:
1. We manually prepared a list of 409 university-level courses from various fields. For each course, we instructed the model with the prompt: "Wygeneruj 20 przykładowych pytań na egzamin z [nazwa przedmiotu]" (Generate 20 sample questions for the [course name] exam).
2. We then parsed the outputs of the model to extract individual questions and performed their deduplication.
3. In the next step, we requested the model to generate the answer to each of the collected questions. We used the following prompt: "Odpowiedz na następujące pytanie z dziedziny [nazwa przedmiotu]: [treść pytania]" (Answer the following question from [course name]: [question content]). Along with the prompt, we also sent the following system message: "Jesteś ekspertem w dziedzinie [nazwa przedmiotu]. Udzielasz specjalistycznych i wyczerpujących odpowiedzi na pytania." (You are an expert in [course name]. You provide knowledgeable and comprehensive answers to questions).
4. In the last step, we manually removed from the dataset the cases in which the model refused to answer the question. We searched for occurrences of phrases such as "model języka" (language model), "nie jestem" (I'm not), or "nie mogę" (I can't).

### Data Instances

Example instance:
```
{
  "_id": 2338, 
  "domain": "wzorców projektowych w oprogramowaniu", 
  "question": "Co to jest dependency injection i jak może być wykorzystane w kontekście wzorców projektowych?", 
  "answer": "Dependency injection (DI) to technika wstrzykiwania zależności, która polega na dostarczaniu obiektowi (...)"
}
```

### Data Fields

- _id: record id
- question: question text
- answer: answer text
- domain: name of the course / field / domain
