fix
Browse files- main.py +2 -1
- poster/poster.py +6 -5
main.py
CHANGED
@@ -1,5 +1,6 @@
|
|
1 |
import base64
|
2 |
import copy
|
|
|
3 |
import json
|
4 |
import fire
|
5 |
import os
|
@@ -91,7 +92,7 @@ def generate_paper_poster(
|
|
91 |
# json.dump(poster.model_dump(), f, ensure_ascii=False)
|
92 |
|
93 |
poster_size = replace_figures_size_in_poster(backup_poster, figures)
|
94 |
-
print("Now generating HTML...")
|
95 |
result = generate_html_v2(vendor, model, poster_size, figures)
|
96 |
|
97 |
html = result["html_with_figures"]
|
|
|
1 |
import base64
|
2 |
import copy
|
3 |
+
from datetime import datetime
|
4 |
import json
|
5 |
import fire
|
6 |
import os
|
|
|
92 |
# json.dump(poster.model_dump(), f, ensure_ascii=False)
|
93 |
|
94 |
poster_size = replace_figures_size_in_poster(backup_poster, figures)
|
95 |
+
print(f"[{datetime.now().strftime('%Y-%m-%d %H:%M:%S')}] Now generating HTML...")
|
96 |
result = generate_html_v2(vendor, model, poster_size, figures)
|
97 |
|
98 |
html = result["html_with_figures"]
|
poster/poster.py
CHANGED
@@ -335,7 +335,7 @@ def generate_html_v2(vendor: str, model: str, poster: BaseModel, figures: list[s
|
|
335 |
]
|
336 |
)
|
337 |
layout_chain = layout_prompt | llm
|
338 |
-
output = layout_chain.invoke({"style": style, "poster": poster}).content
|
339 |
layout_prompt.append(
|
340 |
MessagesPlaceholder(variable_name="react"),
|
341 |
)
|
@@ -409,6 +409,7 @@ def generate_html_v2(vendor: str, model: str, poster: BaseModel, figures: list[s
|
|
409 |
def generate_single_html(prompt_input):
|
410 |
"""单个HTML生成函数,用于多线程执行"""
|
411 |
result_output = layout_chain.invoke(prompt_input).content
|
|
|
412 |
body = re.search(r"```html\n(.*?)\n```", result_output, re.DOTALL).group(1)
|
413 |
|
414 |
html = HTML_TEMPLATE.format(style=style, body=body)
|
@@ -451,10 +452,10 @@ def generate_html_v2(vendor: str, model: str, poster: BaseModel, figures: list[s
|
|
451 |
min_poster_sizes = result["poster_sizes"]
|
452 |
min_section_sizes = result["section_sizes"]
|
453 |
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
|
459 |
while True:
|
460 |
attempt += 1
|
|
|
335 |
]
|
336 |
)
|
337 |
layout_chain = layout_prompt | llm
|
338 |
+
# output = layout_chain.invoke({"style": style, "poster": poster}).content
|
339 |
layout_prompt.append(
|
340 |
MessagesPlaceholder(variable_name="react"),
|
341 |
)
|
|
|
409 |
def generate_single_html(prompt_input):
|
410 |
"""单个HTML生成函数,用于多线程执行"""
|
411 |
result_output = layout_chain.invoke(prompt_input).content
|
412 |
+
print(f"[{datetime.now().strftime('%Y-%m-%d %H:%M:%S')}] Generated HTML")
|
413 |
body = re.search(r"```html\n(.*?)\n```", result_output, re.DOTALL).group(1)
|
414 |
|
415 |
html = HTML_TEMPLATE.format(style=style, body=body)
|
|
|
452 |
min_poster_sizes = result["poster_sizes"]
|
453 |
min_section_sizes = result["section_sizes"]
|
454 |
|
455 |
+
# 如果找到满足条件的结果,直接返回
|
456 |
+
if min_proportion <= 0.1:
|
457 |
+
print(f"[{datetime.now().strftime('%Y-%m-%d %H:%M:%S')}] Initial generation successful, remaining {min_proportion:.0%} blank spaces.")
|
458 |
+
return {"html": min_html, "html_with_figures": min_html_with_figures}
|
459 |
|
460 |
while True:
|
461 |
attempt += 1
|