Implement a fully-featured asynchronous Python client for the Open WebUI HTTP API using aiohttp. The client supports Bearer/JWT authentication, model listing, chat completions with optional server-side streaming, Ollama proxy helpers (generate, list tags, embed), and RAG utilities for file upload and knowledge collection management. Includes async context manager for automatic session lifecycle, custom exception hierarchy (OpenWebUIError, APIResponseError), and 100% type-hinted production-ready code.