Partager via


Interroger un modèle externe avec ai_query()

Remarque

Cette fonctionnalité est disponible en préversion publique. Pour interroger des points de terminaison qui servent des modèles externes, vous devez vous inscrire à la préversion publique. Merci de compléter et d’envoyer le formulaire d’inscription à la préversion publique des Fonctions IA.

Cet article illustre comment configurer et interroger un point de terminaison de modèle externe en tirant parti de la fonction ai_query() Databricks SQL intégrée. L’exemple utilise une prise en charge des modèles externes dans le Service de modèles Mosaic AI pour interroger gpt-4 fourni par OpenAI et effectuer des tâches de conversation. Si vous souhaitez obtenir plus d’informations sur cette fonction IA, consultez Fonctions IA sur Azure Databricks.

Spécifications

Créer un point de terminaison de modèle externe

L’opération suivante crée un point de terminaison de service de modèle externe qui sert OpenAI gpt-4 pour une tâche de conversation.

Pour créer un jeton d’accès personnel, voir Authentification pour l’automatisation Databricks.

import requests
import json

personal_access_token = "your-personal-access-token"
headers = {
    "Authorization": "Bearer " + personal_access_token,
}
host = "https://oregon.cloud.databricks.com/"
url = host + "api/2.0/serving-endpoints"

data = {
    "name": "my-external-openai-chat",
    "config": {
        "served_entities": [
            {
                "name": "my_entity",
                "external_model": {
                    "name": "gpt-4",
                    "provider": "openai",
                    "openai_config": {
                        "openai_api_key": "{{secrets/my-external-model/openai}}",
                    },
                    "task": "llm/v1/chat",
                },
            }
        ],
    },
}

response = requests.post(url, headers=headers, json=data)

print("Status Code", response.status_code)
print("JSON Response ", json.dumps(json.loads(response.text), indent=4))

Interroger le modèle externe avec ai_query()

Dans l’éditeur de requête Databricks SQL, vous pouvez écrire des requêtes SQL pour interroger le point de terminaison de service de modèle externe.

Exemples de requêtes :

SELECT ai_query(
    "my-external-openai-chat",
    "What is a large language model?"
  )

SELECT question, ai_query(
    "my-external-openai-chat",
    "You are a customer service agent. Answer the customer's question in 100 words: " || question
  ) AS answer
FROM
  uc_catalog.schema.customer_questions

SELECT
 sku_id,
 product_name,
 ai_query(
   "my-external-openai-chat",
   "You are a marketing expert for a winter holiday promotion targeting GenZ. Generate a promotional text in 30 words mentioning a 50% discount for product: " || product_name
 )
FROM
 uc_catalog.schema.retail_products
WHERE
 inventory > 2 * forecasted_sales

Ressources supplémentaires