openai-api-rs icon indicating copy to clipboard operation
openai-api-rs copied to clipboard

Better handling of custom fields in OpenAI-compatible APIs

Open Anson2251 opened this issue 9 months ago • 0 comments

Describe the feature or improvement you're requesting

Hi there! Could we make the response deserialization more flexible to preserve custom fields like reasoning_content?

When using DeepSeek's API (which is OpenAI-compatible), their R1 model returns a reasoning_content field at:

response.choices[0].message.reasoning_content

But currently these custom fields get silently dropped. Maybe we could keep them like OpenAI's Python SDK does?

Additional context

I checked OpenAI's official Python SDK. It seems that they just deserialised the generated json and didn't perform any checks. So the unknown fields were just preserved by dynamic typing.

deepseek's reasoning model docs

Anson2251 avatar Feb 23 '25 15:02 Anson2251