openher / providers /api.yaml
kellyxiaowei's picture
Deploy OpenHer Gradio Space โ€” gemma-4-E4B served on Modal
dff25f7 verified
Raw
History Blame Contribute Delete
3.5 kB
# โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
# OpenHer โ€” Unified API Configuration
# โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
# All external API settings in one place.
# ENV var overrides always take priority over this file.
# Future APIs (vision, STT, etc.) add new sections here.
# โ”€โ”€ LLM (ๅฏน่ฏๅผ•ๆ“Ž) โ”€โ”€
llm:
provider: "gemini" # Active provider name
# model is auto-resolved from providers.<name>.default_model
# Override globally: set DEFAULT_MODEL env var
temperature: 0.92
max_tokens: 1024
providers:
dashscope:
base_url: "https://dashscope.aliyuncs.com/compatible-mode/v1"
api_key_env: "DASHSCOPE_API_KEY"
default_model: "qwen-flash-2025-07-28"
openai:
base_url: "https://api.openai.com/v1"
api_key_env: "OPENAI_API_KEY"
default_model: "gpt-4o"
moonshot:
base_url: "https://api.moonshot.cn/v1"
api_key_env: "MOONSHOT_API_KEY"
default_model: "moonshot-v1-auto"
ollama:
base_url: "http://localhost:11434/v1"
api_key_env: ""
default_model: "qwen3.5:9b"
no_key_required: true
gemini:
api_key_env: "GEMINI_API_KEY"
default_model: "gemini-3.1-flash-lite-preview"
stepfun:
base_url: "https://api.stepfun.com/v1"
api_key_env: "STEPFUN_API_KEY"
default_model: "step-3.5-flash"
minimax:
base_url: "https://api.minimax.io/v1"
api_key_env: "MINIMAX_LLM_API_KEY"
default_model: "MiniMax-M2.7"
litertlm:
api_key_env: ""
default_model: "gemma-4-e2b"
no_key_required: true
# โ”€โ”€ TTS (่ฏญ้Ÿณๅˆๆˆ) โ”€โ”€
tts:
provider: "dashscope" # openai / dashscope / minimax
cache_dir: ".cache/tts" # Relative to project root
providers:
openai:
api_key_env: "OPENAI_API_KEY"
dashscope:
api_key_env: "DASHSCOPE_API_KEY"
model: "qwen3-tts-instruct-flash-realtime"
default_voice: "Cherry"
minimax:
api_key_env: "MINIMAX_API_KEY"
model: "speech-2.8-turbo"
# Per-persona voice mapping (provider-specific)
# When switching TTS provider, update these values accordingly
voice_map:
ember: "gentle_female"
iris: "Momo"
kai: "calm_male"
kelly: "calm_male"
luna: "Maia"
mia: "sweet_female"
nova: "Cherry"
rex: "calm_male"
sora: "gentle_female"
vivian: "Serena"
# โ”€โ”€ Memory (ๅŒๅฑ‚่ฎฐๅฟ†) โ”€โ”€
# SoulMem: ่กŒไธบ่ฎฐๅฟ† โ€” ๆŒ‡ๅฏผๆ€Žไนˆๅš (ๅธธ้ฉป๏ผŒSQLite FTS5)
# EverMemOS: ้™ˆ่ฟฐ่ฎฐๅฟ† โ€” ่ฎฐไฝๅšไบ†ไป€ไนˆ (ๅฏ้€‰ๅขžๅผบ๏ผŒHTTP)
memory:
soulmem:
db_path: ".data/memory.db" # ๅธธ้ฉป๏ผŒๆ€ปๆ˜ฏๅฏ็”จ
evermemos:
enabled: false # Set to true + base_url after starting EverMemOS
base_url: "" # e.g. "http://localhost:1995/api/v1"
api_key_env: "EVERMEMOS_API_KEY"
# โ”€โ”€ Image (ๅ›พ็‰‡็”Ÿๆˆ) โ”€โ”€
image:
provider: "gemini"
cache_dir: ".cache/image"
providers:
gemini:
api_key_env: "GEMINI_API_KEY"
model: "gemini-3.1-flash-image-preview"
# โ”€โ”€ Speech (่ฏญ้Ÿณ่ƒฝๅŠ›) โ”€โ”€
# ๆณจ: providers/config.py ๅŒๆ—ถๆ”ฏๆŒ "tts" ๅ’Œ "speech" key
# ๅฝ“ๅ‰ไฟๆŒ "tts" ไธๆ”น๏ผŒๅŽ็ปญ่ฟ็งปๅˆฐ "speech"
# โ”€โ”€ ้ข„็•™: ๆœชๆฅ API โ”€โ”€
# speech:
# asr:
# provider: "paraformer"
# live:
# provider: "realtime"