Udostępnij za pośrednictwem


Funkcja ai_query

Dotyczy: zaznacz pole wyboru oznaczone jako tak Databricks SQL

Ważne

Ta funkcja jest dostępna w publicznej wersji zapoznawczej.

Wywołuje istniejący punkt końcowy obsługujący model usługi Azure Databricks i analizuje i zwraca odpowiedź.

Wymagania

  • Ta funkcja nie jest dostępna w usłudze Azure Databricks SQL Classic.
  • Interfejsy API modelu programu Querying Foundation są domyślnie włączone. Aby wykonywać zapytania dotyczące punktów końcowych obsługujących modele niestandardowe lub modele zewnętrzne, należy zarejestrować się w publicznej wersji zapoznawczej. Wypełnij formularz rejestracji usługi AI Functions w publicznej wersji zapoznawczej i prześlij go.

Składnia

Aby wysłać zapytanie do punktu końcowego obsługującego model zewnętrzny lub model podstawowy:

ai_query(endpointName, request)

Aby wysłać zapytanie do punktu końcowego obsługującego model niestandardowy:

ai_query(endpointName, request, returnType)

Argumenty

  • endpointName: literał CIĄGU, nazwa istniejącego punktu końcowego obsługi modelu sztucznej inteligencji mozaiki w tym samym obszarze roboczym dla wywołań. Definiowanie musi mieć uprawnienie CAN QUERY w punkcie końcowym.
  • request: wyrażenie , żądanie użyte do wywołania punktu końcowego.
    • Jeśli punkt końcowy jest zewnętrznym modelem obsługującym punkt końcowy lub punkt końcowy interfejsów API modelu usługi Databricks Foundation, żądanie musi być ciągiem.
    • Jeśli punkt końcowy jest punktem końcowym obsługującym model niestandardowy, żądanie może być jedną kolumną lub wyrażeniem struktury. Nazwy pól struktury powinny być zgodne z nazwami funkcji wejściowych oczekiwaną przez punkt końcowy.
  • returnType: wyrażenie, oczekiwany returnType z punktu końcowego. Jest to podobne do parametru schematu w funkcji from_json, która akceptuje zarówno wyrażenie STRING, jak i wywołanie funkcji schema_of_json. Wymagane do wykonywania zapytań względem niestandardowego punktu końcowego obsługującego model.

Zwraca

Przeanalizowana odpowiedź z punktu końcowego.

Przykłady

Aby wysłać zapytanie do zewnętrznego punktu końcowego obsługującego model lub model databricks Foundation:

> SELECT ai_query(
    'my-external-model-openai-chat',
    'Describe Databricks SQL in 30 words.'
  ) AS summary

  "Databricks SQL is a cloud-based platform for data analytics and machine learning, providing a unified workspace for collaborative data exploration, analysis, and visualization using SQL queries."

> CREATE FUNCTION correct_grammar(text STRING)
  RETURNS STRING
  RETURN ai_query(
    'databricks-llama-2-70b-chat',
    CONCAT('Correct this to standard English:\n', text));
> GRANT EXECUTE ON correct_grammar TO ds;
- DS fixes grammar issues in a batch.
> SELECT
    * EXCEPT text,
    correct_grammar(text) AS text
  FROM articles;

Aby wysłać zapytanie do niestandardowego punktu końcowego obsługującego model:


> SELECT text, ai_query(
    endpoint => 'spam-classification-endpoint',
    request => named_struct(
      'timestamp', timestamp,
      'sender', from_number,
      'text', text),
    returnType => 'BOOLEAN') AS is_spam
  FROM messages

> SELECT ai_query(
    'weekly-forecast',
    request => struct(*),
    returnType => 'FLOAT') AS predicted_revenue
  FROM retail_revenue

> SELECT ai_query(
    'custom-llama-2-7b-chat',
    request => named_struct("messages",
        ARRAY(named_struct("role", "user", "content", "What is ML?"))),
    returnType => 'STRUCT<candidates:ARRAY<STRING>>')

  {"candidates":["ML stands for Machine Learning. It's a subfield of Artificial Intelligence that involves the use of algorithms and statistical models to enable machines to learn from data, make decisions, and improve their performance on a specific task over time."]}