Skip to content

Add the possibility to add extra body fields in the RunConfig or Agents #487

Closed
@lucas-trueffles

Description

@lucas-trueffles

The standard openai package it is possible to add additional fields to the request body. This is particularly useful if you have some kind of proxy which can process additional data for metrics, tracing or FinOps.

Here an example how to do it in the openai package:

import openai
client = openai.OpenAI()

response = client.chat.completions.create(model="gpt-4o", messages = [
    {
        "role": "user",
        "content": "Write a short poem about GitHub"
    }
], 
# it is possible to send additional body fields with "extra_body"
    extra_body={
      "field1": "value 1"
    }
) 

Unfortunately I wasn't able to find a way to mimic this behaviour.

I would suggest to add the feature to provide extra body fields in the RunConfig:
result = Runner.run_sync(agent, input="Say this is a test", run_config=RunConfig(extra_body={"field1":"value 1"}))

Maybe it would also benefit if you can set extra body fields on a per agent basis.
agent = Agent(name="Assistant", instructions="You are a helpful assistant", extra_body={"field1":"value 1"})
These will then be added on top of the extra fields which have been set in the RunConfig.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions