Funkce ai_generate_text
Platí pro: Databricks SQL
Důležité
Tato funkce je ve verzi Public Preview.
Upozorňující
Funkce ai_generate_text()
AI je zastaralá. Databricks doporučuje používat ai_query s externími modely.
Vrátí text vygenerovaný vybraným velkým jazykovým modelem (LLM) vzhledem k výzvě.
Požadavky
- Tato funkce je dostupná jenom v Databricks SQL Pro a bezserverové verzi.
- Tato funkce je zastaralá. Databricks doporučuje ai_query s externími modely.
Syntaxe
ai_generate_text(prompt, modelName[, param1, value1] [...])
Argumenty
prompt
: Řetězcový výraz, textový řádek, který se předá vybranému LLM.modelName
: Pouze'openai/gpt-3.5-turbo'
literál STRING a'azure_openai/gpt-35-turbo'
jsou podporovány.paramN
avalueN
: páry klíč-hodnota pro ověření a konfiguraci vybraného LLM. Klíče musí být řetězcové literály a rozlišují velká a malá písmena. Typy hodnot závisí na následujících klíčích:- Model
'openai/gpt-3.5-turbo'
používá rozhraní API pro dokončování chatu z open AI. Podporuje následující parametry:'apiKey'
:Požadovaný. Klíč rozhraní API OpenAI pro přístup ke koncovému bodu modelu. Zadaná hodnota nemůže být explicitním řetězcem konstanty. Doporučená hodnota zahrnuje funkci secret(scope, key) aSELECT ...
skalární poddotaz.'temperature'
: Teplota vzorkování, která se má použít. Jeho hodnota je číselný literál mezi0
a2
. Výchozí hodnota je1.0
.stop
: Zastavte řetězce. Jeho hodnota jeSTRING
literál neboARRAY<STRING>
až 4 řetězcové literály. Výchozí hodnotou je hodnota null.
- Model
'azure_openai/gpt-35-turbo'
používá rozhraní API pro dokončování chatu ze služby Azure OpenAI. Přijímá všechny parametry z výše uvedeného'openai/gpt-3.5-turbo'
modelu a všechny další parametry pro vytvoření adresy URL koncového bodu. Databricks podporuje pouze ověřování pomocí klíče rozhraní API.'resourceName'
:Požadovaný. Jeho hodnota je řetězcový literál pro zadání názvu prostředku.'deploymentName'
:Požadovaný. Jeho hodnota je řetězcový literál pro zadání názvu nasazení.'apiVersion'
:Požadovaný. Jeho hodnota je řetězcový literál určující verzi rozhraní API, která se má použít.
- Model
Návraty
Řetězcový výraz představující text vygenerovaný z vybraného LLM.
Příklady
Příklad použití ai_generate_text
funkce najdete v tématu Analýza kontrol zákazníků pomocí ai_generate_text() a OpenAI.
> 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.