-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathconfig.example.toml
More file actions
89 lines (80 loc) · 5.08 KB
/
config.example.toml
File metadata and controls
89 lines (80 loc) · 5.08 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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
[atoma_sui]
atoma_db = "0x901203415696585dfffd10483c5e14f63bd2d09590fd0c673d3aae66a91b4b9c" # ATOMA database object ID on testnet
atoma_package_id = "0x901203415696585dfffd10483c5e14f63bd2d09590fd0c673d3aae66a91b4b9c" # ATOMA smart contract package ID on testnet
cursor_path = "/app/data/cursor.toml" # Path to store the event cursor state
http_rpc_node_addr = "https://fullnode.testnet.sui.io:443" # Sui RPC node endpoint for testnet network
limit = 100 # Maximum number of items per page for paginated responses
max_concurrent_requests = 10 # Maximum number of simultaneous RPC requests
request_timeout = { secs = 300, nanos = 0 } # Maximum time to wait for RPC requests (in seconds)
sui_config_path = "~/.sui/sui_config/client.yaml" # Path to Sui client configuration file (default for Unix systems)
sui_keystore_path = "~/.sui/sui_config/sui.keystore" # Path to Sui keystore containing account keys (default for Unix systems)
usdc_package_id = "0xa1ec7fc00a6f40db9693ad1415d0c193ad3906494428cf252621037bd7117e29" # USDC smart contract package ID on testnet
[atoma_state]
# PostgreSQL connection string. Must match ATOMA_STATE_DATABASE_URL in .env
database_url = "postgresql://POSTGRES_USER:POSTGRES_PASSWORD@db:5432/POSTGRES_DB"
[atoma_state.metrics_collection]
metrics_url = "" # Prometheus endpoint for metrics collection
models = [
[
"MODALITY",
"MODEL",
],
] # Array of [modality_type, model_id] pairs for model configuration (possible values for modality are "Chat Completions", "Embeddings" and "Images Generations")
top_k = 10 # Number of top performing nodes to return in rankings
[atoma_service]
environment = "development" # or "production" based on your deployment used in sentry
heartbeat_url = "my-heartbeat-url" # Heartbeat URL for the service
hf_token = "<API_KEY>" # Hugging Face API token (required for gated/private models)
modalities = [
[
"Chat Completions",
],
[
"Chat Completions",
],
] # Supported interaction types for each model
models = [
"Infermatic/Llama-3.3-70B-Instruct-FP8-Dynamic",
] # List of supported LLM models by the current proxy
open_router_models_file = "/app/open_router.json" # Path to the Open Router JSON file for model configuration
password = "password" # Authentication password for the service API
revisions = [ "main", "main" ] # Model revision/version tags (must match models array length)
sentry_dsn = "sentry_dsn" # Sentry DSN for error reporting
service_bind_address = "0.0.0.0:8080" # HTTP service binding address and port (must match docker-compose.yml)
[atoma_proxy_service]
grafana_api_token = "" # Grafana API token (read-only permissions required)
grafana_dashboard_tag = "" # Tag to filter which Grafana dashboards to expose as graphs
grafana_stats_tag = "" # Tag to filter which Grafana dashboards to expose as stats
grafana_url = "" # Grafana instance URL for metrics visualization
service_bind_address = "0.0.0.0:8081" # Proxy service binding address and port (must match docker-compose.yml)
settings_password = "password" # Password for the settings page (used to protect sensitive configuration)
[atoma_auth]
access_token_lifetime = 1 # Access token validity duration in minutes
google_client_id = "" # Google OAuth client ID (required only when google-oauth feature is enabled)
refresh_token_lifetime = 1 # Refresh token validity duration in days
secret_key = "secret_key" # JWT signing key for token generation
[atoma_p2p]
heartbeat_interval = { secs = 30, nanos = 0 } # Frequency of peer health check messages
idle_connection_timeout = { secs = 60, nanos = 0 } # Time after which inactive connections are closed
# Network listening addresses for P2P communication
# Supports both TCP and QUIC protocols for better reliability and performance
# Format:
# - TCP: "/ip4/<ip_address>/tcp/<port>"
# - QUIC: "/ip4/<ip_address>/udp/<port>/quic-v1"
listen_addrs = [
"/ip4/0.0.0.0/tcp/8083", # TCP listener on all interfaces, port 8083
"/ip4/0.0.0.0/udp/8083/quic-v1", # QUIC v1 listener on all interfaces, port 8083
]
# The list of bootstrap nodes to dial
bootstrap_node_addrs = [ "/ip4/213.130.147.75/tcp/8083", "/ip4/213.130.147.75/udp/8083/quic-v1" ]
# DHT bootstrap nodes for initial P2P network discovery
bootstrap_nodes = [
"12D3KooWKnDdG3iXw9eTFijk3EWSunZcFi54Zka4wmtqtt6rPxc8",
"QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN",
"QmQCU2EcMqAqQPR2i9bChDtGNJchTbq5TbXJJ16u19uLTa",
"QmbLHAnMoJPWSCR5Zhtx6BHJX9KiKNN6tpvbUcqanj75Nb",
"QmcZf59bWwK5XFi76CZX8cbJ4BhTzzA3gU1ZjYZcYW3dwt",
]
metrics_endpoints = {} # Should be empty
# The path to the local key
local_key = "/app/data/local_key"