AI驱动的学术作业生成器
高级
这是一个Content Creation, Multimodal AI领域的自动化工作流,包含 17 个节点。主要使用 Set, Code, Wait, Telegram, GoogleDrive 等节点。 使用Google Gemini生成学术作业并通过Telegram/PDF交付
前置要求
- •Telegram Bot Token
- •Google Drive API 凭证
- •可能需要目标 API 的认证凭证
- •Google Sheets API 凭证
- •Google Gemini API Key
使用的节点 (17)
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
"id": "b0EWHpE3oRHtGdwh",
"meta": {
"instanceId": "8d0680c4eee75276f104fe2b253dd4a6fe12b529dee7ac6dcb1dda00b9540fc7",
"templateCredsSetupCompleted": true
},
"name": "AI 驱动的学术作业生成器",
"tags": [],
"nodes": [
{
"id": "18d05365-cf4e-454b-a954-5bf66809ff42",
"name": "Google Gemini 聊天模型6",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-1184,
960
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"id": "yo5RlAQn2qHTmBcD",
"name": "Google Gemini(PaLM) Api account 2"
}
},
"typeVersion": 1
},
{
"id": "27b705ce-5012-4a63-a82e-ee38bff55a16",
"name": "静态 HTML 构建器",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-1184,
800
],
"parameters": {
"text": "=# Academic Assignment HTML Generator Prompt\n\nCreate an HTML document for an academic assignment using the following template structure and formatting requirements:\n\n## Required Input Data (JSON Format):\n```json\n{\n \"Faculty\":{{ $json.Faculty }} ,\n \"Department\": {{ $json.Department }},\n \"Name\": {{ $json.Name }},\n \"Course\": {{ $json.Course }},\n \"Level\":{{ $json.Level }} ,\n \"Matric No\":{{ $json['Reg No'] }},\n \"Date\": {{ $json.Date }},\n \"Questions\":{{ $json.Question }} ,\n \"Answers\":{{ $json.Answer }} [\n {\n \"number\": 1,\n \"title\": \"Answer title\",\n \"content\": \"Detailed answer content with subsections\"\n }\n ]\n}\n```\n\n## HTML Structure Requirements:\n\n### 1. Document Setup:\n- Use DOCTYPE html with Times New Roman font\n- 12pt font size, double line spacing (2.0)\n- 1-inch margins on all sides\n\n### 2. Header Section:\n- Center-aligned faculty and department names\n- 14pt bold uppercase text\n- 25px bottom margin\n\n### 3. Student Information Section:\n- Left-aligned with 20px left padding\n- Bold uppercase labels for: Name, Course, Level, Matric No, Date\n- 6px bottom margin between fields\n\n### 4. Questions Section:\n- \"QUESTION:\" as bold uppercase title\n- Numbered ordered list with 20px left margin\n- 12pt font size for all questions\n\n### 5. Answers Section:\n- Each answer starts with bold number and title\n- Use hierarchical headings: Main Heading, Sub Heading\n- Bullet lists with custom bullet points (•)\n- Justified text paragraphs with 2.0 line height\n- 20px left margin for lists\n\n### 6. Reference Section:\n- \"REFERENCE:\" as bold uppercase title\n- Custom bullet list format\n- Justified text alignment\n- Academic citation format\n\n## CSS Styling Classes:\n```css\n.header { text-align: center; font-size: 14pt; font-weight: bold; text-transform: uppercase; }\n.student-info { margin: 20px 0; padding-left: 20px; }\n.field-label { font-weight: bold; text-transform: uppercase; }\n.question-title { font-weight: bold; text-transform: uppercase; }\n.answer-number { font-weight: bold; margin: 20px 0 10px 0; }\n.main-heading { font-weight: bold; margin: 15px 0 10px 0; }\n.sub-heading { font-weight: bold; margin: 12px 0 8px 0; }\n.content-paragraph { text-align: justify; margin-bottom: 10px; line-height: 2.0; }\n.bullet-list { list-style: none; margin-left: 20px; }\n.reference-list { list-style: none; text-align: justify; }\n```\n\n## Content Guidelines:\n\n### For Academic Answers:\n1. **Structure each answer with:**\n - Clear numbered title\n - Main topic overview\n - Detailed subsections with bold headings\n - Comprehensive explanations (200-300 words per subsection)\n - Academic references integrated throughout\n \n\n2. **Writing Style:**\n - Formal academic tone\n - Justified paragraphs\n - Technical terminology appropriate to the field\n - Logical flow between sections\n - Evidence-based explanations\n\n3. **Formatting Requirements:**\n - Use bullet points for lists of items/concepts\n - Bold headings for major sections\n - Consistent spacing between elements\n - Proper citation format in references\n - Remove \"```html\" and \"```\" from the output only output a html file\n\n## Template Variables:\nReplace these placeholders with actual data:\n- `{{ $json.Faculty }}` - Faculty name\n- `{{ $json.Department }}` - Department name \n- `{{ $json.Name }}` - Student name\n- `{{ $json.Course }}` - Course information\n- `{{ $json.Level }}` - Academic level\n- `{{ $json['Reg No'] }}` - Student ID\n- `{{ $json.Date }}` - Assignment date\n- `{{ $json.Question }}` - Question\n- `{{ $json.Answer }}` - Answer\n- `{{ $json.Reference }}` - Reference\n\n## Output Requirements:\nGenerate a complete HTML document that:\n1. Follows all styling specifications exactly\n2. Maintains academic formatting standards\n3. Includes comprehensive, well-researched content\n4. Uses proper academic references\n5. Ensures responsive layout and readability\n6. Maintains consistent typography throughout\n7. Remove \"```html\" and \"```\" from the output only output a html file \n\nThe final HTML should be production-ready for academic submission with professional appearance and scholarly content quality.",
"options": {
"systemMessage": "You are a helpful assistant. You must output a structured and well-designed HTML. Your output should follow this example (\"<!DOCTYPE html>\n<html>\n<head>\n<style>\n body { \n font-family: 'Times New Roman', serif; \n line-height: 2.0; \n margin: 1in; \n font-size: 12pt;\n }\n \n .header { \n text-align: center; \n margin-bottom: 25px; \n font-size: 14pt; \n font-weight: bold; \n text-transform: uppercase; \n line-height: 1.2;\n }\n \n .student-info { \n margin: 20px 0; \n padding-left: 20px;\n }\n \n .field { \n margin-bottom: 6px; \n font-size: 12pt; \n }\n \n .field-label { \n font-weight: bold; \n text-transform: uppercase; \n }\n \n .question-section {\n margin: 20px 0;\n }\n \n .question-title {\n font-size: 12pt;\n font-weight: bold;\n text-transform: uppercase;\n margin-bottom: 8px;\n }\n \n .question-list {\n margin-left: 20px;\n margin-bottom: 25px;\n }\n \n .question-list li {\n margin-bottom: 4px;\n font-size: 12pt;\n }\n \n .answer-section {\n margin-top: 25px;\n }\n \n .answer-number {\n font-size: 12pt;\n font-weight: bold;\n margin: 20px 0 10px 0;\n }\n \n .main-heading {\n font-size: 12pt;\n font-weight: bold;\n margin: 15px 0 10px 0;\n }\n \n .sub-heading {\n font-size: 12pt;\n font-weight: bold;\n margin: 12px 0 8px 0;\n }\n \n .bullet-list {\n margin: 8px 0 15px 20px;\n padding: 0;\n list-style: none;\n }\n \n .bullet-list li {\n margin-bottom: 2px;\n position: relative;\n }\n \n .bullet-list li:before {\n content: \"•\";\n position: absolute;\n left: -15px;\n }\n \n .content-paragraph {\n text-align: justify;\n margin-bottom: 10px;\n font-size: 12pt;\n line-height: 2.0;\n }\n \n .reference-section {\n margin-top: 30px;\n }\n \n .reference-title {\n font-size: 12pt;\n font-weight: bold;\n text-transform: uppercase;\n margin-bottom: 10px;\n }\n \n .reference-list {\n margin-left: 0;\n padding-left: 0;\n list-style: none;\n }\n \n .reference-list li {\n margin-bottom: 8px;\n text-align: justify;\n font-size: 12pt;\n position: relative;\n padding-left: 20px;\n }\n \n .reference-list li:before {\n content: \"• \";\n position: absolute;\n left: 0;\n }\n</style>\n</head>\n<body>\n \n <div class=\"header\">\n <div>{{ $json.Faculty || 'ENGINEERING' }}</div>\n <div>{{ $json.Department || 'INDUSTRIAL AND PRODUCTION ENGINEERING' }}</div>\n </div>\n \n <div class=\"student-info\">\n <div class=\"field\">\n <span class=\"field-label\">Name:</span> {{ $json.Name }}\n </div>\n <div class=\"field\">\n <span class=\"field-label\">Course:</span> {{ $json.Course }}\n </div>\n <div class=\"field\">\n <span class=\"field-label\">Level:</span> {{ $json.Level }}\n </div>\n <div class=\"field\">\n <span class=\"field-label\">Matric No:</span> {{ $json['Matric No'] || $json['Reg No'] }}\n </div>\n <div class=\"field\">\n <span class=\"field-label\">Date:</span> {{ $json.Date }}\n </div>\n \n <div class=\"question-section\">\n <div class=\"question-title\">Question:</div>\n <ol class=\"question-list\">\n <li>State and explain briefly the various types of mathematical models</li>\n <li>Highlight the benefits of operation research (OR)</li>\n <li>Discuss the various applications of OR</li>\n <li>Enumerate and discuss briefly the classical aspect of science as acknowledged by OR</li>\n </ol>\n </div>\n </div>\n \n <div class=\"answer-section\">\n <div>\n <div class=\"answer-number\">1. State and explain briefly the various types of mathematical models</div>\n \n <div class=\"main-heading\">Types of mathematical models:</div>\n <ul class=\"bullet-list\">\n <li>Descriptive Models</li>\n <li>Predictive Models</li>\n <li>Prescriptive Models</li>\n <li>Deterministic Models</li>\n <li>Stochastic Models</li>\n <li>Static Models</li>\n <li>Dynamic Models</li>\n </ul>\n \n <div class=\"sub-heading\">Descriptive Models:</div>\n <div class=\"content-paragraph\">These models aim to describe a phenomenon or system without necessarily explaining its underlying causes or predicting future outcomes. Their purpose is to represent the current state or behavior based on existing data. For instance, a model depicting historical population growth trends illustrates current patterns. They summarize observations and help in understanding patterns, often serving as a foundation for more complex modeling efforts (Hillier & Lieberman, 2021). The output is typically a summary or visualization, allowing clearer insights into what has happened or is currently happening within the system. They are fundamental in fields like epidemiology, where models describe disease spread without forecasting future trajectories or proposing interventions.</div>\n \n <div class=\"sub-heading\">Predictive Models:</div>\n <div class=\"content-paragraph\">Unlike descriptive models, predictive models are designed to forecast future outcomes or states of a system based on historical data and identified relationships. They utilize statistical techniques or machine learning algorithms to identify patterns and extrapolate them. A weather forecasting model predicting rainfall amounts for the next week is a classic example. These models are crucial in various domains, from financial markets predicting stock prices to healthcare predicting disease outbreaks (Winston & Goldberg, 2014). The accuracy largely depends on the quality and relevance of input data and the robustness of underlying assumptions. They are instrumental for planning and risk assessment, allowing decision-makers to anticipate potential future scenarios.</div>\n \n <div class=\"sub-heading\">Prescriptive Models:</div>\n <div class=\"content-paragraph\">Prescriptive models go beyond describing or predicting; they recommend actions or decisions that will lead to an optimal outcome. They incorporate optimization techniques to suggest the best course of action under given constraints and objectives. For example, a supply chain optimization model determining the most efficient routing for delivery trucks to minimize fuel costs is a prescriptive model. These models are widely used in operations research, aiming to improve efficiency, reduce costs, or maximize profits (Taha, 2017). They often involve complex mathematical programming techniques like linear programming. The unique value of prescriptive models lies in their ability to provide actionable insights, guiding decision-making in complex environments.</div>\n \n <div class=\"sub-heading\">Deterministic Models:</div>\n <div class=\"content-paragraph\">In deterministic models, all input data and relationships are assumed to be known with certainty. Outcomes are entirely predictable given the inputs, meaning running the model multiple times with the same inputs will always yield the same results. A simple model calculating the total cost of producing units, where unit cost and production volume are fixed, is a deterministic model. These models are simpler to construct and analyze and are suitable when variability is negligible (Anderson et al., 2018). While they may not perfectly represent real-world complexities, they offer a good starting point for analysis and are effective for systems where randomness plays a minor role.</div>\n \n <div class=\"sub-heading\">Stochastic Models:</div>\n <div class=\"content-paragraph\">Conversely, stochastic models incorporate elements of randomness or uncertainty. They acknowledge that some inputs or parameters may vary unpredictably, often represented by probability distributions. Simulating customer wait times in a queuing system, where arrival rates and service times are random variables, would require a stochastic model. These models are more complex to analyze, often relying on simulation or probabilistic methods to understand the range of possible outcomes (Winston & Goldberg, 2014). They provide a more realistic representation of systems where variability is significant, such as financial modeling, risk assessment, and inventory management.</div>\n \n <div class=\"sub-heading\">Static Models:</div>\n <div class=\"content-paragraph\">Static models represent a system at a single point in time, without considering changes over time. They capture a snapshot of the system's state and relationships. An example would be a model calculating the optimal product mix for a factory for a single production period, assuming all inputs and outputs are constant during that period. These models are suitable for problems where time-dependent changes are not critical or where decisions are made at discrete intervals without cumulative effect.</div>\n \n <div class=\"sub-heading\">Dynamic Models:</div>\n <div class=\"content-paragraph\">Dynamic models, in contrast, consider how a system evolves over time. They incorporate time as a crucial variable, allowing for the analysis of system behavior and interactions across different periods. A model simulating the trajectory of a rocket over several minutes, accounting for changing forces and fuel consumption, is a dynamic model. These models are essential for understanding processes that are continuous or exhibit significant changes over time, such as economic forecasting, population dynamics, and control systems (Hillier & Lieberman, 2021). They often involve differential or difference equations to capture temporal relationships.</div>\n \n <div class=\"answer-number\">2. Highlight the benefits of operation research (OR)</div>\n \n <div class=\"main-heading\">Benefits of Operation Research (OR):</div>\n <ul class=\"bullet-list\">\n <li>Improved Decision Making</li>\n <li>Enhanced Efficiency and Productivity</li>\n <li>Cost Reduction</li>\n <li>Better Resource Allocation</li>\n <li>Effective Risk Management</li>\n <li>Strategic Planning Support</li>\n <li>Increased Competitiveness</li>\n </ul>\n \n <div class=\"sub-heading\">Improved Decision Making:</div>\n <div class=\"content-paragraph\">One of the foremost benefits of Operation Research (OR) is its ability to significantly enhance the quality of decision-making. OR employs scientific methods and mathematical models to analyze complex problems, providing decision-makers with objective, data-driven insights rather than relying solely on intuition or experience (Taha, 2017). By systematically evaluating alternatives and quantifying their potential outcomes, OR helps in identifying the most optimal course of action. This is particularly valuable in situations with numerous variables and conflicting objectives, where human cognitive limitations might hinder effective analysis. For example, in production planning, OR can determine optimal production schedules that meet demand while minimizing costs, leading to more informed and robust decisions.</div>\n \n <div class=\"sub-heading\">Enhanced Efficiency and Productivity:</div>\n <div class=\"content-paragraph\">OR methodologies are inherently designed to optimize processes, leading directly to enhanced efficiency and productivity within organizations. By identifying bottlenecks, streamlining workflows, and optimizing resource utilization, OR helps organizations achieve more with existing resources. Techniques such as queuing theory can optimize service systems to reduce customer wait times, while scheduling algorithms can improve the utilization of machines or personnel (Winston & Goldberg, 2014). This leads to smoother operations, faster throughput, and ultimately, higher overall productivity. In manufacturing, OR models can optimize assembly line layouts and material flow, significantly reducing idle time and increasing output.</div>\n \n <div class=\"sub-heading\">Cost Reduction:</div>\n <div class=\"content-paragraph\">A direct consequence of improved efficiency and optimized resource allocation is often substantial cost reduction. OR helps identify areas where costs can be minimized without compromising quality or service levels. This can involve optimizing inventory levels to reduce holding costs, designing efficient transportation routes to lower fuel expenses, or determining optimal staffing levels to minimize labor costs (Hillier & Lieberman, 2021). For instance, in logistics, an OR model might find the most cost-effective way to distribute products across a large geographical area, taking into account transportation costs, warehouse locations, and delivery times. Such cost savings directly contribute to an organization's profitability and financial health.</div>\n \n <div class=\"sub-heading\">Better Resource Allocation:</div>\n <div class=\"content-paragraph\">Organizations typically operate with finite resources, including capital, labor, materials, and time. OR provides powerful tools to allocate these limited resources in the most effective manner to achieve organizational goals. Linear programming, for instance, is a common OR technique used to determine the optimal allocation of resources to various activities or products to maximize profit or minimize cost under given constraints. This ensures that no resource is underutilized or overstretched, leading to optimal output (Anderson et al., 2018). In healthcare, OR can optimize the allocation of hospital beds, medical staff, and equipment to best serve patient needs, improving healthcare delivery.</div>\n \n <div class=\"sub-heading\">Effective Risk Management:</div>\n <div class=\"content-paragraph\">Many real-world problems involve uncertainty and risk. OR provides tools, such as simulation and decision analysis, to quantify and manage these risks. By modeling various scenarios and their probabilities, OR helps decision-makers understand the potential impact of different choices under uncertain conditions. This enables organizations to develop contingency plans and make more resilient decisions (Taha, 2017). For example, in financial portfolio management, OR models can assess the risk associated with different investment strategies, helping investors make choices that align with their risk tolerance. This proactive approach to risk ensures greater stability and predictability.</div>\n \n <div class=\"sub-heading\">Strategic Planning Support:</div>\n <div class=\"content-paragraph\">OR is not just about optimizing day-to-day operations; it also plays a crucial role in long-term strategic planning. By analyzing complex market dynamics, competitive landscapes, and future trends, OR models can help organizations formulate robust strategies. This includes decisions related to facility location, capacity expansion, new product development, and market entry strategies (Hillier & Lieberman, 2021). For example, an OR model could help a company decide the optimal location for a new distribution center by considering factors like transportation costs, labor availability, and proximity to customers. This strategic insight ensures sustainable growth and competitive advantage.</div>\n \n <div class=\"sub-heading\">Increased Competitiveness:</div>\n <div class=\"content-paragraph\">By enabling better decision-making, increasing efficiency, reducing costs, and optimizing resource allocation, OR ultimately leads to increased competitiveness. Organizations that leverage OR can respond more quickly and effectively to market changes, operate with leaner structures, and offer better products or services at lower prices. This superior operational capability translates into a stronger market position and the ability to outperform rivals (Winston & Goldberg, 2014). In a dynamic global economy, the ability to make data-driven, optimal decisions is a significant competitive differentiator.</div>\n \n <div class=\"answer-number\">3. Discuss the various applications of OR</div>\n \n <div class=\"content-paragraph\">Operations Research (OR) is a versatile discipline with extensive applications across virtually every sector, helping organizations of all sizes make better, more informed decisions and optimize their processes. Its quantitative approach to problem-solving makes it invaluable in complex scenarios where traditional methods fall short.</div>\n \n <div class=\"content-paragraph\">One prominent area of application is in Logistics and Supply Chain Management. OR models are widely used to optimize transportation networks, including vehicle routing, scheduling, and facility location. For example, the Traveling Salesperson Problem (TSP) is a classic OR problem fundamental to designing efficient delivery routes, minimizing fuel consumption, and reducing delivery times for companies like FedEx or Amazon (Taha, 2017). Inventory management is another critical aspect, where OR models help determine optimal stock levels to balance holding costs against potential stock-out costs, ensuring products are available when needed without excessive inventory. Furthermore, OR aids in supply chain design, optimizing the flow of goods from raw materials to end-consumers, enhancing resilience and responsiveness.</div>\n \n <div class=\"content-paragraph\">In Manufacturing and Production, OR plays a pivotal role in maximizing output and efficiency. Production planning and scheduling are key areas, where OR models determine the optimal sequence of tasks, machine assignments, and workforce allocation to meet production targets while minimizing idle time, setup costs, and overtime (Hillier & Lieberman, 2021). Capacity planning, factory layout design, and quality control are also significantly improved through OR techniques. For instance, linear programming can be used to determine the optimal product mix given resource constraints, ensuring maximum profit for manufacturers. By optimizing production processes, OR helps companies reduce waste, improve product quality, and accelerate time-to-market.</div>\n \n <div class=\"content-paragraph\">Healthcare has increasingly adopted OR to address its complex challenges, from patient flow management to resource allocation. OR models are used to optimize hospital bed assignments, surgical scheduling to improve operating room utilization, and emergency department patient triage to reduce wait times (Winston & Goldberg, 2014). In public health, OR assists in vaccination program planning, disease outbreak modeling, and resource distribution during crises. For example, OR can help determine optimal locations for clinics or pharmacies to serve a population efficiently. Furthermore, it contributes to optimizing blood bank inventory and organ transplantation logistics, saving lives and improving public health outcomes.</div>\n \n <div class=\"content-paragraph\">The Financial Services sector heavily relies on OR for risk assessment, portfolio optimization, and fraud detection. OR models help in constructing diversified investment portfolios that balance risk and return according to an investor's preferences (Anderson et al., 2018). Credit scoring models use OR techniques to assess the creditworthiness of loan applicants, while simulation models are employed to analyze market volatility and evaluate complex financial derivatives. Moreover, OR is crucial in asset liability management, ensuring financial institutions maintain liquidity and solvency. These applications provide banks and investment firms with a competitive edge by enabling more informed and robust financial decisions.</div>\n \n <div class=\"content-paragraph\">Beyond these core areas, OR finds applications in numerous other fields. In Energy, it optimizes power generation scheduling, grid management, and renewable energy integration. In Telecommunications, it helps design network layouts, optimize call routing, and manage bandwidth allocation. For Government and Public Policy, OR supports urban planning, emergency response system design, traffic management, and resource allocation for public services (Taha, 2017). In Marketing, it assists in customer segmentation, pricing strategies, and advertising campaign optimization. Even in Sports, OR is used for team selection, game strategy, and scheduling tournaments. The common thread across these diverse applications is the use of structured analytical methods to solve complex problems and make optimal decisions.</div>\n \n <div class=\"answer-number\">4. Enumerate and discuss briefly the classical aspect of science as acknowledged by OR</div>\n \n <div class=\"content-paragraph\">The field of Operations Research (OR) is often described as a scientific approach to decision-making, deeply rooted in the classical aspects of scientific methodology. These classical aspects provide the foundational principles upon which OR builds its analytical frameworks and problem-solving techniques. They emphasize a systematic, objective, and empirical approach to understanding and improving systems.</div>\n \n <div class=\"main-heading\">Classical aspects of science acknowledged by OR:</div>\n <ul class=\"bullet-list\">\n <li>Observation and Problem Definition</li>\n <li>Hypothesis Formulation and Model Construction</li>\n <li>Experimentation and Data Collection</li>\n <li>Analysis and Interpretation of Results</li>\n <li>Verification and Validation</li>\n <li>Implementation and Control</li>\n </ul>\n \n <div class=\"sub-heading\">Observation and Problem Definition:</div>\n <div class=\"content-paragraph\">The scientific method typically begins with careful observation of a phenomenon and the identification of a problem that requires a solution. In OR, this translates to thoroughly understanding the real-world situation or system being investigated. This phase involves extensive data gathering, discussions with stakeholders, and detailed analysis of operational procedures to accurately define the problem, identify its boundaries, objectives, and constraints (Hillier & Lieberman, 2021). A clear and precise problem definition is paramount, as a poorly defined problem will inevitably lead to an ineffective solution, regardless of the sophistication of the subsequent analysis. This initial step ensures that the OR effort addresses the right question.</div>\n \n <div class=\"sub-heading\">Hypothesis Formulation and Model Construction:</div>\n <div class=\"content-paragraph\">Once a problem is defined, the scientific process moves to formulating hypotheses—testable explanations or proposed solutions. In OR, this is analogous to constructing a mathematical model that represents the real-world system. This model is essentially a simplified, abstract representation of the system, capturing the essential relationships between its variables (Taha, 2017). For instance, a linear programming model might hypothesize that a certain allocation of resources will maximize profit. This step involves selecting appropriate mathematical techniques (e.g., equations, inequalities, algorithms) and defining objective functions and constraints based on the problem definition and observed data.</div>\n \n <div class=\"sub-heading\">Experimentation and Data Collection:</div>\n <div class=\"content-paragraph\">Traditional science often involves conducting experiments to test hypotheses and collect empirical data. In OR, \"experimentation\" often takes the form of collecting relevant data from the actual system, or in some cases, running simulations or pilot programs based on the constructed model. This data is critical for parameterizing the model and later validating its accuracy. The data must be reliable, accurate, and comprehensive to ensure the model's fidelity to the real-world system (Winston & Goldberg, 2014). For example, historical sales data might be collected to predict future demand, or operational logs to determine process times.</div>\n \n <div class=\"sub-heading\">Analysis and Interpretation of Results:</div>\n <div class=\"content-paragraph\">After data collection, the scientific method requires analyzing the collected data to interpret its meaning and draw conclusions regarding the hypotheses. In OR, this involves solving the mathematical model (e.g., using optimization algorithms, simulation software) to generate results. These results are then rigorously analyzed and interpreted in the context of the original problem. This stage involves understanding the implications of the model's output, identifying optimal solutions or patterns, and deriving actionable insights (Anderson et al., 2018). It's not enough to simply produce a number; the OR analyst must explain what that number means for the real-world system.</div>\n \n <div class=\"sub-heading\">Verification and Validation:</div>\n <div class=\"content-paragraph\">A crucial step in the scientific method is verifying that the experiment was conducted correctly and validating that the results are generalizable and accurate. In OR, verification ensures that the model correctly represents the problem as conceptualized (i.e., the model is built right), while validation checks if the model accurately predicts the real-world system's behavior (i.e., the right model is built for the problem). This often involves comparing model outputs with historical data, expert opinion, or real-world observations. Iterative refinement of the model is common during this stage until it adequately represents the system and provides reliable predictions or recommendations (Hillier & Lieberman, 2021).</div>\n \n <div class=\"sub-heading\">Implementation and Control:</div>\n <div class=\"content-paragraph\">The final classical aspect of science is applying the derived knowledge and controlling the process. In OR, this means putting the model's recommendations into practice within the real system. This stage involves significant change management, stakeholder engagement, and often requires adjustments to organizational processes and structures. Once implemented, continuous monitoring and control are essential to ensure that the solution remains effective as conditions change (Taha, 2017). This ongoing feedback loop allows for recalibration of the model or adjustments to the implemented solution, ensuring its sustained benefits and adapting to dynamic environments.</div>\n </div>\n \n <div class=\"reference-section\">\n <div class=\"reference-title\">Reference:</div>\n <ul class=\"reference-list\">\n <li>Anderson, D. R., Sweeney, D. J., Williams, T. A., Camm, J. D., & Cochran, J. J. (2018). An introduction to management science: Quantitative approaches to decision making. Cengage Learning.</li>\n <li>Hillier, F. S., & Lieberman, G. J. (2021). Introduction to operations research (11th ed.). McGraw-Hill Education.</li>\n <li>Taha, H. A. (2017). Operations research: An introduction (10th ed.). Pearson.</li>\n <li>Winston, W. L., & Goldberg, J. B. (2014). Operations research: Applications and algorithms (4th ed.). Cengage Learning.</li>\n </ul>\n </div>\n </div>\n \n</body>\n</html>\")\n\nmake sure you to trim: \"```html\" and \"```\" from your output"
},
"promptType": "define"
},
"typeVersion": 2.2
},
{
"id": "c577ce90-3a28-4246-ab21-230a82262691",
"name": "学生查询接收机器人",
"type": "n8n-nodes-base.telegramTrigger",
"position": [
-3296,
800
],
"webhookId": "29442825-ffb8-4a8f-9d8e-fc1f193b0563",
"parameters": {
"updates": [
"message"
],
"additionalFields": {
"chatIds": "1026132948"
}
},
"credentials": {
"telegramApi": {
"id": "ftC5LfvbaRGuY26x",
"name": "Telegram account 2"
}
},
"notesInFlow": false,
"typeVersion": 1.2
},
{
"id": "47ff42b4-615f-4648-8eba-f4520c1c6299",
"name": "学生作业自动撰写器",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-2768,
800
],
"parameters": {
"text": "=Here’s your **final combined, single-block prompt** — clean, consistent, and ready to paste into n8n without breaks:\n\n---\n\nYou are an expert academic research assistant. Based on the provided student details and question, generate a comprehensive university-level assignment in valid JSON format that strictly follows the instructions below. The work must be plagiarism-free, original, and professionally formatted for academic standards.\n\nMessage: {{ $json.Name }} {{ $json.Faculty }} {{ $json.Department }} {{ $json.Level }} {{ $json.Course }} {{ $json['Reg number'] }} {{ $json.Question }} {{ $json.Date }}\n\nYou must output your response as valid JSON with the following structure:\n\n```json\n{\n \"Name\": \"{{ $json.Name }}[Student's full name - if not provided, use 'Student Name']\",\n \"Faculty\": \"{{ $json.Faculty }}[Faculty name - if not provided, use 'Faculty Name']\",\n \"Department\": \"{{ $json.Department }}[Department name - if not provided, use 'Department Name']\",\n \"Level\": \"{{ $json.Level }}[Academic level (e.g., 100L, 200L, etc.) - if not provided, use 'Academic Level']\",\n \"Course\": \"{{ $json.Course }}[Course code and title - if not provided, use 'Course Code & Title']\",\n \"Date\": \"{{ $json.Date }}[Assignment date - if not provided, use current date]\",\n \"Reg_number\": \"{{ $json['Reg number'] }}[Registration number - if not provided, use 'Registration Number']\",\n \"Questions\": \"{{ $json.Question }}[List all questions/topics exactly as provided, each clearly indented or bullet-listed]\",\n \"Answer\": \"[Comprehensive answers for each question following all rules below]\",\n \"References\": \"[List all sources cited in the answers in proper APA format, arranged alphabetically by author's surname]\"\n}\n```\n\nRules for the “Answer” field:\n\n1. Start with the question as a bold headline before its answer.\n2. If the question contains “list”, “highlight”, or “state”, first bullet-list all key points before discussing each one.\n3. State each point before discussion using the format:.\n4. Each question’s answer must be exactly 500 words and should start in a new paragraph.\n5. Use formal academic language, clear paragraph indentation, and smooth logical flow.\n6. All content must be 100% original. Use real APA in-text citations (Author, Year) from authentic, credible sources unless a specific source is provided.\n7. If {{ $json.Name }} changes, the content must significantly differ (examples, explanations, data) — not just rewording. Avoid repeating the same sentences, examples, or structure across different students.\n8. Use bullet points for lists and indent paragraphs like standard academic essays.\n9. Start each answer on a new paragraph.\n10. APA in-text citations only within answers — do not include full references in the answer.\n11. If any input data is missing, use the defined placeholders.\n\nRules for the “References” field:\n\n1. Only list sources actually cited in the answer.\n2. Use APA format with full bibliographic details.\n3. Arrange alphabetically by author’s surname.\n4. Do not duplicate references, even if used multiple times.\n\nStrict Compliance:\n\n* Validate the JSON output before returning it.\n* Follow all rules exactly without omission.\n* Ensure grammar, spelling, and punctuation are correct.\n* Every sentence must begin with a capital letter.\n* The text must read like it was written by a skilled human academic writer.\n* Do not duplicate references, even if used multiple times.\n*If the question contains “list”, “highlight”, or “state”, first bullet-list all key points before discussing each one\n* limit reference to maximum of 10\n\n\n---",
"options": {},
"promptType": "define",
"needsFallback": true,
"hasOutputParser": true
},
"typeVersion": 2.2
},
{
"id": "01ece2d4-cdca-4f50-9ea8-87d9dc99a7b8",
"name": "生成器模型",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-2928,
1024
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"id": "HiZT6lYHbHYeUyJw",
"name": "Google Gemini(PaLM) Api account"
}
},
"typeVersion": 1
},
{
"id": "7bc993f1-d86b-4cd8-a625-e4deb6b6553f",
"name": "备用模型生成器",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-2752,
1040
],
"parameters": {
"options": {},
"modelName": "models/gemma-3-27b-it"
},
"credentials": {
"googlePalmApi": {
"id": "HiZT6lYHbHYeUyJw",
"name": "Google Gemini(PaLM) Api account"
}
},
"typeVersion": 1
},
{
"id": "acb10548-63e5-499d-8c5b-f4ee81ccb8f8",
"name": "结构化输出解析器处理器",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
-2368,
1232
],
"parameters": {
"options": {},
"modelName": "models/gemma-3-27b-it"
},
"credentials": {
"googlePalmApi": {
"id": "yo5RlAQn2qHTmBcD",
"name": "Google Gemini(PaLM) Api account 2"
}
},
"typeVersion": 1
},
{
"id": "4d1687d1-dde4-46ee-b519-2f4878756500",
"name": "多表:您可以连接多个表以实现有组织的数据结构",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
-2544,
1040
],
"parameters": {
"prompt": "Instructions:\n--------------\n{instructions}\n--------------\nCompletion:\n--------------\n{completion}\n--------------\n\nAbove, the Completion did not satisfy the constraints given in the Instructions.\nError:\n--------------\n{error}\n--------------\n\nPlease try again. Please only respond with an answer that satisfies the constraints laid out in the Instructions.",
"autoFix": true,
"jsonSchemaExample": "{\n \"Name\": \"={{ $json.output_json.Name || $json.output_json.Name === '' ? $throwError('Missing required field: Name') : $json.output_json.Name }}\",\n \"Faculty\": \"={{ $json.output_json.Faculty || $json.output_json.Faculty === '' ? $throwError('Missing required field: Faculty') : $json.output_json.Faculty }}\",\n \"Department\": \"={{ $json.output_json.Department || $json.output_json.Department === '' ? $throwError('Missing required field: Department') : $json.output_json.Department }}\",\n \"Level\": \"={{ $json.output_json.Level || $json.output_json.Level === '' ? $throwError('Missing required field: Level') : $json.output_json.Level }}\",\n \"Course\": \"={{ $json.output_json.Course || $json.output_json.Course === '' ? $throwError('Missing required field: Course') : $json.output_json.Course }}\",\n \"Date\": \"={{ $json.output_json.Date || $json.output_json.Date === '' ? $now.format('yyyy-MM-dd') : $json.output_json.Date }}\",\n \"Matric_No\": \"={{ $json.output_json.Reg_number || $json.output_json.Reg_number === '' ? $throwError('Missing required field: Reg_number') : $json.output_json.Reg_number }}\",\n \"Questions\": \"={{ $json.output_json.Questions || $json.output_json.Questions === '' ? $throwError('Missing required field: Questions') : $json.output_json.Questions }}\",\n \"Answers\": \"={{ $json.output_json.Answer || $json.output_json.Answer === '' ? $throwError('Missing required field: Answer') : $json.output_json.Answer }}\",\n \"References\": \"={{ $json.output_json.References || $json.output_json.References === '' ? $throwError('Missing required field: References') : $json.output_json.References }}\"\n}\n",
"customizeRetryPrompt": true
},
"typeVersion": 1.3
},
{
"id": "f65a7c91-d660-4722-a051-7a04a38c9ec0",
"name": "等待",
"type": "n8n-nodes-base.wait",
"position": [
-1824,
816
],
"webhookId": "cd9bc728-7d7a-4b0e-bfba-157b903299ac",
"parameters": {
"amount": 2
},
"typeVersion": 1.1
},
{
"id": "e3f0d1bd-31d3-4fd1-867e-2097f778482f",
"name": "结构化数据解析器",
"type": "n8n-nodes-base.code",
"position": [
-3056,
816
],
"parameters": {
"jsCode": "const text = String($input.first().json.message.text ?? ''); // This line is still good\n\nconst data = {};\n\n// Use regular expressions to extract each field\ndata.Name = String(text.match(/Name:\\s*(.*)/)?.[1] ?? '').trim() || '';\ndata.Faculty = String(text.match(/Faculty:\\s*(.*)/)?.[1] ?? '').trim() || '';\ndata.Department = String(text.match(/Department:\\s*(.*)/)?.[1] ?? '').trim() || '';\ndata.Level = String(text.match(/Level:\\s*(.*)/)?.[1] ?? '').trim() || '';\ndata.Course = String(text.match(/Course:\\s*(.*)/)?.[1] ?? '').trim() || '';\ndata['Reg number'] = String(text.match(/Reg number:\\s*(.*)/)?.[1] ?? '').trim() || '';\n// --- Change the date to use the current date ---\nconst today = new Date();\nconst formattedDate = today.getFullYear() + '-' +\n (today.getMonth() + 1).toString().padStart(2, '0') + '-' +\n today.getDate().toString().padStart(2, '0');\ndata.Date = formattedDate;\ndata.Question = String(text.match(/Question:\\s*(.*)/s)?.[1] ?? '').trim() || '';\ndata.Answer = String(text.match(/Answer:\\s*(.*)/s)?.[1] ?? '').trim() || '';\n\nreturn [{ json: data }];"
},
"typeVersion": 2
},
{
"id": "5f350d97-ebac-4b97-ac4d-a07c2ecac4e8",
"name": "HTTP 请求",
"type": "n8n-nodes-base.httpRequest",
"position": [
-848,
800
],
"parameters": {
"url": "https://api.pdfcrowd.com/convert/24.04",
"method": "POST",
"options": {
"response": {
"response": {
"responseFormat": "file",
"outputPropertyName": "={{ $('Long Essay Record Sheet').item.json.Name }}"
}
}
},
"sendBody": true,
"contentType": "form-urlencoded",
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "content_viewport_width",
"value": "balanced"
},
{
"name": "text",
"value": "={{ $json.output }}"
},
{
"name": "output_name",
"value": "={{ $('Long Essay Record Sheet').item.json.Name }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "authorization",
"value": "Basic U2hpZWxkbjhuOmY0N2I5MDg2ZDk1ZjFkY2U3N2VlNmZmNWNjMjkxYzJi"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "915c5f84-ddfc-4cb3-8cfe-05ada749144d",
"name": "上传文件",
"type": "n8n-nodes-base.googleDrive",
"position": [
-608,
800
],
"parameters": {
"name": "={{ $('Long Essay Record Sheet').item.json.Name }}",
"driveId": {
"__rl": true,
"mode": "list",
"value": "My Drive"
},
"options": {},
"folderId": {
"__rl": true,
"mode": "list",
"value": "19NcIfmmdjN6VRkl9TxoqWMflm-2A3Y9y",
"cachedResultUrl": "https://drive.google.com/drive/folders/19NcIfmmdjN6VRkl9TxoqWMflm-2A3Y9y",
"cachedResultName": "Long Essay"
},
"inputDataFieldName": "=Nicholas Ahuruezenma Chikadibia"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "sAUajRPHvH2exSmb",
"name": "Google Drive account"
}
},
"typeVersion": 3
},
{
"id": "920cfd28-2698-4880-8206-2169e23fadd3",
"name": "发送短信",
"type": "n8n-nodes-base.telegram",
"position": [
-432,
800
],
"webhookId": "e9ddcc0f-3d45-4c5e-94a6-8b583ca2253e",
"parameters": {
"text": "={{ $json.webViewLink }}",
"chatId": "1026132948",
"additionalFields": {
"appendAttribution": false,
"disable_notification": false
}
},
"credentials": {
"telegramApi": {
"id": "ftC5LfvbaRGuY26x",
"name": "Telegram account 2"
}
},
"notesInFlow": true,
"retryOnFail": true,
"typeVersion": 1.2,
"alwaysOutputData": true
},
{
"id": "ebc7aa46-bd02-4bc2-acaf-4ea74aa2af5e",
"name": "错误处理器",
"type": "n8n-nodes-base.code",
"position": [
-2096,
800
],
"parameters": {
"jsCode": "// This handler is designed to fix the \"text.trim is not a function\" error.\n// It checks if the item's 'text' property is a string before trimming.\n// If it's not a string (e.g., null, a number, or an object), it converts it.\n\n// Get the item that caused the error\nconst errorItem = $input.item;\n\n// Assume the problematic key is named 'text'. You may need to change this!\nconst problematicKey = 'text';\n\n// Get the value from the item\nlet valueToFix = errorItem.json[problematicKey];\n\n// Check if the value is not a string\n// This is the core of the fix!\nif (typeof valueToFix !== 'string') {\n console.warn(`Value for key '${problematicKey}' is not a string. Type: ${typeof valueToFix}. Converting to string.`);\n // Convert the value to a string to prevent the error\n valueToFix = String(valueToFix);\n}\n\n// Now that we're sure it's a string, we can safely trim it.\nconst correctedValue = valueToFix.trim();\n\n// Put the corrected value back into the item\nerrorItem.json[problematicKey] = correctedValue;\n\n// Log the successful correction\nconsole.log(`Successfully fixed and trimmed '${problematicKey}' for item:`, errorItem.json.Name);\n\n// Output the corrected item to the 'Success' output\nreturn [{ json: errorItem.json }];\n"
},
"typeVersion": 2
},
{
"id": "90f1a2cc-6e84-4da0-9ba5-a1d94102c6a8",
"name": "便签1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-3952,
-1616
],
"parameters": {
"color": 5,
"width": 2112,
"height": 3728,
"content": "# AI 驱动的学术作业生成器"
},
"typeVersion": 1
},
{
"id": "96e057a8-ecd9-4b12-b098-1136c0cadf4d",
"name": "编辑字段",
"type": "n8n-nodes-base.set",
"position": [
-1568,
800
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "a368a8ae-4901-4f9c-81e9-13bced66199c",
"name": "output.Faculty",
"type": "string",
"value": "={{ $json.output.Faculty }}"
},
{
"id": "d5af6a53-50b7-4137-b9f8-b8d6d745fc43",
"name": "output.Department",
"type": "string",
"value": "={{ $json.output.Department }}"
},
{
"id": "82e332ce-68e5-4823-95f2-5e4008eee3be",
"name": "output.Name",
"type": "string",
"value": "={{ $json.output.Name }}"
},
{
"id": "18b2cda0-410c-4a77-b48b-bd6414b837b8",
"name": "output.Matric_No",
"type": "string",
"value": "={{ $json.output.Matric_No }}"
},
{
"id": "f8741f4d-cd3f-4eac-912b-28cce1820c35",
"name": "output.Level",
"type": "string",
"value": "={{ $json.output.Level }}"
},
{
"id": "dd22c755-9ded-4677-a4ec-34726fa5d0e6",
"name": "output.Course",
"type": "string",
"value": "={{ $json.output.Course }}"
},
{
"id": "9798a46e-ef1b-4304-87d6-4c6b98f1035d",
"name": "output.Date",
"type": "string",
"value": "={{ $json.output.Date }}"
},
{
"id": "5ad70b94-e782-47c6-b338-8d8e197cd21b",
"name": "output.Questions",
"type": "string",
"value": "={{ $json.output.Questions }}"
},
{
"id": "9d0ef742-958c-4227-afe7-05d996c07914",
"name": "output.Answers",
"type": "string",
"value": "={{ $json.output.Answers }}"
},
{
"id": "e5e2513e-a08f-4444-a9dd-41cab32f70f7",
"name": "output.References",
"type": "string",
"value": "={{ $json.output.References }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "070decb1-85ea-4e49-9427-3ca28e15d2d5",
"name": "长论文记录表",
"type": "n8n-nodes-base.googleSheets",
"position": [
-1376,
800
],
"parameters": {
"columns": {
"value": {
"Date": "={{ $json.output.Date }}",
"Name": "={{ $json.output.Name }}",
"Level": "={{ $json.output.Level }}",
"Answer": "={{ $json.output.Answers }}",
"Course": "={{ $json.output.Course }}",
"Reg No": "={{ $json.output.Matric_No }}",
"Faculty": "={{ $json.output.Faculty }}",
"Question": "={{ $json.output.Questions }}",
"Reference": "={{ $json.output.References }}",
"Department": "={{ $json.output.Department }}"
},
"schema": [
{
"id": "Name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Faculty",
"type": "string",
"display": true,
"required": false,
"displayName": "Faculty",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Department",
"type": "string",
"display": true,
"required": false,
"displayName": "Department",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Level",
"type": "string",
"display": true,
"required": false,
"displayName": "Level",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Course",
"type": "string",
"display": true,
"required": false,
"displayName": "Course",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Date",
"type": "string",
"display": true,
"required": false,
"displayName": "Date",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Reg No",
"type": "string",
"display": true,
"required": false,
"displayName": "Reg No",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Question",
"type": "string",
"display": true,
"required": false,
"displayName": "Question",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Answer",
"type": "string",
"display": true,
"required": false,
"displayName": "Answer",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Reference",
"type": "string",
"display": true,
"required": false,
"displayName": "Reference",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"Name"
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "appendOrUpdate",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/12DdWyAcInPhwfvnKepg0t0vbDpD1u37vl6DJd0yJkWw/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "12DdWyAcInPhwfvnKepg0t0vbDpD1u37vl6DJd0yJkWw",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/12DdWyAcInPhwfvnKepg0t0vbDpD1u37vl6DJd0yJkWw/edit?usp=drivesdk",
"cachedResultName": "Nipco"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "S19zSb8SkObHmqg0",
"name": "Google Sheets account"
}
},
"typeVersion": 4.6
}
],
"active": true,
"pinData": {
"Student Query Intake Bot": [
{
"json": {
"message": {
"chat": {
"id": 1026132948,
"type": "private",
"username": "Davidgaso1",
"last_name": "Galoon #500🌱SEED",
"first_name": "Flash ~"
},
"date": 1754546971,
"from": {
"id": 1026132948,
"is_bot": false,
"username": "Davidgaso1",
"last_name": "Galoon #500🌱SEED",
"first_name": "Flash ~",
"language_code": "en"
},
"text": "Name: Nicholas Ahuruezenma Chikadibia \nFaculty: engineering\nDepartment: industrial And production engineering \nLevel: 100l\nCourse: IPE 102\nDate:\nReg number: 2024374076\n\nQuestion:\n1. State and explain briefly the various types of mathematical models\n2. Highlight the benefits of operation research (OR)\n3. Discuss the various applications of OR\n4. Enumerate and discuss briefly the classical aspect of science as acknowledged by OR",
"entities": [
{
"type": "phone_number",
"length": 10,
"offset": 157
}
],
"message_id": 240
},
"update_id": 656070565
}
}
]
},
"settings": {
"executionOrder": "v1"
},
"versionId": "7d8b4a43-d39d-4321-8e7b-52a420f9571d",
"connections": {
"Wait": {
"main": [
[
{
"node": "Edit Fields",
"type": "main",
"index": 0
}
]
]
},
"Edit Fields": {
"main": [
[
{
"node": "Long Essay Record Sheet",
"type": "main",
"index": 0
}
]
]
},
"Upload file": {
"main": [
[
{
"node": "Send a text message",
"type": "main",
"index": 0
}
]
]
},
"HTTP Request": {
"main": [
[
{
"node": "Upload file",
"type": "main",
"index": 0
}
]
]
},
"Error Handler": {
"main": [
[
{
"node": "Wait",
"type": "main",
"index": 0
}
]
]
},
"Generator Model": {
"ai_languageModel": [
[
{
"node": "Student Assignment Auto-Composer",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Static Html Builder": {
"main": [
[
{
"node": "HTTP Request",
"type": "main",
"index": 0
}
]
]
},
"Structured Data Parser": {
"main": [
[
{
"node": "Student Assignment Auto-Composer",
"type": "main",
"index": 0
}
]
]
},
"Long Essay Record Sheet": {
"main": [
[
{
"node": "Static Html Builder",
"type": "main",
"index": 0
}
]
]
},
"Fallback Model Generator": {
"ai_languageModel": [
[
{
"node": "Student Assignment Auto-Composer",
"type": "ai_languageModel",
"index": 1
}
]
]
},
"Structured Output Parser": {
"ai_outputParser": [
[
{
"node": "Student Assignment Auto-Composer",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Student Query Intake Bot": {
"main": [
[
{
"node": "Structured Data Parser",
"type": "main",
"index": 0
}
]
]
},
"Google Gemini Chat Model6": {
"ai_languageModel": [
[
{
"node": "Static Html Builder",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Student Assignment Auto-Composer": {
"main": [
[
{
"node": "Error Handler",
"type": "main",
"index": 0
}
]
]
},
"Handler For Structured Output Parser": {
"ai_languageModel": [
[
{
"node": "Structured Output Parser",
"type": "ai_languageModel",
"index": 0
}
]
]
}
}
}常见问题
如何使用这个工作流?
复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。
这个工作流适合什么场景?
高级 - 内容创作, 多模态 AI
需要付费吗?
本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。
相关工作流推荐
💥 使用NanoBanana、Seedream 4、ChatGPT Image和Veo 3自动化视频广告 - VIDE
使用AI(NanoBanana、Seedream、GPT-4o、Veo 3)自动化和发布视频广告活动
Set
Code
Wait
+16
63 节点Dr. Firas
内容创作
LinkedIn和X病毒内容自动引擎
使用AI生成和发布自动创建LinkedIn和X的病毒内容
If
Set
Wait
+26
156 节点Diptamoy Barman
内容创作
1. 播放列表详情设置机器人副本
使用 Suno、GPT-4、Runway 和 Creatomate 创建 AI 生成的 YouTube 音乐播放列表
If
Set
Code
+22
203 节点Joseph
内容创作
合并
使用Suno API、Claude和Telegram机器人创建完整的20首YouTube播放列表
If
Set
Code
+17
150 节点Joseph
内容创作
使用Gemini 2.5 Pro和TwelveData通过Telegram机器人生成股票交易信号
使用Gemini 2.5 Pro和TwelveData通过Telegram机器人生成股票交易信号
Set
Code
Wait
+9
36 节点Malik Hashir
内容创作
使用 Google Slides 和 Flux 将会议转录转换为 AI 生成演示文稿
使用 Google Slides 和 Flux 将会议转录转换为 AI 生成演示文稿
Set
Code
Wait
+14
107 节点Joseph
内容创作
工作流信息
难度等级
高级
节点数量17
分类2
节点类型12
作者
Davidson Ahuruezenma
@deroctonI'm Davidson Ahuruezenma, an Automation Specialist passionate about helping companies streamline their processes to enhance functionality, speed, and productivity. I specialize in solving complex workflow challenges using n8n automation workflows for low-code integration. By designing intelligent systems that reduce complexity and empower teams, I free your people to focus on what matters most—driving your business forward.
外部链接
在 n8n.io 查看 →
分享此工作流