-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy patheyrie.go
More file actions
39 lines (34 loc) · 1.39 KB
/
eyrie.go
File metadata and controls
39 lines (34 loc) · 1.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
// Package eyrie is the core LLM client library for hawk.
//
// It provides API provider configurations, model resolution, API limits,
// base types (messages, IDs, connectors), and error types.
//
// Sub-packages:
// - types: Message types, content blocks, usage, IDs, connectors
// - errors: Error message constants and utilities
// - constants: API limits (image, PDF, media)
// - catalog: Model catalog, tiers, names, deprecation, provider data
// - config: Provider configuration, profiles, env, OpenAI-compatible runtime
// - client: EyrieClient, factory, provider detection
// - utils: Error utilities (SSL detection, API error sanitization)
package eyrie
import (
_ "embed"
"strings"
"github.com/GrayCodeAI/eyrie/client"
)
// versionFile is the canonical version, embedded at compile time from the
// VERSION file at the repo root. The VERSION file is the single source of
// truth used by release tooling, CI, and the runtime Version variable.
//
//go:embed VERSION
var versionFile string
// Version of the eyrie library. Sourced from the VERSION file at the repo
// root — do not edit this variable directly. Bump VERSION instead, or let
// release-please/goreleaser do it.
var Version = strings.TrimSpace(versionFile)
func init() {
// Propagate the canonical version into the client sub-package without
// creating an import cycle (client cannot import eyrie).
client.SetVersion(Version)
}