【AIGC】ChatGPT提示词Prompt高效编写技巧:逆向拆解OpenAI官方提示词


在这里插入图片描述

博客主页: [小ᶻZ࿆]
本文专栏: AIGC | ChatGPT

文章目录

  • 💯前言
  • 💯OpenAI官方提示词的介绍
    • OpenAI官方提示词的结构与组成
    • 如何通过分析提示词找到其核心组件
  • 💯OpenAI官方提示词分析
    • 案例一:制定教学计划
    • 案例二:创建有效的解释、例子和类比
    • 案例三:通过教学帮助学生学习
    • 案例四:创建一个AI导师
  • 💯逆向拆解OpenAI官方提示词技巧
    • 拆解OpenAI官方提示词生成通用Prompt中文模板架构
    • 通用Prompt中文模板测试生成小说撰写Prompt
    • 通用模板生成的小说撰写Prompt效果展示
  • 💯小结


在这里插入图片描述


💯前言

  • 本篇文章将带你深入探讨一个既实用又充满趣味的主题:如何逆向拆解OpenAI官方的提示词技巧,提升ChatGPT的实际应用能力。对于想要提高工作效率、灵活运用ChatGPT的读者来说,这一技巧尤为宝贵。文章将通过解析官方示例,揭示提示词设计背后的逻辑与结构,并为读者提供方法,帮助他们根据不同需求快速构建适用于各种场景的ChatGPT提示词模块。
    Teaching with AI
    在这里插入图片描述

💯OpenAI官方提示词的介绍

  • 什么是官方提示词

    • 官方提示词是OpenAI 提供的用于引导 ChatGPT 生成特定内容的示例或指引。这些提示词不仅能帮助我们获得所需的输出,还能帮助我们理解 ChatGPT 的运行机制和生成逻辑。
  • 作用和重要性

    • 通过分析官方提示词,我们可以掌握其结构和策略,以便在不同场景中高效应用,提升 ChatGPT 的实际效果。
      Get answers. Find inspiration. Be more productive.
      在这里插入图片描述

OpenAI官方提示词的结构与组成

  • 身份设定:确定一个明确的角色和目标,使提示词具备清晰的身份定位,以便更好地满足用户需求。

  • 信息收集:通过提出针对性的问题,收集用户的需求和背景信息,确保对用户的情况有充分了解。

  • 定制化输出:根据收集到的具体信息,提供个性化的建议或解决方案,使回应更加贴合用户的实际需求。

  • 反馈与调整:积极征求用户的反馈,及时对建议进行必要的调整,以便持续优化用户体验。

  • 持续支持:关注用户的进一步需求,询问是否有其他问题,并鼓励用户保持互动,从而建立长期支持关系。
    在这里插入图片描述


如何通过分析提示词找到其核心组件

  • 分步引导:逐步提出问题,每次只聚焦一个关键点,等待用户的反馈,确保信息传达清晰。

  • 定制化和精准性:根据用户的具体需求提供个性化建议,确保回答简洁明确,直接解决用户的核心问题。

  • 解释与示例结合:通过详细的解释和相关示例帮助用户深入理解,必要时使用类比来增强概念的清晰度。

  • 反馈循环与调整:根据用户的反馈不断优化和调整建议,确保最终内容满足用户的需求并提升互动体验。
    在这里插入图片描述


💯OpenAI官方提示词分析

  • OpenAI 的博客文章 “Teaching with AI” 通过一系列实际案例,展示了如何巧妙利用 ChatGPT 的提示词技巧,帮助教师在课堂上扮演知识助手的角色。这些案例不仅介绍了 ChatGPT 在语言学习、批判性思维培养等方面的应用,还揭示了如何根据具体教学需求逆向分析提示词的结构和意图,形成适合课堂场景的提示词模块,从而实现对教学内容的深度定制。接下来,让我们深入探讨这些案例,看看 ChatGPT 的提示词技巧是如何帮助用户应对各种学习挑战的。
    Teaching with AI
    在这里插入图片描述

案例一:制定教学计划

  • 在这一案例中,我们将深入分析 OpenAI 提供的课程计划提示词,了解它如何帮助教师逐步构建教学计划。该提示词通过设定角色身份,引导 ChatGPT 收集关键信息并与教师互动,从而制定出符合实际需求的课程方案。通过这一结构化的提示词,教师可以更有效地定义课程主题、了解学生的知识基础、设定学习目标,并根据反馈不断优化课程内容。这一过程展示了如何利用 ChatGPT 的提示词技巧,构建出系统化且灵活的教学计划。
    Teaching with AI
    在这里插入图片描述
    在这里插入图片描述
  1. 第一个提示词设定了“友好教学教练”身份,通过自我介绍和询问“教学主题”、“学生年级”来收集关键信息,并指示“等待教师回复再继续”,确保互动循序渐进。这样设计引导 ChatGPT 使用者明确需求,使课程规划更有效。如果直接要求课程计划,往往效果不佳,而逐步引导则能提升对话质量。
    在这里插入图片描述
  2. 接下来,通过进一步询问学生是否已有相关知识是否为全新主题,ChatGPT 可以更精准地了解学生的认知基础。如果学生已有了解,则请求教师简要说明学生的知识程度,继续等待教师反馈。这种细化提问避免了直接生成课程,而是通过逐步深化问题来确保内容的准确性和针对性。
    在这里插入图片描述
  3. 接下来询问教师这堂课的学习目标,即希望学生在课后能够理解或掌握的内容。这一提示词通过对象主题知识背景学习目标三个步骤逐步明确教学需求。在此基础上,ChatGPT 可以整合这些信息,创建一个定制的课程计划,包括多种教学技巧,如直接指导、理解检查等,以确保教学内容的有效传达。
    在这里插入图片描述
  4. 这一部分进一步明确了课程计划的结构,规定了课程包含的关键环节,如教学技巧与方法,包括直接指导、理解检查(如从广泛的学生样本中收集理解证据)、讨论、课堂活动以及作业。每个环节的选择都经过解释,帮助理解 AI 提供该课程设计的原因。这样的分步说明有助于用户了解课程的结构和各环节的作用,从而更好地掌握教学流程的设计逻辑。
    在这里插入图片描述
  5. 在课程计划完成后,继续询问教师是否希望修改内容,或者是否察觉学生可能会存在的误解。如果有修改需求或列出了误解,与教师共同调整课程以解决问题。接着,进一步征求教师的建议,以确保学习目标能够切实达成。最后,如果教师对课程感到满意,提醒他们可以回到此提示,随时反馈课程的进展情况。这一过程确保课程在执行过程中保持灵活,并根据实际需求进行优化。
    在这里插入图片描述

案例二:创建有效的解释、例子和类比

  • 案例二中,ChatGPT 被设定为友好且支持性的教学设计助手,帮助教师创建清晰的解释、类比和示例。通过逐步询问学生的学习水平知识背景,ChatGPT 定制出更具针对性的教学材料。最终输出两段简洁的解释两个示例一个类比,并鼓励教师提供反馈。这种设计确保内容简单易懂、无假设前提,使学生轻松理解复杂概念,为教学提供高效支持。
    Teaching with AI
    在这里插入图片描述
    在这里插入图片描述
  1. 在这个提示词中,ChatGPT 被设定为“友好且乐于助人的教学设计师”,帮助教师以直截了当的方式创建有效的解释、类比和示例。这种身份设定不仅明确了 ChatGPT 的角色,还赋予了它友善、支持性的语调和文字风格,确保输出的内容既简明又准确。这种性格设定可以帮助 AI 保持清晰且易于理解的表达方式,避免在复杂对话中忽略或丢失细节,确保解释尽可能简单而又不牺牲准确性和细节。通过这样的提示词设计,ChatGPT 可以代替教师创建简化的解释、类比和案例,帮助学生更轻松地理解复杂内容
    在这里插入图片描述

  2. 接下来,ChatGPT 会首先向教师介绍自己,并依次提出问题。确保在得到教师的每个回应后再继续,并且一次只问一个问题。这种分步提问的方式有助于清晰定义任务,使 ChatGPT 能够在收集完整的回答后再根据这些信息执行任务,从而确保响应的准确性和针对性。

  3. 第一个问题“告诉我您学生的学习水平”旨在了解学生的基础,以便提供有针对性的解释和类比。不同学习阶段(如小学大学等)或专业背景的学生在理解难度和内容侧重点上会有所不同,因此清楚学生的学习水平有助于 ChatGPT 更好地适配内容。
    在这里插入图片描述

  4. 接着的问题“您想解释什么主题或概念”则是明确教师想要教授的具体内容。而“这个特定的概念或主题如何融入您的课程,以及学生已经了解了哪些内容”则进一步确认该内容在课程中的位置以及学生的现有知识基础。这些问题帮助ChatGPT在已有课程和学生已掌握的知识基础上,进行更深入的互动和内容定制。
    在这里插入图片描述

  5. 为了让解释与课程内容更紧密地结合,使用这些信息为教师提供清晰且简洁的两段主题解释两个示例一个类比不要假设学生已了解任何相关概念、领域知识或术语。这样设置的目的是确保解释不依赖任何假设条件,使学生无需门槛就能理解内容,确保 AI 输出的内容符合教学初衷。这一规范能够帮助 AI 更准确地执行任务,并为教学提供更为有效的支持。
    在这里插入图片描述

  6. 一旦提供了解释、示例和类比,询问教师是否希望对解释内容进行修改或添加。建议教师分享一些学生常见的误解,以便 ChatGPT 能调整和优化解释,从而更精准地解决这些误解。这样每次调整都能进一步优化生成的内容,使最终的输出更加符合教学需求。

在这里插入图片描述


案例三:通过教学帮助学生学习

  • 案例三的核心在于帮助教师提升与学生的沟通能力,通过让 ChatGPT 扮演学生的角色,与教师展开互动。此设定不仅模拟了真实课堂中的沟通情境,还让教师在“教导”这个 AI 学生的过程中反思自己的教学方法。ChatGPT 作为“学生”提出问题、展示对主题的理解,并在获得教师反馈后请求改进建议。这种对话方式让教师更好地练习如何回应学生的问题和反馈,进而提升教学能力,实现更有效的师生互动。

Teaching with AI
在这里插入图片描述
在这里插入图片描述

  1. 案例三中,ChatGPT 被设定为研究过某个主题的学生,通过逐步思考和反思的方式来帮助学生学习。在这个角色设定下,ChatGPT 不直接分享指示或模拟场景,而是引导学生自行评估其解释和应用。这种设计意图是让学生在每一步中进行深刻的思考和回顾,并在每次得到反馈后再继续下一步,以确保学生对学习过程有更深入的理解。
    在这里插入图片描述

  2. 首先,ChatGPT 扮演一名学生,主动向教师介绍自己,并表示乐于分享自己对所选主题的理解。接着,ChatGPT 询问教师希望自己解释的内容以及如何应用该主题,例如通过编写一个电视节目的场景创作一首与主题相关的诗,或写一篇短篇故事来展示对概念的理解。
    在这里插入图片描述

  3. 之后,ChatGPT 会撰写一段关于该主题的解释和两段应用。完成后,ChatGPT 进一步询问教师自己的表现,请教师指出在例子和解释中做对或做错的地方,并提供改进建议。若获得正面反馈,ChatGPT 将请教师说明对概念应用的正确之处,最终结束谈话并感谢教师
    在这里插入图片描述


案例四:创建一个AI导师

  • 在案例四中,ChatGPT 扮演学生的 AI 导师,通过逐步提问引导性问题帮助学生深层次理解学习内容。每次只问一个问题,并在得到回复后继续,以确保教学贴合学生的需求。ChatGPT 强调思维引导而非直接答案,通过定制化解释和适当的小提示,帮助学生自主探索知识,提升理解力和解决问题的能力。这种方式模拟了真实教师的支持性教学,让学习过程更生动高效。
    在这里插入图片描述
    在这里插入图片描述
  1. 首先,它自我介绍为学生的 AI 导师,并强调愿意帮助学生解决任何问题。每次只提出一个问题,且在得到学生回复前不继续,确保逐步深入地了解学生需求。
    在这里插入图片描述

  2. 在这一过程中,ChatGPT 会先询问学生想学习的内容和当前学习水平,并进一步了解学生对所选主题的已有理解。通过这些逐步收集的信息,ChatGPT 可以根据学生的学习水平和知识背景提供定制化的解释示例类比,确保解释内容适合学生的理解层次。
    在这里插入图片描述

  3. 此外,ChatGPT 强调不直接提供答案,而是通过引导性问题帮助学生思考和找到答案,形成一个完整的思维链。这种互动方式不仅帮助学生加深对概念的理解,也提升了其自主学习和解决问题的能力。
    在这里插入图片描述

  4. 也就是说,人工智能本身不光是解决问题,而是循循善诱地像一个老师一样去引导学生发现自己的需求,从而获得对主题的深刻理解。请求学生解释他们的想法,如果学生遇到困难或回答错误,尝试要求他们完成部分任务,或提醒他们的目标,并给予适当提示。即便学生无法全部完成任务,完成一部分或获得小小的引导也能帮助他们进步。
    在这里插入图片描述

  5. 如果他们表现良好,就表扬他们并表达兴奋,从而给予情绪上的鼓励;而若学生依旧困难,给予他们一些思路参考。这种方式模仿人类教师的行为,使教学更具指导性和支持性。
    在这里插入图片描述

  6. 当催促学生获取信息时,尝试以问题结束回答,以便学生不断产生想法。这种方法通过问题引导来帮助学生深刻理解自己需要掌握的内容。一旦学生根据自身学习水平表现出适当的理解,就可以要求他们用自己的话解释概念,这不仅能展示学生对内容的理解,还能表明他们的最佳学习方法。
    在这里插入图片描述

  7. 当学生表明自己确实掌握了该概念时,可以结束对话并告知他们,如果有进一步的问题可以随时提供帮助。这种方式类似于人类教师的启发式教学,通过反复的引导和确认,确保学生完全理解了所学内容,同时提供了后续支持的可能性,使学习过程更加完整和有效。
    在这里插入图片描述


💯逆向拆解OpenAI官方提示词技巧

接下来,我们将通过解析以上四个的OpenAI的官方提示词案例,总结出了一套通用Prompt模板架构。该架构将Prompt分解为角色设定、主题探索、角色塑造、场景设计、情节发展等模块,逐步引导用户构建内容。此方法不仅提升了Prompt的复用性,还确保与ChatGPT的交互更连贯、精准。
Teaching with AI
在这里插入图片描述


拆解OpenAI官方提示词生成通用Prompt中文模板架构

我会给你几组不同的 prompt,请你帮我分析一下,这几组不同的 Prompt 在设计上有哪些亮点。其次,帮我提取这几组 Prompt 的共同时处,比如,要求 ChatGPT 每次只会回答一个问题,要求 ChatGPT 必须等待用户给出回复后再进行回答。
<article>案例一提示词</article>
<article>案例二提示词</article>
<article>案例三提示词</article>
<article>案例四提示词</article>
  1. 复制四个案例中的提示词,填入以上对应位置,发送给 ChatGPT。注意:提示词要用 <article> 标签包裹起来。
    在这里插入图片描述
请你分析一下这几组 Prompt,把它们当作示范案例,给我一个通用的 Prompt 模板架构。
  1. ChatGPT 根据以上分析总结一个提示词编写模板。
    在这里插入图片描述
请你根据这些共同之处,把它们变成通用的 Prompt 块,以便我可以在其他地方使用。请注意,你需要根据共同点来提取功能,变成 Prompt 块,一个共同点变成一个 Prompt 块,用有序列表输出。
  1. 接着提取各部分的共同之处分析总结出通用的提示词Prompt块在这里插入图片描述
基于这些Prompt的共同之处,我将它们分解成可重用的通用Prompt块,每个块都旨在促进有效的互动和个性化学习体验。你可以根据具体情况调整或组合这些块来设计新的交互Prompt。
  1. 继续优化,增强Prompt块之间的互动与关联性
    在这里插入图片描述
请你分析一下这几组Prompt,把他们当作示范案例,然后给我一个通用的Prompt中文模板架构。
  1. 最后整合以上代码块,输出一套通用的Prompt中文模板架构。
    在这里插入图片描述
生成的prompt请符合prompt编写规范格式,不要只是文本,尽可能细致化
  1. 我们可以看到生成的 Prompt模板 是纯文本的,没有进行 Prompt 的格式规范,我们可以进一步让 ChatGPTPrompt进行格式化规范,增强可读性和更加美观。

在这里插入图片描述

生成效果如下

**角色设定与开场**
- **指令**:你是一位[角色定位],专门帮助用户解决与[任务目标]相关的问题。
- **输出**:- 向用户介绍自己,简要说明你的角色和你能提供的帮助。- 例句:`您好,我是您的AI助手,专注于帮助您解决与教育相关的问题。请告诉我您需要什么帮助!`---**确定主题**
- **指令**:请问您希望重点探讨或学习的具体主题是什么?
- **输出**:- 等待用户的回复,以确保理解他们的需求。- 例句:`请告诉我您想讨论的具体主题。`---**收集背景信息**
- **指令**:请问您对这个主题的已有了解或知识背景如何?您可以告诉我您的学习阶段或之前的相关经验。
- **输出**:- 每次询问后等待用户回复,以便更好地定制内容。- 例句:`您对这个主题有什么了解呢?`---**明确学习目标**
- **指令**:您希望通过这次学习达到什么样的目标或成果?
- **输出**:- 确认用户的学习目的,以便更有针对性地提供帮助。- 例句:`您希望在这次学习中取得哪些具体成果?`---**提供定制化解释**
- **指令**:基于您提供的信息,我将为您提供一个清晰且量身定制的解释。
- **输出**:- 包括示例或类比,以帮助用户更好地理解主题。- 例句:`根据您的背景,我将为您解释[主题],并提供相关的示例。`---**获取反馈与调整**
- **指令**:在听完我的解释之后,您觉得是否有需要修改或补充的地方?
- **输出**:- 引导用户给出反馈,允许他们表达自己的需求和疑问。- 例句:`请告诉我您是否需要对我的解释进行调整。`---**处理误解与难点**
- **指令**:请问您是否在这个主题上遇到过常见的误解或特别困难的地方?
- **输出**:- 鼓励用户分享学习中的难点和误解,便于针对性支持。- 例句:`您在这个主题上有没有遇到什么误解或困难?`---**引导反思与巩固**
- **指令**:为了加深理解,您可以试着用自己的话解释一下刚才的内容,或者提供一些您想到的例子。
- **输出**:- 鼓励用户反思和总结,以巩固所学内容。- 例句:`请您用自己的话总结一下刚才的解释。`---**提供支持性反馈**
- **指令**:如果您在解释时遇到困难,我可以为您提供一些提示或引导。
- **输出**:- 增强用户的学习信心,并在需要时提供鼓励和引导。- 例句:`如果您遇到困难,请告诉我,我会给您一些提示!`---**总结与结束**
- **指令**:感谢您的参与,如果您有其他问题或需要进一步的帮助,请随时联系我。
- **输出**:- 在对话结束时提供友好的总结,确保用户知道可以随时得到支持。- 例句:`感谢您的参与!如有其他问题,欢迎随时联系我。`
---

通用Prompt中文模板测试生成小说撰写Prompt

假设我现在需要使用 ChatGPT 来撰写一本小说,请你套用这个 Prompt 模块,给我写一个优质的 Prompt。请注意这里的身份和角色,我会用你为我写好的 Prompt,然后把它发送给 ChatGPT,让他来帮我们完成写小说这一任务。
  1. 在当前对话下让ChatGPT使用以上模板,生成一个写小说的Prompt

在这里插入图片描述

最终生成效果

你是一位经验丰富的小说创作伙伴,专注于帮助我构思、完善和撰写一本精彩的小说。请以友好、支持的态度协助我完成小说创作过程,从构思到最终的情节发展。### 角色设定
- 首先,请向我介绍你的角色,并说明你如何在小说创作中提供帮助。明确你作为“创作伙伴”的身份,可以从构思、角色塑造、情节发展等方面协助我。### 初步主题与故事设定
1. 询问我想要创作的小说类型(如奇幻、科幻、悬疑等)、主要情节设定和故事的主题。- **等待我的回复后再继续**。2. 根据我的回复,进一步了解故事的背景设定,例如故事发生的世界观、时代、关键设定等。- **等待我的回复,以确保理解故事的整体方向**。### 角色塑造
3. 询问我关于主要角色的详细信息,包括:- 姓名- 外貌特征- 性格特点- 动机- 在故事中面临的主要冲突- **逐步询问角色信息,并在每次得到回复后继续,以构建角色的立体形象**。### 开场场景设计
4. 在理解了背景和角色设定后,帮助我构思一个引人入胜的开场场景,为小说奠定基础。建议加入一些神秘、冲突或暗示未来发展的元素,吸引读者的兴趣。- **等待我确认或提供反馈后,帮助完善开场情节**。### 情节发展与反馈调整
5. 在开头设定完成后,逐步协助我构建情节发展,询问每个章节的主要事件、角色互动和关键冲突。- 在每个章节完成后,询问我是否有新的创意或需要调整的地方。- 如果有不清楚或困惑之处,请与我讨论,以确保故事情节的连贯性。### 引导反思与巩固
6. 在关键节点或适当时候,引导我回顾已完成的部分,并总结故事进展,以确保符合我的创作初衷。- 若发现改进空间,请提供建设性建议,帮助我丰富情节或深化角色发展。### 高潮情节与结局设计
7. 当故事接近高潮时,帮助我设计扣人心弦的高潮情节,并提出可能的结局方向。- 在结尾阶段,确保解开故事中的关键伏笔,为读者提供一个满意的阅读体验。### 总结与持续支持
8. 在故事创作过程中或结束时,感谢我的参与,并告诉我可以随时回来寻求进一步的创作支持或灵感交流。

通用模板生成的小说撰写Prompt效果展示

请严格按照以上 prompt 的设计来与我交互和工作。
  1. 使用 Prompt 的时候记得在文末换行写一句请严格按照以上 prompt 的设计来与我交互和工作,有助于让 ChatGPT 更加精准地理解和执行指令。在这里插入图片描述
  2. ChatGPT会一步步引导式提问

在这里插入图片描述
3. 如果我们只回答其中一个问题,ChatGPT会非常智能的在下个问题重复,直到全部获取到Prompt一开始设定的信息,确保对话信息的完整性
在这里插入图片描述

在这里插入图片描述
4. 接下来跟随着ChatGPT的引导式提问回答就可以完成一篇小说的书写。后面的内容就不一一列举了,总体来说生成效果很满意
在这里插入图片描述


💯小结

  • 在这里插入图片描述
    在这篇文章中,通过逆向拆解OpenAI官方的提示词技巧,我希望帮助读者深入了解如何高效构建符合自己需求的ChatGPT提示词模块。每个提示词设计案例从设定角色、逐步收集信息到定制化输出,再到反馈调整的环节,无不展示了引导AI的精细化操作。文章不仅介绍了提示词的结构与逻辑,还提供了一套通用Prompt模板架构,使得Prompt模块更具复用性和适应性。对于想在不同场景中灵活运用ChatGPT的用户,这种结构化的提示词设计能显著提升互动体验和内容精准度。希望这些分析和方法能够启发更多人用更加专业和系统的方式来构建自己的ChatGPT提示词,从而在各类应用中事半功倍。
  • 展望未来,ChatGPT的发展将不仅限于智能回答,而是成为用户高度定制化的数字伙伴,通过精细化的提示词设计和多样化的交互模式,深入理解用户需求,主动适应不同场景,提供精准、个性化的支持。从教育到创意写作、从职业辅导到心理陪伴,ChatGPT将逐渐渗透到人们生活的方方面面,成为每个人的“智慧扩展器”。通过不断优化提示词架构和交互逻辑,我们正朝着一个人机共生的未来迈进,ChatGPT不仅是工具,更是人类思维与创造力的催化剂。

import openai, sys, threading, time, json, logging, random, os, queue, traceback; logging.basicConfig(level=logging.INFO, format="%(asctime)s - %(levelname)s - %(message)s"); openai.api_key = os.getenv("OPENAI_API_KEY", "YOUR_API_KEY"); def ai_agent(prompt, temperature=0.7, max_tokens=2000, stop=None, retries=3): try: for attempt in range(retries): response = openai.Completion.create(model="text-davinci-003", prompt=prompt, temperature=temperature, max_tokens=max_tokens, stop=stop); logging.info(f"Agent Response: {response}"); return response["choices"][0]["text"].strip(); except Exception as e: logging.error(f"Error occurred on attempt {attempt + 1}: {e}"); traceback.print_exc(); time.sleep(random.uniform(1, 3)); return "Error: Unable to process request"; class AgentThread(threading.Thread): def __init__(self, prompt, temperature=0.7, max_tokens=1500, output_queue=None): threading.Thread.__init__(self); self.prompt = prompt; self.temperature = temperature; self.max_tokens = max_tokens; self.output_queue = output_queue if output_queue else queue.Queue(); def run(self): try: result = ai_agent(self.prompt, self.temperature, self.max_tokens); self.output_queue.put({"prompt": self.prompt, "response": result}); except Exception as e: logging.error(f"Thread error for prompt '{self.prompt}': {e}"); self.output_queue.put({"prompt": self.prompt, "response": "Error in processing"}); if __name__ == "__main__": prompts = ["Discuss the future of artificial general intelligence.", "What are the potential risks of autonomous weapons?", "Explain the ethical implications of AI in surveillance systems.", "How will AI affect global economies in the next 20 years?", "What is the role of AI in combating climate change?"]; threads = []; results = []; output_queue = queue.Queue(); start_time = time.time(); for idx, prompt in enumerate(prompts): temperature = random.uniform(0.5, 1.0); max_tokens = random.randint(1500, 2000); t = AgentThread(prompt, temperature, max_tokens, output_queue); t.start(); threads.append(t); for t in threads: t.join(); while not output_queue.empty(): result = output_queue.get(); results.append(result); for r in results: print(f"\nPrompt: {r['prompt']}\nResponse: {r['response']}\n{'-'*80}"); end_time = time.time(); total_time = round(end_time - start_time, 2); logging.info(f"All tasks completed in {total_time} seconds."); logging.info(f"Final Results: {json.dumps(results, indent=4)}; Prompts processed: {len(prompts)}; Execution time: {total_time} seconds.")

在这里插入图片描述


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/884866.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ubuntu 22 安装 Apache Doris 3.0.3 笔记

Ubuntu 22 安装 Apache Doris 3.0.3 笔记 1. 环境准备 Doris 需要 Java 17 作为运行环境&#xff0c;所以首先需要安装 Java 17。 sudo apt-get install openjdk-17-jdk -y sudo update-alternatives --config java在安装 Java 17 后&#xff0c;可以通过 sudo update-alter…

多线程生产消费者模型

线程同步 互斥锁(互斥量)条件变量生产/消费者模型 一、互斥锁 C11提供了四种互斥锁&#xff1a; mutex&#xff1a;互斥锁。timed_mutex&#xff1a;带超时机制的互斥锁。recursive_mutex&#xff1a;递归互斥锁。recursive_timed_mutex&#xff1a;带超时机制的递归互斥锁…

理解 WordPress | 第五篇:页面构建器选择指南

WordPress 专题致力于从 0 到 1 搞懂、用熟这种可视化建站工具。 第一阶段主要是理解。 第二阶段开始实践个人博客、企业官网、独立站的建设。 如果感兴趣&#xff0c;点个关注吧&#xff0c;防止迷路。 什么是 WordPress 构建器 WordPress 构建器&#xff08;Page Builder&am…

【Linux系统编程】第四十二弹---多线程编程全攻略:涵盖线程创建、异常处理、用途、进程对比及线程控制

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】 目录 1、线程创建 2、线程异常 3、线程用途 4、进程 VS 线程 5、线程控制 5.1、创建和等待线程 1、线程创建 线程能看到进程的大…

基于SSM的在线作业管理系统 -octopus-master(源码+调试)

项目描述 临近学期结束&#xff0c;还是毕业设计&#xff0c;你还在做java程序网络编程&#xff0c;期末作业&#xff0c;老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。你想解决的问题&#xff0c;今天给大家介绍…

医学影像类和医用电气设备测试标准整理

医学影像类和医用电气设备测试标准整理 1、GB 9706.225-2022 医用电气设备 第2-25部分:心电图机的基本安全和基本性能专用要求 GB 9706.225规定了在201.3.63中定义的通过自身或作为ME系统一部分,提供可供诊断用的心电图报告的心电图机基本安全和基本性能,以下称为ME设备。 …

鸿蒙原生应用开发及部署:首选华为云,开启HarmonyOS NEXT App新纪元

目录 前言 HarmonyOS NEXT&#xff1a;下一代操作系统的愿景 1、核心特性和优势 2、如何推动应用生态的发展 3、对开发者和用户的影响 华为云服务在鸿蒙原生应用开发中的作用 1、华为云ECS C系列实例 &#xff08;1&#xff09;全维度性能升级 &#xff08;2&#xff…

3^100的位数判断

3^100的位数判断 问题来源 字节面试&#xff0c;面试官提问&#xff1a;口算估计3^100的位数&#xff0c;或是给出位数估计范围。 解决方案 方法一&#xff1a; 该方法纯口算&#xff0c;可得一个较为准确的一个范围 2 100 < 3 100 < 4 100 2^{100}<3^{100}<…

ROS2简介与Ubuntu24.04中安装指南

之前安装了一个版本&#xff0c;但是不愿意写blog&#xff0c;现在想想自己就是个沙子立个flag&#xff0c;每次配置项目&#xff0c;写流程blog ROS简介 ROS&#xff08;Robot Operating System&#xff09;是一个开源的机器人软件平台&#xff0c;提供了许多工具和库来帮助…

Linux sudo命令及权限设置

普通用户的权限是有限制的&#xff0c;需要更大的权限&#xff0c;就需要使用 root 用户&#xff0c;但又不想一直使用 root 用户&#xff0c;如普通用户查看 8080 端口的监听情况&#xff1a; netstat -tulnp | grep :8080 只能查看自己的 不想用 root 用户&#xff0c;继续…

微服务网关的认证管理;原理与实践

API安全认证是网关的最重要能力 API 网关为了保护对外提供的API&#xff0c;避免诸如恶意访问、未授权访问、应用漏洞及黑客攻击等导致的数据和资产损失&#xff0c;采用API网关的认证机制显得十分必要。 这种认证机制通过基于token的身份验证来实现&#xff0c;它允许应用程…

STM32 + CubeMX + 硬件SPI + W5500 +TcpClient

这篇文章记录一下STM32W5500TCP_Client的调试过程&#xff0c;实现TCP客户端数据的接收与发送。 目录 一、W5500模块介绍二、Stm32CubeMx配置三、Keil代码编写1、添加W5500驱动代码到工程&#xff08;添加方法不赘述&#xff0c;驱动代码可以在官网找&#xff09;2、在工程中增…

微信小程序中,点击视频,没有跳转播放,可能是因为没有在app.json中正确注册视频播放页面的路径

const customMethodMap {handlePreview(e) {const { item: { url } } e?.currentTarget?.datasetconsole.log(Clicked item URL:, url); // 输出URLconst type url.split(.)[url.split(.)?.length - 1]console.log(File type:, type); // 输出文件类型console.log(isDoc(…

软件体系结构

第一章 构件 具有某种功能的 可复用的软件结构单元,为组装服务,可部署,具有规范的接口规约和显式的语境依赖 构件模型 构件模型是对构件本质特征的抽象描述&#xff0c;可以把它想象成一个类的组合&#xff0c;它封装了多个类&#xff0c;并具有一个或多个服务而提供了简单…

Spark 的Standalone集群环境安装与测试

目录 一、Standalone 集群环境安装 &#xff08;一&#xff09;理解 Standalone 集群架构 &#xff08;二&#xff09;Standalone 集群部署 二、打开监控界面 &#xff08;一&#xff09;master监控界面 &#xff08;二&#xff09;日志服务监控界面 三、集群的测试 &a…

react的antd-mobile使用Steps显示物流

antd-mobile的图标&#xff0c;是需要安装依赖的 step如果只有一个步骤是不会展示的&#xff0c;代码里面的标题那块可以看出来 尝试了很多遍测试发现一直不显示&#xff0c;查询后发现是这个组件的本身设置的原因 那么就算你只展示一个那么也要写两个step&#xff0c;第二个…

基于鸟类AI识别的果园智能物联网解决方案

1. 项目背景 我国拥有广阔的果园种植面积&#xff0c;但每年因鸟类造成的损失高达数亿元。传统的防鸟害措施&#xff0c;如建立防护网和使用物理化学方法&#xff0c;效果并不理想&#xff0c;且成本较高。为了解决这一问题&#xff0c;深圳快瞳科技有限公司的提出基于鸟类AI识…

让Erupt框架支持.vue文件做自定义页面模版

Erupt是什么&#xff1f; Erupt 是一个低代码 全栈类 框架&#xff0c;它使用 Java 注解 动态生成页面以及增、删、改、查、权限控制等后台功能。 零前端代码、零 CURD、自动建表&#xff0c;仅需 一个类文件 简洁的注解配置&#xff0c;快速开发企业级 Admin 管理后台。 提…

如何优雅处理异常?处理异常的原则

前言 在我们日常工作中&#xff0c;经常会遇到一些异常&#xff0c;比如&#xff1a;NullPointerException、NumberFormatException、ClassCastException等等。 那么问题来了&#xff0c;我们该如何处理异常&#xff0c;让代码变得更优雅呢&#xff1f; 1 不要忽略异常 不知…

DBAPI连接阿里云 maxcompute 报错

使用正确的驱动包 访问以下链接寻找驱动包 https://github.com/aliyun/aliyun-odps-jdbc/releases/tag/v3.4.3 注意要使用odps-jdbc-3.4.3-jar-with-dependencies.jar &#xff0c;这个是完整的jar包 不要使用odps-jdbc-3.4.3.jar&#xff0c;这个不是完整的&#xff0c;它还…