Oracle Autonomous Databaseおよびプロパティ・グラフ問合せ言語を使用したナレッジ・グラフの作成

はじめに

このチュートリアルでは、グラフ理論、ナレッジ・グラフの概念、およびOracle Autonomous Database with Property Graph Query Language (PGQL)を使用した実装方法について説明します。また、LLMを使用してドキュメントから関係を抽出し、それらをOracleのグラフ構造として格納するために使用されるPython実装についても説明します。

グラフとは

グラフは、オブジェクト間のモデリング関係に焦点を当てた数学とコンピュータサイエンスの分野です。グラフは次のもので構成されます。

グラフは、ソーシャル・ネットワーク、セマンティック・ネットワーク、ナレッジ・グラフなどのデータ構造を表すために広く使用されています。

ナレッジ・グラフとは

ナレッジ・グラフは、現実世界のナレッジのグラフベースの表現です。ここでは:

ナレッジ・グラフは、セマンティック検索、推奨システムおよび質問回答アプリケーションを強化します。

PGQLでOracle Autonomous Databaseを使用する理由

Oracleは、プロパティ・グラフを格納および問合せするための完全管理環境を提供します。

他のグラフ問合せ言語との比較

img.png

PGQLを使用したOracle Autonomous Databaseと従来のグラフ・データベースのメリット

img_1.png

目的

前提条件

タスク1: Pythonパッケージのインストール

Pythonコードには、Oracle Cloud Infrastructure(OCI)生成AIを使用するための特定のライブラリが必要です。必要なPythonパッケージをインストールするには、次のコマンドを実行します。このファイルは、requirements.txtからダウンロードできます。

pip install -r requirements.txt

タスク2: Oracle Database 23aiの作成(Always Free)

このタスクでは、Oracle Database 23aiをAlways Freeモードでプロビジョニングする方法を学習します。このバージョンは、追加コストなしで開発、テスト、学習に最適なフルマネージド環境を提供します。

  1. OCIコンソールにログインし、「Oracle Database」「Autonomous Database」に移動して、「Autonomous Databaseインスタンスの作成」をクリックします。

  2. 次の情報を入力します

    • データベース名:インスタンスの識別名を入力します。
    • ワークロード・タイプ:必要に応じて、「データ・ウェアハウス」または「トランザクション処理」を選択します。
    • コンパートメント:リソースを編成する適切なコンパートメントを選択します。
  3. 「Always Free」を選択して、インスタンスが無償でプロビジョニングされていることを確認します。

  4. データベースへのアクセスに使用されるADMINユーザーのセキュアなパスワードを作成します。

  5. 設定を確認し、「Autonomous Databaseの作成」をクリックします。インスタンスがプロビジョニングされ、使用可能になるまで数分待ちます。

Oracle Autonomous Databaseへの接続プロセスに慣れていない場合は、次のリンクに従ってコードを理解し、適切に構成してください。

ノート: Walletメソッドを使用して、Pythonコード内のデータベースに接続する必要があります。

タスク3: コードのダウンロードと理解

Graphの非常に一般的なユース・ケースは、LLMおよびPDFファイルなどのナレッジ・ベースと連携するコンポーネントの1つとして使用することです。

前述のすべてのコンポーネントを使用する基盤として、OCI生成AIを使用した自然言語でのPDFドキュメントの分析というチュートリアルを使用します。ただし、このドキュメントでは、Oracle Database 23aiとGraphの併用に焦点を当てます。基本的に、ベース・マテリアルのPythonコード(main.py)は、Oracle Database 23aiを使用するパートでのみ変更されます。

このサービスで実行されるプロセスは次のとおりです。

Oracle Database 23aiと互換性のある更新済Pythonグラフ・コードをmain.pyからダウンロードします。

タスク4: チャットボットの実行

次のコマンドを実行してチャットボットを実行します。

python main.py

確認

その他の学習リソース

docs.oracle.com/learnで他のラボを確認するか、Oracle Learning YouTubeチャネルで無料のラーニング・コンテンツにアクセスしてください。また、education.oracle.com/learning-explorerにアクセスして、Oracle Learning Explorerになります。

製品ドキュメントについては、Oracle Help Centerを参照してください。