Bir Sohbet Tamamlama Modelini Sorgulama

Python SDK ile Databricks

Avi Steinberg

Senior Software Engineer

Sunum uç noktasını sorgulama

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="Yardımcı bir asistansınız." ), ChatMessage(role=ChatMessageRole.USER, content="<your-question>"), ],
max_tokens=128) print(f"YANIT:\n{response.choices[0].message.content}")
1 https://databricks-sdk-py.readthedocs.io/en/stable/workspace/serving/serving_endpoints.html
Python SDK ile Databricks

ChatMessage

ChatMessage() sınıfı için parametreler:

ChatMessage:
  content: str
  role: ChatMessageRole

Örnek ChatMessage:

ChatMessage(
  role=ChatMessageRole.USER, 
  content="Birinci Dünya Savaşı'nda ne olduğunu özetler misiniz?"
)
Python SDK ile Databricks

ChatMessageRole

SYSTEM rolüyle bir ChatMessage gönderin:

ChatMessage(
  role=ChatMessageRole.SYSTEM,
  content="Yardımcı bir asistansınız."
)

USER rolüyle bir ChatMessage gönderin:

ChatMessage(
  role=ChatMessageRole.USER, 
  content="Python'da for döngüleri nasıl kullanılır?"
)
Python SDK ile Databricks

Sohbet tamamlama Büyük Dil Modelini (LLM) sorgulama

w = WorkspaceClient()
response = w.serving_endpoints.query( # Meta Llama 3 yapay zekâ modelini sorgulayın
  name="databricks-meta-llama-3-3-70b-instruct",

messages=[ ChatMessage( # Gelecek sorgulara yanıt tarzını etkilemek için "SYSTEM" rolü mesajı role=ChatMessageRole.SYSTEM, content=f"Yardımcı bir asistansınız. " ),
ChatMessage( # Modele soru sormak için "USER" rolü mesajı role=ChatMessageRole.USER, content="Fibonacci dizisi nedir, açıklar mısınız?" ), ], max_tokens=128, # Modelin yanıttaki en fazla kelime sayısı )
# Model yanıtını ayrıştırın ve içeriği yazdırın print(f"YANIT:\n{response.choices[0].message.content}")
1 https://docs.databricks.com/aws/en/machine-learning/model-serving/score-foundation-models
Python SDK ile Databricks

Sorgu yanıtı yapısı

Sunum Uç Noktası Sorgu Yanıtını Ayrıştırma:

from databricks.sdk import WorkspaceClient
response = w.serving_endpoints.query(
    name="model-name", 
    messages=[...])

print(
f"YANIT:\n{response.choices[0].message.content}"
)
YANIT:
Fibonacci dizisi, her sayının kendisinden önceki iki sayının
toplamı olduğu bir sayı dizisidir; 0 ve 1 ile başlar. Dizi şöyle
devam eder:
0, 1, 1, 2, 3, 5, 8, 13, 21, 34,
55, 89, 144...
Sonraki sayıyı bulmak için önceki iki sayıyı toplayın. Örneğin:
* 0 + 1 = 1
* 1 + 1 = 2
* 1 + 2 = 3
Python SDK ile Databricks

Örnek: metni özetleme

w = WorkspaceClient()
# Meta Llama 3 yapay zekâ modelini sorgulayın
response = w.serving_endpoints.query(
  name="databricks-meta-llama-3-3-70b-instruct",

messages=[ ChatMessage( # some_long_text değişkenindeki metni özetlemesini isteyin role=ChatMessageRole.USER, content=f"{some_long_text} içinde saklanan metni özetle" ), ],
max_tokens=100, # Yanıttaki en fazla kelime sayısını 100 olarak ayarlayın )
# Yapay zekâ modelinden ayrıştırılan yanıtı yazdırın print(f"YANIT:\n{response.choices[0].message.content}")
Python SDK ile Databricks

Örnek: içerik üretme

w = WorkspaceClient()
response = w.serving_endpoints.query(
  name="databricks-meta-llama-3-3-70b-instruct",

messages=[ ChatMessage(role=ChatMessageRole.SYSTEM, content=f"Ünlü country şarkıcıları için hayalet yazarsınız." ),
ChatMessage(role=ChatMessageRole.USER, content="Mississippi'de geçen bir country şarkısının sözlerini yazın")], max_tokens=100) print( f"YANIT:\n{response.choices[0].message.content}" )
YANIT:
"Manolya göğü altında, 
Mississippi Nehri akarken
Burada oturuyorum, seni düşünüyorum,
Bu gece ruhumda Delta blues
Selvi ağaçları yavaş sallanır,
ve cırcır böcekleri şarkımızı söyler
Ama sensiz, sevgilim, bu eski
Mississippi gecesi eve benzemiyor"
Python SDK ile Databricks

Hadi pratik yapalım!

Python SDK ile Databricks

Preparing Video For Download...