Documentation
¶
Overview ¶
Code generated from OpenAPI schema. DO NOT EDIT.
Index ¶
Constants ¶
View Source
const APPLICATION_NAME = "inference-gateway"
View Source
const VERSION = "v0.16.1"
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type A2AConfig ¶ added in v0.10.0
type A2AConfig struct { Enable bool `env:"ENABLE, default=false" description:"Enable A2A protocol support"` Expose bool `env:"EXPOSE, default=false" description:"Expose A2A agents list cards endpoint"` Agents string `env:"AGENTS" description:"Comma-separated list of A2A agent URLs"` ClientTimeout time.Duration `env:"CLIENT_TIMEOUT, default=30s" description:"A2A client timeout"` PollingEnable bool `env:"POLLING_ENABLE, default=true" description:"Enable task status polling"` PollingInterval time.Duration `env:"POLLING_INTERVAL, default=1s" description:"Interval between polling requests"` PollingTimeout time.Duration `env:"POLLING_TIMEOUT, default=30s" description:"Maximum time to wait for task completion"` MaxPollAttempts int `env:"MAX_POLL_ATTEMPTS, default=30" description:"Maximum number of polling attempts"` MaxRetries int `env:"MAX_RETRIES, default=3" description:"Maximum number of connection retry attempts"` RetryInterval time.Duration `env:"RETRY_INTERVAL, default=5s" description:"Interval between connection retry attempts"` InitialBackoff time.Duration `env:"INITIAL_BACKOFF, default=1s" description:"Initial backoff duration for exponential backoff retry"` EnableReconnect bool `env:"ENABLE_RECONNECT, default=true" description:"Enable automatic reconnection for failed agents"` ReconnectInterval time.Duration `env:"RECONNECT_INTERVAL, default=30s" description:"Interval between reconnection attempts"` DisableHealthcheckLogs bool `env:"DISABLE_HEALTHCHECK_LOGS, default=true" description:"Disable health check log messages to reduce noise"` }
A2A configuration
type AuthConfig ¶ added in v0.14.1
type AuthConfig struct { Enable bool `env:"ENABLE, default=false" description:"Enable authentication"` OidcIssuer string `env:"OIDC_ISSUER, default=http://keycloak:8080/realms/inference-gateway-realm" description:"OIDC issuer URL"` OidcClientId string `env:"OIDC_CLIENT_ID, default=inference-gateway-client" type:"secret" description:"OIDC client ID"` OidcClientSecret string `env:"OIDC_CLIENT_SECRET" type:"secret" description:"OIDC client secret"` }
Authentication configuration
type ClientConfig ¶ added in v0.7.0
type ClientConfig struct { Timeout time.Duration `env:"TIMEOUT, default=30s" description:"Client timeout"` MaxIdleConns int `env:"MAX_IDLE_CONNS, default=20" description:"Maximum idle connections"` MaxIdleConnsPerHost int `env:"MAX_IDLE_CONNS_PER_HOST, default=20" description:"Maximum idle connections per host"` IdleConnTimeout time.Duration `env:"IDLE_CONN_TIMEOUT, default=30s" description:"Idle connection timeout"` TlsMinVersion string `env:"TLS_MIN_VERSION, default=TLS12" description:"Minimum TLS version"` DisableCompression bool `env:"DISABLE_COMPRESSION, default=true" description:"Disable compression for faster streaming"` ResponseHeaderTimeout time.Duration `env:"RESPONSE_HEADER_TIMEOUT, default=10s" description:"Response header timeout"` ExpectContinueTimeout time.Duration `env:"EXPECT_CONTINUE_TIMEOUT, default=1s" description:"Expect continue timeout"` }
Client configuration
type Config ¶
type Config struct { // General settings Environment string `env:"ENVIRONMENT, default=production" description:"The environment"` AllowedModels string `env:"ALLOWED_MODELS" description:"Comma-separated list of models to allow. If empty, all models will be available"` // Telemetry settings Telemetry *TelemetryConfig `env:", prefix=TELEMETRY_" description:"Telemetry configuration"` // MCP settings MCP *MCPConfig `env:", prefix=MCP_" description:"MCP configuration"` // A2A settings A2A *A2AConfig `env:", prefix=A2A_" description:"A2A configuration"` // Authentication settings Auth *AuthConfig `env:", prefix=AUTH_" description:"Authentication configuration"` // Server settings Server *ServerConfig `env:", prefix=SERVER_" description:"Server configuration"` // Client settings Client *ClientConfig `env:", prefix=CLIENT_" description:"Client configuration"` // Providers map Providers map[providers.Provider]*providers.Config }
Config holds the configuration for the Inference Gateway
type MCPConfig ¶ added in v0.7.0
type MCPConfig struct { Enable bool `env:"ENABLE, default=false" description:"Enable MCP"` Expose bool `env:"EXPOSE, default=false" description:"Expose MCP tools endpoint"` Servers string `env:"SERVERS" description:"List of MCP servers"` ClientTimeout time.Duration `env:"CLIENT_TIMEOUT, default=5s" description:"MCP client HTTP timeout"` DialTimeout time.Duration `env:"DIAL_TIMEOUT, default=3s" description:"MCP client dial timeout"` TlsHandshakeTimeout time.Duration `env:"TLS_HANDSHAKE_TIMEOUT, default=3s" description:"MCP client TLS handshake timeout"` ResponseHeaderTimeout time.Duration `env:"RESPONSE_HEADER_TIMEOUT, default=3s" description:"MCP client response header timeout"` ExpectContinueTimeout time.Duration `env:"EXPECT_CONTINUE_TIMEOUT, default=1s" description:"MCP client expect continue timeout"` RequestTimeout time.Duration `env:"REQUEST_TIMEOUT, default=5s" description:"MCP client request timeout for initialize and tool calls"` MaxRetries int `env:"MAX_RETRIES, default=3" description:"Maximum number of connection retry attempts"` RetryInterval time.Duration `env:"RETRY_INTERVAL, default=5s" description:"Interval between connection retry attempts"` InitialBackoff time.Duration `env:"INITIAL_BACKOFF, default=1s" description:"Initial backoff duration for exponential backoff retry"` EnableReconnect bool `env:"ENABLE_RECONNECT, default=true" description:"Enable automatic reconnection for failed servers"` ReconnectInterval time.Duration `env:"RECONNECT_INTERVAL, default=30s" description:"Interval between reconnection attempts"` PollingEnable bool `env:"POLLING_ENABLE, default=true" description:"Enable health check polling"` PollingInterval time.Duration `env:"POLLING_INTERVAL, default=30s" description:"Interval between health check polling requests"` PollingTimeout time.Duration `env:"POLLING_TIMEOUT, default=5s" description:"Timeout for individual health check requests"` DisableHealthcheckLogs bool `env:"DISABLE_HEALTHCHECK_LOGS, default=true" description:"Disable health check log messages to reduce noise"` }
MCP configuration
type ServerConfig ¶ added in v0.1.6
type ServerConfig struct { Host string `env:"HOST, default=0.0.0.0" description:"Server host"` Port string `env:"PORT, default=8080" description:"Server port"` ReadTimeout time.Duration `env:"READ_TIMEOUT, default=30s" description:"Read timeout"` WriteTimeout time.Duration `env:"WRITE_TIMEOUT, default=30s" description:"Write timeout"` IdleTimeout time.Duration `env:"IDLE_TIMEOUT, default=120s" description:"Idle timeout"` TlsCertPath string `env:"TLS_CERT_PATH" description:"TLS certificate path"` TlsKeyPath string `env:"TLS_KEY_PATH" description:"TLS key path"` }
Server configuration
type TelemetryConfig ¶ added in v0.14.0
type TelemetryConfig struct { Enable bool `env:"ENABLE, default=false" description:"Enable telemetry"` MetricsPort string `env:"METRICS_PORT, default=9464" description:"Port for telemetry metrics server"` }
Telemetry configuration
Click to show internal directories.
Click to hide internal directories.