OpenAIBackend by default assumes open ai semantic. e.g. THINKING = medium. However, a user may use OpenAIBackend with litellm proxy and so on. In my case, I am using litellm proxy to access granite-4 family on rits cluster. AFAIK, granite does not set thinking effort as medium instead it uses "thinking=True"
thinking = model_opts.get(ModelOption.THINKING, None)
if type(thinking) is bool and thinking:
# OpenAI uses strings for its reasoning levels.
thinking = "medium"
following throws an error TypeError: openai.resources.chat.completions.completions.Completions.create() got multiple values for keyword argument 'reasoning_effort'
backend = OpenAIBackend(
base_url="http://0.0.0.0:4000/",
model_id=model,
api_key="API KEY",
header=True,
model_options={
ModelOption.MAX_NEW_TOKENS: 4096,
ModelOption.SYSTEM_PROMPT: "You are an expert Site Reliability Engineer.",
ModelOption.THINKING: True
}
...```
credit: Saurabh Jha
OpenAIBackend by default assumes open ai semantic. e.g. THINKING = medium. However, a user may use OpenAIBackend with litellm proxy and so on. In my case, I am using litellm proxy to access granite-4 family on rits cluster. AFAIK, granite does not set thinking effort as medium instead it uses "thinking=True"
following throws an error
TypeError: openai.resources.chat.completions.completions.Completions.create() got multiple values for keyword argument 'reasoning_effort'