Primary Author(s): Daniel Loreto
Jetify's AI SDK for Go is a unified interface for interacting with multiple AI providers including OpenAI, Anthropic, and more. Inspired by Vercel's AI SDK for TypeScript, we bring a similar developer experience to the Go ecosystem.
It is maintained and developed by Jetify. We are in the process of migrating our production code to use this SDK as the primary way our AI agents integrate with different LLM providers.
Building AI applications go today means dealing with:
- Fragmented ecosystems - Each provider has different APIs, authentication, and patterns
- Vendor lock-in - Switching providers requires rewriting significant application code
- Poor Go developer experience - Official Go SDKs are often auto-generated from OpenAPI specs, resulting in unidiomatic Go code
- Complex multi-modal handling - Different providers handle images, files, and tools differently
The AI SDK provides a unified interface across multiple AI providers, with key advantages:
- Provider abstraction - Common interfaces for language models, embeddings, and image generation
- Go-first design - Built specifically for Go developers with idiomatic patterns and strong typing
- Production-ready - Comprehensive error handling, automatic retries, rate limiting, and robust provider failover
- Multi-modal by default - First-class support for text, images, files, and structured outputs across all providers
- Extensible architecture - Clean interfaces make it easy to add new providers while maintaining backward compatibility
- Multi-Provider Support – OpenAI, Anthropic, with more coming
- Multi-Modal Inputs – Text, images, and files in conversations
- Tool Calling – Function calling with parallel execution
- Language Models – Text generation with streaming support
- Embedding Models – Text embeddings for semantic search
- Image Models – Generate images from text prompts
- Structured Outputs – JSON generation with schema validation
- Text generation (streaming & non-streaming)
- Multi-modal conversations (text + images + files)
- System messages and conversation history
- Tool/function calling with structured schemas
- JSON output with schema validation
- OpenAI - Web search, computer use, file search tools
- Anthropic - Claude's advanced reasoning and tool use
- Private Alpha: We are testing the SDK with a select group of developers.
- Public Alpha: Open to all developers, but breaking changes still expected.
- Public Beta: Stable enough for most non-enterprise use cases.
- General Availability (v1): Ready for production use at scale with guaranteed API stability.
We are currently in Public Alpha. The SDK functionality is stable but the API may have breaking changes. While in alpha, minor version bumps indicate breaking changes (0.1.0 -> 0.2.0 would indicate a breaking change). Watch "releases" of this repo to get notified of major updates.
Get started with a simple text generation example:
For detailed examples, see our examples directory.
Comprehensive documentation is available:
- API Reference - Complete Go package documentation
- Examples - Real-world usage patterns
Join our community and get help:
- Discord – https://discord.gg/jetify (best for quick questions & showcase)
- GitHub Discussions – Discussions (best for ideas & design questions)
- Issues – Bug reports & feature requests
We 💖 contributions! Please read CONTRIBUTING.md for guidelines.
Licensed under the Apache 2.0 License – see LICENSE for details.