llm_requests.sql

 1-- name: InsertLLMRequest :one
 2INSERT INTO llm_requests (
 3    conversation_id,
 4    model,
 5    provider,
 6    url,
 7    request_body,
 8    response_body,
 9    status_code,
10    error,
11    duration_ms,
12    prefix_request_id,
13    prefix_length
14) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
15RETURNING *;
16
17-- name: GetLastRequestForConversation :one
18SELECT * FROM llm_requests
19WHERE conversation_id = ?
20ORDER BY id DESC
21LIMIT 1;
22
23-- name: GetLLMRequestByID :one
24SELECT * FROM llm_requests WHERE id = ?;
25
26-- name: ListRecentLLMRequests :many
27SELECT
28    r.id,
29    r.conversation_id,
30    r.model,
31    m.display_name as model_display_name,
32    r.provider,
33    r.url,
34    LENGTH(r.request_body) as request_body_length,
35    LENGTH(r.response_body) as response_body_length,
36    r.status_code,
37    r.error,
38    r.duration_ms,
39    r.created_at,
40    r.prefix_request_id,
41    r.prefix_length
42FROM llm_requests r
43LEFT JOIN models m ON r.model = m.model_id
44ORDER BY r.id DESC
45LIMIT ?;
46
47-- name: GetLLMRequestBody :one
48SELECT request_body FROM llm_requests WHERE id = ?;
49
50-- name: GetLLMResponseBody :one
51SELECT response_body FROM llm_requests WHERE id = ?;
52
53