ai_generate_text 함수

적용 대상:check marked yes Databricks SQL

Important

이 기능은 공개 미리 보기 상태입니다.

Warning

AI 함수 ai_generate_text() 는 더 이상 사용되지 않습니다. Databricks는 외부 모델에서 ai_query 사용하는 것이 좋습니다.

프롬프트가 지정된 경우 선택한 LLM(큰 언어 모델)에서 생성된 텍스트를 반환합니다.

요구 사항

  • 이 함수는 Databricks SQL Pro 및 서버리스에서만 사용할 수 있습니다.
  • 이 함수는 더 이상 사용되지 않습니다. Databricks는 외부 모델을 사용하여 ai_query 권장합니다.

구문

ai_generate_text(prompt, modelName[, param1, value1] [...])

인수

  • prompt: 문자열 식이며, 선택한 LLM에 전달되는 텍스트 프롬프트입니다.
  • modelName: STRING 리터럴만 'openai/gpt-3.5-turbo' 지원 'azure_openai/gpt-35-turbo' 됩니다.
  • paramNvalueN: 키-값 쌍을 사용하여 선택한 LLM을 인증하고 구성합니다. 키는 문자열 리터럴이어야 하며 대/소문자를 구분합니다. 값의 형식은 다음 키에 따라 달라집니다.
    • 모델은 'openai/gpt-3.5-turbo' Open AI의 채팅 완료 API를 사용합니다. 다음 매개 변수를 지원합니다.
      • 'apiKey': 필수 사항입니다. 모델 엔드포인트에 액세스하기 위한 OpenAI API 키입니다. 지정된 값은 명시적 상수 문자열일 수 없습니다. 권장 값에는 secret(scope, key) 함수 및 SELECT ... 스칼라 하위 쿼리가 포함됩니다.
      • 'temperature': 사용할 샘플링 온도입니다. 해당 값은 사이의 0 숫자 리터럴입니다 2. 기본값은 1.0입니다.
      • stop: 문자열을 중지합니다. 해당 값은 STRING 리터럴 또는 ARRAY<STRING> 최대 4개의 문자열 리터럴입니다. 기본값은 null합니다.
    • 모델은 'azure_openai/gpt-35-turbo' Azure OpenAI Service의 채팅 완료 API를 사용합니다. 위의 'openai/gpt-3.5-turbo' 모델의 모든 매개 변수와 엔드포인트 URL을 생성하기 위한 추가 매개 변수를 허용합니다. Databricks는 API 키 인증만 지원합니다.
      • 'resourceName': 필수 사항입니다. 해당 값은 리소스 이름을 지정하는 문자열 리터럴입니다.
      • 'deploymentName': 필수 사항입니다. 해당 값은 배포 이름을 지정하는 문자열 리터럴입니다.
      • 'apiVersion': 필수 사항입니다. 해당 값은 사용할 API 버전을 지정하는 문자열 리터럴입니다.

반품

선택한 LLM에서 다시 생성된 텍스트를 나타내는 문자열 식입니다.

예제

함수의 ai_generate_text 예제 사용 사례는 ai_generate_text() 및 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.