-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
169 lines (153 loc) · 8.85 KB
/
.env.example
File metadata and controls
169 lines (153 loc) · 8.85 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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
PLASMOD_HTTP_ADDR=127.0.0.1:8080
PLASMOD_ENV=dev
# Runtime visibility profile: test|prod
# - test: transparent debug payload/log visibility
# - prod: debug fields stripped from JSON responses
APP_MODE=prod
PLASMOD_STORAGE_DSN=file:andb.db?cache=shared&mode=rwc
PLASMOD_CPP_LIB_PATH=./build/libandb_retrieval.dylib
# ─── Embedding Provider Selection ─────────────────────────────────────────────
# Options: tfidf|openai|zhipuai|cohere|vertexai|huggingface|onnx|gguf|tensorrt
PLASMOD_EMBEDDER=tfidf
# ─── Unified embedding env vars (used by all online providers) ────────────────
# Set PLASMOD_EMBEDDER to the desired provider, then fill the vars for that block.
# NOTE: bootstrap.go reads PLASMOD_EMBEDDER_* for ALL online providers.
# The old per-provider names (PLASMOD_OPENAI_API_KEY etc.) are NOT read by bootstrap.
PLASMOD_EMBEDDER_API_KEY=
PLASMOD_EMBEDDER_MODEL=
PLASMOD_EMBEDDER_BASE_URL=
PLASMOD_EMBEDDER_DIM=0
# 0 = auto-detect via probe request (not supported by all providers)
PLASMOD_EMBEDDER_TIMEOUT=30
# per-request timeout in seconds
PLASMOD_EMBEDDER_BATCH_SIZE=100
# inputs per HTTP request (online providers)
# ─── OpenAI ───────────────────────────────────────────────────────────────────
# PLASMOD_EMBEDDER=openai
# PLASMOD_EMBEDDER_API_KEY=sk-xxx
# PLASMOD_EMBEDDER_BASE_URL=https://api.openai.com/v1
# PLASMOD_EMBEDDER_MODEL=text-embedding-3-small # dim=1536
# PLASMOD_EMBEDDER_MODEL=text-embedding-3-large # dim=3072
# PLASMOD_EMBEDDER_MODEL=text-embedding-ada-002 # dim=1536 (legacy)
# PLASMOD_EMBEDDER_DIM=1536
# ─── Azure OpenAI ─────────────────────────────────────────────────────────────
# PLASMOD_EMBEDDER=openai
# PLASMOD_EMBEDDER_API_KEY=<azure-key>
# PLASMOD_EMBEDDER_BASE_URL=https://<resource>.openai.azure.com/openai/deployments/<deploy-name>
# PLASMOD_EMBEDDER_MODEL=text-embedding-3-small
# PLASMOD_EMBEDDER_DIM=1536
# ─── Ollama (local OpenAI-compatible) ─────────────────────────────────────────
# PLASMOD_EMBEDDER=openai
# PLASMOD_EMBEDDER_API_KEY=ollama
# PLASMOD_EMBEDDER_BASE_URL=http://localhost:11434/v1
# PLASMOD_EMBEDDER_MODEL=nomic-embed-text # dim=768
# PLASMOD_EMBEDDER_MODEL=mxbai-embed-large # dim=1024
# PLASMOD_EMBEDDER_MODEL=all-minilm # dim=384
# PLASMOD_EMBEDDER_DIM=768
# ─── ZhipuAI / GLM ────────────────────────────────────────────────────────────
# PLASMOD_EMBEDDER=zhipuai
# PLASMOD_EMBEDDER_API_KEY=xxx
# PLASMOD_EMBEDDER_BASE_URL=https://open.bigmodel.cn/api/paas/v4
# PLASMOD_EMBEDDER_MODEL=embedding-3 # dim=2048
# PLASMOD_EMBEDDER_MODEL=embedding-2 # dim=1024 (legacy)
# PLASMOD_EMBEDDER_DIM=2048
# ─── Cohere ───────────────────────────────────────────────────────────────────
# PLASMOD_EMBEDDER=cohere
# PLASMOD_EMBEDDER_API_KEY=xxx
# PLASMOD_EMBEDDER_MODEL=embed-english-v3.0 # dim=1024
# PLASMOD_EMBEDDER_MODEL=embed-multilingual-v3.0 # dim=1024
# PLASMOD_EMBEDDER_MODEL=embed-english-light-v3.0 # dim=384
# PLASMOD_EMBEDDER_DIM=1024 # required for Cohere
# ─── Google Vertex AI ─────────────────────────────────────────────────────────
# PLASMOD_EMBEDDER=vertexai
PLASMOD_VERTEXAI_PROJECT=my-project
PLASMOD_VERTEXAI_LOCATION=us-central1
# PLASMOD_EMBEDDER_MODEL=text-embedding-005 # dim=768 (default)
# PLASMOD_EMBEDDER_MODEL=text-multilingual-embedding-002 # dim=768
# PLASMOD_EMBEDDER_DIM=768
# GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json
PLASMOD_VERTEXAI_ACCESS_TOKEN=
# Short-lived OAuth2 token; alternative to service-account JSON
# ─── HuggingFace Inference API ────────────────────────────────────────────────
# PLASMOD_EMBEDDER=huggingface
# PLASMOD_EMBEDDER_API_KEY=hf_xxx
# PLASMOD_EMBEDDER_MODEL=sentence-transformers/all-MiniLM-L6-v2 # dim=384
# PLASMOD_EMBEDDER_MODEL=sentence-transformers/all-mpnet-base-v2 # dim=768
# PLASMOD_EMBEDDER_MODEL=BAAI/bge-m3 # dim=1024
# PLASMOD_EMBEDDER_MODEL=intfloat/multilingual-e5-large # dim=1024
# PLASMOD_EMBEDDER_DIM=384
# PLASMOD_EMBEDDER_TIMEOUT=60 # HuggingFace cold-start can be slow
# ─── Local ONNX (CPU / CUDA) ──────────────────────────────────────────────────
# PLASMOD_EMBEDDER=onnx
PLASMOD_EMBEDDER_MODEL_PATH=/path/to/model.onnx
# e.g. models/minilm-l6-v2.onnx (see models/README.md for download)
PLASMOD_ONNX_VOCAB_PATH=/path/to/vocab.txt
# e.g. models/minilm-l6-v2-vocab.txt
PLASMOD_EMBEDDER_DEVICE=cpu
# cpu | cuda — set cuda to use GPU execution provider
CUDA_VISIBLE_DEVICES=0
# GPU index for ONNX CUDA / TensorRT / GGUF-CUDA providers
ONNXRUNTIME_LIB_PATH=/path/to/libonnxruntime.so
# Linux: /usr/lib/libonnxruntime.so macOS: /usr/local/lib/libonnxruntime.dylib
PLASMOD_EMBEDDER_MAX_BATCH_SIZE=32
PLASMOD_EMBEDDER_DIM=384
# Must match the model output dimension (all-MiniLM-L6-v2 → 384)
# ─── Local GGUF (CPU / CUDA via llama.cpp) ────────────────────────────────────
# PLASMOD_EMBEDDER=gguf
# PLASMOD_EMBEDDER_MODEL_PATH=/path/to/model.gguf
# e.g. models/all-MiniLM-L6-v2.Q4_K_M.gguf
PLASMOD_EMBEDDER_GPU_LAYERS=0
# 0 = CPU only; set to e.g. 32 to offload layers to CUDA GPU
# PLASMOD_EMBEDDER_DIM=384
# ─── Local TensorRT (CUDA only) ───────────────────────────────────────────────
# PLASMOD_EMBEDDER=tensorrt
# PLASMOD_EMBEDDER_MODEL_PATH=/path/to/model.engine
# e.g. models/minilm-l6-v2-fp16.engine (built via trtexec, see models/README.md)
# PLASMOD_ONNX_VOCAB_PATH=/path/to/vocab.txt (same vocab as ONNX)
# PLASMOD_EMBEDDER_DIM=384
# ─── Agent SDK — Identity (agent.LoadFromEnv) ────────────────────────────────
# Read by agent.LoadFromEnv() to establish an AgentSession / AgentGateway.
PLASMOD_AGENT_ENDPOINT=http://127.0.0.1:8080
PLASMOD_AGENT_ID=my-agent-alpha
PLASMOD_TENANT_ID=tenant-default
PLASMOD_WORKSPACE_ID=ws-default
PLASMOD_AGENT_HTTP_PORT=9090
PLASMOD_AGENT_HTTP_TIMEOUT=30
# ─── Agent SDK — LLM Provider [RESERVED — SDK interface, dev/test only] ──────
# These vars are consumed by the LLMProvider implementation in the SDK layer.
# The interface is defined in src/internal/agent/provider.go (LLMProvider).
# Concrete SDK code reads these via its own loader — NOT agent.LoadFromEnv().
# Fill in here only for local development and integration testing.
#
# OpenAI-compatible endpoint (works with OpenAI / Azure / Ollama / DeepSeek / Qwen):
PLASMOD_AGENT_LLM_BASE_URL=https://api.openai.com/v1
# http://localhost:11434/v1 (Ollama)
# https://api.deepseek.com/v1 (DeepSeek)
# https://dashscope.aliyuncs.com/compatible-mode/v1 (Qwen / Alibaba Cloud)
PLASMOD_AGENT_LLM_API_KEY=
# sk-xxx / leave blank for Ollama
PLASMOD_AGENT_LLM_MODEL=gpt-4o
# deepseek-chat | qwen-max | qwen2.5:14b | claude-3-5-sonnet-20241022
PLASMOD_AGENT_LLM_MAX_TOKENS=2048
PLASMOD_AGENT_LLM_TEMPERATURE=0.7
PLASMOD_AGENT_LLM_TIMEOUT=120
# ─── Agent SDK — MAS Topology [RESERVED — SDK interface, dev/test only] ──────
# Consumed by the MASProvider implementation in the SDK layer.
# Interface defined in src/internal/agent/provider.go (MASProvider / MASPeer).
#
PLASMOD_MAS_TOPOLOGY=mesh
# mesh | hub | hierarchical
PLASMOD_MAS_PEERS=
# http://agent-beta:9090,http://agent-gamma:9090
PLASMOD_MAS_HUB_AGENT_ID=
# only for topology=hub
# ─── S3 / MinIO Integration ───────────────────────────────────────────────────
# Optional: enable local MinIO/S3 integration tests.
# This is a local-dev example; do not paste real production secrets.
S3_ENDPOINT=127.0.0.1:9000
S3_ACCESS_KEY=minioadmin
S3_SECRET_KEY=minioadmin
S3_BUCKET=andb-integration
S3_SECURE=false
S3_REGION=us-east-1
S3_PREFIX=andb/integration_tests