Class: SqlGenius::Core::Ai::DescribeQuery

Inherits:
Object
  • Object
show all
Defined in:
lib/sql_genius/core/ai/describe_query.rb

Overview

Builds and sends a “describe this query” prompt to Core::Ai::Client. Pure function of SQL + config.domain_context — no connection lookup.

Extracted from app/controllers/concerns/sql_genius/ai_features.rb in Phase 2a.

Instance Method Summary collapse

Constructor Details

#initialize(client, config) ⇒ DescribeQuery

Returns a new instance of DescribeQuery.



12
13
14
15
# File 'lib/sql_genius/core/ai/describe_query.rb', line 12

def initialize(client, config)
  @client = client
  @config = config
end

Instance Method Details

#call(sql) ⇒ Object



17
18
19
20
21
22
23
# File 'lib/sql_genius/core/ai/describe_query.rb', line 17

def call(sql)
  messages = [
    { role: "system", content: system_prompt },
    { role: "user",   content: sql },
  ]
  @client.chat(messages: messages)
end