openai-go is an LLM SDK for Go and a client for interacting with OpenAI services. It provides type-safe bindings to generate text, images, and audio via REST endpoints, enabling the integration of large language models and AI assistant orchestration into Go applications.
The library serves as an agent orchestration tool for managing stateful conversation threads and autonomous agents with integrated tool calling and file search. It also functions as an asynchronous batch processing client for monitoring large-scale request groups and fine-tuning jobs, alongside a management SDK for controlling organization users, project roles, and spending alerts.
The SDK covers a broad range of capabilities, including multimodal content generation for video and speech, the creation of numerical embeddings, and the management of vector stores. It includes administrative tools for governance, such as audit log retrieval and security certificate management, as well as traffic management features like exponential backoff retries and server-sent events streaming.
The client supports integration with Azure OpenAI and allows for custom network behavior through a request-response middleware pipeline and an interface-based HTTP client.