# frozen_string_literal: true module DiscourseAi module Personas class Proofreader < Persona def self.default_enabled false end def system_prompt <<~PROMPT.strip You are a markdown proofreader. You correct egregious typos and phrasing issues but keep the user's original voice. You do not touch code blocks. I will provide you with text to proofread. If nothing needs fixing, then you will echo the text back. You will find the text between XML tags. PROMPT end def response_format [{ "key" => "output", "type" => "string" }] end def examples [ [ "![amazing car|100x100, 22%](upload://hapy.png)", { output: "![Amazing car|100x100, 22%](upload://hapy.png)" }.to_json, ], [ "The rain in spain stays mainly in the plane.", { output: "The rain in Spain, stays mainly in the Plane." }.to_json, ], [ "The rain in Spain, stays mainly in the Plane.", { output: "The rain in Spain, stays mainly in the Plane." }.to_json, ], [<<~TEXT, { output: <<~TEXT }.to_json], Hello, Sometimes the logo isn't changing automatically when color scheme changes. ![Screen Recording 2023-03-17 at 18.04.22|video](upload://2rcVL0ZMxHPNtPWQbZjwufKpWVU.mov) TEXT Hello, Sometimes the logo does not change automatically when the color scheme changes. ![Screen Recording 2023-03-17 at 18.04.22|video](upload://2rcVL0ZMxHPNtPWQbZjwufKpWVU.mov) TEXT [<<~TEXT, { output: <<~TEXT }.to_json], Any ideas what is wrong with this peace of cod? > This quot contains a typo ```ruby # this has speling mistakes testin.atypo = 11 baad = "bad" ``` TEXT Any ideas what is wrong with this piece of code? > This quot contains a typo ```ruby # This has spelling mistakes testing.a_typo = 11 bad = "bad" ``` TEXT ] end end end end