面向Java开发者的ChatGPT提示词工程(5)

news2024/11/19 14:26:09

GPT 的局限性

在探讨开发大型语言模型应用程序时,我们必须认识到 GPT 存在一些局限性。这些限制对于我们保持清醒的头脑至关重要。

尽管在 GP T的训练过程中融入了大量知识,但它并非能够完美地记住所见之物,并且对这些知识的边界了解有限。这意味着当面对晦涩主题的问题时,它可能会试图回答,但所提供的答案却是虚构的,听起来合理却实际不正确。我们将这种虚构的思维称为幻觉

要明确 GPT 的局限性对于我们正确理解和应用这一技术至关重要。我们应该对它所提供的信息持有适度的怀疑态度,并意识到它的回答可能存在误导性。这样,我们才能更加明智地利用GPT,同时在探索其潜力的过程中保持警觉。

比如,我们让 GPT 介绍一下百度:

public static void main(String[] args) {
    String prompt = "请介绍一下百度。";
    String response = getCompletion(prompt);
    System.out.println(response);
}

输出内容如下:

百度是中国最大的互联网搜索引擎,成立于2000年。它提供了各种各样的服务,包括搜索、贴吧、知道、文库、百科、地图、音乐、视频、购物等等。百度的搜索引擎是其最著名的服务之一,它可以帮助用户在互联网上找到他们需要的信息。百度还开发了一些人工智能技术,如语音识别、自然语言处理和机器学习等,这些技术被应用于百度的各种产品和服务中。百度在中国互联网市场上占据着重要的地位,是中国互联网领域的领导者之一。

因为百度是真实存在并且广为人知的,所以我们可以看到正确的答案。

如果让 GPT 介绍一下像“万猫学社”这样它不清楚的东西会怎么样呢?

public static void main(String[] args) {
    String prompt = "请介绍一下万猫学社。";
    String response = getCompletion(prompt);
    System.out.println(response);
}

输出内容如下:

万猫学社是一家在线教育平台,致力于为学生提供高质量的教育资源和服务。
该平台提供了各种课程,包括语言、数学、科学、艺术等多个领域,适合不同年龄段的学生。
万猫学社的课程由经验丰富的教师授课,采用互动式教学方式,让学生在轻松愉快的氛围中学习知识。
此外,万猫学社还提供了个性化的学习计划和学习跟踪服务,帮助学生更好地掌握知识和提高学习效率。

可以看到 GPT 将会给我们一个相当逼真的描述,这就相当危险了,因为它听起来相当真实,如果不知道真实情况完全可以误导我们。

如何避免幻觉

所以在构建自己的应用程序时,一定要使用我们在之前文章中介绍的一些技巧来避免这种情况。比如:

public static void main(String[] args) {
    String prompt = "请介绍一下万猫学社,如果你不清楚,就回答“不知道”。";
    String response = getCompletion(prompt);
    System.out.println(response);
}

输出内容如下:

不知道。

但是,这并不是百分之百起作用的。 另一个减少幻觉的策略是:在让模型基于文本生成答案之前,先让提供文本中的相关信息,然后让它使用这些信息来回答问题。比如:

public static void main(String[] args) {
    String prompt = "根据三个引号之间的内容,介绍一下万猫学社。\n"
            + "```\n"
            + "技术博客,java,系统架构,微服务,数据库,云原生,系统架构设计师,CSDN博客专家,华为云‧云享专家,阿里云专家博主,51CTO博客TOP红人。\n"
            + "```";
    String response = getCompletion(prompt);
    System.out.println(response);
}

我们就基本可以得到我们想要的回答:

万猫学社是一个技术博客,主要涉及Java编程、系统架构、微服务、数据库、云原生等方面的内容。
其创始人是一位系统架构设计师,同时也是CSDN博客专家、华为云‧云享专家、阿里云专家博主、51CTO博客TOP红人。
通过万猫学社,读者可以获取到来自专业人士的技术分享和经验总结,提高自己的技术水平。

总结

我们这次了解了 GPT 的局限性:幻觉。当 GPT 面对晦涩主题的问题时,它可能会试图回答,但所提供的答案却是虚构的,听起来合理却实际不正确。 同时,我们也看到了克服幻觉的两个例子。

面向Java开发者的ChatGPT提示词工程

  • 面向Java开发者的ChatGPT提示词工程(1)
  • 面向Java开发者的ChatGPT提示词工程(2)
  • 面向Java开发者的ChatGPT提示词工程(3)
  • 面向Java开发者的ChatGPT提示词工程(4)
  • 面向Java开发者的ChatGPT提示词工程(5)

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

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

相关文章

玩转用户旅程地图

图:史江鸿 从事需求分析和产品设计工作已经有几个年头了,我很享受这个职业。因为在这段职业历程中,我学到了很多有意思的方法和工具,用户旅程地图就是其中一个。 如今在国内外许多IT公司,用户旅程地图已经成为需求分析…

ElasticSearch安装部署

ElasticSearch安装部署 简介 全文搜索属于最常见的需求,开源的 Elasticsearch (以下简称 es)是目前全文搜索引擎的首选。 它可以快速地储存、搜索和分析海量数据。维基百科、Stack Overflow、Github 都采用它。 Elasticsearch简称es&…

C++【实现红黑树(核心插入)】

文章目录 一、红黑树概念介绍二、红黑树模拟实现(1)红黑树节点(2)红黑树插入分析(核心)(3)插入代码思路(如何快速写插入算法)(4)判断平衡函数(5)查找函数&…

01_java基础语法

1. Java概述 1.1 Java语言背景介绍(了解) 语言:人与人交流沟通的表达方式 计算机语言:人与计算机之间进行信息交流沟通的一种特殊语言 Java语言是美国Sun公司(Stanford University Network)在1995年推出的…

【软硬件测试】测试经验:软硬件结合测试要点

目录 一、应用行业 二、测试要点 三、硬件测试 (1)测试含义 (2)测试方法 (3)相关链接 四、结合测试 (1)测试含义 (2)测试工具 (3&am…

NIO之SocketChannel,SocketChannel ,DatagramChannel解读

目录 基本概述 ServerSocketChannel 打开 ServerSocketChannel 关闭 ServerSocketChannel 监听新的连接 阻塞模式 非阻塞模式 SocketChannel SocketChannel 介绍 SocketChannel 特征 创建 SocketChannel 连接校验 读写模式 读写 DatagramChannel 打开 Datagr…

chatgpt赋能python:Python中的开方指令:介绍和使用

Python中的开方指令:介绍和使用 Python是一种流行的编程语言,广泛用于数据科学、机器学习、Web开发和其他领域。在许多情况下,需要对数值进行数学计算,其中包括开方运算。Python中有多种方法可以执行开方运算,本文将介…

chatgpt赋能python:Python中的“或”语句:使用方法和示例

Python中的“或”语句:使用方法和示例 在Python编程中,“或"语句表示为"or”,它是逻辑运算符的一种形式。"或"语句可以用于组合两个或多个条件,只要其中一个条件成立,整个语句就会返回True。在本…

Rust每日一练(Leetday0016) 全排列I\II、旋转图像

目录 46. 全排列 Permutations 🌟🌟 47. 全排列 II Permutations II 🌟🌟 48. 旋转图像 Rotate Image 🌟🌟 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专…

Golang每日一练(leetDay0082) 用队列实现栈、用栈实现队列

目录 225. 用队列实现栈 Implement Stack Using Queues 🌟 232. 用栈实现队列 Implement Queue Using Stacks 🌟 🌟 每日一练刷题专栏 🌟 Rust每日一练 专栏 Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 …

C#,码海拾贝(29)——求解“大型稀疏方程组”的“全选主元高斯-约去消去法”之C#源代码,《C#数值计算算法编程》源代码升级改进版

大型稀疏矩阵线性化方程组的数值求解问题 广泛存在于工程实践尤其是计算机仿真领域 如水力管网计算,电力系统的大型导纳矩阵计算,高阶偏微分方程的数值求解,以及铸件充型过程与凝固过程的数值模拟等。 经常出现在科学和工程计算中, 因此寻找稀…

chatgpt赋能python:Python中的平均值及其计算方式

Python中的平均值及其计算方式 Python是广泛使用的编程语言之一,它拥有强大而且易于使用的数据处理和分析功能。在数据分析领域,计算平均值是非常常见的操作之一。Python中有多种方法可以计算平均值,包括使用内置的函数和使用第三方库。本文…

MySQL数据库 1.概述

数据库相关概念: 数据库(Database):数据库是指一组有组织的数据的集合,通过计算机程序进行管理和访问。数据库管理系统:操纵和管理数据库的大型软件SQL:操作关系型数据库的编程语言,定义了一套操作关系型数…

Linux之模拟shell命令行解释器

文章目录 前言一、输出提示符1.实际2.模拟 二、输入指令、获取指令1.实际2.模拟 三、fork创建子进程四、内建命令五、代码实现总结 前言 本文是基于前面介绍过的关于进程创建、进程终止、进程等待、进程替换等知识,尝试做的一个简单的shell命令解释器。 一、输出提…

OpenCV实战(25)——3D场景重建

OpenCV实战(25)——3D场景重建 0. 前言1. 重建 3D 场景1.1 3D 场景点重建1.2 算法原理 2. 分解单应性3. 光束平差法4. 完整代码小结系列链接 0. 前言 在《相机姿态估计》一节中,我们学习了如何在校准相机时恢复观察 3D 场景的相机的位置。算…

TypeScript的10个缺点

文章目录 1. 语法繁琐2. 难以集成到一些工作流程3. 学习成本高4. 代码量多5. 编译时间长6. 在小型项目中无必要性7. 可读性降低8. 抽象层次增加9. 缺少类型定义10. 生态系统 1. 语法繁琐 TypeScript 的类型注解、泛型等语法增加了代码的复杂度和学习难度,对小型项目…

LC-1130. 叶值的最小代价生成树(贪心、区间DP、单调栈)

1130. 叶值的最小代价生成树 难度中等272 给你一个正整数数组 arr,考虑所有满足以下条件的二叉树: 每个节点都有 0 个或是 2 个子节点。数组 arr 中的值与树的中序遍历中每个叶节点的值一一对应。每个非叶节点的值等于其左子树和右子树中叶节点的最大…

chatgpt赋能python:Python中的逆序操作

Python 中的逆序操作 在 Python 中,逆序(reverse)操作指的是将一个序列的元素顺序反转,也即将序列中最后一个元素变成第一个,倒数第二个元素变成第二个,以此类推。逆序有很多实际用途,比如根据…

基于C语言的平衡二叉树操作(包含完整代码)

平衡二叉树的定义: 为避免树的高度增长过快,降低二叉排序树的性能,规定在插入和删除二叉树结点时,要保证任意结点的左、右子树高度差的绝对值不超过1,将这样的二义树称为平衡二叉树AVL (Balanced Binary Tree),简称平衡树。 平衡…

【源码解析】流控框架Sentinel源码深度解析

前言 前面写了一篇Sentinel的源码解析,主要侧重点在于Sentinel流程的运转原理。流控框架Sentinel源码解析,侧重点在整个流程。该篇文章将对里面的细节做深入剖析。 统计数据 StatisticSlot用来统计节点访问次数 SpiOrder(-7000) public class Statis…