Databricks met de Python SDK
Avi Steinberg
Senior Software Engineer
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}")
Parameters voor de ChatMessage()‑klasse:
ChatMessage:
content: str
role: ChatMessageRole
Voorbeeld van een ChatMessage:
ChatMessage(
role=ChatMessageRole.USER,
content="Can you summarize what happened in world war 1?"
)
Stuur een ChatMessage met de rol SYSTEM:
ChatMessage(
role=ChatMessageRole.SYSTEM,
content="You are a helpful assistant."
)
Stuur een ChatMessage met de rol USER:
ChatMessage(
role=ChatMessageRole.USER,
content="How do you use for loops in Python?"
)
w = WorkspaceClient() response = w.serving_endpoints.query( # Bevraag het Meta Llama 3 AI‑model name="databricks-meta-llama-3-3-70b-instruct",messages=[ ChatMessage( # Bericht met rol "SYSTEM" om te sturen hoe de agent op toekomstige vragen reageert role=ChatMessageRole.SYSTEM, content=f"You are a helpful assistant. " ),ChatMessage( # Bericht met rol "USER" om het AI‑model een vraag te stellen role=ChatMessageRole.USER, content="Can you explain what a fibonacci sequence is?" ), ], max_tokens=128, # Beperk het aantal woorden dat het AI‑model in het antwoord mag gebruiken )# Parse het antwoord van het AI‑model en print de content print(f"RESPONSE:\n{response.choices[0].message.content}")
Het antwoord van de Serving Endpoint parseren:
from databricks.sdk import WorkspaceClient
response = w.serving_endpoints.query(
name="model-name",
messages=[...])
print(
"RESPONSE:\n{response.choices[0].message.content}"
)
RESPONSE:
De rij van Fibonacci is een reeks
getallen waarbij elk getal de som is
van de twee voorgaande, beginnend
met 0 en 1. De reeks start zo:
0, 1, 1, 2, 3, 5, 8, 13, 21, 34,
55, 89, 144...
Om het volgende getal te krijgen,
tel je de vorige twee op. Bijvoorbeeld:
* 0 + 1 = 1
* 1 + 1 = 2
* 1 + 2 = 3
w = WorkspaceClient() # Bevraag het Meta Llama 3 AI‑model response = w.serving_endpoints.query( name="databricks-meta-llama-3-3-70b-instruct",messages=[ ChatMessage( # Vraag de AI‑agent om de tekst in some_long_text samen te vatten role=ChatMessageRole.USER, content=f"Summarize the text stored in {some_long_text}" ), ],max_tokens=100, # Stel het maximum aantal woorden in het antwoord in op 100 )# Print het geparste antwoord van het AI‑model print(f"RESPONSE:\n{response.choices[0].message.content}")
w = WorkspaceClient() response = w.serving_endpoints.query( name="databricks-meta-llama-3-3-70b-instruct",messages=[ ChatMessage(role=ChatMessageRole.SYSTEM, content=f"You are a ghost writer for famous country singers." ),ChatMessage(role=ChatMessageRole.USER, content="Write the lyrics to a country song that takes place in Mississippi")], max_tokens=100) print( "RESPONSE:\n{response.choices[0].message.content}" )
RESPONSE:
"Onder de magnoliahemel, waar de
Mississippi River voorbij stroomt
Zit ik hier, denkend aan jou, met de
Delta blues in mijn ziel vannacht
De cipressen wiegen zacht,
en de krekels zingen ons lied
Maar zonder jou voelt deze oude
Mississippi‑nacht niet als thuis"
Databricks met de Python SDK