Sha256: 38cb8c86986424dc0948f09a5d2386a1196c680b23100976155cbe1c956b853c

Contents?: true

Size: 708 Bytes

Versions: 5

Compression:

Stored size: 708 Bytes

Contents

module Sublayer
  module Agents
    class JSONFixingAgent
      include Sublayer::Capabilities::LLMAssistance
      include Sublayer::Capabilities::HumanAssistance

      attr_reader :invalid_json, :results

      llm_result_format type: :single_string,
        name: "valid_json",
        description: "The valid JSON string"

      def initialize(invalid_json:)
        @invalid_json = invalid_json
      end

      def execute
        @results = llm_generate
      end

      def prompt
        <<-PROMPT
        You are an expert in JSON parsing.

        The given string is not a valid JSON: #{invalid_json}

        Please fix this and produce a valid JSON.
        PROMPT
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
clag-0.0.5 vendor/gems/sublayer/lib/sublayer/agents/json_fixing_agent.rb
clag-0.0.4 vendor/gems/sublayer/lib/sublayer/agents/json_fixing_agent.rb
clag-0.0.3 vendor/gems/sublayer/lib/sublayer/agents/json_fixing_agent.rb
clag-0.0.2 vendor/gems/sublayer/lib/sublayer/agents/json_fixing_agent.rb
clag-0.0.1 vendor/gems/sublayer/lib/sublayer/agents/json_fixing_agent.rb