Files
life-echo/api/app/agents/image_prompt/prompt_agent.py

51 lines
1.7 KiB
Python
Raw Normal View History

"""
PromptGenerationAgent生成回忆录配图的 image-generation prompt
接收 chapter_titlechapter_categorydescriptioncontext_excerpt
调用 LLM fallback 生成 {prompt, style, size}
底层委托 MemoirImagePromptService保持对外接口兼容
"""
from __future__ import annotations
from typing import Any, Optional
from app.features.memoir.memoir_images.prompting import MemoirImagePromptService
from app.features.memoir.memoir_images.settings import MemoirImageSettings
class PromptGenerationAgent:
"""
图片提示词生成 Specialist Agent
封装 MemoirImagePromptService提供 build_prompt / build_cover_prompt 接口
"""
def __init__(self, llm: Optional[Any], settings: MemoirImageSettings) -> None:
self._service = MemoirImagePromptService(llm=llm, settings=settings)
def build_prompt(
self,
chapter_title: str,
chapter_category: str,
description: str,
context_excerpt: str,
) -> dict[str, str]:
"""生成正文配图的 image-generation prompt。"""
return self._service.build_prompt(
chapter_title=chapter_title,
chapter_category=chapter_category,
description=description,
context_excerpt=context_excerpt,
)
def build_cover_prompt(
self,
chapter_title: str,
chapter_category: str,
context_excerpt: str,
) -> dict[str, str]:
"""生成章节封面图的 image-generation prompt。"""
return self._service.build_cover_prompt(
chapter_title=chapter_title,
chapter_category=chapter_category,
context_excerpt=context_excerpt,
)