145 lines
3.5 KiB
Go
145 lines
3.5 KiB
Go
// Code generated by sqlc. DO NOT EDIT.
|
|
// versions:
|
|
// sqlc v1.31.1
|
|
// source: traces.sql
|
|
|
|
package dbgen
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/jackc/pgx/v5/pgtype"
|
|
)
|
|
|
|
const createRAGTrace = `-- name: CreateRAGTrace :one
|
|
INSERT INTO rag_traces (
|
|
id,
|
|
project_id,
|
|
knowledge_base_id,
|
|
release_id,
|
|
request_kind,
|
|
trace_id,
|
|
query_hash,
|
|
query_text,
|
|
response_text,
|
|
status,
|
|
latency_ms,
|
|
expires_at
|
|
)
|
|
VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12)
|
|
RETURNING id, project_id, knowledge_base_id, release_id, request_kind, trace_id, query_hash, query_text, response_text, status, latency_ms, expires_at, created_at
|
|
`
|
|
|
|
type CreateRAGTraceParams struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
ProjectID pgtype.UUID `json:"project_id"`
|
|
KnowledgeBaseID pgtype.UUID `json:"knowledge_base_id"`
|
|
ReleaseID pgtype.UUID `json:"release_id"`
|
|
RequestKind string `json:"request_kind"`
|
|
TraceID pgtype.UUID `json:"trace_id"`
|
|
QueryHash string `json:"query_hash"`
|
|
QueryText pgtype.Text `json:"query_text"`
|
|
ResponseText pgtype.Text `json:"response_text"`
|
|
Status string `json:"status"`
|
|
LatencyMs int64 `json:"latency_ms"`
|
|
ExpiresAt pgtype.Timestamptz `json:"expires_at"`
|
|
}
|
|
|
|
func (q *Queries) CreateRAGTrace(ctx context.Context, arg CreateRAGTraceParams) (RagTrace, error) {
|
|
row := q.db.QueryRow(ctx, createRAGTrace,
|
|
arg.ID,
|
|
arg.ProjectID,
|
|
arg.KnowledgeBaseID,
|
|
arg.ReleaseID,
|
|
arg.RequestKind,
|
|
arg.TraceID,
|
|
arg.QueryHash,
|
|
arg.QueryText,
|
|
arg.ResponseText,
|
|
arg.Status,
|
|
arg.LatencyMs,
|
|
arg.ExpiresAt,
|
|
)
|
|
var i RagTrace
|
|
err := row.Scan(
|
|
&i.ID,
|
|
&i.ProjectID,
|
|
&i.KnowledgeBaseID,
|
|
&i.ReleaseID,
|
|
&i.RequestKind,
|
|
&i.TraceID,
|
|
&i.QueryHash,
|
|
&i.QueryText,
|
|
&i.ResponseText,
|
|
&i.Status,
|
|
&i.LatencyMs,
|
|
&i.ExpiresAt,
|
|
&i.CreatedAt,
|
|
)
|
|
return i, err
|
|
}
|
|
|
|
const createRAGTraceEvidence = `-- name: CreateRAGTraceEvidence :one
|
|
INSERT INTO rag_trace_evidence (
|
|
id,
|
|
rag_trace_id,
|
|
rank,
|
|
artifact_id,
|
|
external_ref,
|
|
score,
|
|
citation,
|
|
metadata
|
|
)
|
|
VALUES ($1, $2, $3, $4, $5, $6, $7, $8)
|
|
RETURNING id, rag_trace_id, rank, artifact_id, external_ref, score, citation, metadata, created_at
|
|
`
|
|
|
|
type CreateRAGTraceEvidenceParams struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
RagTraceID pgtype.UUID `json:"rag_trace_id"`
|
|
Rank int32 `json:"rank"`
|
|
ArtifactID pgtype.UUID `json:"artifact_id"`
|
|
ExternalRef pgtype.Text `json:"external_ref"`
|
|
Score pgtype.Float8 `json:"score"`
|
|
Citation []byte `json:"citation"`
|
|
Metadata []byte `json:"metadata"`
|
|
}
|
|
|
|
func (q *Queries) CreateRAGTraceEvidence(ctx context.Context, arg CreateRAGTraceEvidenceParams) (RagTraceEvidence, error) {
|
|
row := q.db.QueryRow(ctx, createRAGTraceEvidence,
|
|
arg.ID,
|
|
arg.RagTraceID,
|
|
arg.Rank,
|
|
arg.ArtifactID,
|
|
arg.ExternalRef,
|
|
arg.Score,
|
|
arg.Citation,
|
|
arg.Metadata,
|
|
)
|
|
var i RagTraceEvidence
|
|
err := row.Scan(
|
|
&i.ID,
|
|
&i.RagTraceID,
|
|
&i.Rank,
|
|
&i.ArtifactID,
|
|
&i.ExternalRef,
|
|
&i.Score,
|
|
&i.Citation,
|
|
&i.Metadata,
|
|
&i.CreatedAt,
|
|
)
|
|
return i, err
|
|
}
|
|
|
|
const deleteExpiredRAGTraces = `-- name: DeleteExpiredRAGTraces :execrows
|
|
DELETE FROM rag_traces
|
|
WHERE expires_at <= now()
|
|
`
|
|
|
|
func (q *Queries) DeleteExpiredRAGTraces(ctx context.Context) (int64, error) {
|
|
result, err := q.db.Exec(ctx, deleteExpiredRAGTraces)
|
|
if err != nil {
|
|
return 0, err
|
|
}
|
|
return result.RowsAffected(), nil
|
|
}
|