Refactor various services and models for improved type handling and configuration management

This commit is contained in:
SitiWeb
2026-04-30 01:54:49 +02:00
parent f939133fe0
commit 39bdba2dfb
11 changed files with 40 additions and 33 deletions

View File

@@ -15,21 +15,21 @@ class AppSettingsService
'prompt.classifier' => 'You are a support assistant. Select best article and return JSON. Include tool_call only when the selected article explicitly allows that action and all required parameters are present.',
'prompt.knowledge_gap' => 'Create a draft knowledge base article suggestion based on the customer question. Use the requested output language passed in the prompt. Return JSON only with keys: title, content.',
'prompt.support_reply' => 'Give only direct advice in the requested output language. No greeting, no closing, no thank-you text. Start directly with the solution. Give 3-6 numbered action points and end with a verification step.',
'llm.provider' => env('LLM_PROVIDER', 'ollama'),
'llm.active_instance_id' => env('LLM_PROVIDER', 'ollama').'_default',
'llm.provider' => (string) config('services.llm.provider', 'ollama'),
'llm.active_instance_id' => (string) config('services.llm.provider', 'ollama').'_default',
'llm.provider_instances' => json_encode($this->defaultProviderInstances()),
'llm.timeout' => (string) env('LLM_TIMEOUT', env('OLLAMA_TIMEOUT', 30)),
'llm.providers.ollama.base_url' => env('OLLAMA_BASE_URL', 'http://localhost:11434'),
'llm.providers.ollama.chat_model' => env('OLLAMA_CHAT_MODEL', 'llama3'),
'llm.providers.ollama.embedding_model' => env('OLLAMA_EMBED_MODEL', 'nomic-embed-text'),
'llm.providers.lmstudio.base_url' => env('LLM_BASE_URL', 'http://localhost:1234'),
'llm.providers.lmstudio.chat_model' => env('LLM_CHAT_MODEL', 'local-model'),
'llm.providers.lmstudio.embedding_model' => env('LLM_EMBEDDING_MODEL', 'text-embedding-nomic-embed-text-v1.5@q6_k'),
'llm.models.normalization' => env('LLM_CHAT_MODEL', env('OLLAMA_CHAT_MODEL', 'llama3')),
'llm.models.classifier' => env('LLM_CHAT_MODEL', env('OLLAMA_CHAT_MODEL', 'llama3')),
'llm.models.knowledge_gap' => env('LLM_CHAT_MODEL', env('OLLAMA_CHAT_MODEL', 'llama3')),
'llm.models.support_reply' => env('LLM_CHAT_MODEL', env('OLLAMA_CHAT_MODEL', 'llama3')),
'llm.models.embedding' => env('LLM_EMBEDDING_MODEL', env('OLLAMA_EMBED_MODEL', 'nomic-embed-text')),
'llm.timeout' => (string) config('services.llm.timeout', 30),
'llm.providers.ollama.base_url' => (string) config('services.llm.base_url', 'http://localhost:11434'),
'llm.providers.ollama.chat_model' => (string) config('services.llm.chat_model', 'llama3'),
'llm.providers.ollama.embedding_model' => (string) config('services.llm.embedding_model', 'nomic-embed-text'),
'llm.providers.lmstudio.base_url' => (string) config('services.llm.base_url', 'http://localhost:1234'),
'llm.providers.lmstudio.chat_model' => (string) config('services.llm.chat_model', 'local-model'),
'llm.providers.lmstudio.embedding_model' => (string) config('services.llm.embedding_model', 'text-embedding-nomic-embed-text-v1.5@q6_k'),
'llm.models.normalization' => (string) config('services.llm.chat_model', 'llama3'),
'llm.models.classifier' => (string) config('services.llm.chat_model', 'llama3'),
'llm.models.knowledge_gap' => (string) config('services.llm.chat_model', 'llama3'),
'llm.models.support_reply' => (string) config('services.llm.chat_model', 'llama3'),
'llm.models.embedding' => (string) config('services.llm.embedding_model', 'nomic-embed-text'),
];
}
@@ -62,17 +62,17 @@ class AppSettingsService
'id' => 'lmstudio_default',
'name' => 'LM Studio',
'type' => 'lmstudio',
'base_url' => env('LLM_BASE_URL', 'http://localhost:1234'),
'chat_model' => env('LLM_CHAT_MODEL', 'local-model'),
'embedding_model' => env('LLM_EMBEDDING_MODEL', 'text-embedding-nomic-embed-text-v1.5@q6_k'),
'base_url' => (string) config('services.llm.base_url', 'http://localhost:1234'),
'chat_model' => (string) config('services.llm.chat_model', 'local-model'),
'embedding_model' => (string) config('services.llm.embedding_model', 'text-embedding-nomic-embed-text-v1.5@q6_k'),
],
[
'id' => 'ollama_default',
'name' => 'Ollama',
'type' => 'ollama',
'base_url' => env('OLLAMA_BASE_URL', 'http://localhost:11434'),
'chat_model' => env('OLLAMA_CHAT_MODEL', 'llama3'),
'embedding_model' => env('OLLAMA_EMBED_MODEL', 'nomic-embed-text'),
'base_url' => (string) config('services.llm.base_url', 'http://localhost:11434'),
'chat_model' => (string) config('services.llm.chat_model', 'llama3'),
'embedding_model' => (string) config('services.llm.embedding_model', 'nomic-embed-text'),
],
];
}