This function writes jsonl files from a list of jsonl records.
Usage
write_jsonl_files(
jsonl_records,
dir_path,
name_prefix = stringr::str_c(stringr::str_remove_all(Sys.time(), "\\D"),
"_batch-input"),
max_mb = 100
)
Examples
role <- "Sei l'assistente di un docente universitario."
context <- "State analizzando i commenti degli studenti dell'ultimo corso."
task <- "Il tuo compito è capire se sono soddisfatti del corso."
instructions <- "Analizza i commenti e decidi se sono soddisfatti o meno."
output <- "Riporta 'soddisfatto' o 'insoddisfatto'."
style <- "Non aggiungere nessun commento, restituisci solo ed
esclusivamente la classificazione."
examples <- "
commento_1: 'Mi è piaciuto molto il corso; davvero interessante.'
classificazione_1: 'soddisfatto'
commento_2: 'Non mi è piaciuto per niente; una noia mortale'
classificazione_2: 'insoddisfatto'
"
sys_prompt <- compose_sys_prompt(role = role, context = context)
usr_prompt <- compose_usr_prompt(
task = task, instructions = instructions, output = output,
style = style, examples = examples
)
prompter <- create_usr_data_prompter(usr_prompt = usr_prompt)
jsonl_on_db <- tibble::tibble(
commenti = c(
"deadly boring!",
"A bit boring, but interesting",
"How nice, I loved it!"
)
) |>
dplyr::mutate(
id = dplyr::row_number(),
prompt = commenti |>
purrr::map(
\(x) compose_prompt_api(
sys_prompt = sys_prompt,
usr_prompt = prompter(x)
)
),
jsonl = create_jsonl_records(prompt, id)
) |>
dplyr::pull(jsonl)
# eval
temp_dir <- tempdir()
write_jsonl_files(jsonl_on_db, temp_dir)