Funkcja ai_generate_text
Dotyczy: Databricks SQL
Ważne
Ta funkcja jest dostępna w publicznej wersji zapoznawczej.
Ostrzeżenie
Funkcja ai_generate_text()
sztucznej inteligencji jest przestarzała. Databricks zaleca używanie ai_query z modelami zewnętrznymi.
Zwraca tekst wygenerowany przez wybrany duży model językowy (LLM) na podstawie monitu.
Wymagania
- Ta funkcja jest dostępna tylko w usłudze Databricks SQL Pro i bezserwerowej.
- Ta funkcja jest przestarzała. Databricks zaleca użycie ai_query z modelami zewnętrznymi.
Składnia
ai_generate_text(prompt, modelName[, param1, value1] [...])
Argumenty
-
prompt
: wyrażenie tekstowe, tekstowy monit przekazywany do wybranego modułu LLM. -
modelName
: literał ciągu, obsługiwane są tylko'openai/gpt-3.5-turbo'
i'azure_openai/gpt-35-turbo'
. -
paramN
ivalueN
: pary klucz-wartość do uwierzytelniania i konfigurowania wybranej usługi LLM. Klucze muszą być literałami ciągów i są rozróżniane ze względu na wielkość liter. Typy wartości zależą od następujących kluczy:- Model
'openai/gpt-3.5-turbo'
używa API uzupełniania czatu od OpenAI. Obsługuje on następujące parametry:-
'apiKey'
: Wymagane. Klucz interfejsu API openAI umożliwiający dostęp do punktu końcowego modelu. Określona wartość nie może być jawnym ciągiem stałym. Zalecana wartość obejmuje funkcję secret(scope, key) iSELECT ...
podzapytanie skalarne. -
'temperature'
: temperatura próbkowania do użycia. Jego wartość jest literałem liczbowym między0
i2
. Domyślna wartość to1.0
. -
stop
: Zatrzymaj ciągi znaków. Jego wartość to literałSTRING
lub maksymalnie 4 literały ciąguARRAY<STRING>
. Wartością domyślną jest wartość null.
-
- Model
'azure_openai/gpt-35-turbo'
wykorzystuje interfejs API do uzupełniania czatu, dostępny w usłudze Azure OpenAI. Akceptuje wszystkie parametry z powyższego modelu'openai/gpt-3.5-turbo'
i wszelkie dodatkowe parametry do konstruowania adresu URL punktu końcowego. Usługa Databricks obsługuje tylko uwierzytelnianie za pomocą klucza interfejsu API.-
'resourceName'
: Wymagane Jego wartość to ciąg znaków literałowy określający nazwę zasobu. -
'deploymentName'
:Wymagane. Jego wartość to ciąg znaków określający nazwę wdrożenia. -
'apiVersion'
: Wymagane. Jego wartość to literał ciągu znaków określający, którą wersję interfejsu API należy użyć.
-
- Model
Zwraca
Wyrażenie ciągu reprezentujące tekst wygenerowany ponownie z wybranego modułu LLM.
Przykłady
Zobacz Analizowanie recenzji klientów za pomocą ai_generate_text()
i interfejsu OpenAI, aby zapoznać się z przykładowym przypadkiem użycia funkcji ai_generate_text
.
> SELECT ai_generate_text('Hello', 'openai/gpt-3.5-turbo',
'apiKey', secret('ml', 'key'),
'temperature', 0.1);
Hello! How can I assist you today?
> SELECT ai_generate_text('Hello',
'azure_openai/gpt-35-turbo',
'apiKey', secret('ml', 'key'),
'resouceName', 'resource',
'deploymentName', 'deploy',
'apiVersion', '2023-03-15-preview',
'temperature', 0.1);
Hello! How can I assist you today?
> SELECT ai_generate_text('Hello', 'openai/gpt-3.5-turbo',
'apiKey', (SELECT secret FROM secrets.open_ai_tokens LIMIT 1),
'temperature', 0.1);
Hello! How can I assist you today?
> CREATE FUNCTION summarize(text STRING)
RETURNS STRING
RETURN AI_GENERATE_TEXT(
CONCAT('Summarize the following text: ',
text),
'openai/gpt-3.5-turbo',
'apiKey', (SELECT secret FROM secrets.open_ai_tokens LIMIT 1),
'temperature', 0.1
);
SELECT summarize('This is the text to be summarized.')
This is the summarization.
> SELECT ai_generate_text('Hello',
'openai/gpt-3.5-turbo',
'apiKey', 'sg-xxxxxxxxxxxxxxxxxxxxxx',
'temperature', 0.1);
Error: DATATYPE_MISMATCH.INVALID_SECRET
The parameter value of the "apiKey" argument to the ai_generate_text function can not be a constant 'sg-xxxxxxxxxxxxxxxxxxxxxx'. Recommended usages include `secret(scope, key)` function or a `SELECT ...` subquery.