Parabéns pelo projeto. Por sua estrutura e abstração dos models!!
Apenas uma observação para você analisar: considerando que o usuário espera fidelidade nas respostas, já que é um RAG, uma temperatura menor que 0.7 não seria importante?
Além disso, acho que o range de temperatura do Gemini é diferente da OpenAI. Então para consistência talvez seja melhor não manter os parâmetros iguais para ambas (mas posso estar enganado).
Abraços.