Skip to content

Latest commit

 

History

53 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OmniLLM

Go CI Go Lint Go SAST Docs Docs Visualization License

Batteries-included LLM client that bundles omnillm-core with all thick providers.

Installation

go get github.com/plexusone/omnillm

Quick Start

import "github.com/plexusone/omnillm"

client, _ := omnillm.NewClient(omnillm.ClientConfig{
    Provider: omnillm.ProviderNameOpenAI,
    APIKey:   os.Getenv("OPENAI_API_KEY"),
})

Provider Support

Thin Providers (omnillm-core)

Lightweight implementations using stdlib net/http:

Provider Streaming Tools Reasoning JSON Mode
OpenAI Yes Yes Yes Yes
Anthropic Yes Yes Yes No
Gemini Yes No No No
X.AI (Grok) Yes Yes Yes Yes
GLM (Zhipu) Yes Yes Yes No
Kimi (Moonshot) Yes No Yes No
Qwen (Alibaba) Yes Yes Yes No
Ollama Yes Yes No Yes

Thick Providers (Official SDKs)

Full-featured implementations using official vendor SDKs:

Provider Module Streaming Tools Reasoning JSON Mode
OpenAI omni-openai Yes Yes Yes Yes
Anthropic omni-anthropic Yes Yes Yes No
Gemini omni-google Yes No Yes No
Bedrock omni-aws Yes Yes Partial No
OpenRouter omni-openrouter Yes Yes Yes Yes

Thick providers automatically override thin providers when imported.

Reasoning Support

Control LLM reasoning depth with the unified ReasoningEffort or Thinking fields:

effort := omnillm.ReasoningEffortHigh
response, err := client.CreateChatCompletion(ctx, &omnillm.ChatCompletionRequest{
    Model:           "o1-preview", // or claude-sonnet-4, grok-4-fast, etc.
    ReasoningEffort: &effort,
    Messages:        messages,
})

See Reasoning Feature Guide for details.

Thin vs Thick

Aspect Thin (omnillm-core) Thick (omni-*)
Dependencies Minimal (stdlib) Official SDK
API Coverage Core features Full coverage
Retries Manual SDK-managed
Auth API key SDK-managed

Selective Import

Import only what you need:

import (
    omnillm "github.com/plexusone/omnillm-core"
    _ "github.com/plexusone/omni-openai/omnillm" // Only OpenAI thick provider
)

Documentation

License

MIT

About

Batteries-included LLM client that bundles omnillm-core with all thick providers.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages