Sélectionner AI pour Python

Select AI for Python intègre des fonctionnalités d'IA générative dans les workflows de base de données d'IA autonome. Sélectionnez AI pour Python qui fournit une bibliothèque client, select_ai, qui vous permet d'utiliser les fonctionnalités DBMS_CLOUD_AI dans Autonomous AI Database à partir de Python. Select AI for Python prend en charge les workflows d'IA générative améliorés, la synthèse, les mécanismes de retour, la gestion cohérente des métadonnées et les fonctionnalités d'IA agénétique. Il prend également en charge Python 3.14 et inclut un site de documentation HTML mis à jour (Nouveau)

Tâches disponibles

  • NL2SQL : utilisez le langage naturel pour interroger votre base de données via la génération SQL basée sur l'IA. Cela inclut la génération de requêtes SQL, l'exécution des requêtes générées, l'explication du code SQL généré et la narration des résultats des requêtes.

  • RAG : Créez et mettez à jour des index vectoriels pour les workflows de génération augmentée de récupération automatisée (RAG) qui extraient le contenu pertinent et l'incluent dans les réponses d'IA générative.

  • Chat : créez et gérez des conversations avec un historique des invites pour prendre en charge les interactions de type chat avec des modèles d'IA générative.

  • Génération de données synthétiques : générez des données synthétiques pour les tests et l'analyse à l'aide de l'IA générative

  • Synthèse : Synthèse du texte ou des résultats de requête

  • Retour : Enregistrer et gérer le retour du modèle

  • Traduire : Traduire du texte entre les langues

  • Agents d'IA : créez des agents d'IA autonomes et interactifs. Pour plus d'informations, reportez-vous à Sélectionner un agent AI pour Python.

  • Connexions synchrones et asynchrones : Se connecter à la base de données à l'aide de connexions synchrones ou asynchrones

  • Profils d'IA : créez et gérez des profils d'IA pour activer l'utilisation de modèles d'IA à partir d'un large éventail de fournisseurs d'IA

Plates-forme prises en charge

Select AI for Python est certifié pour Autonomous AI Database 26ai et 19c. Sélectionnez AI pour Python peut fonctionner sur d'autres plates-formes, mais il n'est pas certifié.

Cliquez sur https://github.com/oracle/python-select-ai/issues pour signaler les problèmes.

Fonctions prises en charge pour sélectionner un profil AI (synchrone et asynchrone)

Lorsque vous envoyez des invites via un profil, vous pouvez choisir parmi plusieurs fonctions définies pour les objets profil AI. Certaines sont les suivantes :

  • create() : créez le profil AI dans la base de données ou remplacez-le si nécessaire.

  • delete() : supprimez le profil.

  • generate() : utilisez le profil pour traiter une invite conformément à l'action choisie.

  • generate_synthetic_data() : créez des données synthétiques en fonction des attributs fournis.

  • get_attributes() : renvoie les attributs de profil en cours.

  • run_sql() : générez et exécutez le code SQL (par défaut).

  • show_sql() : générez du code SQL sans l'exécuter.

  • explain_sql() : fournissez une explication du code SQL généré.

  • narrate() : décrivez les résultats de requête en langage naturel.

  • chat() : participez à une conversation de forme libre.

  • show_prompt() : affiche l'invite construite envoyée au modèle d'IA générative.

  • summarize() : produit un récapitulatif pour le contenu fourni.

  • add_positive_feedback(), add_negative_feedback(), delete_feedback() : Gérer les commentaires des utilisateurs associés aux requêtes générées.

  • translate() : traduisez du texte d'une langue source spécifiée vers une langue cible.

Pour obtenir la liste complète des fonctions, reportez-vous au guide Sélectionner AI pour Python. Pour plus d'informations sur les actions Sélectionner IA, reportez-vous également à Utiliser le mot-clé AI pour saisir des invites.

Classes prises en charge

La bibliothèque comprend des classes pour gérer les fournisseurs, les profils, les conversations, les index vectoriels, les données synthétiques et les workflows agénétiques. Les versions synchrones et asynchrones sont disponibles.

  • Classes de fournisseur : définissez le fournisseur d'IA : OpenAIProvider, AzureProvider, OCIGenAIProvider, AWSProvider, GoogleProvider, AnthropicProvider, CohereProvider, HuggingFaceProvider.

  • Profile : définit le profil d'IA générative pour traiter les invites (fournisseur, informations d'identification, métadonnées, options) et prend en charge la génération de données synthétiques.

  • ProfileAttributes : détails de configuration de profil tels que le fournisseur, le nom des informations d'identification, le nombre maximal de jetons, la température, la liste d'objets ou l'index vectoriel.

  • ConversationAttributes : permet de gérer le contexte conversationnel entre les invites.

  • VectorIndex et VectorIndexAttributes : créez et gérez des index vectoriels pour la RAG.

  • SyntheticDataAttributes : créer des ensembles de données synthétiques pour les tests et le développement.

  • Méthodes de suppression de niveau classe : Ces méthodes de niveau classe suppriment directement des objets de base de données sans nécessiter l'initialisation d'un objet proxy.

    • Profile.delete_profile(profile_name)

    • VectorIndex.delete_index(index_name)

    Pour les méthodes de suppression de niveau classe associées à Sélectionner un agent AI, reportez-vous à Sélectionner un agent AI pour Python.

Des équivalents asynchrones existent pour les classes Profile, Conversation et VectorIndex.

Prise en charge d'ASync Select AI

Select AI for Python fournit des API asynchrones qui permettent l'interaction avec Autonomous AI Database. Ces API utilisent les structures async et await de Python et prennent en charge les applications basées sur la coroutine.

Des API asynchrones sont disponibles pour les objets clés suivants dans la bibliothèque :
  • AsyncProfile

  • AsyncConversation

  • AsyncVectorIndex

Ces classes fournissent des fonctionnalités équivalentes à leurs homologues synchrones. Les API asynchrones sont utiles dans les applications qui nécessitent des opérations simultanées ou des workflows basés sur des événements.

Pour obtenir une référence complète à l'API, reportez-vous au guide Sélectionner AI pour Python.

Améliorations apportées à la mise à jour des API et des attributs

Les améliorations suivantes sont disponibles :

  • Tous les objets proxy prennent en charge fetch() pour extraire les objets existants.

  • Tous les objets proxy fournissent set_attribute() et set_attributes() pour des mises à jour cohérentes

Privilège et accès HTTP

La gestion des privilèges est distincte de la configuration de l'accès HTTP.

API de privilèges :

  • select_ai.grant_privileges
  • select_ai.revoke_privileges
Les privilèges sont mis à jour pour inclure les éléments suivants :
  • DBMS_CLOUD
  • DBMS_CLOUD_AI
  • DBMS_CLOUD_AI_AGENT
  • DBMS_CLOUD_PIPELINE

API d'accès HTTP :

  • select_ai.grant_http_access
  • select_ai.revoke_http_access

Autres améliorations

  • Prise en charge de Python 3.14

  • Nouveau site de documentation HTML sur GitHub à l'aide du thème de documentation Python : GitHub Documentation Select AI for Python

  • Installation pour la version 1.2.2 :

    pip install select_ai==1.2.2