-- 1. 기본 사용: 텍스트 요약
SELECT
article_id,
ai_query(
'databricks-meta-llama-3-3-70b-instruct',
CONCAT('다음 기사를 한국어 3줄로 요약해 주세요:\n\n', article_text)
) AS summary
FROM news_articles;
-- 2. 구조화된 응답 반환 (JSON → STRUCT)
SELECT
review_id,
ai_query(
'databricks-meta-llama-3-3-70b-instruct',
CONCAT('다음 리뷰를 분석하여 JSON으로 반환해 주세요: ', review_text),
returnType => 'STRUCT<sentiment STRING, topics ARRAY<STRING>, score INT>'
) AS analysis
FROM customer_reviews;
-- 3. 모델 파라미터 지정
SELECT ai_query(
'databricks-meta-llama-3-3-70b-instruct',
'데이터 레이크하우스의 장점을 5가지 나열해 주세요.',
modelParameters => named_struct(
'temperature', 0.1, -- 낮을수록 결정적 (0.0~2.0)
'max_tokens', 500, -- 최대 응답 토큰 수
'top_p', 0.9 -- 확률 기반 토큰 선택 범위
)
) AS response;
-- 4. 시스템 프롬프트 + 사용자 프롬프트 (Chat 형식)
SELECT ai_query(
'databricks-meta-llama-3-3-70b-instruct',
named_struct(
'messages', ARRAY(
named_struct('role', 'system', 'content', '당신은 전문 데이터 분석가입니다. 한국어로 답변해 주세요.'),
named_struct('role', 'user', 'content', CONCAT('다음 데이터를 분석해 주세요: ', data_text))
)
)
) AS analysis
FROM reports;
-- 5. 배치 처리 시 에러 무시 (일부 실패해도 전체 쿼리 계속)
SELECT
doc_id,
ai_query(
'databricks-meta-llama-3-3-70b-instruct',
CONCAT('요약: ', content),
failOnError => false
) AS summary
FROM documents;