見出し画像

Snowflake のAI戦略、Cortex LLM Functionsについて

背景

データウェアハウスまたはより正確にはデータプラットフォームの戦いにおいて、AIのトレンドが勢いを増しており、それに対応するためにGoogleやMicrosoftなども同様の機能をリリースして競争力を維持しているLLM機能を発表したことは驚くべきことではありません。

Snowflake LLM Functionsの機能

Snowflake Cortexは、ユーザーにAIおよびMLソリューションを提供するマネージドサービスです。Snowflakeが提供する機能には、次の2つのタイプがあります。

  1. LLM機能:

    1. これらはSQLおよびPythonベースの機能であり、理解、クエリ、翻訳、要約、自由形式のテキストの生成に使用できます。

  2. MLベースの機能:

    1. これらはMLアルゴリズムに基づいたSQL機能であり、予測を導出するために使用されます。

Snowflakeのこれらのサービスにより、ユーザーはデータを他の場所に移動せずにプラットフォーム内でAI/MLおよびLLMの機能を開発および利用することができます。
これらのサービスは、Document AI、Universal Search、またはCopilotなどの他のSnowflake社提供の機能にも役立ちます。これらの機能は現在プライベートプレビュー中であり、Snowflakeの代表者に連絡することで有効にすることができます。

利用可能なLLM機能

選択した地域のすべてのアカウントで利用可能です。
Snowflake Cortexは、Mistral、Meta、Googleなどの企業の研究者によって訓練された業界をリードする大規模言語モデル(LLM)に即座にアクセスできます。また、Snowflakeが特定のユースケースに合わせて調整したモデルも提供しています。
これらのLLMはSnowflakeによって完全にホストおよび管理されているため、セットアップは不要です。データはSnowflake内にあり、期待通りのパフォーマンス、スケーラビリティ、ガバナンスが提供されます。
Snowflake Cortexの機能はSQL関数として提供され、またPythonでも利用可能です。利用可能な関数は以下の通りです。

  • COMPLETE: プロンプトを与えられた場合、そのプロンプトを完了する応答を返します。この関数は、単一のプロンプトまたは複数のプロンプトと応答を持つ会話のいずれも受け入れます。

  • EXTRACT_ANSWER: 質問と非構造化データが与えられた場合、データ内に見つかる場合は質問に対する回答を返します。

  • SENTIMENT: 与えられたテキストの検出されたポジティブまたはネガティブな感情を表す-1から1までの感情スコアを返します。

  • SUMMARIZE: 与えられたテキストの要約を返します。

  • TRANSLATE: サポートされている任意の言語から他の言語にテキストを翻訳します。

利用可能なLLM関数は何ですか?

選択した地域のすべてのアカウントで利用可能です。
Snowflake Cortexは、Mistral、Meta、Googleなどの企業や研究者によって訓練された業界をリードする大規模言語モデル(LLM)をサポートしてます。また、Snowflakeが特定のユースケースに合わせて調整したモデルも提供しています。
これらのLLMはSnowflakeによって完全にホストおよび管理されているため、セットアップは不要です。データはSnowflake内に残り、期待通りのパフォーマンス、拡張性、およびガバナンスが提供されます。
Snowflake Cortexの機能はSQL関数として提供され、またPythonでも利用可能です。

利用可能な関数は以下にまとめられています。

CORTEX.COMPLETE():

与えられたプロンプトに従って、COMPLETE関数は選択した言語モデルを使用して応答を生成します。最も単純な使用例では、プロンプトは単一の文字列です。また、対話形式のチャットの使用には、複数のプロンプトと応答を含む会話を提供することができ、この関数の形式では、出力のスタイルとサイズをカスタマイズするためのハイパーパラメータオプションも指定できます。
詳細は以下の記事をご覧ください:[2024] Snowflake Cortex — COMPLETE Function

COMPLETE関数は以下のモデルをサポートしています。異なるモデルには異なるコストクォータがあります。

  • mistral-large

  • mixtral-8x7b

  • llama2-70b-chat

  • mistral-7b

  • gemma-7b

COMPLETE (SNOWFLAKE.CORTEX)の構文と例については、こちらを参照してください。


CORTEX.EXTRACT_ANSWER():

指定された質問からテキストドキュメント内の回答を抽出する関数です。ドキュメントは、プレーンな英文ドキュメントまたは半構造化(JSON)データオブジェクトの文字列表現である場合があります。
完全なガイドについては、以下の記事をご覧ください:[2024] Snowflake Cortex — EXTRACT_ANSWER function
EXTRACT_ANSWER 関数は、指定された質問からテキストドキュメント内の回答を抽出します。ドキュメントは、プレーンな英文ドキュメントまたは半構造化(JSON)データオブジェクトの文字列表現である場合があります。
構文や例については、EXTRACT_ANSWER (SNOWFLAKE.CORTEX) を参照してください。

CORTEX.SENTIMENT():

この関数は、与えられた英語のテキストに対する感情スコアを返します。
完全なガイドについては、以下の記事をチェックしてください:[2024] Snowflake Cortex — SENTIMENT Function
SENTIMENT 関数は、与えられた英語のテキストに対して、-1 から 1 のスコア(-1 が最もネガティブで 1 が最もポジティブで、0 近辺の値が中立)を返します。
構文や例については、SENTIMENT (SNOWFLAKE.CORTEX) を参照してください。

CORTEX.SUMMARIZE():

この関数は、与えられた英文の要約を返します。
完全なガイドについては、以下の記事をご覧ください:[2024] Snowflake Cortex — SUMMARIZE Function

CORTEX.TRANSLATE():

この機能は、与えられた入力テキストをサポートされている言語から別の言語に翻訳します。
完全なガイドについては、以下の記事をご覧ください:[2024] Snowflake Cortex — TRANSLATE Function

  • COMPLETE: プロンプトを受け取り、そのプロンプトを完了する応答を返します。この関数は、単一のプロンプトまたは複数のプロンプトと応答を持つ会話のいずれかを受け入れます。

  • EXTRACT_ANSWER: 質問と非構造化データを受け取り、データ内に見つかる場合は質問への回答を返します。

  • SENTIMENT: 与えられたテキストの検出されたポジティブまたはネガティブな感情を表す、-1から1までの感情スコアを返します。

  • SUMMARIZE: 与えられたテキストの要約を返します。

  • TRANSLATE: 任意のサポートされている言語から他の言語にテキストを翻訳します。

すべての機能がAWSとAzureのすべての地域で利用可能というわけではありません。これらは、以下のクラウドプロバイダーの指定された地域で利用可能です:

Snowflake CortexはSnowflake環境に統合されており、顧客にとって利用しやすいです。Snowflakeはまた、Snowflake Cortexを基盤とした新しいLLMによる高度な機能セットを提供しています。

これらの機能には、ユーザーインターフェースと高性能のLLMが含まれており、Snowflake Cortexによって完全にホストおよび管理されているため、組織全体のビジネスチームやアナリストにとって理想的です。Snowflakeによると、これによりData Cloud全体での生産性がさらに向上し、Snowflakeの新しいLLM体験には以下が含まれます:


  • Snowflake Copilot: 高度な言語モデル(LLM)によって強化されたSnowflake Copilotは、Snowflake内の日常のコーディングタスクに対する直感的なアシスタントとして機能します。自然な言語を活用することで、ユーザーはデータについて簡単に問い合わせたり、関連するデータセットに合わせたSQLクエリを作成したり、クエリを洗練させたり、洞察をフィルタリングしたりすることができます。

  • Universal Search: Snowflakeは、LLM技術によって推進される最先端の検索機能を導入し、ユーザーが特定のニーズに応じて最も適切なデータやアプリケーションを迅速に発見して活用できるようにします。この包括的な検索機能は、顧客のSnowflakeアカウント全体にわたり、データベース、ビュー、そして間もなく公開予定のIcebergテーブルを含みます。さらに、ユーザーはSnowflake Marketplaceで利用可能なデータやSnowflakeネイティブアプリを探索できます。

  • Document AI: SnowflakeのLLM体験への最初の取り組みであるDocument AIは、企業が文書から請求金額や契約条件などのコンテンツをシームレスに抽出するために言語モデルを活用できるようにします。顧客は、視覚的なインターフェースと自然な言語のやり取りを利用して結果を微調整し、よりスマートなビジネス上の意思決定を促進し、安全かつスケーラブルな方法で効率を向上させることができます。


LLMモデルの選択

Snowflake Cortex COMPLETE機能は、さまざまな能力、レイテンシー、コストのモデルをサポートしています。これらのモデルは、一般的な顧客のユースケースに合わせて慎重に選択されています。最適なクレジットあたりのパフォーマンスを実現するには、コンテンツのサイズとタスクの複雑さに適したモデルを選択してください。以下に、利用可能なモデルの簡単な概要を示します。


  • mistral-largeは、さまざまな指標で高得点を獲得するトップティアのモデルです(下の表を参照)。32,000トークン(約24,000語)のコンテキストウィンドウを備えており、複雑な推論を拡張された会話で行うことができます。Snowflake Cortexが提供するモデルの中で最も計算集約型であり、したがって実行コストが最も高いです。

  • mixtral-8x7bは低遅延と高品質の結果を提供し、32,000トークンのコンテキスト長もサポートしています。多くの企業の本番利用ケースに最適です。

  • llama2-70b-chatは、データの抽出や求人募集の記述の支援など、適度な推論が必要な複雑な大規模なタスクに適しています。

  • mistral-7bとgemma-7bは、シンプルなタスクを迅速かつコスト効率よく実行できます。

    • mistral-7bは、小規模なカスタマイズが必要な最も簡単な要約や分類タスクに最適です。32,000トークンの制限により、複数ページのテキストを処理できます。

    • gemma-7bは、シンプルなコードやテキストの補完タスクに適しています。8,000トークンのコンテキストウィンドウを持っていますが、その制限内で驚くほど能力があり、かなりコスト効率が良いです。

どこから始めれば良いかわからない場合は、LMMをすでに使用しているか、新しい場合でも、まずmistral-largeを試してみてください。これはSnowflake Cortexが提供する中で最も幅広い能力を持つモデルであり、最新のモデルが何ができるかを良いアイディアを提供します。その結果は他のモデルの評価の基準として使用できます。

決定を支援するために、以下の表は、Snowflake Cortex COMPLETEが提供するモデルだけでなく、他のいくつかの人気モデルを含むさまざまなベンチマークで人気のあるモデルのパフォーマンスに関する情報を提供しています。


*比較用に提供されており、Snowflake Cortex COMPLETEでは利用できません。*


コストについて

Snowflake Cortex LLM 関数は、処理されるトークンの数に基づいてコンピュートコストが発生します。以下の表は、各関数ごとの100万トークンあたりのクレジットコストを示しています。

注意:
トークンは、Snowflake Cortex LLM関数によって処理されるテキストの最小単位であり、おおよそ4文字のテキストに相当します。生の入力または出力テキストとトークンの対応はモデルによって異なる場合があります。

  • 応答で新しいテキストを生成する関数(COMPLETE、SUMMARIZE、およびTRANSLATE)の場合、入力トークンと出力トークンの両方がカウントされます。

  • 入力から情報を抽出するだけの関数(EXTRACT_ANSWERおよびSENTIMENT)の場合、入力トークンのみがカウントされます。

  • EXTRACT_ANSWERの場合、請求対象のトークン数は、from_textフィールドとquestionフィールドのトークン数の合計です。

コンピュートコストの一般的な情報については、コンピュートコストの理解を参照してください。

Snowflakeの推奨事項では、Snowflake Cortex LLM Functionを呼び出すクエリを実行する際には、より小さなウェアハウス(MEDIUMより大きくない)を使用することをお勧めします。大きなウェアハウスを使用してもパフォーマンスが向上しないためです。Snowflake Cortex LLM Functionを呼び出すクエリを実行する際には、ウェアハウスをアクティブに保つためのコストが引き続き適用されます。

Snowflake Cortex LLM 関数の使用は、Snowflake Organization Usage の METERING_DAILY_HISTORY ビューに AI_SERVICES サービスタイプで表示されます。
組織内のすべてのアカウントの AI サービスのクレジット消費を表示するには、次のクエリを使用してください。

SELECT * FROM SNOWFLAKE.ORGANIZATION_USAGE.METERING_DAILY_HISTORY
    WHERE service_type ILIKE '%ai_services%';

注意:
SNOWFLAKE.ORGANIZATION_USAGE.METERING_DAILY_HISTORY ビューの更新には最大で4時間かかる場合があります。

FAQ: オンラインでの発表で出てきたQ&Aの内容

機械学習ベースの機能とは何ですか?

同様に、予測や予測などの機械学習のユースケースを実装するために使用できるML機能があります。以下の機能を使用できます:

  1. 予測:提供された要因に基づいて予測を取得するために使用されます。

  2. 異常検知:データ内の潜在的な外れ値を見つけるために使用されます。

  3. 分類:データを識別されたクラスに分類およびカテゴリ化するために使用されます。

  4. SQLコードを書かずに機能を使用できるMLパワードの関数を使用した、低コードWebインターフェース

関数を使用するために必要な特権は何ですか?

CORTEX_USERは、Snowflake Cortex LLM関数を呼び出すための特権を含むデータベースロールです。これはACCOUNTADMINに付与されるデフォルトのロールですが、ACCOUNTADMINはユーザーロールに権限を付与することができます。このロールはユーザーに直接付与することはできません。これはデータベースロールであり、GRANTコマンドを使用して既存のカスタムロールに付与することができます。

これらの関数のコストはいくらですか?

これらの関数の使用料金は、コンピューティングの使用量に基づいて計算され、コンピューティングは処理されたトークンに基づいて計算されます。以下の表は、100万トークンのコストを表しています。

関数の使用量をどのように測定できますか?

SnowflakeのUSAGEビューには、使用されているサービスや機能の使用量や請求を測定するために使用できるメタデータ情報が格納されています。使用量のメタデータ情報をフィルタリングするために、METERING_DAILY_HISTORYビューとサービスタイプを "ai_services" として使用できます。以下のクエリを使用して、1か月分の使用量を取得できます。

SELECT 
SERVICE_TYPE,
sum(CREDITS_USED) as total_credits_used
FROM SNOWFLAKE.ORGANIZATION_USAGE.METERING_DAILY_HISTORY
WHERE service_type ILIKE '%ai_services%'
and datediff(day,usage_date,current_date)=30;

これらのサービスにはクォータや制限がありますか?

お客様全体の高いパフォーマンス基準を維持するために、Snowflake Cortex LLM機能は使用クォータの対象となります。各LLM機能について以下のクォータが設定されています。
すべてのSnowflakeのお客様に高いパフォーマンス基準を確保するために、Snowflake Cortex LLM機能は使用クォータを超えるとリクエストが制限される場合があります。Snowflakeは定期的にこれらのクォータを調整することがあります。以下の表のクォータはアカウントごとに適用されます。

注意:
有効な支払い方法(トライアルアカウントなど)がないオンデマンドのSnowflakeアカウントは、Snowflake Cortex LLM機能の使用で1日あたり約1クレジットに制限されています。この制限を解除するには、トライアルアカウントを有料アカウントに変換してください。

これらの機能やモデルには制限がありますか?

Snowflake Cortexで使用されるモデルには、以下の表に記載されているサイズの制限があります。サイズはトークンで表されます。トークンは一般的に単語に対応していますが、すべてのトークンが単語ではないため、制限に対応する単語の数はトークンの数よりもわずかに少なくなります。制限を超える入力はエラーとなります。

ここで見ると、制限事項は関数に使用されるモデルに特有です。例えば、上記に示されているモデルタイプと一緒にCOMPLETE関数を使用できます。上記にリストされているアプリケーション要件と使用クォータに基づいて、モデルを選択できます。

Snowflakeは外部プラットフォームでLLMsを実行していますか?

  • いいえ。すべてSnowflakeの範囲内で実行されているため、すべてのデータは割り当てられたセキュリティとガバナンスポリシーを維持します。

  • 別々の環境がないため、APIや統合、別個のガバナンスを設定して管理する必要がありません。

Snowflake CortexでサポートされているLLMはどれですか?

LLMは私のデータから学習しますか?

  • いいえ。Snowflakeはお客様全体で使用されるLLMをトレーニングするためにお客様のデータを使用せず、またお客様のデータを微調整することもありません。

  • データの保護に関する当社の取り組みについて詳しくは、AI Trust & Safety FAQをご覧ください。

complete() 関数と summarize() のような特殊な関数との主な違いは何ですか?

  • complete 関数では、2つのことが得られます。使用するLLMを選択するオプションと、カスタムプロンプトを使用してデータに対してリクエストを実行することができます。summarize、translate、sentimentなどの特殊な関数では、手動でLLMを選択する必要はなく、プロンプトを行う必要もありません。その関数がすべて処理し、そのタスクの結果を提供します。

  • complete 関数で利用可能なLLMオプションを確認するには、ドキュメントをご覧ください。

Mistral-largeやLlama-7bなどのモデルをcomplete関数で選択するとき、そのモデルを自分のアカウントにダウンロードして推論を実行するのですか?

  • いいえ。サーバーレス体験の一環として、Snowflakeはすべてのモデルをホストし、必要に応じて利用できるようにしています。SQLまたはPython関数の一部としてモデルを選択するときは、リクエストを送信するエンドポイントを選択するだけです。

complete関数でどのLLMを選択すべきかを知る方法は?

  • ドキュメントには、使用するLLMを決定するのに役立ついくつかのメトリクスがあります。

  • どこから始めればいいかわからない場合は、まずmistral-largeを試してみてください。これにより、最も広範な能力を持つモデルが何ができるかがわかります。これをベースラインとして他のモデルを評価してください。

企業データでLLMを使用してできるユースケースやジョブは何ですか?

すべてのLLMはテキスト専用で利用可能なのか、Snowflake Cortexは画像などの他のタイプのデータ用のモデルもサポートしていますか?

  • Snowflake Cortexは、Mistral AI、Meta、Googleなどの商用およびオープンソースの言語モデルをサポートしており、近くRekaというマルチモーダルLLMもサポートする予定です。mistral-largeなどの商用モデルの場合、すべてのパートナーシップおよび商用契約について私たちが対応しており、Llama2などの商用利用を許可するライセンスを持つオープンソースモデルと同様に使用できます。

  • Mistral%2D%2D,customers%20in%20the%20Data%20Cloud.)およびRekaとの新しいパートナーシップについて詳しく読むことができます。

Snowflake Cortexを使用するために別の製品/ライセンスを購入する必要がありますか?価格はどのようになっていますか?

  • LLM機能には追加の購入は必要ありません。すべての機能は、別途の調達や契約なしで利用できます。無料トライアルアカウントを含むすべての機能が利用可能です。

  • これらの機能の使用料金は、顧客がSnowflakeクレジットを使用して支払うことができます。LLM機能の料金は処理されたトークンに基づいています。

  • ドキュメントには、各機能の100万トークンあたりのSnowflakeクレジットのコストを示す表があります。

アカウントでCortex機能を有効にするにはどうすればよいですか?

  • 組織内でLLMを使用することが規制されるようにするためには、デフォルトではACCOUNTADMINロールのみがアクセス権を持っています。このロールは、このアクセス権を他のユーザーロールに伝播させることができます。

  • Snowflake Free Trialを使用することで、誰でもACCOUNTADMINロールを使用してこれらの機能を試すことができます。

Cortex機能を使用するためにサポートされているプログラミング言語は何ですか?

  • SQLとPythonの両方がサポートされています。Pythonのガイドはこちらです。

データウェアハウスのサイズは完了までの時間に影響しますか?

  • より大きなウェアハウスはLLMの実行パフォーマンスを向上させません。そのため、Snowflake Cortex LLM機能を呼び出すクエリを実行する際には、より小さなウェアハウス(MEDIUMより大きくない)を使用することをお勧めしています。

モデルがデータからキャッシュを作成したり学習したりしていない場合、会話を覚えているチャットボットをどのように作成できますか?

  • モデルに短期記憶を与えるためには、以前の回答を追跡し、最新の質問を追加する前にコンテキストに追加することができます。

  • これについては、このブログで詳細を確認してください。

Snowflake Cortexを使用してRetrieval Augmented Generation(RAG)ベースのアプリケーションを構築する方法は?

  • 必要なすべてがSnowflake内で統合されたエクスペリエンスとして利用可能です。生成のためのLLMsに加えて、ユーザーは現在、検索のためのベクトル埋め込みと距離関数、およびSnowflakeのネイティブデータ型としてのVECTORにアクセスできます(プライベートプレビュー中)。

  • このクイックスタートを使用して、RAGベースのドキュメントチャットボットを構築してみることができます。

SnowflakeにはPDFをテキストに変換し、チャンキングを実行するためのネイティブSQL関数はありますか?

  • PyPDF2やlangchainなどのサードパーティのPythonライブラリをSnowpark Python関数内で使用することで、変換とチャンキングの実行をSQLパイプラインの一部として簡単に行うことができます。

  • これを行う方法のサンプルコードは、クイックスタートのステップ2にあります。

Snowflakeでモデルを微調整(Fine Tuning)することはできますか?

  • はい。Snowparkコンテナサービスを使用すると、オープンソースのモデルを微調整し、Snowflake内で実行することができます。カスタマイズされたモデルを自分のデータで安全にカスタマイズするための体験をさらに簡単にするために取り組んでいきます。

Pythonを使用したSnowflake Cortex LLM関数

Snowflake Cortex LLM関数は、Snowpark MLバージョン1.1.2以降で利用可能です。Snowpark MLのセットアップ手順については、Snowpark MLのインストールを参照してください。
Snowflakeの外部でPythonスクリプトを実行する場合は、これらの関数を使用するためにSnowparkセッションを作成する必要があります。手順については、Snowflakeへの接続を参照してください。
以下のPythonの例では、単一の値に対してSnowflake Cortex LLM関数を呼び出す方法が示されています。

from snowflake.cortex import Complete, ExtractAnswer, Sentiment, Summarize, Translate
text = """
    The Snowflake company was co-founded by Thierry Cruanes, Marcin Zukowski,
    and Benoit Dageville in 2012 and is headquartered in Bozeman, Montana.
"""
print(Complete("llama2-70b-chat", "how do snowflakes get their unique patterns?"))
print(ExtractAnswer(text, "When was snowflake founded?"))
print(Sentiment("I really enjoyed this restaurant. Fantastic service!"))
print(Summarize(text))
print(Translate(text, "en", "fr"))

指定されたように、テーブルの列でLLM関数を呼び出すこともできます。この例では、セッションオブジェクト(sessionに保存されている)と、テキスト列abstract\_textを含むarticlesという名前のテーブルが必要であり、要約を含む新しい列abstract\_summaryを作成します。

from snowflake.cortex import Summarize
from snowflake.snowpark.functions import col
article_df = session.table("articles")
article_df = article_df.withColumn(
    "abstract_summary",
    Summarize(col("abstract_text"))
)
article_df.collect()

注意:Pythonでは、COMPLETEの高度なチャットスタイル(複数のメッセージ)形式は現在サポートされていませ

Cortex LLM機能を使用するための参照ユースケースは?

以前のブログで作成したサンプルMOVIE REVIEWテーブルを使用できます。 また、以下のSQLステートメントに従って作成することもできます。

/* Create table*/
CREATE TABLE MOVIE_REVIEWS(MOVIE_NAME STRING, MOVIE_REVIEW STRING, MOVIE_RATING float);
/* load sample records */
INSERT INTO MOVIE_REVIEWS VALUES('Arthur The King','Michael Light (Mark Wahlberg) has one last chance to win a championship and prove himself. Finding sponsorship and creating a team of four is challenging, given his washed-out career and a previous disastrous race. However, he assembles a team of an athlete and a social media star, Leo (Simu Liu), free climber Olivia (Nathalie Emmanuel), and Chik (Ali Sulaiman), who has a bad knee. During the race, he has a fifth and an unlikely teammate — an injured indie dog, Arthur.
Director Simon Cellan Jones’s offering is an account of companionship between man and dog. The story talks about loyalty, friendship, sacrifice, and survival. It also offers ample adventure through a jungle trek, rock climbing with bicycles, ziplining across a valley (a sequence that will have you on the edge of your seat), night runs, and more.
Cinematographer Jacques Jouffret splendidly captures the Dominican terrains, forests, mountains, rivers, and valleys. The adventurous race also looks convincing and authentic. Writers Michael Brandt and Mikael Lindnord’s narrative has all the ingredients you expect from this genre—friction amid friendship, obstacles, and the tough decisions the athletes must make. Although the story gets a tad too sappy, the narrative’s even pacing prevents it from weighing you down.
Mark Wahlberg delivers a powerful performance as the out-of-luck captain who wants to make a comeback no matter what. Nathalie Emmanuel, Simu Liu, and Ali Suliman are also worthy additions. Their banter and individual reasons for participating in the race add authenticity to the narrative. The movie’s real star, however, is the dog. It’s inspiring and incredulous to think this is a true story (of Michael Lindnord), and the narrative will tug at your heartstrings.
The movie does not end with the race or whether the Broadrail team wins and goes beyond being an adventure sports drama. Whether you are an animal lover or an adventure sports enthusiast, Arthur the King will thrill you and warm your heart. Be warned: you may tear up at this endearing story of a dog and underdogs!',3.5);
INSERT INTO MOVIE_REVIEWS VALUES('Kung Fu Panda 4','After eight years since Kung Fu Panda 3, Po the Panda is back, facing the dilemma of relinquishing his role as the Dragon Warrior to become the Spiritual Leader of the Valley of Peace. Despite resistance from his mentor, Master Shifu (Dustin Hoffman), Po hesitates to let go of his dream role. A new threat emerges in the form of the Chameleon, a master sorceress and crime lord who seeks to unlock the power of previous Kung Fu masters to take over the world. Po teams up with a skilled thief, Zhen, to combat Chameleon and protect the Staff of Wisdom. Throughout the film, Po grapples with his inner conflicts while facing formidable adversaries, navigating themes of duty, sacrifice, and embracing ones true potential. Kung Fu Panda 4 follows a predictable plot, but co-directors Mike Mitchell and Stephanie Ma Stine deliver fun and fast-paced action, which continues to be one of the franchises strong suits. The fight scenes, especially the vibrant chase sequence throughout the setting of Juniper City are performed with style and keep you engaged. The top-notch animation has vivid colours that enhance the visual experience without overwhelming the senses. The editing, too, has been deftly done, thus ensuring that the movie never drags. The only drawback is that the script, co-written by Jonathan Aibel, Glenn Berger, and Darren Lemke, leans heavily on its moral messages, occasionally feeling like its guiding the audience too overtly through its themes of duty and sacrifice. Jack Black reprises his role as Po and delivers a solid vocal performance, mentoring a protégé throughout the film. Dustin Hoffman shines again as Master Shifu, while other characters like Pos adopted father, Ping (Hong), and his biological panda father, Li Shan (Cranston), join the adventure. Viola Daviss portrayal of the menacing Chameleon adds an intimidating presence to the film, while the animation team brings the character to life with impressive visuals. Although Awkwafinas voice doesnt fit the character, Zhens characterization is fresh and unique. Ian McShanes surprising return as Tai Lung provides closure for the character, with his performance adding depth to the story.
Despite not reaching the heights of its predecessors, Kung Fu Panda 4 still offers an entertaining 94-minute ride, blending humour, action, and heart in a way that will please fans of the franchise.',3);

1。EXTRACT_ANSWERを使用すると、作成されたテーブルを使用してレビューコメントを読み、質問に回答することができます。以下のように質問することができます:

SELECT SNOWFLAKE.CORTEX.EXTRACT_ANSWER(MOVIE_REVIEW,
    'What movies do these review mention?')
FROM MOVIE_REVIEWS;

結果:

SNOWFLAKE.CORTEX.EXTRACT_ANSWER(MOVIE_REVIEW,     'WHAT MOVIES DO THESE REVIEW MENTION?')
[   {     "answer": "arthur the king",     "score": 0.0006233065   } ]
[   {     "answer": "kung fu panda 4",     "score": 0.3261313   } ]


2。映画のレビューに基づいて視聴者の感情を把握するためにSENTIMENTを使用する

SELECT SNOWFLAKE.CORTEX.SENTIMENT(MOVIE_REVIEW), MOVIE_NAME FROM MOVIE_REVIEWS;

結果:

SNOWFLAKE.CORTEX.SENTIMENT(MOVIE_REVIEW) MOVIE_NAME
0.3396543 Arthur The King
0.40889353 Kung Fu Panda 4

3。SUMMARIZEを使用して、映画のレビューを短い文章で取得します。

SELECT SNOWFLAKE.CORTEX.SUMMARIZE(MOVIE_REVIEW) FROM MOVIE_REVIEWS;

結果:

SNOWFLAKE.CORTEX.SUMMARIZE(MOVIE_REVIEW)
A movie titled "Arthur the King" follows Michael Wahlberg, an athlete with a past racing disaster, as he assembles a team for a race with challenges due to his career and a bad team. The team includes an athlete, a social media star, a free climber, and a teammate with a bad knee. During the race, they are joined by an injured indie dog named Arthur. The film explores themes of companionship, loyalty, and survival, with thrilling adventure sequences and stunning cinematography. Mark Wahlberg delivers a powerful performance, and the heartwarming story goes beyond the race, tugging at heartstrings and appealing to animal lovers and adventure sports enthusiasts.
Kung Fu Panda 4 follows Po the Panda as he faces the dilemma of becoming the Spiritual Leader of the Valley of Peace, while a new threat emerges in the form of the Chameleon. Po teams up with a thief, Zhen, to combat the Chameleon and protect the Staff of Wisdom. The film explores themes of duty, sacrifice, and embracing one's true potential, with solid vocal performances from Jack Black, Dustin Hoffman, and Viola Davis, among others. The animation is top-notch, and the action scenes are fast-paced and engaging, although the script leans heavily on moral messages. Overall, Kung Fu Panda 4 offers an entertaining 94-minute ride for fans of the franchise.

4。TRANSLATEを使用して、お好きな言語でレビューを取得してください。

SELECT SNOWFLAKE.CORTEX.TRANSLATE(MOVIE_REVIEW, 'en', 'fr') FROM MOVIE_REVIEWS;

結果:

SNOWFLAKE.CORTEX.TRANSLATE(MOVIE_REVIEW, 'EN', 'FR')
Michael Wollie, qui a une vraie histoire, et qui est un véritable narrateur de la course de l’animal de guerre (Michael Wollie, qui a une vraie histoire, et qui est le premier à se faire connaître par l’histoire, mais que ce que vous voulez, c’est que ce film de l’aventure et de la narration de Mark Wahlberg, que vous êtes un amant de l’histoire, que ce soit en étant un fan de l’incroyable, que ce soit en étant un fan de l’incroy
Après avoir adopté son père sur les animations de son film, le film de l'animation de l'année passée, le film de l'animation de l'animation de l'animation de l'animation de l'animation de l'animation de l'animation de l'animation de l'animation de l'animation de l'animation de l'animation de l'animation de l'animation de l'animation de l'animation de l'animation de l'animation de l'animation

これらの機能は非常に使いやすく、アプリケーションやアプリケーションデータの上で生成AIを実装することができます。処理されたデータはSnowflakeのデータ境界外に送信されることはありません。データを移動したり外部に持ち出す必要はありません。


参照データ:


この記事が気に入ったらサポートをしてみませんか?