Files
coder/coderd/database/queries/aibridge.sql
T

41 lines
1.8 KiB
SQL

-- name: InsertAIBridgeInterception :one
INSERT INTO aibridge_interceptions (id, initiator_id, provider, model, metadata, started_at)
VALUES (@id::uuid, @initiator_id::uuid, @provider, @model, COALESCE(@metadata::jsonb, '{}'::jsonb), @started_at)
RETURNING *;
-- name: InsertAIBridgeTokenUsage :exec
INSERT INTO aibridge_token_usages (
id, interception_id, provider_response_id, input_tokens, output_tokens, metadata, created_at
) VALUES (
@id, @interception_id, @provider_response_id, @input_tokens, @output_tokens, COALESCE(@metadata::jsonb, '{}'::jsonb), @created_at
);
-- name: InsertAIBridgeUserPrompt :exec
INSERT INTO aibridge_user_prompts (
id, interception_id, provider_response_id, prompt, metadata, created_at
) VALUES (
@id, @interception_id, @provider_response_id, @prompt, COALESCE(@metadata::jsonb, '{}'::jsonb), @created_at
);
-- name: InsertAIBridgeToolUsage :exec
INSERT INTO aibridge_tool_usages (
id, interception_id, provider_response_id, tool, server_url, input, injected, invocation_error, metadata, created_at
) VALUES (
@id, @interception_id, @provider_response_id, @tool, @server_url, @input, @injected, @invocation_error, COALESCE(@metadata::jsonb, '{}'::jsonb), @created_at
);
-- name: GetAIBridgeInterceptionByID :one
SELECT * FROM aibridge_interceptions WHERE id = @id::uuid;
-- name: GetAIBridgeInterceptions :many
SELECT * FROM aibridge_interceptions;
-- name: GetAIBridgeTokenUsagesByInterceptionID :many
SELECT * FROM aibridge_token_usages WHERE interception_id = @interception_id::uuid;
-- name: GetAIBridgeUserPromptsByInterceptionID :many
SELECT * FROM aibridge_user_prompts WHERE interception_id = @interception_id::uuid;
-- name: GetAIBridgeToolUsagesByInterceptionID :many
SELECT * FROM aibridge_tool_usages WHERE interception_id = @interception_id::uuid;