
Snowflake Cortex Analyst를 활용한 AI 에이전트 구축
요약
Snowflake Cortex AI를 활용하여 보안 데이터 경계 내에서 안전하게 작동하는 AI 에이전트를 구축하는 방법을 설명합니다. 자연어를 정밀한 데이터 인사이트로 변환하여 복잡한 스키마와 비기술적 사용자 간의 간극을 메우는 아키텍처와 단계별 가이드를 제공합니다.
핵심 포인트
- Snowflake Cortex AI는 보안 데이터 경계 내에서 LLM을 직접 실행하여 데이터 유출을 방지합니다.
- 자연어를 정밀한 데이터 인사이트로 변환하는 지능형 시스템 구축이 가능합니다.
- Cortex Analyst를 통해 시맨틱 규칙과 추론 루프를 결합한 에이전트를 생성할 수 있습니다.
- 서버리스 분석 기능을 통해 기업 지식 자산을 안전하고 효율적으로 분석합니다.
오늘날의 생성형 AI (Generative AI) 시대에 기업들은 모델이 환각 (Hallucination)을 일으키거나 외부 API로 데이터를 유출하지 않으면서 데이터베이스를 쿼리하는 데 어려움을 겪고 있습니다. Snowflake Cortex AI는 대규모 언어 모델 (LLM)을 보안 데이터 경계 (Data Perimeter) 내부로 직접 가져옴으로써 이러한 패러다임을 완전히 바꿉니다. 자연어를 관리되고 정밀한 데이터 인사이트로 변환함으로써, Snowflake를 수동적인 데이터 저장소에서 능동적인 지능 시스템 (System of Intelligence)으로 변모시켜 복잡한 스키마 (Schema)와 비기술적 비즈니스 리더 사이의 간극을 메워줍니다.
Snowflake Cortex AI 아키텍처 (Architecture)
Snowflake Cortex AI 제품군은 기업 개발자에게 핵심 기업 지식 자산을 안전하게 분석할 수 있도록 설계된 서버리스 (Serverless) 분석 기능을 제공합니다. 근거가 없는 모델을 사용하여 임의의 쿼리를 작성하는 대신, 구성 요소들은 작업 복잡도와 구조적 요구 사항에 따라 엄격하게 분리되어 있습니다.
| 모듈 이름 | 정의 | 일반적인 용도 |
|---|---|---|
| 1) Snowflake Copilot | Snowflake 워크시트에 내장된 AI 기반 어시스턴트 | 개발자가 SQL 쿼리를 작성, 수정 및 설명하는 것을 도움 |
| ... |
단계별 가이드: Cortex Analyst를 사용하여 Cortex 에이전트 생성하기
자율적인 Cortex 에이전트를 구축하려면 모듈식 접근 방식이 필요합니다. 단순한 패턴 매칭 스크립트에 의존하는 대신, 기업의 시맨틱 규칙 (Semantic Rules)을 선택적인 전문 코드 실행과 연결하는 강력한 추론 루프 (Reasoning Loop)를 생성해야 합니다.
샘플 데이터셋에 관한 참고 사항:
이러한 개념들을 현실적인 비즈니스 시나리오에 적용하기 위해, 이 가이드 전반에 걸친 실습 예제와 설정은 하류 에너지 및 연료 유통 (downstream energy and fuel distribution) 도메인의 샘플 데이터셋을 기반으로 합니다. 코드 스니펫 (code snippets), 시맨틱 뷰 (semantic views), 그리고 에이전트 지침 (agent instructions)을 검토하다 보면 연료 저장 터미널, 지역별 소비 지표, 물량 예측과 같은 데이터 포인트에 대한 운영상의 참조를 확인할 수 있습니다.
1단계: 대상 환경 초기화 (Initialize the Target Environment)
워크시트 (worksheet)를 사용하여 활성 컴퓨팅 웨어하우스 (compute warehouse) 및 역할 (role) 컨텍스트를 설정합니다. 모든 시맨틱 설정과 스킬 자산 (skill assets)을 호스팅할 수 있도록 거버넌스 준수 내부 스테이지 디렉토리 (@FUEL_OPS.PUBLIC.AGENT_SKILLS)를 구축하거나 존재 여부를 확인합니다.
[

2단계: 구조화된 데이터 그라운딩 (Structured Data Grounding, 시맨틱 레이어) 구축
메인 Snowsight 콘솔 트리 내에서 AI & ML --> Cortex Analyst로 이동하거나, AI Studio에서 Cortex Analyst를 선택합니다.
[

중앙 집중식 설정 파일 내에 물리적 테이블 (physical tables), 정확한 컬럼 (columns), 컬럼 수준의 유의어 (column-level synonyms), 그리고 명시적인 데이터베이스 관계를 매핑합니다.
[

정확도를 높이고 더 나은 제안을 제공하기 위해, 동일한 화면의 하단 섹션에 있는 시맨틱 뷰 (semantic view)에 검증된 쿼리 (verified queries)를 추가할 수 있습니다.
선호하는 편집기 중 어느 것이든 yaml 파일에서 이 모든 설정을 수행할 수 있으며, 구성 (configuration) 내용을 시맨틱 뷰 (Semantic view) 내부에 직접 복사하여 붙여넣을 수 있습니다.
텍스트 편집기 또는 스테이지 리포지토리 (stage repository) 내의 사용자 정의 YAML 파일 구조를 보여주는 레이아웃 스크린샷으로, 테이블 (tables), 관계 (relationships), 그리고 검증된 쿼리 (verified_queries) 구성에 대한 구조적 정의를 강조합니다.
우측 상단 섹션에서 모든 구성 설정을 저장합니다. 플레이그라운드 (Playground) 창에서 시맨틱 뷰 (semantic view)의 동작을 검증할 수 있습니다. 이 단계는 에이전트 (agent)를 생성하기 전에 시맨틱 뷰를 완벽하게 만드는 데 도움이 됩니다.
3단계: Cortex 에이전트 객체 (Cortex Agent Object) 인스턴스화
- 메인 Snowsight 콘솔 트리 내에서 AI & ML --> Agents로 이동합니다.
-
- 또는 Create Agent를 클릭하여 새로운 인터페이스 박스를 띄웁니다.
- 기본 식별 문자열을 할당합니다: 에이전트 객체 이름 (Agent Object Name), 표시 이름 (Display Name), 그리고 컨텍스트 데이터베이스 범위 (context database scope, 예: FUEL_OPS).
4단계: 구성 및 프롬프트 (Configuration & Prompts)
에이전트 구성 (agent configuration) 패널 아래에서, 에이전트를 실행할 때 CoWork에 표시될 수 있는 에이전트 표시 이름과 설명을 할당합니다. 또한 사용자가 해당 에이전트와 관련된 대화를 시작하는 데 도움이 되는 기본적인 프롬프트 (prompts)를 추가할 수 있습니다.
단계 5: Cortex Analyst 시맨틱 도구 연결하기
활성 도구 그리드(active tools grid) 내에서 Analyst 또는 Structured Data Tool 토글을 선택합니다. 도구 리소스 조회(tool resource lookup)를 단계 2에서 설정한 스테이징된 시맨틱 .yaml 경로로 직접 지정합니다. 백그라운드에서 텍스트-투-SQL (text-to-SQL) 처리 작업을 수행할 전용 가상 웨어하우스 (virtual warehouse)를 할당합니다.
에이전트가 특정 상황에서 수행하기를 원하는 모든 구체적인 작업을 추가하기 위해 커스텀 도구 (custom tools)를 추가할 수 있습니다. 이는 MCP와 유사한 방식으로 작동합니다. 예를 들어, 누군가 자신을 대신해 이메일을 보내달라고 요청할 경우 에이전트가 이를 수행할 수 있도록 이메일 알림 저장 프로시저 (stored procedure)를 생성해 두었다고 가정해 보겠습니다.
CREATE OR REPLACE PROCEDURE FUEL_OPS.PUBLIC.SEND_PUMP_FAILURE_EMAIL("FAILING_TERMINAL" VARCHAR, "DETAILS" VARCHAR, "RECIPIENT" VARCHAR)
RETURNS VARCHAR
LANGUAGE JAVASCRIPT
...
단계 6: 스킬(Skills) 또는 MCP 커넥터로 기능 확장하기 (선택 사항)
커스텀 스킬 (Custom Skills): 특화된 로직이나 포맷팅 오버라이드 (formatting overrides)를 처리하기 위해 실행 스크립트(예: format_export.py)와 지침용 마크다운 래퍼(instructional markdown wrapper, 예: SKILL.md)를 스테이지 디렉토리(stage directory)에 함께 업로드하세요.
이 기능을 통해 에이전트가 사용자에게 응답을 반환하는 동안 추가적인 기능을 수행할 수 있습니다. 예를 들어, 저는 Python 스크립트와 SKILL.md 파일을 사용하여 테이블 응답의 출력을 특정 형식으로 변경하는 포맷터(formatter)를 생성했습니다.
Model Context Protocol (MCP) 커넥터: 워크스페이스 내에 보안된 CUSTOM MCP SERVER 연결 프로필을 설정함으로써 에이전트를 외부 도구 저장소 또는 서비스형 소프트웨어 (SaaS) 플랫폼에 연결하세요.
커넥터를 사용할 수 있도록 Snowflake는 몇 가지 내장된 MCP 커넥터를 제공하며, Snowflake 설정 메뉴에서 직접 커스텀 커넥터를 추가할 수 있는 옵션도 제공합니다. 아래 스크린샷을 참조하세요.
단계 7: CoWork에서 마무리, 배포 및 검증하기
- Agent Studio 캔버스의 상단 모서리에 있는 저장(Save) / 게시(Publish) 버튼을 클릭합니다.
- Snowflake CoWork 대시보드 또는 통합된 CoCo 사이드 채팅 컴패니언 패널을 열어 쿼리 테스트를 시작합니다.
- 활성 드롭다운 메뉴에서 새로 생성한 에이전트를 선택합니다. (아래 스크린샷에 표시된 대로)
- 자연어 데이터 프롬프트(natural language data prompt)를 제출하고, Show Trace 유틸리티를 사용하여 로직 경로를 감사(audit)합니다.
Snowflake CoWork에서의 출력 샘플:
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기








