Abfragen eines externen Modells mit ai_query()
Hinweis
Dieses Feature befindet sich in der Public Preview. Um Endpunkte abzufragen, die externe Modelle bedienen, müssen Sie sich in der öffentlichen Vorschau registrieren. Füllen Sie das KI Functions Public Preview-Registrierungsformular aus und übermitteln Sie es.
In diesem Artikel wird das Einrichten und Abfragen eines externen Modellendpunkts mithilfe der integrierten Databricks SQL-Funktion ai_query()
veranschaulicht. Im Beispiel wird die Unterstützung für externe Modelle in Mosaic AI Model Serving genutzt, um die von OpenAI bereitgestellte gpt-4
-Komponente abzufragen und Chataufgaben auszuführen. Ausführlichere Informationen zu dieser KI-Funktion finden Sie unter KI-Funktionen in Azure Databricks.
Anforderungen
- Sehen Sie sich die Anforderungen der SQL-Funktion „ai_query“ an.
- Einen OpenAI-API-Schlüssel.
- Speichern Sie den Schlüssel in einem Databricks-Geheimnisse. In diesem Beispiel speichern Sie den API-Schlüssel in scope
my-external-model
und secretopenai
.
Erstellen eines externen Modellendpunkts
Im Anschluss wird ein externer Modellbereitstellungsendpunkt erstellt, der OpenAI gpt-4
für eine Chataufgabe bereitstellt.
Informationen zum Erstellen eines persönlichen Zugriffstokens finden Sie unter Authentifizierung für die Azure Databricks-Automatisierung.
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))
Abfragen des externen Modells mit ai_query()
Im Databricks SQL-Abfrage-Editor können Sie SQL-Abfragen schreiben, um den externen Modellbereitstellungsendpunkt abzufragen.
Beispielabfragen:
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