First commit

This commit is contained in:
Johan
2025-12-17 13:29:14 +01:00
commit cc50161771
43 changed files with 3665 additions and 0 deletions

34
src/app/core/config.py Normal file
View File

@@ -0,0 +1,34 @@
from typing import List
from pydantic import AnyHttpUrl
from pydantic_settings import BaseSettings, SettingsConfigDict
class Settings(BaseSettings):
"""
Classe de configuration qui charge les variables d'environnement.
"""
# Configuration du modèle Pydantic
model_config = SettingsConfigDict(
env_file=".env",
env_file_encoding="utf-8",
case_sensitive=True
)
# Paramètres du projet
PROJECT_NAME: str = "FastAPI GraphQL LLM Project"
# Configuration de LM Studio (serveur Chat local)
LLM_CHAT_SERVER_BASE_URL: str = "http://127.0.0.1:1234/v1"
LLM_CHAT_MODEL: str = "meta-llama-3.1-8b-instruct"
LLM_CHAT_TEMPERATURE: float = 0.3 # On baisse un peu la température pour des résultats plus prévisibles (mais moins créatifs)
LLM_CHAT_API_KEY: str = "not-needed" # Clé API factice, LM Studio ne l'utilise pas
# Configuration de l'API
MOVIE_API_BASE_URL: str = "http://127.0.0.1:8000/api/v1"
# Configuration CORS
# Pydantic va automatiquement convertir la chaîne de caractères séparée par des virgules
# en une liste de chaînes de caractères.
BACKEND_CORS_ORIGINS: List[AnyHttpUrl] = []
settings = Settings()