region:us
Minimal dataset for intended for LM development and testing using python string operations.
 The dataset is created by running different one line python string operations on random strings
 The idea is, that transformer implementation can learn the string operations and that this task is a good
 proxy tasks for other transformer operations on real languages and real tasks. Consequently, the
 data set is small and can be used in the development process without large scale infrastructures.
 
There are different configurations for the data set.

- `small`: contains below 50k instances of various string length and only contains slicing operations, i.e. all python operations expressable with `s[i:j:s]` (which also includes string reversal).
  - you can further choose different subsets according to either length or the kind of operation
- `small10`: like small, but only strings to length 10
- `small15`: like small, but only strings to length 15
- `small20`: like small, but only strings to length 20

The fields have the following meaning:

 - `input`: input string, i.e. the string and the string operation
 - `output`: output of the string operation
 - `code`: code for running the string operation in python,
 - `res_var`: name of the result variable
 - `operation`: kind of operation: 
   - `step_x` for `s[::x]`
   - `char_at_x` for `s[x]`
   - `slice_x:y` for `s[x:y]`
   - `slice_step_x:y:z` for `s[x:y:z]`
   - `slice_reverse_i:j:k` for `s[i:i+j][::k]`

 Siblings of `data` contain additional metadata information about the dataset.

 - `prompt` describes possible prompts based on that data splitted into input prompts / output prompts
@InProceedings{huggingface:dataset,
title = {String Operations Dataset: A small set of string manipulation tasks for fast model development},
author={Michael Granitzer},
year={2023}
}
Entry not found