Python用のSelect AI

Select AI for Pythonは、生成AI機能をAutonomous Databaseワークフローに統合します。Select AI for Pythonには、PythonのAutonomous DatabaseでDBMS_CLOUD_AI機能を使用できるクライアント・ライブラリselect_aiが用意されています。

実行可能な操作

  • 同期接続または非同期接続を使用したデータベースへの接続

  • AIプロファイルを作成および管理して、幅広いAIプロバイダーのAIモデルを使用できるようにします

  • 自然言語を使用したAIベースのSQL生成によるデータベースの問合せ

  • 自然言語での問合せ結果の説明

  • プロンプト履歴を使用して会話を作成および管理します

  • 組込みの自動取得拡張生成(RAG)ワークフローで使用するために、ベクトル索引を簡単に作成および更新します

  • 生成AIを使用したテストと分析のための合成データの生成

サポートされているプラットフォーム

Select AI for Pythonは、Autonomous Database 19cおよびAutonomous Database 23aiに対して認定されています。Select AI for Pythonは、他のプラットフォームで動作する可能性がありますが、動作保証されていません。

https://github.com/oracle/python-select-ai/issuesをクリックして問題を報告します。

Select AIプロファイルでサポートされる関数(同期および非同期)

プロファイルを介してプロンプトを送信する場合、AIプロファイルオブジェクトに対して定義されている複数の機能の中から選択できます。次のようなものがあります。

  • create(): データベースにAIプロファイルを作成するか、必要に応じて置換します。

  • delete(): プロファイルを削除します。

  • generate(): プロファイルを使用して、選択したアクションに従ってプロンプトを処理します。

  • generate_synthetic_data(): 指定された属性に基づいて合成データを作成します。

  • get_attributes(): 現在のプロファイル属性を返します。

  • run_sql(): SQLを生成して実行します(デフォルト)。

  • show_sql(): SQLを実行せずに生成します。

  • explain_sql(): 生成されたSQLの説明を指定します。

  • narrate(): 問合せ結果を自然言語で記述します。

  • chat(): 自由形式の会話に参加します。

  • show_prompt(): 生成AIモデルに送信された構成済プロンプトを表示します。

関数の完全なリストは、Python用のSelect AIガイドを参照してください。Select AIアクションの詳細は、「AIキーワードを使用したプロンプトの入力」も参照してください。

サポートされているクラス

ライブラリには、プロバイダ、プロファイル、会話、ベクトル索引および合成データを管理するクラスが含まれています。同期バージョンと非同期バージョンの両方を使用できます。

  • プロバイダ・クラス: AIプロバイダの定義: OpenAIProviderAzureProviderOCIGenAIProviderAWSProviderGoogleProviderAnthropicProviderCohereProviderHuggingFaceProvider

  • Profile: プロンプト(プロバイダ、資格証明、メタデータ、オプション)を処理し、合成データ生成をサポートするための生成AIプロファイルを定義します。

  • ProfileAttributes: プロバイダ、資格証明名、最大トークン、温度、オブジェクト・リスト、ベクトル索引などのプロファイル構成の詳細。

  • ConversationAttributes: プロンプト全体で会話型コンテキストを管理します。

  • VectorIndexおよびVectorIndexAttributes: RAGのベクトル索引を作成および管理します。

  • SyntheticDataAttributes: テストおよび開発用の合成データセットを作成します。

ProfileConversationおよびVectorIndexクラスに相当する非同期クラスがあります。

APIの完全なリファレンスは、Python用のSelect AIガイドを参照してください。