Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions pydantic_ai_slim/pydantic_ai/models/openai.py
Original file line number Diff line number Diff line change
Expand Up @@ -948,6 +948,10 @@ def __init__(

super().__init__(settings=settings, profile=profile or provider.model_profile)

@property
def base_url(self) -> str:
return str(self.client.base_url)

@property
def model_name(self) -> OpenAIModelName:
"""The model name."""
Expand Down
9 changes: 8 additions & 1 deletion tests/models/test_openai.py
Original file line number Diff line number Diff line change
Expand Up @@ -94,13 +94,20 @@
]


def test_init():
def test_chat_model_init():
m = OpenAIChatModel('gpt-4o', provider=OpenAIProvider(api_key='foobar'))
assert m.base_url == 'https://api.openai.com/v1/'
assert m.client.api_key == 'foobar'
assert m.model_name == 'gpt-4o'


def test_response_model_init():
m = OpenAIResponsesModel('o4-mini-deep-research', provider=OpenAIProvider(api_key='foobar'))
assert m.base_url == 'https://api.openai.com/v1/'
assert m.client.api_key == 'foobar'
assert m.model_name == 'o4-mini-deep-research'


async def test_request_simple_success(allow_model_requests: None):
c = completion_message(
ChatCompletionMessage(content='world', role='assistant'),
Expand Down