关于人工智能:ChatGPT与软件架构4-架构师提示工程指南

3次阅读

共计 5395 个字符,预计需要花费 14 分钟才能阅读完成。

架构师能够通过各种类型的对话提醒,晋升驱动 ChatGPT 对话输入的品质,更好的利用 AI 能力辅助架构设计。原文: Software Architects’Guide to Enhancing ChatGPT Interactions With Prompt Types

前言

随着 ChatGPT 等人工智能语言模型的倒退,不同类型的提醒有助于优化交互并针对特定上下文生成对应的响应。本文将探讨不同类型的提醒及其历史和利用,重点关注与软件架构师相干案例,参考要害畛域钻研,并提供可供理论我的项目验证的提醒示例。

人物 / 角色提醒

人物 / 角色提醒是一种用于为 AI 调配特定人物或角色的技术,领导 AI 提供更相干、特定于畛域和上下文的响应。通过赋予 AI 角色或专业知识,用户能够更好的定制互动关系,聚焦对话内容。当寻求特定畛域 (如软件架构、市场营销或财务) 倡议或见解时,这种办法十分有用。当你想让 AI 承当特定角色或专业知识以提供更有针对性和更理智的回应时,能够应用人物 / 角色提醒。

人物 / 角色提醒源于人机交互和用户体验设计,在这些设计中,设计师创立用户角色从而与指标受众共情。这种办法同样实用于 AI,特地是在会话代理和 NLP 中,并与 GPT 等模型一起倒退。Li, Galley, Brockett, Gao 和 Dolan 撰写过一篇相干论文 <A Persona-Based Neural Conversation Model>,该模型提出了基于角色的神经对话模型,用于生成更有吸引力和多样化的响应。

上面是一些例子:

  1. 假如你是微服务架构方面的专家,提供在大规模应用程序中设计和实现微服务的最佳实际。
  2. 假如你是平安专家,提供爱护基于云的应用程序和爱护敏感数据的倡议。
  3. 假如你的角色是 DevOps 参谋,提供实现 CI/CD 流水线和改良部署流程的策略倡议。
  4. 把本人设想成软件性能工程师,提供优化应用程序性能和缩小提早的技术倡议。
  5. 设想一下数据库架构师的样子,解释不同数据库技术之间的利弊,并领导如何为特定用例抉择最佳解决方案。

思维链 (CoT,Chain of Thought) 提醒

思维链 (CoT,Chain of Thought) 提醒是一种疏导 AI 解释其反馈背地的起因,从而进步决策过程透明度的技术。通过让 AI 形容影响其论断的因素,用户能够深刻理解其思维过程,从而更好的评估和信赖 AI 的倡议。在简单的决策场景中,了解 AI 的基本原理至关重要,当你须要 AI 廓清思维过程,或者当你想要更深刻理解其决策所思考的因素时,应用 CoT 提醒。

CoT 提醒与可解释人工智能 (Explainable AI, XAI) 畛域密切相关,XAI 旨在使 AI 模型更加通明和可了解。Gunning 的论文 <Explainable Artificial Intelligence(XAI)> 探讨了 XAI 我的项目的倒退和指标,Miller 的论文 <Explanation in artificial intelligence: Insights from the social sciences> 从多学科角度探讨了 AI 中的解释概念。

  1. 解释你为这个我的项目举荐特定云供应商的过程,以及思考因素。
  2. 介绍一下你是如何为这个应用程序评估不同编程语言,以及抉择最合适语言的规范。
  3. 具体介绍为这个高流量 web 利用确定最无效的负载平衡策略所采取的步骤。
  4. 概述抉择特定容器编排平台来治理和扩大应用程序的起因。
  5. 说明如何确定最合适的 API 设计办法以及在决策过程中思考的利弊。

逐渐 / 指令提醒

逐渐 / 指令提醒是一种将简单工作或过程分解成更小、更易于治理的步骤的办法。通过要求 AI 提供分步指令或领导,用户能够更好的了解并遵循所需步骤以实现特定指标。这种办法在解决简单工作时很有帮忙,例如在软件开发中采纳新技术、配置零碎或实现特定性能。当你须要具体领导或零碎办法来实现简单工作时,应用逐渐 / 指令提醒。

在 Schank 和 Abelson 的 <Scripts, Plans, Goals, and Understanding: An Inquiry into Human Knowledge Structures> 一书中探讨了将常识示意为程序的概念,从而影响了 AI 中逐渐提醒的倒退。

  1. 提供在云供应商上设置 Kubernetes 集群的分步阐明。
  2. 形容应用 Jenkins 或 GitLab CI/CD 等风行工具配置 CI/CD 流水线的过程。
  3. 概述在 web 利用中实现 OAuth 2.0 身份验证的步骤。
  4. 解释如何应用 AWS Lambda 和 API 网关创立和部署无服务性能。
  5. 具体介绍将现有单体利用迁徙为微服务架构的过程。

指标导向提醒

指标导向提醒是一种专一于疏导 AI 实现特定指标或解决特定问题的技术。通过在提醒中阐明冀望的后果或指标,AI 被激励生成解决方案或策略来帮忙用户实现目标。在用户须要解决挑战、克服阻碍或确定实现目标的无效办法的状况下,指标导向提醒十分有用。当你心愿 AI 专一于解决问题或提供策略以达到特定后果时,能够应用指标导向的提醒。

Russell 和 Norvig 在 <Artificial Intelligence: A Modern Approach> 一书中概述了基于指标的代理及其解决问题的能力。Laird、Newell 和 Rosenbloom 的论文 <Soar: An Architecture for General Intelligence> 探讨了智能代理的 Soar 架构,强调了指标驱动的行为。

  1. 确定在数据库迁徙期间最小化停机工夫的最无效办法。
  2. 确定扩大 web 利用以解决用户流量激增的最佳办法。
  3. 找到升高分布式系统治理多个微服务的复杂性的解决方案。
  4. 制订将遗留零碎与古代基于云的服务集成的策略。

探索性 / 问题驱动提醒

探索性 / 问题驱动型提醒向 AI 提出开放式问题,以激励对特定主题进行更深刻的了解或摸索。通过向 AI 提出问题,用户能够进行更具互动性的苏格拉底式对话,发现见解,并从 AI 的答复中学习。当用户想要摸索不同视角、收集更多信息或剖析各种办法之间的利弊时,这种办法十分有用。当你想让 AI 提供全面见解,摸索不同畛域时,能够应用探索性 / 问题驱动的提醒。

Graesser, Person 和 Harter 的论文 <[Teaching tactics and dialogue in AutoTutor]> 介绍了一种基于问题驱动办法来加强学习效果的 AI 辅助零碎。

  1. 将本地利用迁徙到云环境的次要挑战是什么? 如何解决这些挑战?
  2. Istio 或 Linkerd 这样的服务网格对基于微服务的利用有何益处?
  3. 在为分布式系统抉择音讯代理时应该思考哪些因素? 为什么思考这些因素?
  4. 如何无效治理 API 版本以最小化中断并放弃向后兼容?
  5. 哪些场景应用 NoSQL 数据库比传统关系数据库更无利? 有什么潜在毛病?

提醒示例

一个十分常见的例子是在开发电商网站的整个我的项目生命周期中,能够应用不同类型的提醒来解决各种挑战并实现特定指标。以下是在开发电商网站时,何时及如何应用这些提醒的例子:

1. 人物 / 角色提醒

在打算和设计阶段,能够通过人物 / 角色提醒收集不同专家视角的见解。例如:

  • UI/UX 设计师:

作为一名领有 10 年教训的 UX/UI 设计师,在设计电商网站的布局和用户流程时,须要思考哪些要害准则?

  • 平安专家:

假如你是平安专家,在电商平台上爱护用户数据和领取交易的最佳实际是什么?

2. 思维链 (CoT) 提醒

在做出技术或设计抉择时,能够应用 CoT 提醒来了解 AI 倡议背地的起因。例如:

对于构建电子商务网站,你会举荐哪些编程语言和框架,为什么?
你能解释一下电商网站应用单页应用程序 (SPA) 架构的优缺点吗?

3. 逐渐 / 指令提醒

在实现和部署阶段,逐渐 / 指令提醒能够领导咱们实现简单的工作。例如:

为电商网站建设一个平安领取网关,提供一个循序渐进的领导。
解释一下集成 CDN 以优化电商平台性能的过程。

4. 指标导向提醒

在整个我的项目生命周期中,能够应用指标导向提醒来解决特定挑战或实现特定指标。例如:

找出改善电子商务网站加载工夫和性能的最无效策略。
提供确保电子商务平台对残疾用户可拜访性的最佳办法。

5. 探索性 / 问题驱动提醒

在打算、设计和评估阶段,探索性 / 问题驱动提醒能够帮忙收集见解并摸索不同观点。例如:

抉择电商平台要思考的关键因素是什么? 与 Shopify、Magento 和 WooCommerce 等风行解决方案相比如何?
如何利用社交媒体加强用户体验并推动电商销售?

通过在电商网站我的项目生命周期的不同阶段应用这些不同类型的提醒,能够获取有价值的见解,做出更理智的决策,并有助于进步我的项目的整体后果。

用于定义服务级别的指标导向提醒

要定义我的项目的服务级别和标准需要,能够联合应用指标导向和探索性 / 问题驱动的提醒。指标导向提醒能够帮忙概述与服务级别或法规听从性相干的特定指标,而探索性 / 问题驱动提醒能够帮忙收集见解并摸索和这一主题相干的不同观点。上面是一些例子:

  1. “ 确定应追踪的要害体现指标(KPI),以确保电子商务网站的服务达到最佳程度。”
  2. “ 确定与托管服务商建设服务水平协定 (SLA) 的最佳办法,以保障失常运行工夫和性能。”
  3. “ 制订打算,监控及维持电商网站的体现,以达到或超过指标服务水平。”
  4. “ 制订策略,扩大电商平台的基础设施,以应答顶峰流量,同时放弃所需的服务水平。”
  5. “ 概述一个定期检讨和更新服务水平指标的流程,以配合电商网站的倒退和一直变动的需要。”
用于定义法规需要的探索性 / 问题驱动提醒
  1. “ 电商网站必须恪守哪些重要的数据保护法规(例如 GDPR 和 CCPA)? 如何确保恪守这些法规?”
  2. “ 不同的领取解决规定(如 PCI DSS),对电商网站有什么影响? 应该采取什么措施来满足这些要求?”
  3. “ 电商网站应遵循哪些次要的易读性指引(例如 WCAG),以确保所有用户都能取得踊跃的体验? 如何施行这些指引?”
  4. “ 电商网站在跨境销售商品和服务时,应思考哪些国际贸易和税收法规? 如何满足这些要求?”
  5. “ 如何恪守一直倒退的消费者爱护条例,并确保电商网站的政策和做法合乎这些规范?”

通过指标导向提醒定义服务级别,并应用探索性 / 问题驱动提醒来定义法规需要,就能够收集必要信息并制订策略来满足这些指标,并确保整个我的项目听从必要的法律法规要求。

提醒库

作为软件架构师,在 YAML 中构建提醒库并将其存储在 Git 存储库中能够为 AI 我的项目提供许多益处。组织良好的提醒库能够促成团队成员保持一致,重用工作后果,进步合作效率,让咱们可能轻松跟踪和保护在 ChatGPT 驱动的利用中应用的提醒,简化开发过程并进步 AI 交互的品质。

通过将提醒存储在 Git 中,能够利用版本控制个性(例如跟踪更改、版本回滚和分支),确保团队能够在提醒库上高效工作并无缝合作。

# chatgpt-prompts.yaml
# This YAML file contains AI prompts for ChatGPT that can be stored in a Git database
# and used within an Obsidian graph. It includes metadata about the prompt type, creator, 
# creation date, usage history, and comments.

prompts:
  - id: 1
    type: question
    category: general
    prompt: "Tell me a joke."
    keywords:
      - joke
      - humor
      - fun
    creator: user1
    created_at: 2023-04-23
    history:
      - date: 2023-04-23
        user: user2
    comments:
      - user: user2
        date: 2023-04-23
        comment: "This prompt generates entertaining results."

  - id: 2
    type: question
    category: general
    prompt: "What are the benefits of exercise?"
    keywords:
      - exercise
      - benefits
      - health
    creator: user3
    created_at: 2023-04-22
    history:
      - date: 2023-04-22
        user: user4
      - date: 2023-04-23
        user: user5
    comments:
      - user: user4
        date: 2023-04-22
        comment: "Great prompt for discussing the importance of physical activity."

  # Add more prompts with corresponding metadata here

总结

总之,了解和利用各种类型的提醒,例如人物 / 角色提醒、思维链提醒、逐渐领导提醒、指标导向提醒和探索性问题驱动提醒,能够极大进步与 ChatGPT 交互的品质和有效性。作为软件架构师,在 YAML 中构建组织良好的提醒库并将其存储在 Git 中能够简化开发过程并改善团队外部合作。通过把握这些技术并将其整合到 AI 驱动我的项目中,能够开释 ChatGPT 的全副后劲,并创立弱小的、特定于上下文的、相似人类的会话体验。


你好,我是俞凡,在 Motorola 做过研发,当初在 Mavenir 做技术工作,对通信、网络、后端架构、云原生、DevOps、CICD、区块链、AI 等技术始终保持着浓重的趣味,平时喜爱浏览、思考,置信继续学习、一生成长,欢送一起交流学习。微信公众号:DeepNoMind

本文由 mdnice 多平台公布

正文完
 0