This commit is contained in:
2025-01-31 15:59:51 +00:00
parent 8ce331b023
commit 1a68b4407e
14 changed files with 5436 additions and 274 deletions
+104 -56
View File
@@ -17,61 +17,26 @@ def validate_worker_prompt() -> str:
result:"validated"
}
"""
def predict_based_past_assessment_prompt(query,company_info, summary_stats):
# Extract company information from the dictionary
company_name = company_info['company_name']
company_size = company_info['company_size']
departments = company_info['departments']
# Create the prompt with the provided company info and summary statistics
prompt = f"""
**Prompt for the Chatbot:**
**Context:**
You are an AI assistant working for {company_name}, and your primary responsibility is to provide **insights**, **predictions**, and **recommendations** based on the company's past assessment data and organizational structure. You are not allowed to respond to any queries outside of this domain.
You are an AI assistant and work as assessment anaylyst, and your primary responsibility is to provide **insights**, **predictions**, and **recommendations** based on the company's past assessment data and organizational structure. You are not allowed to respond to any queries outside of this domain.
**General Company Information:**
- **Company Name**: {company_name}
- **Company Size**: {company_size} (e.g., Small, Medium, Large)
- **Departments**:
{', '.join(departments)}
Company info is {company_info}
**Assessment Summary**:
The following is a detailed summary of past assessments at {company_name}. Use this information to provide predictions and recommendations based on trends and data points.
The following is a detailed summary of past assessments will be provided. Use this information to provide predictions and recommendations based on trends and data points.
- **Open Items and Red Flags**:
- Total Open Items: {summary_stats['Open Items and Red Flags']['Total Open Items']}
- Average Open Items per Assessment: {summary_stats['Open Items and Red Flags']['Average Open Items per Assessment']}
- Total Red Flags: {summary_stats['Open Items and Red Flags']['Total Red Flags']}
- Average Red Flags per Assessment: {summary_stats['Open Items and Red Flags']['Average Red Flags per Assessment']}
- Max Red Flags in a Single Assessment: {summary_stats['Open Items and Red Flags']['Max Red Flags in a Single Assessment']}
- Most Common Area with Red Flags: {summary_stats['Open Items and Red Flags']['Most Common Area with Red Flags']}
- **Assessment Frequency**:
- Weekly: {summary_stats['Assessment Frequency']['Assessment Type Breakdown'].get('Weekly', 0) * 100}%
- Bi-Weekly: {summary_stats['Assessment Frequency']['Assessment Type Breakdown'].get('Bi-Weekly', 0) * 100}%
- Quarterly: {summary_stats['Assessment Frequency']['Assessment Type Breakdown'].get('Quarterly', 0) * 100}%
- Average Time Between Assessments: {summary_stats['Assessment Frequency']['Average Time Between Assessments']} days
- Average Assessment Duration: {summary_stats['Assessment Frequency']['Average Assessment Duration']} days
Past assessment summary : {summary_stats}
- **Assessment Start and End Dates**:
- Longest Assessment Duration: {summary_stats['Assessment Start and End Dates']['Longest Assessment Duration (days)']} days
- Shortest Assessment Duration: {summary_stats['Assessment Start and End Dates']['Shortest Assessment Duration (days)']} days
- **Assessment Areas**:
- Most Assessed Area: {summary_stats['Assessment Areas']['Most Assessed Area']}
- Most Open Items in Area: {summary_stats['Assessment Areas']['Most Open Items in Area']}
- Area with Most Red Flags: {summary_stats['Assessment Areas']['Area with Most Red Flags']}
- **Assessment Status**:
- Completed: {summary_stats['Assessment Status']['Assessment Status Distribution'].get('Completed', 0) * 100}%
- In Progress: {summary_stats['Assessment Status']['Assessment Status Distribution'].get('In Progress', 0) * 100}%
- Incomplete: {summary_stats['Assessment Status']['Assessment Status Distribution'].get('Incomplete', 0) * 100}%
- **Assessment Admin**:
- Most Frequent Admin: {summary_stats['Assessment Admin']['Most Frequent Admin']}
- Admin with Fewest Red Flags: {summary_stats['Assessment Admin']['Admin with Fewest Red Flags']}
- Admin with Most Open Items: {summary_stats['Assessment Admin']['Admin with Most Open Items']}
**Instructions:**
Use the above information to answer user queries. You should:
@@ -102,38 +67,38 @@ def predict_next_n_assessments_prompt():
**Prompt for the Chatbot:**
**Context:**
You are an AI assistant responsible for analyzing the past assessment data of , and your primary responsibility is to provide **predictions** for the next {n} assessments.
These assessments can occur on a **weekly**, **bi-weekly**, or **quarterly** basis. Use the company's past performance to predict the following for each of the next {n} assessments:
You are an AI assistant responsible for thoroughly analyzing the past assessment data of a company. Your primary responsibility is to provide **dynamic predictions** for the next {n} assessments, considering different scenarios based on the frequency of assessments: **weekly**, **bi-weekly**, or **quarterly**. Use the company's past performance to predict the following for each of the next {n} assessments:
- **Number of Open Items**.
- **Number of Red Flags**.
- **Predictions for Weekly, Bi-Weekly, and Quarterly assessments**.
input :
- company basic info
- past assessment statitics
**Input:**
- Company basic info
- Past assessment statistics
- N - number of next assessments to be predicted
**General Company Information:**
**Assessment Summary (Past Data)**:
The Detailed information on past asssessment will be provided. Use this information to make predictions for the next {n} assessments.
Detailed information on past assessments will be provided. Use this information to make informed predictions for the next {n} assessments, taking into account the frequency of assessments.
**Instructions**:
- Predict the number of open items and red flags for the next n assessments if they are conducted on a weekly, bi-weekly, or quarterly basis.
- Use the historical summary statistics provided above to guide your predictions.
- Analyze the historical data to predict the number of open items and red flags for the next n assessments based on whether they are conducted weekly, bi-weekly, or quarterly.
- Consider the implications of each frequency on the predictions, and ensure your analysis reflects the potential outcomes for each scenario.
- Return the response in the following JSON format:
**Response Format**:
{
"assessment 1": [
"assessment_1": [
{
"weekly": {"open_items": X, "red_flags": Y}},
"biweekly": {{"open_items": X, "red_flags": Y}},
"quarterly": {{"open_items": X, "red_flags": Y}}
"weekly": {"open_items": X, "red_flags": Y},
"biweekly": {"open_items": X, "red_flags": Y},
"quarterly": {"open_items": X, "red_flags": Y}
}
],
"assessment 2": [
"assessment_2": [
{
"weekly": {"open_items": X, "red_flags": Y},
"biweekly": {"open_items": X, "red_flags": Y},
@@ -143,12 +108,95 @@ def predict_next_n_assessments_prompt():
// assuming N is 2
}
```
Ensure each assessment is provided with three predictions: one for Weekly, one for Bi-Weekly, and one for Quarterly assessments.
Ensure each assessment is provided with three predictions: one for Weekly, one for Bi-Weekly, and one for Quarterly assessments, and analyze the data dynamically to reflect the different scenarios.
"""
return prompt
def predict_next_n_assessments_prompt_v2():
prompt = """
You are an AI analyst specializing in company team assessments. Using the provided summary statistics, predict the next N assessments.
**Input:**
1. Summary Statistics containing:
- Total assessments completed
- Average open/completed items per assessment
- User efficiency metrics
- Area-based statistics
- Red flag distributions
- Team completion rates
2. N: number of future assessments to predict
**Validation Rules:**
1. Ensure summary statistics are complete and consistent
2. Check number of historical assessments:
- If only 1 assessment: Mark as "invalid" with reason explaining need for more data
- If 2+ assessments: Proceed with predictions
3. Verify that area-based stats align with overall metrics
**Analysis Instructions:**
1. Use the average metrics as baseline predictions
2. Adjust predictions based on:
- Current completion rates per user
- Area-specific trends in open items and red flags
- Distribution of work across different areas
- Historical red flag patterns
3. Consider frequency impacts:
- Weekly: More frequent checks = faster issue detection and resolution
- Biweekly: Moderate item accumulation
- Quarterly: Longer accumulation period but more time for resolution
**Output Format:**
{
"state": "valid" | "invalid",
"reason": string | null, // Required if state is "invalid"
"predictions": [
{
"assessment_1": {
"weekly": {
"open_items": number,
"red_flags": number
},
"biweekly": {
"open_items": number,
"red_flags": number
},
"quarterly": {
"open_items": number,
"red_flags": number
}
}
},
// ... N predictions
]
}
NOTE: Do not add extra anything also any ``JSON`` formatter tags. Only output JSON.
Use the following guidelines for predictions:
1. Weekly predictions should be based on:
- avg_open_items_per_assessment
- completion_rate_per_user
- current area-based distribution of open items
2. Biweekly predictions should consider:
- Accumulation over two weeks
- Historical completion patterns
- Area-specific red flag frequencies
3. Quarterly predictions should account for:
- Longer-term accumulation patterns
- Team efficiency metrics
- Historical area-based completion rates
Make predictions that reflect realistic patterns based on the team's performance metrics and area-specific challenges.
"""
return prompt
def recommend_assessment_frequency_prompt():
return '''
You are provided with the Standard Operating Procedures (SOPs) for various roles within a company, along with options (e.g., ['weekly', 'monthly', 'biweekly']) for how frequently assessments should be performed. Your task is to recommend the best assessment type and frequency (weekly, biweekly, or quarterly) for all employees, based on the overall nature of the SOPs.
+8 -6
View File
@@ -24,6 +24,8 @@ def get_questions_prompt():
3. All questions are "yes" or "no" questions nothing extra and precise ,not long
4. Generate a total of at least 20 questions all rounda based on the sops and roles for each frequency number
5. make sure the questions are up to 20 for the current frequency
NOTE: !!! MAKE SURE YOU CORRECTLY ATTACH "assigned_to" AS THE ID OF THE MEMBER OF THE ROLE AS STATED IN THE SOP. CHECK MEMBERS UNDER THE ROLE IN THE PROVIDED SOP AND USE THE CORRECT ID OF THE MEMBER, DO NOT USE MEMBER iD THAT IS NOT PROVIDED AS "assigned_to" pls !!!
Example response:
questions
@@ -34,7 +36,7 @@ def get_questions_prompt():
"frequency_number": "2",
"questions": [
{
"assigned_to": "name",
"assigned_to": "id",----id of the member attached to the role, check the member unde the role and attacj the id here
"role": "person role",
"question": "e.g., Is the internal project team being followed according to the SOP?"
"area_tag":"timeline",
@@ -47,7 +49,7 @@ def get_questions_prompt():
"frequency_number": "3",
"questions": [
{
"assigned_to": "name",
"assigned_to": "id",----id of the member attached to the role, check the member unde the role and attacj the id here
"role": "person role",
"question": "e.g., Have communication protocols been followed for the task at hand?".
"area_tag":"communication",
@@ -125,7 +127,7 @@ def get_questions_prompt_v3():
5. Tag each question with the provided assigned_to ID (the ID of the person in charge) (e.g., 1, 2, 3, 4, 5).
6. The questions should evolve in detail as assessments progress over time.
7. For each frequency_number, generate at least 15 - 20 questions.
NOTE: !!! MAKE SURE YOU CORRECTLY ATTACH "assigned_to" AS THE ID OF THE MEMBER OF THE ROLE AS STATED IN THE SOP. CHECK MEMBERS UNDER THE ROLE IN THE PROVIDED SOP AND USE THE CORRECT ID OF THE MEMBER, DO NOT USE MEMBER iD THAT IS NOT PROVIDED AS "assigned_to" pls !!!
Provide the response in the following JSON format:
{
"questions": {
@@ -134,10 +136,10 @@ def get_questions_prompt_v3():
"frequency_number": 1,
"items": [
{
"area_tag": 5,
"assigned_to": 8,
"area_tag": id of the rea tag,
"assigned_to": "id",----id of the member attached to the role, check the member unde the role and attacj the id here ,
"questions": "Has the content calendar been developed and shared with the team?",
"role": 4
"role": 4"role id" in SOP
},
...
]
+226 -19
View File
@@ -18,6 +18,7 @@ def get_roles_extraction_from_questionnaire():
return '''Your task is to extract the "Roles" from the provided questionnaire responses.
You must identify and categorize the roles based on the information provided.
Instructions:
1. **Roles**: Extract the roles mentioned in the questionnaire.
2. **Vision**: If applicable, extract the vision of the company or organization as it relates to the roles.
@@ -48,20 +49,53 @@ def get_sop_personalassessment_from_questionnaire():
Provide the generated SOPs based on the questionnaire responses.'''
def get_sop_personalassessment_from_area_role(role,areas,sop_types):
return f"""Your job is to generate Standard Operating Procedures (SOPs) for the role of "{role}" with a focus on the areas "{areas}" based on the following instructions:
def get_sop_personalassessment_from_area_role(role,sop_types,qna=None,areas=None):
if not areas:
areas = "Not provided"
return f"""Your job is to generate Standard Operating Procedures (SOPs) for the role of "{role}" with a focus on the prvided area
"{areas}" based on the following instructions:
Instructions:
Categorization: Organize the SOPs under the selected categories: a checkboxex of the three categories "must" , "shall" and "will"
So use the selected sop types categories: {sop_types}
So use the selected sop types categories: {sop_types} #adhere strictly to these sop types alone and make sure they are not missing
Direct Instructions: The SOPs should directly address responsibilities, objectives, and challenges related to the area of "{areas}" for the role of "{role}".
Questions and Anwer context: If extra questions and answers answered based on role is the provided, use that as more context(related to this role)
Contextual Inference: If SOPs for the area are not explicitly stated, infer them from the role and area context provided.
Empty Lists: If no SOPs are generated, return an empty list for each category.
Format: The SOPs should be direct and concise.
provided questions and answer: {qna}
INSTRUCTIONS : STRICTLY ADHERE TO THESE INSTRUCTIONS
NOTE: IF AREAS ARE NOT PROVIDED (AREA IS "NOT PROVIDED"), INTUITIVELY PROVIDE THE SOP BASED ON THE ROLE NAME.
NOTE: MAKE SURE SOPS ARE NOT MISSING FOR THE PROVIDED TYPES.
NOTE: FOR SOP TYPES NOT SELECTED RETURN AN EMPTY LIST and not "null" E.G IF "SHALL" AND "WILL" ARE SELECTED BUT "MUST" IS NOT AMONG, MUST WILL BE AN EMPTY LIST
"""
def get_sop_personalassessment_from_area_rolev2():
return f"""Your job is to generate Standard Operating Procedures (SOPs) for the information provided on different roles role of with a focus on the prvided areas
based on the following instructions:
Instructions:
Categorization: Organize the SOPs under the selected categories: a checkboxex of the three categories "must" , "shall" and "will"
So use the selected sop types categories for the specified role : #adhere strictly to these sop types alone and make sure they are not missing
Direct Instructions: The SOPs should directly address responsibilities, objectives, and challenges related to the area of specified to the specific role".
Questions and Anwer context: If extra questions and answers answered based on roles is the provided, use that as more context to generate the sop
Contextual Inference: If SOPs for the area are not explicitly stated, infer them from the role and area context provided.
Format: The SOPs should be direct and concise.(5-7) bullet point per sop type is okay for each role but 3-4 on average is very good
INSTRUCTIONS : STRICTLY ADHERE TO THESE INSTRUCTIONS
NOTE: IF AREAS ARE NOT PROVIDED (AREA IS "NOT PROVIDED"), INTUITIVELY PROVIDE THE SOP BASED ON THE ROLE NAME.
NOTE: MAKE SURE SOPS ARE NOT MISSING FOR THE PROVIDED TYPES.
NOTE: FOR SOP TYPES NOT SELECTED RETURN AN EMPTY LIST and not "null" E.G IF "SHALL" AND "WILL" ARE SELECTED BUT "MUST" IS NOT AMONG, MUST WILL BE AN EMPTY LIST
NOTE !!!: IF A ROLE POINTS TO A SPECIFIC SOP TYPE (E.G., "SHALL" AND "MUST"), THESE TWO MUST NEVER BE EMPTY FOR THAT ROLE.
: FORMAT: SOPS SHOULD BE CLEAR, DIRECT, AND CONCISE. EACH ROLE SHOULD HAVE 5-7 BULLET POINTS PER SOP TYPE ("WILL," "SHALL," OR "MUST"). FOR COMPLEX ROLES, EACH SOP TYPE MAY HAVE A MAXIMUM OF 7-10 BULLET POINTS, NOT TOTAL ACROSS ALL TYPES, BUT PER SOP TYPE.
"""
def get_sop_executive_from_vision_goals(executive):
return f"""Your task is to generate Standard Operating Procedures (SOPs) for the executive namely: {executive}, based on the provided vision and goals/mission.
@@ -85,6 +119,8 @@ def get_sop_executive_from_vision_goals(executive):
def get_vision_mission_extraction_from_doc():
return """Extract vision and mission statements from the document:
You are provided with an organization document , your goal is to extract vision and mission(or goals) from the document
1. Analyze for explicit or implicit statements.
2. Vision: Long-term aspirations or ideal future state.
@@ -93,10 +129,32 @@ def get_vision_mission_extraction_from_doc():
5. Infer from context if not explicit.
6. Format as two lists: vision and mission.
7. Return empty list if none found for either category.
Provide extracted or inferred vision and mission statements."""
8. If vision and mission is found in the document , extract them as it is ,no changes
NOTE: MAKE SURE YOU EXTRACT EVERY INFORMATION FOUND FOR VISION AND GOALS FROM THE DOCUMENT.DO NOT OMIT ANY
PROVIDE EXTRACTED OR INFERRED VISION AND MISSION STATEMENTS."""
def get_vision_mission_extraction_from_doc2():
return """
You are provided with a organization document and the departments in the organization and your role is to extract the vision and mission(alo called goals) from the document
If the vision and mission are clearly stated in the document
- Extract the vision of the organization as they are
- Extract the goals(mission) of each the company based on the provided goals of the department and overall questionairre response
if the vision and mission are not clearly stated in the document
- Infer the vision and mission from the context of the document
- Analyze for explicit or implicit statements.
2. Vision: Long-term aspirations or ideal future state.
3. Mission: Organization's purpose, core functions, or primary objectives.
4. Include multiple statements if found.
5. Infer from context if not explicit.
7. Return empty list if none found for either category.
8. If vision and mission is found in the document , extract them as it is ,no changes
NOTED: if the goal(mission) and vision cant not be found at all, make it empty please
NOTE: MAKE SURE YOU EXTRACT EVERY INFORMATION FOUND FOR VISION AND GOALS FROM THE DOCUMENT.DO NOT OMIT ANY
"""
''' def get_sop_executive_for_managers():
return Your task is to extract the "Vision", "Mission", and executive-generated Standard Operating Procedures (SOPs) specifically for managers from the provided document.
@@ -114,6 +172,26 @@ def get_vision_mission_extraction_from_doc():
Provide the extracted sections exactly as they appear in the document.
'''
def get_vision_mission_extraction_from_questionnaire_executive():
return """
You are provided with an organization's response from a questionnaire, and your role is to extract the vision and mission (also called goals) from the questionnaire response:
- Generate the vision(at least one paragraph)of the organization based on the questionnaire and
- Generate the goals (mission) of the company based on the provided departmental goals and overall questionairre response
If the vision and mission are not clearly stated in the questionnaire:
- Infer the vision and mission from the context of the questionnaire.
- Analyze for explicit or implicit statements.
1. Vision: Long-term aspirations or ideal future state.
2. Mission: Organization's purpose, core functions, or primary objectives.
3. Include multiple statements if found.
4. Infer from context if not explicitly stated.
5. Return an empty list if none are found for either category.
NOTE: If the goal and mission of a can not be gotten from the questionaire response, make it empty.
NOTE: Ensure you extract every piece of information found for the vision and goals from the questionnaire. DO NOT OMIT ANYTHING.
"""
def get_departments_managers_workers_extraction_prompt():
@@ -215,49 +293,132 @@ def get_sop_for_department_managers():
'''
def get_sop_executive_from_questionnaire():
return '''Generate Standard Operating Procedures (SOPs) for specific executives and department managers based on the provided questionnaire responses.
Format the response as a JSON object with the following structure:
{
"executives": {
"must": ["SOP 1", "SOP 2", ...],
"shall": ["SOP 1", "SOP 2", ...],
"will": ["SOP 1", "SOP 2", ...]
},
"departments": [
{
"name": "Department Name",
"must": ["SOP 1", "SOP 2", ...],
"shall": ["SOP 1", "SOP 2", ...],
"will": ["SOP 1", "SOP 2", ...]
},
{
"name": "Department Name",
"must": ["SOP 1", "SOP 2", ...],
"shall": ["SOP 1", "SOP 2", ...],
"will": ["SOP 1", "SOP 2", ...]
}
]
}
Ensure that each specified department has its own set of SOPs and if managers are empty arrays- make sop empty for that department
'''
def get_sop_executive_from_questionnaire():
return '''Generate Standard Operating Procedures (SOPs) for specific executives and department managers based on the provided questionnaire responses.
Instructions:
1. Use the organizational vision and strategic goals to create overarching SOPs for each executive.
2. Use the departmental strategic goals to create specific SOPs for each department's managers.
1. Use the organizational vision and strategic goals and department strategic goals to create overarching SOPs for the executives.
2. Use the departmental strategic goals and team questionnaire to create specific SOPs for each department.
3. Categorize all SOPs into "must," "shall," and "will" categories.
4. Ensure SOPs are actionable, clear, and directly related to the provided information.
5. For executives, focus on high-level, strategic SOPs that align with the overall vision and goals.
6. For department managers, create department-specific SOPs based on their strategic goals.
7. Only generate SOPs for the specified departments.
6. For departments, create SOPs based on their department strategic goals and team questionaiire response
Format the response as a JSON object with the following structure:
{
"executives": {
"Executive Name 1": {
"executives": [{
"role":"exceutive role name":
"sops": {
"must": ["SOP 1", "SOP 2", ...],
"shall": ["SOP 1", "SOP 2", ...],
"will": ["SOP 1", "SOP 2", ...]
},
"Executive Name 2": {
{"role":"exceutitve role 2 name"
"sops": {
"must": ["SOP 1", "SOP 2", ...],
"shall": ["SOP 1", "SOP 2", ...],
"will": ["SOP 1", "SOP 2", ...]
},
"will": ["SOP 1", "SOP 2", ...]}
],
...
},
"departments": [
{
"name": "Department Name",
"managers": {
"managers": [
"role":"manager role name",
"sops":{
"must": ["SOP 1", "SOP 2", ...],
"shall": ["SOP 1", "SOP 2", ...],
"will": ["SOP 1", "SOP 2", ...]
}
},
{
"name": "Department Name 2",
"managers": [
"role":"manager role name",
"sops":{
"must": ["SOP 1", "SOP 2", ...],
"shall": ["SOP 1", "SOP 2", ...],
"will": ["SOP 1", "SOP 2", ...]
}]
},
...
]
}
Ensure that each specified department has its own set of SOPs.
Ensure that each specified department has its own set of SOPs.if managers are not provided or empty array for a department, make sop for that department empty--> do not form managers and create sop
'''
def get_sop_executive_from_questionnaire2():
return '''Generate Standard Operating Procedures (SOPs) for specific department managers based on the provided questionnaire responses.
Instructions:
2. Use the departmental strategic goals and team questionnaire and role bases answers if provided to create specific SOPs for each department.
3. Categorize all SOPs into "must," "shall," and "will" categories.
4. Ensure SOPs are actionable, clear, and directly related to the provided information.
5. For executives, focus on high-level, strategic SOPs that align with the overall vision and goals.
6. For departments, create SOPs based on their department strategic goals and team questionaiire response
Format the response as a JSON object with the following structure:
{"departments": [
{
"name": "Department Name",
"managers": [
"role":"manager role name",
"sops":{
"must": ["SOP 1", "SOP 2", ...],
"shall": ["SOP 1", "SOP 2", ...],
"will": ["SOP 1", "SOP 2", ...]
},
{
"name": "Department Name 2",
"managers": [
"role":"manager role name",
"sops":{
"must": ["SOP 1", "SOP 2", ...],
"shall": ["SOP 1", "SOP 2", ...],
"will": ["SOP 1", "SOP 2", ...]
}]
},
...
]
}
Ensure that each specified department has its own set of SOPs.if managers are not provided or empty array for a department, make sop for that department empty--> do not form managers and create sop
'''
def get_roles_reference_comparison():
prompt = """
You are tasked with comparing a list of reference roles with the extracted roles from a document.
@@ -348,3 +509,49 @@ def get_sop_for_department_managers():
'''
def get_dept_vision_mission_extraction_from_doc2():
return """
You are provided with an organizational document and a list of departments within the organization. Your role is to extract the vision of the organization and the goals/mission of each department from the document. Follow these guidelines:
If the vision and mission are clearly stated in the document:
Extract the vision of the organization exactly as stated, without modification.
Extract the goals/mission of each department exactly as provided in the document, ensuring no information is omitted.
If the vision and mission are not clearly stated:
Infer the vision and mission from the context of the document by analyzing explicit or implicit statements.
Vision: Identify the long-term aspirations or ideal future state of the organization.
Mission: Identify the organization's purpose, core functions, or primary objectives, including departmental goals where applicable.
Additional Instructions:
If multiple statements for vision or mission are found, include all relevant statements.
If vision and mission are entirely absent, return an empty list for the missing category.
Ensure all extracted or inferred information is complete and accurately reflects the document's content.
Do not omit any relevant details for vision and mission found in the document.
Note: If the vision or mission is found in the document, extract it exactly as it appears without making any changes.
"""
def get_dept_vision_mission_extraction_from_questionaiire():
return """
You are provided with an questionaiire response within the organization. Your role is to extract the vision of the organization and the goals/mission of each department from the document. Follow these guidelines:
If the vision and mission are clearly stated in the document:
Extract the vision of the organization exactly as stated, without modification.
Extract the goals/mission of each department exactly as provided in the document, ensuring no information is omitted.
If the vision and mission are not clearly stated:
Infer the vision and mission from the context of the document by analyzing explicit or implicit statements.
Vision: Identify the long-term aspirations or ideal future state of the organization.
Mission: Identify the organization's purpose, core functions, or primary objectives, including departmental goals where applicable.
Additional Instructions:
If multiple statements for vision or mission are found, include all relevant statements.
If vision and mission are entirely absent, return an empty list for the missing category.
Ensure all extracted or inferred information is complete and accurately reflects the respone's content.
Do not omit any relevant details for vision and mission found in the document.
"""