GoAI is a powerful Go library that seamlessly integrates multiple LLM providers, vector embeddings, and vector storage capabilities. Built for developers who want a clean, unified interface for AI operations.
🤖 Multiple LLM Providers
- OpenAI
- Anthropic Claude
- AWS Bedrock
📊 Vector Operations
- Efficient embeddings generation
- PostgreSQL vector storage
- Similarity search
🛠 Developer Experience
- Consistent interfaces
- Streaming support
- Type-safe operations
go get github.com/shaharia-lab/goai
You can find more examples in the _examples directory which
you can run simply by go run _examples/simple_chat.go
package main
import (
"github.com/shaharia-lab/goai"
"log"
"os"
)
func main() {
// Initialize LLM
client := goai.NewAnthropicClient(os.Getenv("ANTHROPIC_API_KEY"))
provider := goai.NewAnthropicLLMProvider(goai.AnthropicProviderConfig{
Client: client,
})
// Configure request
llm := goai.NewLLMRequest(goai.NewRequestConfig(
goai.WithMaxToken(200),
goai.WithTemperature(0.7),
), provider)
// Generate response
response, err := llm.Generate([]goai.LLMMessage{
{Role: goai.UserRole, Text: "Explain quantum computing"},
})
if err != nil {
panic(err)
}
log.Println(response)
}
Visit our documentation for detailed guides on:
- Getting Started
- LLM Integration
- Embedding Generation
- Vector Operations
- MCP (Model Context Protocol) Server in Go
- API Reference
We welcome contributions! See our Contributing Guide for details.
Review our Security Policy for reporting vulnerabilities.
MIT License - see LICENSE for details.
Built with ❤️ by Shaharia Lab and Contributors