Databricks로 AI 모델 쿼리하기

Python SDK로 Databricks 다루기

Avi Steinberg

Senior Software Engineer

파운데이션 모델

파운데이션 모델 이미지

  • 대규모 사전 학습된 신경망
  • 다양한 대용량 데이터셋으로 학습
  • Databricks 내외부에서 호스팅 가능
1 https://docs.databricks.com/aws/en/machine-learning/model-serving/foundation-model-overview
Python SDK로 Databricks 다루기

주요 채팅 완성 모델

Databricks 외부에서 호스팅:

  • OpenAI의 ChatGPT
  • Anthropic의 Claude
  • Google Cloud의 Gemini

OpenAI ChatGPT

Anthropic Claude

Google Gemini

Databricks에서 호스팅:

  • Meta Llama

$$

Databricks Meta Llama

Python SDK로 Databricks 다루기

Databricks Meta Llama

  • Meta와 Databricks가 협력하여 Meta Llama를 Databricks에서 호스팅
  • Meta가 개발 및 학습시킨 대규모 언어 모델(LLM)
  • 성능 면에서 OpenAI GPT와 경쟁력 있음

Databricks Meta Llama

1 1. https://docs.databricks.com/aws/en/machine-learning/foundation-model-apis/supported-models#meta-llama-3-3-70b-instruct 2. https://www.databricks.com/product/pricing/foundation-model-serving
Python SDK로 Databricks 다루기

서빙 엔드포인트

  • Databricks에서 호스팅된 파운데이션 모델에 이미 존재
  • 외부 및 커스텀 모델에 대해 생성 가능
  • Databricks SDK를 사용하여 파운데이션 모델 쿼리 가능

서빙 엔드포인트

1 https://docs.databricks.com/api/workspace/servingendpoints
Python SDK로 Databricks 다루기

서빙 엔드포인트 API

  • 해당 서빙 엔드포인트에 API 요청을 보내 AI 모델을 쿼리할 수 있음
  • WorkspaceClientserving_endpoints 속성을 통해 접근
1 https://docs.databricks.com/api/workspace/servingendpoints
Python SDK로 Databricks 다루기

채팅 메시지 역할

SYSTEM:

모델이 쿼리에 응답하는 방식에 대한 지침

USER:

사용자가 모델에 보내는 쿼리

예시 프롬프트:

"You are a helpful python coding assistant."

예시 프롬프트:

"How do for loops work in Python?"

1 https://databricks-sdk-py.readthedocs.io/en/stable/dbdataclasses/serving.html#databricks.sdk.service.serving.ChatMessageRole
Python SDK로 Databricks 다루기

Databricks로 채팅 모델 쿼리하기

from databricks.sdk import WorkspaceClient
from databricks.sdk.service.serving import ChatMessage, ChatMessageRole
w = WorkspaceClient()
response = w.serving_endpoints.query(
    name="databricks-meta-llama-3-3-70b-instruct",
    messages=[
        ChatMessage(
            role=ChatMessageRole.SYSTEM, content="You are a helpful assistant."
        ),
        ChatMessage(role=ChatMessageRole.USER, content="<your-question>"),
    ],
    max_tokens=128)
print(f"RESPONSE:\n{response.choices[0].message.content}")
1 https://docs.databricks.com/aws/en/machine-learning/foundation-model-apis/supported-models#meta-llama-33-70b-instruct
Python SDK로 Databricks 다루기

연습해 봅시다!

Python SDK로 Databricks 다루기

Preparing Video For Download...