# RubyLLM Documentation > Developer documentation for RubyLLM, a Ruby library for building AI applications with chat, agents, tools, embeddings, image generation, audio transcription, moderation, streaming, and Rails integration. ## About RubyLLM is one consistent Ruby framework for chat, image generation, embeddings, transcription, moderation, tools, agents, structured output, streaming, and Rails integration across OpenAI, Anthropic, Gemini, Bedrock, DeepSeek, Mistral, Ollama, OpenRouter, Perplexity, GPUStack, xAI, and OpenAI-compatible providers. ## Key Topics - Ruby - Ruby on Rails - Large language models - AI agents - Retrieval augmented generation - Function calling - Structured output - Vector embeddings - Streaming AI responses - Multi-modal AI - OpenAI - Anthropic Claude - Google Gemini - AWS Bedrock - DeepSeek - Mistral AI - xAI - OpenRouter - Perplexity - Ollama - Vertex AI - GPUStack - OpenAI-compatible APIs ## Canonical Resources - Documentation: https://rubyllm.com - Source code: https://github.com/crmne/ruby_llm - RubyGems package: https://rubygems.org/gems/ruby_llm ## Primary Topics RubyLLM covers provider-agnostic AI application development in Ruby, including OpenAI, Anthropic, Gemini, Bedrock, DeepSeek, Mistral, Ollama, OpenRouter, Perplexity, GPUStack, xAI, OpenAI-compatible APIs, agents, tools, structured output, embeddings, image generation, audio transcription, moderation, streaming, Rails integration, async workloads, model registry usage, and upgrade guidance. ## Links - About: https://rubyllm.com/about/ - GitHub: https://github.com/crmne/ruby_llm - Rubygems: https://rubygems.org/gems/ruby_llm - GitHub: https://github.com/sponsors/crmne