| | |
| | | from tenacity import retry, stop_after_attempt, wait_fixed |
| | | from io import BytesIO |
| | | from PIL import Image |
| | | import google.generativeai as genai |
| | | from auto_media_publisher.config.conf_base import GOOGLE_API_KEY,GOOGLE_MODEL,GOOGLE_CHAT_MIN_INTERVAL,DEFAULT_PREFIX_MAP,DEFAULT_SURFIX_MAP |
| | | from auto_media_publisher.config.conf_base import GOOGLE_GEMINI_TEMPERATURE_MIN,GOOGLE_GEMINI_TEMPERATURE_MAX,GOOGLE_GEMINI_TOPN_MIN,GOOGLE_GEMINI_TOPN_MAX,GOOGLE_REWRITE_STYLE_MAP,GEMINI_PROMPT_INIT_DEFAULT |
| | | from auto_media_publisher.config.conf_base import GOOGLE_GEMINI_PROXY |
| | | from auto_media_publisher.config.conf_base import GOOGLE_CHAT_MIN_INTERVAL,DEFAULT_PREFIX_MAP,DEFAULT_SURFIX_MAP |
| | | from auto_media_publisher.config.conf_base import GOOGLE_REWRITE_STYLE_MAP,GEMINI_PROMPT_INIT_DEFAULT |
| | | from auto_media_publisher.config.conf_base import GEMINI_PROMPT_TITLE,GEMINI_PROMPT_DESCRIPTION,GEMINI_PROMPT_TAG |
| | | from auto_media_publisher.utils.logger import get_logger |
| | | from auto_media_publisher.utils.utils_text2image_pollinations import Text2ImageGenerator |
| | | from auto_media_publisher.utils.utils_google import init_gemini_model |
| | | |
| | | |
| | | class DocxRewriterGemini: |
| | | def __init__(self,rewrite_style="default" ,docx_author="我"): |
| | | genai.configure(api_key=GOOGLE_API_KEY) |
| | | self.temperature = round(random.uniform(GOOGLE_GEMINI_TEMPERATURE_MIN, GOOGLE_GEMINI_TEMPERATURE_MAX), 2) |
| | | self.top_n = round(random.uniform(GOOGLE_GEMINI_TOPN_MIN, GOOGLE_GEMINI_TOPN_MAX), 2) |
| | | self.model = genai.GenerativeModel(GOOGLE_MODEL, |
| | | generation_config=genai.types.GenerationConfig( |
| | | temperature=self.temperature, |
| | | top_p=self.top_n, |
| | | top_k=random.choice([40, 50, 80, 100]) |
| | | ) |
| | | ) |
| | | |
| | | self.model = init_gemini_model(GOOGLE_GEMINI_PROXY) |
| | | |
| | | if rewrite_style =="random": |
| | | self.rewrite_style = random.choice(list(GOOGLE_REWRITE_STYLE_MAP.keys())) |
| | | else: |