File size: 1,233 Bytes
c8fb072 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | from src.sdlc.states.states import State
from src.sdlc.prompts.prompts import DESIGNDOCS_GEN_INSTRNS,DESIGN_MODIFY_INSTRNS
from src.sdlc import logger
class DesignDocumentsNode:
"""
Node logic implementation.
"""
def __init__(self,model):
self.llm = model
def process(self, state: State):
"""
Processes the input state and generates design document based on user stories.
"""
design_review=state.get("design_documents_review", "")
design_doc=state.get("design_documents", "")
if design_review:
response=self.llm.invoke(DESIGN_MODIFY_INSTRNS.format(design_review=design_review,
design_documents=design_doc))
logger.info("IN MODIFY DESIGN DOCS...")
else:
response=self.llm.invoke(DESIGNDOCS_GEN_INSTRNS.format(user_stories=state["user_stories"],
design_documents=design_doc,
design_review=design_review))
logger.info("IN DESIGN DOCS GENERATION...")
return {"design_documents":response.content}
|