Skip to content
Open
Changes from all 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
42 changes: 42 additions & 0 deletions src/openai/_client.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,48 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

from __future__ import annotations
from fastapi import FastAPI, Depends
from openai import AsyncOpenAI

app = FastAPI()

def get_client():
return AsyncOpenAI()

@app.get("/chat")
async def chat(client: AsyncOpenAI = Depends(get_client)):
response = await client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "Hello"}]
)
return response
from fastapi import FastAPI
from openai import AsyncOpenAI

app = FastAPI()
client: AsyncOpenAI | None = None

@app.on_event("startup")
async def startup_event():
global client
client = AsyncOpenAI()

@app.on_event("shutdown")
async def shutdown_event():
await client.close()

@app.get("/chat")
async def chat():
response = await client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "Hello"}]
)
return response
import httpx
from openai import AsyncOpenAI

transport = httpx.AsyncHTTPTransport(retries=3)
client = AsyncOpenAI(http_client=httpx.AsyncClient(transport=transport))

import os
from typing import TYPE_CHECKING, Any, Union, Mapping
Expand Down