feat: ghost text AI inline + Ollama qwen2.5-coder:1.5b
- Ollama provider ajoute dans ai.py (OpenAI-compatible API) - Service ollama dans docker-compose (auto-pull qwen2.5-coder:1.5b) - Ghost overlay dans Forge: prediction en texte pale apres le curseur - Tab pour accepter, Escape pour rejeter, taper pour annuler - Declenchement automatique apres 800ms de pause - Scroll sync entre overlay et textarea - Env vars: AI_DEFAULT_PROVIDER, OLLAMA_BASE_URL, OLLAMA_MODEL
This commit is contained in:
+7
-1
@@ -13,7 +13,7 @@ from typing import Optional, Literal
|
||||
|
||||
logger = logging.getLogger("obsigate.ai")
|
||||
|
||||
ProviderName = Literal["deepseek", "openrouter", "gemini"]
|
||||
ProviderName = Literal["deepseek", "openrouter", "gemini", "ollama"]
|
||||
|
||||
# Provider configurations — keys loaded from file or .env
|
||||
AI_KEYS_FILE = Path("data/api_keys.json")
|
||||
@@ -54,6 +54,12 @@ def _load_provider_keys():
|
||||
"model": os.getenv("GEMINI_MODEL", "gemini-2.0-flash"),
|
||||
"auth_header": None,
|
||||
},
|
||||
"ollama": {
|
||||
"api_key": "ollama",
|
||||
"base_url": os.getenv("OLLAMA_BASE_URL", "http://ollama:11434/v1"),
|
||||
"model": os.getenv("OLLAMA_MODEL", "qwen2.5-coder:1.5b"),
|
||||
"auth_header": "Bearer {api_key}",
|
||||
},
|
||||
}
|
||||
|
||||
PROVIDERS = _load_provider_keys()
|
||||
|
||||
Reference in New Issue
Block a user