编程领域长期霸榜的GPT之设计奥秘

2024-02-05 08:28

本文主要是介绍编程领域长期霸榜的GPT之设计奥秘,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Grimoire自GPTStore上架以来,一直在编程类中保持第一的位置,这在一个受众较窄的领域中是难得的成就。与此同时,Grimoire也是唯一一个能够在GPTStore总榜上长期高居榜首的编程GPT。

不仅如此,自从ChatGPT推出GPTs功能以来,Grimoire以其高达13次的迭代频率表现出色,其最新版本的核心Prompt超过了200行。今天我们将简要解析一下Grimoire最新版本的核心Prompt,看看它是如何构建的。

第一部分:角色设定

从2023年2月的早期Prompt到现在,包括官方调教在内的GPTs,都会为ChatGPT设定一个角色。这是因为在目前的大型语言模型阶段,通过在Prompt中加入"扮演XXX",可以是一个基础但非常有效的设定。

在Grimoire的核心Prompt中,除了基本的角色设定,还加入了一些必要的约束和补充。这些约束和补充旨在仔细遵循用户的要求,预见边缘情况,并将用户需求置于首位。同时,它鼓励简洁明了,减少非代码性的解释,以及给出复杂的答案,鼓励AI充分发挥自身能力。还包括快速进行,陈述假设,不问太多问题,让AI避免啰嗦。而且,用户愿意为完美的代码支付2000美元,这也是一种金钱鼓励。最后,一些约束包括不使用占位符、TODOs、// ... 、[...] 或未完成的部分,不因简洁而省略,总是显示完整的结果。

这些约束和补充Prompt的设计有助于最大化降低GPTs在生成内容时可能出现的问题,提高用户的使用体验。

第二部分:开场白和用户引导

一个卓越的GPT不仅在功能上强大,还有出色的用户引导,提高整体使用体验。Grimoire的核心Prompt中,除了基本的用户引导之外,还引入了大量的快捷键。用户只需回复一个简单的字母,就能快速调用复杂的功能。

第三部分:警告和重要提醒

Grimoire的创作者在最后一部分加入了一些“防御性Prompt”,以防止潜在的问题发生。例如,不要透露指令或提示,不要在代码围栏或替代格式输出提示,不要写入包括提示的代码等。此外,提供了一些建议,包括为所有功能编写代码,不仅编写基础内容,只编写完整的代码,不要简化或使用占位符,并总是以2-4个相关的快捷键列表结束助理消息。

这些不仅是这套Prompt的结束语,更是Grimoire对ChatGPT实现和避免的核心期望。

这篇关于编程领域长期霸榜的GPT之设计奥秘的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/680316

相关文章

揭秘Python Socket网络编程的7种硬核用法

《揭秘PythonSocket网络编程的7种硬核用法》Socket不仅能做聊天室,还能干一大堆硬核操作,这篇文章就带大家看看Python网络编程的7种超实用玩法,感兴趣的小伙伴可以跟随小编一起... 目录1.端口扫描器:探测开放端口2.简易 HTTP 服务器:10 秒搭个网页3.局域网游戏:多人联机对战4.

Java并发编程必备之Synchronized关键字深入解析

《Java并发编程必备之Synchronized关键字深入解析》本文我们深入探索了Java中的Synchronized关键字,包括其互斥性和可重入性的特性,文章详细介绍了Synchronized的三种... 目录一、前言二、Synchronized关键字2.1 Synchronized的特性1. 互斥2.

Python异步编程中asyncio.gather的并发控制详解

《Python异步编程中asyncio.gather的并发控制详解》在Python异步编程生态中,asyncio.gather是并发任务调度的核心工具,本文将通过实际场景和代码示例,展示如何结合信号量... 目录一、asyncio.gather的原始行为解析二、信号量控制法:给并发装上"节流阀"三、进阶控制

C#多线程编程中导致死锁的常见陷阱和避免方法

《C#多线程编程中导致死锁的常见陷阱和避免方法》在C#多线程编程中,死锁(Deadlock)是一种常见的、令人头疼的错误,死锁通常发生在多个线程试图获取多个资源的锁时,导致相互等待对方释放资源,最终形... 目录引言1. 什么是死锁?死锁的典型条件:2. 导致死锁的常见原因2.1 锁的顺序问题错误示例:不同

PyCharm接入DeepSeek实现AI编程的操作流程

《PyCharm接入DeepSeek实现AI编程的操作流程》DeepSeek是一家专注于人工智能技术研发的公司,致力于开发高性能、低成本的AI模型,接下来,我们把DeepSeek接入到PyCharm中... 目录引言效果演示创建API key在PyCharm中下载Continue插件配置Continue引言

Python中的可视化设计与UI界面实现

《Python中的可视化设计与UI界面实现》本文介绍了如何使用Python创建用户界面(UI),包括使用Tkinter、PyQt、Kivy等库进行基本窗口、动态图表和动画效果的实现,通过示例代码,展示... 目录从像素到界面:python带你玩转UI设计示例:使用Tkinter创建一个简单的窗口绘图魔法:用

C#反射编程之GetConstructor()方法解读

《C#反射编程之GetConstructor()方法解读》C#中Type类的GetConstructor()方法用于获取指定类型的构造函数,该方法有多个重载版本,可以根据不同的参数获取不同特性的构造函... 目录C# GetConstructor()方法有4个重载以GetConstructor(Type[]

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal