feat: add ppt generation feat

This commit is contained in:
He Tao
2025-04-21 16:43:06 +08:00
parent d81eb40a80
commit 0d2f93c773
10 changed files with 256 additions and 0 deletions

30
src/ppt/graph/builder.py Normal file
View File

@@ -0,0 +1,30 @@
# Copyright (c) 2025 Bytedance Ltd. and/or its affiliates
# SPDX-License-Identifier: MIT
from langgraph.graph import END, START, StateGraph
from src.ppt.graph.ppt_composer_node import ppt_composer_node
from src.ppt.graph.ppt_generator_node import ppt_generator_node
from src.ppt.graph.state import PPTState
def build_graph():
"""Build and return the ppt workflow graph."""
# build state graph
builder = StateGraph(PPTState)
builder.add_node("ppt_composer", ppt_composer_node)
builder.add_node("ppt_generator", ppt_generator_node)
builder.add_edge(START, "ppt_composer")
builder.add_edge("ppt_composer", "ppt_generator")
builder.add_edge("ppt_generator", END)
return builder.compile()
if __name__ == "__main__":
from dotenv import load_dotenv
load_dotenv()
report_content = open("examples/nanjing_tangbao.md").read()
workflow = build_graph()
final_state = workflow.invoke({"input": report_content})