3 Select AI for Python

Select AI for Pythonは、生成AI機能をAutonomous AI Databaseワークフローに統合します。Select AI for Pythonは、PythonからAutonomous AI DatabaseDBMS_CLOUD_AI機能を使用できるようにするクライアント・ライブラリselect_aiを提供します。Select AI for Pythonは、拡張された生成AIワークフロー、サマリー、フィードバック・メカニズム、一貫したメタデータ管理、およびエージェント型AI機能をサポートしています。また、Python 3.14をサポートし、更新されたHTMLドキュメント・サイト(新規)が含まれています

実行可能な処理

  • 同期接続または非同期接続を使用してデータベースに接続します

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

  • 自然言語を使用して、AIベースのSQL生成を介してデータベースに問い合せます

  • 自然言語で問合せ結果の記述します

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

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

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

  • テキストまたは問合せ結果を要約します

  • モデルのフィードバックを記録および管理します

  • 対話形式の自律型AIエージェントを作成します。詳細は、「Select AI Agent for Python」を参照してください。

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

Select AI for Pythonは、Autonomous Database 19cおよびAutonomous AI Database 26aiで認定されています。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モデルに送信された作成済のプロンプトを表示します。

  • summarize(): 指定されたコンテンツのサマリーを生成します。

  • add_positive_feedback()add_negative_feedback()delete_feedback(): 生成された問合せに関連付けられたユーザー・フィードバックを管理します。

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

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

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

  • プロバイダ・クラス: AIプロバイダ(OpenAIProviderAzureProviderOCIGenAIProviderAWSProviderGoogleProviderAnthropicProviderCohereProviderHuggingFaceProvider)を定義します。

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

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

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

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

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

ProfileConversationおよびVectorIndexクラスに相当する非同期のクラスが存在します。

APIリファレンスの詳細は、Select AI for Pythonガイドを参照してください。

APIおよび属性の更新の拡張機能

次の拡張機能が使用可能です。

  • すべてのプロキシ・オブジェクトで、既存のオブジェクトを取得するためのfetch()がサポートされるようになりました。

  • すべてのプロキシ・オブジェクトは、一貫した更新のためにset_attribute()およびset_attributes()を提供します。

権限とHTTPアクセス

権限管理は、HTTPアクセス構成とは分離されています。

権限API:

  • select_ai.grant_privileges
  • select_ai.revoke_privileges
権限は、次のものを含むように更新されました:
  • DBMS_CLOUD
  • DBMS_CLOUD_AI
  • DBMS_CLOUD_AI_AGENT
  • DBMS_CLOUD_PIPELINE

HTTPアクセスAPI:

  • select_ai.grant_http_access
  • select_ai.revoke_http_access

その他の拡張機能