0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

KCCS デジタルプラットフォーム部の井上です。
本記事では、先日私が「SnowPro® Specialty: Gen AI(GES-C02)」に合格したので、合格体験記を書いていこうと思います。

前提条件

  • 部門の方針で受験を決定
  • Snowflakeの業務経験半年ほど
  • Core、Architect、DataEngineerのSnowPro資格保有
  • 英語苦手(TOEIC330点)

SnowPro Specialty: Gen AI とは

SnowflakeにはSnowProという認定資格があります。
SnowProは基礎的なCore、応用的なAdvanced、何か一つの分野に対して特化したSpecialtyの3つに分かれています。
今回私が取得したSpecialty: Gen AIはSnowProの生成AIに特化したものです。
概要はこちらの公式ページを確認ください。

項目 詳細(GES-C02)
問題数 55問
試験時間 85分
言語 英語のみ(2026年8月時点)
費用 $225
合格点 750点(1000点満点)
前提条件 なし

この試験は英語でしか受験できません。(2026年8月時点)
ですが、私は前提条件で書いた通り英語が得意ではなく、苦労しました。
英語が苦手でも行える対策についても記載していこうと思います。

勉強方法

情報収集

私は普段資格勉強をする時は、先人の受験記を見て参考にすることが多いです。
しかし、今回は日本語の合格体験記は見つからず、大変困りました。
英語の体験記は数件見つかったものの、具体的な試験対策として活用するには少し情報が足りない印象でした。

ドキュメントを読む

とりあえず、公式ドキュメントを読むことにします。
https://learn.snowflake.com/en/certifications/snowpro-GenAI-C02/?pdf_name=SnowProGenAIStudyGuideC02.pdf
試験範囲の詳細とサンプル問題が記載されています。
試験範囲に当てはまる公式ドキュメントを検索し、
内容を1通り確認することから始めました。

模試を解く

試験範囲の大雑把な勉強が終わった後は、
以下の2つのUdemyの問題集を購入し、行いました。
これらはブラウザの翻訳機能を使って何周かトライし、
ある程度実力が付いた段階で英語のまま解く練習をしました。

模擬試験1

こちらは出題形式や難易度は既存の試験と照らし合わせても妥当に感じました。
しかし解説は薄く、どうしてそれが正解なのかは自分で調べる必要が多くありました。

模擬試験2

こちらは解説が多かったことはよかったのですが、問題の形式が本番とは大きく異なります。
解いていた時には
「もしかしてSpecialtyはCoreやAdvとは違ってこんな形式の問題も出るのか?」
と震えていました。

公式模擬試験を解く

上記の2つのUdemy問題集のレベル感が違いすぎたため、
実際はどちらの方が本番に近いのか、確かめるために受験しました。
もちろん、試験本番と同じで完全に英語です。

解説などはなく、最後に点数表示がされるだけなので
復習を行えるようにしておく必要があります。
私は試験を受けながら分からない部分をメモしていました。

私は試験4日前に受けたのですが、正答率が50%ちょっとでした。
危機感を煽る意味でもよかったと思います。

CoCoに問題を作らせる

SnowflakeにはAIコーディングエージェントのCoCoというものがあります。
そのCoCoに以下のプロンプトを投げ、問題集としていました。
https://www.snowflake.com/ja/product/snowflake-coco/
おそらく、Geminiなど他の生成AIでも代用可能かと思います。

プロンプト(GES-C02)
SnowProGenAIの資格勉強をしています。
以下の試験範囲を参考に、英語で問題を作成してほしいです。
 問題の内容は4択の択一問題か、5択の2つを選択する問題です。
問題の答えが何番目かはランダムにしてください。
解答例は出力しないようにしてください。
解答したら、日本語訳した問題と選択肢を提示し、解説をお願いします。
解説には必ずドキュメントリンクを添えてください。 
例題を添えますので、問題の難易度や出題傾向の参考にしてください。
例題を少しいじっただけのような問題を出すのはやめてください。

試験範囲
Domain 1.0: Snowflake for Gen AI Overview
1.1 Define Snowflake’s Gen AI principles and features.
● Snowflake Cortex ○ Cortex Models and Functions ○ Cortex Fine-tuning (Public Preview) ○ Cortex Search ■ RAG use cases ■ Unstructured data use cases ○ Cortex Analyst ■ Text-to-SQL use cases ○ Cortex Agents
● Snowflake Cortex Code
● Cortex Code in Snowsight UI ○ Cortex Code Command Line (CLI)
● Snowflake Copilot Inline (Public Preview) ○ Cortex Models and Functions ○ Cortex Fine-tuning (Public Preview) ○ Cortex Search ■ RAG use cases
● Snowflake Intelligence
● Different interfaces ○ AI Studio ○ SQL ○ REST API
● Bringing your own models into Snowflake ○ Snowflake Model Registry (custom model) ○ Snowpark Container Services 1.2 Outline Gen AI capabilities in Snowflake.
● Prompting
● Cortex AI functions ○ Vector-embedding ○ Context Windows
● Cortex Search ○ Multi-index queries ○ Access control requirements ○ Different ways to use Cortex Search
● Cortex Analyst ○ Semantic Views ○ Semantic Views Autopilot ○ YAML Specification for Semantic Views ○ Verified Query ○ Custom Instructions
● Cortex Agents
● Snowflake Intelligence
● Cross-region inference ○ CORTEX_ENABLED CROSS_REGION parameter ○ Considerations (e.g., latency, availability)
● REST APIs
● Model Context Protocol (MCP)
● Snowflake Cortex Code ○ Cortex Code CLI commands
● Cortex Knowledge Extensions (CKE) Domain 2.0: Snowflake Gen AI Functions
2.1 Apply AI functions in Snowflake.
● Snowflake Cortex AI functions ○ General ■ AI_COMPLETE ■ COMPLETE Structured Outputs ○ Task-specific functions ■ AI_CLASSIFY ■ AI_EXTRACT ■ AI_PARSE DOCUMENT ■ AI_SENTIMENT ■ SUMMARIZE ■ AI_SUMMARIZE_AGG ■ AI_TRANSLATE ■ AI_EMBED ■ AI_FILTER ■ AI_AGG ■ AI_SIMILARITY ■ AI_TRANSCRIBE ■ AI_REDACT ○ Vector functions ■ VECTOR_INNER _PRODUCT ■ VECTOR_L1 _DISTANCE ■ VECTOR_L2 DISTANCE ■ VECTOR_COSINE_SI MILARITY ■ VECTOR_TRUNCATE ■ VECTOR_NORMALIZE ■ VECTOR_SUM ■ VECTOR_MIN ■ VECTOR_MAX ■ VECTOR_AVG ○ Helper functions ■ AI_COUNT_TOKENS ■ TRY_COMPLETE ■ SPLIT_TEXT_RECUR SIVE_CHARACTER ■ SPLIT_TEXT_MARKDOWN_HEADER ■ TO_FILE ■ PROMPT 2.2 Perform data analysis given a use case.
● Use fully-managed LLMs, RAG, and text-to-SQL services ○ Unstructured data ■ Functions ● AI_PARSE DOCUMENT ● AI_EXTRACT ● AI_SIMILARITY ● AI_COMPLETE ■ Cortex Search ● Recursive split text markdown ● Chunk sizing ● Embedding models ● Semantic reranking ■ Multi-modal Analytics ● Audio and Image Processing ○ Structured data ■ Functions ● AI_COMPLETE ■ Cortex Analyst ● Cortex Analyst Verified Query Repository (VQR) ● Integration with Cortex Search ● Suggested Questions ● CUSTOM_INSTRUCTIONS
● Performance considerations ○ Choosing a model ○ Latency (e.g., model size) ○ Accuracy (e.g., fine-tuning, reducing hallucinations) ○ Model capability ○ Provisioned Throughput 2.3 Build or interact with interfaces to chat with data in Snowflake.
● Set up the Snowflake environment ○ Required privileges
● Invoke Cortex functions within the application code (e.g., Streamlit in Snowflake) ○ Chat conversations ■ Multi-turn architecture ■ Update parameters (i.e., messages array for conversation history)
● Snowflake Intelligence 2.4 Apply Snowflake Cortex functions in data pipelines.
● Snowflake Cortex ● SQL interface ● Data extraction ● Data enrichment ● Data augmentation ● Data transformations 2.5 Run third-party models in Snowflake.
● Using Snowpark Container Services ○ Environment setup ○ Docker images ○ Specification files ○ Create compute pool ○ Create image repository
● Using Snowflake Model Registry ○ Logging the model ○ Calling the model Domain 3.0: Snowflake Gen AI Governance
3.1 Set up model access controls.
● Limits on which models can be used ○ Restrict access to specific models ● Application roles ■ Control model access ● Role-Based Access Control (RBAC) ● Account-level allowlist parameter
● Data safety and security considerations ○ Cross region inference ○ Guardrails ○ Sensitive data management (e.g., AI_REDACT) ○ Methods to reduce model hallucinations and bias
● REST API authentication methods 3.2 Grant and revoke Role-Based Access Control (RBAC) and privileges.
● Individual privileges ○ Specific requirements for Analyst, Search, Agents, and Snowflake Intelligence
● Roles ○ CORTEX_USER ○ CORTEX_ANALYST _USER ○ CORTEX_AGENT_USER ○ CORTEX_EMBED_USER 3.3 Manage, monitor, and optimize Snowflake Cortex costs.
● Cortex Agents ○ Limit token usage
● Cortex Search ○ Different types of costs (e.g., virtual warehouse, EMBED_TEXT, serving, indexing)
● Cortex Analyst
● Cortex AI functions ○ Minimize tokens ○ Token cost implications
● Tracking costs of Snowpark Container Services ○ Compute pools
● Tracking model usage and consumption ○ Usage quotas ○ CORTEX_ANALYST_USAGE_HISTORY ○ CORTEX_AISQL_USAGE HISTORY ○ CORTEX_SEARCH_DAILY_USAGE_HISTORY ○ CORTEX_REST_API_USAGE_HISTORY ○ CORTEX_PROVISIONED_THROUGHPUT_USAGE HISTORY ○ METERING_DAILY_HISTORY ○ METERING_HISTORY
● Object tagging to monitor AI services costs 3.4 Use Snowflake AI observability tools.
● Snowflake AI observability features ○ Evaluation metrics ○ Comparisons ○ Tracing ○ Logging ○ Event tables
● Implementation methods ○ Trulens SDK Domain 4.0: Snowflake Document Processing
4.1 Use document parsing functions.
● AI_PARSE_DOCUMENT ○ OCR mode ○ LAYOUT mode ○ page_split ○ page_limit
● AI_EXTRACT ○ Response format ○ How to prompt/Prompt engineering 4.2 Prepare and manage documents and implement extracting workflows.
● Upload documents
● Requirements (e.g., formats, size limits) 4.3 Build automated document processing pipelines with Cortex AI integration.
● Orchestration of Snowflake tooling ○ Streams ○ Tasks 4.4 Troubleshoot and optimize document processing.
● Extracting query errors ○ GET_PRESIGNED_URL function
● Requirements and privileges
● Cost and best practice considerations
● Fine-tuning arctic-extract models 

例題

A Gen AI Specialist needs to analyze the daily costs incurred for AI services in Snowflake.
Which query will retrieve the credit consumption from Snowflake’s metadata objects for data usage?
A. SELECT * FROM SNOWFLAKE.ACCOUNT_USAGE.QUERY_HISTORY
WHERE SERVICE_TYPE='AI_SERVICES';
B. SELECT * FROM SNOWFLAKE.INFORMATION_SCHEMA.METERING_HISTORY
WHERE SERVICE_TYPE='AI_SERVICES';
C. SELECT * FROM SNOWFLAKE.ACCOUNT_USAGE.METERING_HISTORY
WHERE SERVICE_TYPE='AI_SERVICES';
D. SELECT * FROM SNOWFLAKE.ACCOUNT_USAGE.METERING_DAILY_HISTORY
WHERE SERVICE_TYPE='AI_SERVICES'; 

What is the primary role of memory in a multi-turn chat conversation using a Gen AI model in
Snowflake Cortex Analyst?
A. To securely store user credentials
B. To increase the speed of response generation
C. To maintain context throughout multiple requests
D. To limit the number of tokens processed for each request 

A company processes multiple document types that require different extraction logic. Invoices
need specific fields like vendor name, total amount, and line items extracted. Legal contracts
need their full text converted to searchable Markdown with table structures preserved. How should the company structure their document processing workflow in Snowflake?
A. Use AI_PARSE_DOCUMENT for all documents, then apply SQL filters to extract
specific fields from invoices and preserve contract layouts
B. Use AI_EXTRACT for all documents, defining separate response format schemas for
invoices and contracts
C. Use AI_PARSE_DOCUMENT in OCR mode for invoices to extract text, and
AI_EXTRACT for contracts to pull the full document content
D. Use AI_EXTRACT with a schema for invoices to pull structured fields, and
AI_PARSE_DOCUMENT in LAYOUT mode for contracts to preserve document
structure

例題は公式StudyGuide(GES-C02)から引用

信頼できる問題集が少なかったので、後半はずっとCoCoの作った問題をやっていました。
例題を元にしているので、問題の形式や難易度が本番にかなり近く、役に立ったと感じています。

一方で、細かい部分の出題になればなるほど、ハルシネーションが増えていきました。
ある程度実力がつき、怪しい点にツッコミを入れられるようになってから活用するのがいいと感じています。

英語対策

何度も書きますが私は英語が苦手です。
問題を端から端まで読んでも分からなかったり、解くのが遅くなることは目に見えていました。
そこで、用語ごとのキラーフレーズを探すようにしていました。

例えば、以下のようなイメージです。
structured data → Cortex Analystのこと聞かれてそうだな
compare → 比較ならAI_SIMILARITYかな
Cortex Analyst + higher cardinality → Cortex Searchとの統合のことかな

問題と答えの全体を大まかに確認し、キラーフレーズに当てはまりそうなものがあれば一旦それを選択して次の問題へといくようにしました。
これにより、時間短縮を図ることができたと感じています。

試験申し込み ※注意ポイント

SnowProには「試験時間延長措置」が存在します。
英語ネイティブではない人が英語試験を受ける時に適用できるもので、
試験予約前に申請して承認されると、30分試験時間を延長してもらえるというものです。
審査には最大72時間かかるということで、逆算して早めに申請をしておくことを強くお勧めします。

以前までは自動で延長がされていたとのことですが、仕様が変更されたようです。
私は当日延長されていないことに気づき、すごく焦ったので皆さんはご注意ください。

結果

775点で合格しました。

時間ギリギリまで見直しをすることになったので、試験時間延長措置は忘れないように気をつけてください。

恐れていた通り英単語の意味が理解できず解けなかった問題もありましたが、点数が合格点に届いてよかったです。

所感

他のSnowPro資格と比較すると、
Core < GenAI <<< Adv
のような難易度だと感じました。
Coreのように知っていればダイレクトに答えることの可能な問題が多かったです。
Advのようなケースに対する適切な方法を聞かれる問題もありましたが、少なかったです。

しかし、既存のSnowPro資格とほぼ試験範囲が被っていないため、この資格のために独自の勉強を必要とするのが大変だと感じました。
英語による試験なことも難易度が上がる一因かなと思いますが、試験時間延長措置や英語対策をしていれば何とかなると思います。

今回、私の総勉強時間は150時間ほどだったかと思います。
もう一度やり直すなら、もう少しCoCoのプロンプトを工夫してより実用的にし、
CoCoとの壁打ちの時間を増やすことでより効率的にできるかもしれないと感じてます。

以上、勉強方法の一例としてご参考にしてください。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?