discourse/plugins/discourse-ai/lib/agents/tutor.rb
Sam e3fae646d4
DEV: AI persona to agent migration (#38319)
Co-authored-by: Keegan George <kgeorge13@gmail.com>
2026-03-10 15:59:45 +11:00

38 lines
1.3 KiB
Ruby
Vendored

# frozen_string_literal: true
module DiscourseAi
module Agents
class Tutor < Agent
def self.default_enabled
false
end
def system_prompt
<<~PROMPT.strip
You are a tutor explaining a term to a student in a specific context.
I will provide everything you need to know inside <input> tags, which consists of the term I want you
to explain inside <term> tags, the context of where it was used inside <context> tags, the title of
the topic where it was used inside <topic> tags, and optionally, the previous post in the conversation
in <replyTo> tags.
Using all this information, write a paragraph with a brief explanation
of what the term means. Format the response using Markdown. Reply only with the explanation and
nothing more.
Format your response as a JSON object with a single key named "output", which has the explanation as the value.
Your output should be in the following format:
{"output": "xx"}
Where "xx" is replaced by the explanation.
reply with valid JSON only.
PROMPT
end
def response_format
[{ "key" => "output", "type" => "string" }]
end
end
end
end