OceanBase Cloud クラウドデータベースは AI Function の組み込みモデルを提供しており、有効化すると OceanBase データベースの AI Function およびハイブリッド検索機能を使用できます。本ページでは、AI Function 組み込みモデルの有効化方法について説明します。
背景情報
OceanBase データベースは V4.4.1 で AI Function およびハイブリッド検索機能を実装しました。OceanBase Cloud 公式サイトまたは Alibaba Cloud Marketplace の厳選ストアで作成したインスタンスで、この機能を使用できます。
AI Function:AI 関数は SQL 式を通じて、AI モデルの機能をデータベース内のデータ処理に直接統合します。これにより、大規模 AI モデルを利用したデータの抽出、分析、要約、保存などの操作が大幅に簡素化され、現在のデータベースおよびデータウェアハウス分野における重要な新機能となっています。MySQLモードでは、OceanBase データベースは DBMS_AI_SERVICE パッケージを通じて AI モデルとエンドポイントの管理を提供し、いくつかの組み込み AI 関数式を追加し、ビューを通じた AI モデルの呼び出し状況の監視に対応しています。詳細は AI関数サービスの使用と例 をご参照ください。
ハイブリッド検索:ハイブリッド検索(Hybrid Search)は、ベクトルベースのセマンティック検索と全文インデックスベースのキーワード検索を組み合わせ、総合的なランキングにより、より正確で包括的な検索結果を提供します。ベクトル検索は意味的な近似マッチングに優れていますが、正確なキーワード、数字、固有名詞などのマッチング能力が高くないのに対し、全文検索によりこの部分を効果的に補完できます。そのため、ハイブリッド検索はベクトルデータベースの重要な機能の1つとなっており、さまざまな製品で広く応用されています。OceanBase は、全文インデックスとベクトルインデックスの機能を統合することで、効率的なハイブリッドクエリを実現しました。詳細は ベクトルインデックスによるハイブリッド検索 をご参照ください。
前提条件
OceanBase Cloud 公式サイトまたは Alibaba Cloud Marketplace の厳選ストアで作成したインスタンスであること。現在、この機能はホワイトリストで公開されています。使用する場合は、テクニカルサポートにお問い合わせください。
データベースが V4.4.1 以降であること。
ストレージアーキテクチャがストレージ・コンピューティング統合型であること。
プロジェクト Owner、プロジェクト管理者、インスタンス管理者の権限を持っていること。
以下の操作を参考に、ユーザーに
ACCESS AI MODEL権限を追加します。詳細は アカウントの作成と管理 をご参照ください。OB Cloudコンソール にログインします。
インスタンス ページで、インスタンス名の左側にある展開ボタンをクリックし、対象のテナント名をクリックします。
左側のナビゲーションペインで アクセス管理 をクリックし、アカウント画面に移動します。
対象アカウントの操作列のアイコンをクリックし、権限を更新 を選択して、グローバル権限のドロップダウンリストから
ACCESS AI MODELを選択します。
- ポップアップウィンドウで権限を変更し、変更 をクリックします。
操作手順
OceanBase Cloud クラウドデータベースコンソール にログインします。
左側のナビゲーションペインで、インスタンス をクリックします。
インスタンスリストから対象のインスタンスを選択し、インスタンス名をクリックして インスタンスワークベンチ に移動します。
左側のナビゲーションペインで、テナント をクリックします。
テナント管理リストで対象のテナントをクリックすると、テナントワークベンチ ページに移動します。
AI Function 組み込みモデル の下にある 有効化 をクリックします。
説明
組み込みモデルおよびトークンの上限は以下の通りです:
- OB_Complete(qwen-plus):7000万/月
- OB_Embed(text-embedding-v3):6000万/月
- OB_Rerank(gte-rerank-v2):6000万/月
AI Function 組み込みモデル の下にある 無効化 をクリックして、AI Function 機能を無効にすることもできます。
組み込み AI モデルの使用方法
AI Function 組み込みモデルを有効にすると、SQL 文を使用して組み込み AI モデルを直接呼び出すことができます。以下に3つのモデルの使用方法を説明します:
- テキスト補完
AI_COMPLETE 関数を使用して OB_Complete モデルを呼び出し、テキスト補完と対話を行います。この関数は、モデル名とプロンプトテキストをパラメータとして受け取ります。
```sql
SELECT AI_COMPLETE("ob_complete","你是谁") AS ans;
```
その他の使用例とパラメータの説明については、AI関数サービスの使用と例 をご参照ください。
- テキストのベクトル化
AI_EMBED 関数を使用して OB_Embed モデルを呼び出し、テキストをベクトル表現に変換します。この関数は、モデル名とベクトル化するテキストをパラメータとして受け取り、テキストのベクトル埋め込みを返します。
```sql
SELECT AI_EMBEDDING("ob_embed","人工智能技术发展") AS embedding;
```
ベクトル埋め込みは、セマンティック検索や類似度計算などのシナリオで使用できます。その他の使用例とパラメータの説明については、AI関数サービスの使用と例 をご参照ください。
- 結果の再ランキング
AI_RERANK 関数を使用して OB_Rerank モデルを呼び出し、検索結果を再ランキングします。この関数は、モデル名、クエリテキスト、および候補ドキュメントリストをパラメータとして受け取り、関連度順にソートされた結果を返します。
```sql
SELECT AI_RERANK("ob_rerank","Apple",'["apple","banana","fruit","vegetable"]') AS rerank_result;
```
この関数は、ベクトル検索と全文検索の結果を組み合わせて最適なソートを行うため、ハイブリッド検索のシナリオでよく使用されます。その他の使用例とパラメータの説明については、AI関数サービスの使用と例 および ベクトルインデックスのハイブリッド検索 をご参照ください。