in sampler/responses_sampler.py [0:0]
def __call__(self, message_list: MessageList) -> str:
if self.system_message:
message_list = [self._pack_message("developer", self.system_message)] + message_list
trial = 0
while True:
try:
if self.reasoning_model:
reasoning = ({"effort": self.reasoning_effort} if self.reasoning_effort else None)
response = self.client.responses.create(
model=self.model,
input=message_list,
reasoning=reasoning,
)
else:
response = self.client.responses.create(
model=self.model,
input=message_list,
temperature=self.temperature,
max_output_tokens=self.max_tokens,
)
return response.output_text
except openai.BadRequestError as e:
print("Bad Request Error", e)
return ""
except Exception as e:
exception_backoff = 2**trial # expontial back off
print(
f"Rate limit exception so wait and retry {trial} after {exception_backoff} sec",
e,
)
time.sleep(exception_backoff)
trial += 1