feat(backend): add LLM provider abstraction, contextual ranking and explanations

Add a pluggable LLM provider with an offline template fallback, prompt builder, contextual match scoring (area/location boosts, availability), per-solution explanations and in-memory request limiting for cost control.
This commit is contained in:
Rafał Tyński
2026-10-04 02:52:45 +02:00
parent 182c26d9f8
commit 03e2d66ca4
11 changed files with 385 additions and 23 deletions
@@ -0,0 +1,10 @@
namespace TarninaHub.Application.Matchmaking;
public interface ILlmRequestLimiter
{
/// <summary>
/// Tries to reserve one LLM request within the current window.
/// Returns false when the limit is exceeded (caller should fall back).
/// </summary>
bool TryAcquire();
}