Sélectionner l'intelligence artificielle pour Python

Select AI for Python intègre des capacités d'IA générative dans les flux de travail de base de données d'IA autonome. Select AI for Python fournit une bibliothèque client, select_ai, qui vous permet d'utiliser les capacités DBMS_CLOUD_AI dans Autonomous AI Database à partir de Python. Select AI for Python prend en charge les flux de travail améliorés d'IA générative, la récapitulation, les mécanismes de rétroaction, la gestion cohérente des métadonnées et les capacités d'IA agéntique. Il prend également en charge Python 3.14 et comprend un site de documentation HTML mis à jour (Nouveau)

Actions possibles

  • NL2SQL : Utilisez le langage naturel pour interroger votre base de données au moyen de la génération SQL basée sur l'intelligence artificielle. Cela inclut la génération d'interrogations SQL, l'exécution des interrogations générées, l'explication des instructions SQL générées et la narration des résultats des interrogations.

  • RAG : Créer et mettre à jour des index vectoriels pour les flux de travail automatisés de génération augmentée de récupération qui extraient le contenu pertinent et l'incluent dans les réponses de l'IA générative.

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

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

  • Résumer : Résumer le texte ou les résultats d'interrogation

  • Rétroaction : Enregistrer et gérer la rétroaction sur le modèle

  • Traduire : Traduire le texte entre les langues

  • Agents d'IA : Créez des agents d'IA autonomes et d'interaction. Voir Sélectionner un agent d'intelligence artificielle pour Python pour plus de détails.

  • 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 permettre l'utilisation de modèles d'IA provenant d'un large éventail de fournisseurs d'IA

Plates-formes prises en charge

Select AI for Python est certifié pour Autonomous AI Database 26ai et 19c. Select AI for 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 des problèmes.

Fonctions prises en charge pour sélectionner un profil d'intelligence artificielle (synchrone et asynchrone)

Lorsque vous envoyez des invites au moyen d'un profil, vous pouvez choisir parmi plusieurs fonctions définies pour les objets de profil IA. Certains sont les suivants :

  • create() : Créez le profil d'intelligence artificielle 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 sélectionnée.

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

  • get_attributes() : Retourne les attributs de profil courants.

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

  • show_sql() : Générez SQL sans l'exécuter.

  • explain_sql() : Fournir des explications sur le SQL généré.

  • narrate() : Décrire les résultats d'une interrogation en langage naturel.

  • chat() : Engagez une conversation à structure libre.

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

  • summarize() : Produire un sommaire pour le contenu fourni.

  • add_positive_feedback(), add_negative_feedback(), delete_feedback() : Gérer les rétroactions des utilisateurs associées aux interrogations générées.

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

Pour obtenir la liste complète des fonctions, voir le guide Sélectionner l'intelligence artificielle pour Python. Voir aussi Utiliser le mot clé IA pour entrer des invites pour plus d'informations sur les actions Sélectionner l'IA.

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 flux de travail agéntiques. Les versions synchrone et asynchrone sont disponibles.

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

  • Profile : Définit le profil d'IA générative pour traiter les invites (fournisseur, données 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 données d'identification, le nombre maximal de jetons, la température, la liste d'objets ou l'index vectoriel.

  • ConversationAttributes : Gérer le contexte conversationnel entre les invites.

  • VectorIndex et VectorIndexAttributes : Créer et gérer des index vectoriels pour la RAG.

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

  • Méthodes de suppression au niveau classe : Ces méthodes au niveau classe suppriment directement les 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 sélectionner les méthodes de suppression au niveau de la classe liées à l'agent d'intelligence artificielle, voir Sélectionner un agent d'intelligence artificielle pour Python.

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

Sélectionner la prise en charge de l'intelligence artificielle asynchrone

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 offrent des fonctionnalités équivalentes à leurs homologues synchrones. Les API asynchrones sont utiles dans les applications qui nécessitent des opérations concurrentes ou des flux de travail axés sur les événements.

Pour des informations de référence complètes sur les API, voir le guide Sélectionner l'intelligence artificielle pour Python.

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

Les améliorations suivantes sont disponibles :

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

  • Tous les objets mandataires 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 d'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