Fix relative path resolution for models.yaml config
- Change working directory to PROJECT_ROOT on startup - Resolve models_config path relative to PROJECT_ROOT - Add debug logging for config path and available models - This fixes "Unknown model" error when running from different directories 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
22
main.py
22
main.py
@@ -3,11 +3,18 @@
|
||||
|
||||
import asyncio
|
||||
import logging
|
||||
import os
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
# Get project root directory
|
||||
PROJECT_ROOT = Path(__file__).parent.absolute()
|
||||
|
||||
# Change to project root to ensure relative paths work
|
||||
os.chdir(PROJECT_ROOT)
|
||||
|
||||
# Add project root to path
|
||||
sys.path.insert(0, str(Path(__file__).parent))
|
||||
sys.path.insert(0, str(PROJECT_ROOT))
|
||||
|
||||
from config.settings import get_settings
|
||||
from src.core.gpu_manager import GPUMemoryManager
|
||||
@@ -50,8 +57,13 @@ async def initialize_services():
|
||||
|
||||
# Initialize model registry
|
||||
logger.info("Initializing model registry...")
|
||||
config_path = Path(settings.models_config)
|
||||
if not config_path.is_absolute():
|
||||
config_path = PROJECT_ROOT / config_path
|
||||
logger.info(f"Models config path: {config_path} (exists: {config_path.exists()})")
|
||||
|
||||
model_registry = ModelRegistry(
|
||||
config_path=settings.models_config,
|
||||
config_path=config_path,
|
||||
gpu_manager=gpu_manager,
|
||||
max_cached_models=settings.max_loaded_models,
|
||||
idle_timeout_minutes=settings.idle_unload_minutes,
|
||||
@@ -61,6 +73,12 @@ async def initialize_services():
|
||||
logger.info("Registering model adapters...")
|
||||
register_all_adapters(model_registry)
|
||||
|
||||
# Log available models for debugging
|
||||
available_models = model_registry.list_models()
|
||||
logger.info(f"Available models: {len(available_models)}")
|
||||
for model in available_models[:5]: # Log first 5
|
||||
logger.info(f" - {model['model_id']}/{model['variant']} (has_adapter: {model['has_adapter']})")
|
||||
|
||||
# Initialize services
|
||||
logger.info("Initializing services...")
|
||||
generation_service = GenerationService(
|
||||
|
||||
Reference in New Issue
Block a user