from divi import obs_openai, observable
from divi.evaluation import EvaluatorConfig, Score
from dotenv import load_dotenv
from openai import OpenAI
load_dotenv()
class Pirate:
def __init__(self):
self.client = obs_openai(
OpenAI(),
name="Pirate",
scores=[Score.instruction_adherence, Score.task_completion],
eval=EvaluatorConfig(
model="gpt-4.1",
n_rounds=2,
),
)
@observable(name="Talk with pirate")
def talk(self, message: str):
"""Talk like a pirate."""
res = self.client.chat.completions.create(
model="gpt-4o",
messages=[
{"role": "developer", "content": "Talk like a pirate."},
{
"role": "user",
"content": message,
},
],
)
return res.choices[0].message.content
pirate = Pirate()
pirate.talk("How do I check if a Python object is an instance of a class?")