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.

    Vous pouvez surveiller les cycles d'actualisation à l'aide de vector_index.get_next_refresh_timestamp() pour extraire l'horodatage UTC de la prochaine actualisation programmée.

  • 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

    Vous pouvez utiliser select_ai.create_pool() et select_ai.create_pool_async() pour créer des pools de connexions partagés afin d'améliorer la simultanéité et le partage des ressources.

  • 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 :

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.

    L'API create() prend en charge un paramètre wait_for_completion. Utilisez ce paramètre pour contrôler si l'appel attend la fin avant d'être renvoyé. Pour plus d'informations, reportez-vous à Procédure CREATE_VECTOR_INDEX.

  • 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

Utilisez select_ai.create_pool_async() pour gérer les connexions dans les workflows asynchrones.

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

  • Toutes les API de création d'outils prennent en charge un paramètre instruction pour définir un comportement d'exécution précis.

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