Spaces:
Sleeping
Sleeping
| def prepare_chain_parameters(session_state, message, history): | |
| message = message.content | |
| previous_question = "" | |
| rep_answer = "" | |
| next_question = "" | |
| ground_truth = "" | |
| command = "" | |
| all_questions_answers = "" | |
| print(f"Index: {session_state.current_question_index}") | |
| if session_state.current_question_index == 0: | |
| previous_question = "" | |
| rep_answer = "" | |
| ground_truth = "" | |
| next_question = session_state.questions[session_state.current_question_index]["question"] | |
| all_questions_answers = "" | |
| command = "You should greet the salesrep" | |
| elif session_state.current_question_index >= len(session_state.questions): | |
| next_question = "" | |
| previous_question = session_state.questions[session_state.current_question_index - 1]["question"] | |
| rep_answer = session_state.previous_answer | |
| ground_truth = session_state.questions[session_state.current_question_index - 1]["ground_truth"] | |
| for response in session_state.responses: | |
| all_questions_answers += f"Question: {response['question']}\nAnswer: {response['response']}\n\n" | |
| command = """Thank the customer, offer a comment on the answer and overall performance. | |
| Conclude the conversation with a conclusion based on all of the questions and answers. | |
| Give a polite farewell. | |
| """ | |
| else: | |
| previous_question = session_state.questions[session_state.current_question_index - 1]["question"] | |
| rep_answer = session_state.previous_answer | |
| next_question = session_state.questions[session_state.current_question_index]["question"] | |
| ground_truth = session_state.questions[session_state.current_question_index]["ground_truth"] | |
| all_questions_answers = "" | |
| command = "You should respond to the answer based on how well the rep answered the previous question." | |
| session_state.ground_truth = ground_truth | |
| session_state.question = previous_question | |
| session_state.rep_answer = rep_answer | |
| print("--------------------------------") | |
| print(f"Message: {message}") | |
| print("Sending the following:") | |
| print(f"Command: {command}") | |
| print(f"Previous question: {previous_question}") | |
| print(f"Rep answer: {rep_answer}") | |
| print(f"Next question: {next_question}") | |
| rep_company_details = f""" | |
| Name: {session_state.company.name} | |
| Description: {session_state.company.description} | |
| Product: {session_state.company.product} | |
| Product Summary: {session_state.company.product_summary} | |
| Product Description: {session_state.company.product_description} | |
| """ | |
| company_details = f""" | |
| Name: {session_state.customer.name} | |
| Description: {session_state.customer.background} | |
| """ | |
| scenario = f""" | |
| Opportunity Name: {session_state.opportunity.name} | |
| Opportunity Description: {session_state.opportunity.description} | |
| Opportunity Stage: {session_state.opportunity.stage} | |
| Opportunity Value: {session_state.opportunity.value} | |
| Opportunity Close Date: {session_state.opportunity.close_date} | |
| """ | |
| parm = {"conversation_mode": session_state.qa_mode, | |
| "message": message, | |
| "name": session_state.customer.contact_name, | |
| "company": company_details, | |
| "role": session_state.customer.contact_role, | |
| "sales_rep": "Tony Snell", | |
| "rep_company": rep_company_details, | |
| "attitude": session_state.attitude, | |
| "mood_score": session_state.mood_score, | |
| "scenario": scenario, | |
| "stage": session_state.opportunity.stage, | |
| "previous_question": previous_question, | |
| "next_question": next_question, | |
| "rep_answer": rep_answer, | |
| "conversation_history": history, | |
| "command": command, | |
| "all_questions_answers": all_questions_answers | |
| } | |
| return parm | |