すべてのプロダクト
Search
ドキュメントセンター

PolarDB:LLMのユースケース

最終更新日:Jun 11, 2024

このトピックでは、大規模言語モデル (LLM) のユースケースを提供し、行指向AI機能の使用方法を説明します。このトピックで提供されているケースでは、特定のLLMはAIノードで実行されませんが、原則と使用法は、LLMがAIノードで実行される場合と同じです。 LLMがAIノードで実行されていない場合、バックエンドシステムはLLMを呼び出すためのユーザー定義関数 (UDF) を自動的に生成します。

オンライン推論サービスは、LLMに無料で提供されます。 モデルをPolarDBクラスターに直接デプロイし、LLMの呼び出しに使用する関数を作成し、作成した関数を使用してオンライン推論またはインタラクティブなQ&Aを実行できます。

このトピックで説明するユースケースでは、組み込みのqwen関数を使用して、Row指向AI機能の使用方法を示します。

movie_commentという名前のムービーレビューテーブルが存在し、次のコンテンツが含まれていると仮定します。

mysql> SELECT * からmovie_comment;
+ ---- ------------- + ----------------------------------------------------------------------------------------------------------------------------------------------------------------------
| id | name | レビュー |
+ ---- ------------- + ----------------------------------------------------------------------------------------------------------------------------------------------------------------------
| 1 | 映画1 | 作品自体はかなり良いです、五つ星の親指を立てる |
| 2 | movie1 | フルマーク! 今回のノーランのパフォーマンスは確かに注目に値し、彼のレベルとテクニックが物語のテクニックからプロット推論までどれほど成熟しているかを示しています。| 3 | 映画1 | 爆発の初めは沈黙し、その後の破壊に気づきました。 とても衝撃的!!                                                                |
| 4 | movie1 | とても退屈です。 映画は3時間以上の長さで、最後までそれを見るのに耐えられませんでした。                                                                  |
| 5 | movie2 | 彼らは非常に多くのキャラクターを描写し、プロットのねじれは非常によく、本当に印象的です。                                                                                      |
| 6 | movie2 | 細部は細心の注意を払っており、人類の本質は最も感動的であり、エンディングは優れています。                                                               |
| 7 | movie2 | イランの映画、それはとても良いことを期待していませんでした。                                                                                                                       |
| 8 | movie3 | 国内映画の頂点。                                                                                                                                      |
| 9 | movie3 | 国内の映画もとてもスリリングで満足のいくものです。                                                                                                              |
| 10 | movie3 | プロットはsomです何が硬く、最初の没入はごく普通です。                                                                                            |
+ ---- ------------- + ----------------------------------------------------------------------------------------------------------------------------------------------------------------------
セットの10行 (0.00秒) 

  1. クラスターのPolarDB for AIおよびコールドデータアーカイブ機能を有効にします。 詳細については、「PolarDB For AI機能の有効化」および「コールドデータアーカイブの有効化」をご参照ください。

  2. データベースに接続し、組み込み関数モデルをデプロイします。

    /* polar4ai */ DEPLOYモデルbuiltin_qwen WITH (mode = 'in_db');

    モデルのデプロイ後、SHOW modelスクリプトを使用してモデルのステータスを表示できます。 デプロイ後にモデルがサービング状態の場合、デプロイは完了です。

    /* polar4ai */ SHOWモデルbuiltin_qwen;
  3. qwenという名前のLLMベースの関数を作成します。

    CREATE FUNCTION qwen RETURNS STRING SONAME "#ailib#_builtin_qwen.so";
  4. qwen関数を呼び出して、オンライン推論を実行します。

    • 例1: qwen関数を呼び出して、SQL文を直接使用して、映画レビューを「良い」、「公正」、「悪い」の3つのカテゴリに分類します。 次のSQL文が使用されます。

      SELECT qwen(CONCAT (「感情的な色で次のテキストを分類する」: [good, general, bad]] 、3つのカテゴリのいずれかの名前を出力します。 たとえば、[この映画は素晴らしい] を入力し、「良い」を出力します。 別の例として、[この映画は退屈すぎる] と出力 "bad".", review) を感情的な色の分類として入力します。

      次の応答が返されます。

      + ---------------------- +
      | 感情 |
      + ---------------------- +
      | 良い |
      | 良い |
      | 良い |
      | 悪い |
      | 良い |
      | 良い |
      | 良い |
      | 良い |
      | 良い |
      | ニューラル |
      + ---------------------- +
      セットの10行 (5.36秒) 

    • 例2: qwen関数を呼び出してインタラクティブなQ&Aを実行します。 次のSQL文が使用されます。

      SELECT qwen("こんにちは、いつ杭州アジア競技大会が開催されるか");

      次の応答が返されます。

      + ------------------------------------------------------------------------------------ +
      | qwen (「こんにちは、杭州アジア競技大会はいつ開催されますか」) |
      + ------------------------------------------------------------------------------------ +
      | 杭州アジア競技大会は2023年9月23日から10月8日まで開催されます。    |
      + ------------------------------------------------------------------------------------ +
      1行セット (0.94秒)