Merge branch 'refactor/backend-architecture' into development
This commit is contained in:
@@ -24,7 +24,6 @@
|
||||
"""
|
||||
import argparse
|
||||
import json
|
||||
import logging
|
||||
import os
|
||||
import sys
|
||||
import uuid
|
||||
@@ -36,9 +35,7 @@ from dataclasses import dataclass, field, asdict
|
||||
# 确保 api/ 目录在 sys.path 中
|
||||
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
||||
|
||||
from dotenv import load_dotenv
|
||||
|
||||
load_dotenv()
|
||||
# 配置由 app.core.config.settings 统一加载
|
||||
|
||||
import socket
|
||||
import subprocess
|
||||
@@ -47,23 +44,24 @@ import signal
|
||||
from sqlalchemy import create_engine, select
|
||||
from sqlalchemy.orm import sessionmaker, Session
|
||||
|
||||
from database.models import Base, User, Conversation, Segment, Chapter, ChapterSection, Book, MemoirState
|
||||
from services.llm_service import LLMService
|
||||
from agents.state_schema import MemoirStateSchema, SlotData, default_state
|
||||
from agents.prompts.memory_prompts import (
|
||||
from app.core.db import Base
|
||||
from app.features.conversation.models import Conversation, Segment
|
||||
from app.features.memoir.models import Book, Chapter, ChapterSection, MemoirState
|
||||
from app.features.user.models import User
|
||||
from app.core.dependencies import get_llm_provider
|
||||
from app.agents.state_schema import MemoirStateSchema, SlotData, default_state
|
||||
from app.agents.prompts.memory_prompts import (
|
||||
get_creative_title_prompt,
|
||||
get_narrative_prompt,
|
||||
get_state_extraction_prompt,
|
||||
inject_image_placeholder_template,
|
||||
STAGE_TO_ORDER,
|
||||
)
|
||||
from services.memoir_images.parser import split_narrative_to_sections
|
||||
from app.features.memoir.memoir_images.parser import split_narrative_to_sections
|
||||
from app.core.logging import get_logger, setup_logging
|
||||
|
||||
logging.basicConfig(
|
||||
level=logging.INFO,
|
||||
format="%(asctime)s [%(levelname)s] %(message)s",
|
||||
)
|
||||
logger = logging.getLogger(__name__)
|
||||
setup_logging()
|
||||
logger = get_logger(__name__)
|
||||
|
||||
# ── SSH / DB 配置 ──────────────────────────────────────────────
|
||||
|
||||
@@ -163,7 +161,7 @@ def open_ssh_tunnel() -> SshTunnel:
|
||||
|
||||
def make_session(tunnel: SshTunnel) -> Session:
|
||||
url = (
|
||||
f"postgresql+psycopg://{PG_USER}:{PG_PASSWORD}"
|
||||
f"postgresql://{PG_USER}:{PG_PASSWORD}"
|
||||
f"@127.0.0.1:{tunnel.local_bind_port}/{PG_DATABASE}"
|
||||
)
|
||||
engine = create_engine(url, pool_size=2, max_overflow=2)
|
||||
@@ -332,7 +330,7 @@ def generate_chapters_in_memory(
|
||||
|
||||
def cmd_preview(phone: str, batch_size: int, skip_llm_slots: bool):
|
||||
# LLM
|
||||
llm = LLMService().get_llm()
|
||||
llm = getattr(get_llm_provider(), "langchain_llm", None)
|
||||
if not llm:
|
||||
logger.error("LLM 未配置,请检查 .env 中的 DEEPSEEK_API_KEY")
|
||||
sys.exit(1)
|
||||
|
||||
Reference in New Issue
Block a user