from portkey_ai import AsyncPortkey as Portkey, PORTKEY_GATEWAY_URL
import asyncio
async def main():
client = Portkey(
    api_key="PORTKEY_API_KEY",
    provider="@PROVIDER",
    base_url=PORTKEY_GATEWAY_URL,
)
async with client.beta.realtime.connect(model="gpt-4o-realtime-preview-2024-10-01") as connection: #replace with the model you want to use
    await connection.session.update(session={'modalities': ['text']})
    await connection.conversation.item.create(
        item={
            "type": "message",
            "role": "user",
            "content": [{"type": "input_text", "text": "Say hello!"}],
        }
    )
    await connection.response.create()
    async for event in connection:
        if event.type == 'response.text.delta':
            print(event.delta, flush=True, end="")
        elif event.type == 'response.text.done':
            print()
        elif event.type == "response.done":
            break
asyncio.run(main())