利用 ChatGPT 高效搜索:举一反三的思考方式,高效查找解决方案

文章目录

    • 基础思路
    • 举一反三
    • Go 语言 Web 框架
    • 延伸思考
    • 思考
    • 结论

2024-01-15-chatgpt-search-for-programmer.png

本文只是我的一些尝试,基于 ChatGPT 实现系统化快速搜索某编程语言的特定领域相关包或者基于其他语言类推荐落地方案的尝试。

这篇文章中描述的方式不一定是好方式,但应该会有一定的启示作用吧。让 ChatGPT 为我们的开发效率添砖加瓦。

基础思路

在学习和使用一门新的编程语言的过程中,找到合适的包对于解决特定问题至关重要。

传统上,还是主要依赖搜索引擎和社区资源来寻找这些包,但这个过程往往既耗时又充满挑战。现在,有了 ChatGPT,这一切都有了新的解决方案。

传统的搜索方法通常基于关键词搜索,但这种方法往往返回只是简单列举,我们要从大量不相关的结果找出我们想要的内容,需要花费大量时间去筛选。

ChatGPT 提供了一种更高效的方式:通过与 AI 对话来精确描述我们的需求,从而获得更加精准回答。不过我想说,不要像利用传统的搜索引擎一样利用 ChatGPT,ChatGPT 会思考。但毫无疑问,再聪明的好苗子,也是需要引导的。

举一反三

为了最大化 ChatGPT 的效用,我采用固定句式来描述我的需求,这么做的目标主要是为了引导它思考。

例如,当寻找 Golang 的 web 开发框架时,而不是简单地问“给我推荐一些 web 开发框架”,而是通过类比的方式地询问,如下所示:

按我这个句式说下关于 Go 的 xxx 相关内容:
Go 语言中,处理数据库的包通常分为三个主要层次:底层实现、数据库驱动以及上层的 ORM(对象关系映射)框架。首先,底层核心包是 sql/database,它为数据库操作提供了基础的接口和功能。接着,针对不同数据库类型的驱动包各不相同,例如,用于 MySQL 的驱动包是 go-sql-driver/mysql。最后,在更高的层面上,有基于如 sqlbuilderactiverecord 模式的实现,Go 语言中的相应包包括 ent 和 gorm,这些包提供了更高级别的数据库操作和抽象。

通过这种方式,引导 ChatGPT 去像我们一样地思考,举一反三,深入地理解我们的需求。而不是像以前的 AI 一样,机械呆滞地返回固定问题的答案。

Go 语言 Web 框架

我通过这个方式,以查找 Go 语言的 Web 框架包为例,我的问题描述如下:

按我这个句式推荐下 Go 的 Web 框架。[句式如上,省略]*

GPT 的回答如下所示:

在 Go 语言中,HTTP 框架的组织也可以分为几个主要层次,类似于处理数据库的包的结构。首先,底层核心包是 net/http,提供了构建 HTTP 服务器和客户端的基本工具,如路由、请求处理和发送响应。接下来,针对不同需求的 HTTP 中间件和路由工具,例如 Gorilla Mux 提供了高级的路由功能,而 Negroni 提供了易用的中间件管理。在更高的层次上,存在着基于如 mvcrestful 模式的全功能 Web 框架,如 Go 语言中的 Gin 和 Echo,它们提供了路由、中间件、模板渲染等更丰富的功能,以支持复杂的 Web 应用开发。此外,还有针对特定性能优化的 HTTP 工具,例如 Fasthttp,它专注于提供高性能的 HTTP 服务,适用于处理大量并发请求。这样的层次划分帮助开发者根据具体需求选择合适的 Go 语言 HTTP 框架和库。

延伸思考

我想说的是,这可能是一种引导方式。类似的,我们可以说:

在 Go Web 开发时,要用到的库有:Web 框架使用 gin、 orm 使用 gorm,用户权限认证使用 golang-jwt/jwt,依次类推 python 开发 Web 项目的推荐库

ChatGPT 返回内容:

对于Go Web开发,您提到的库选择是很不错的。以下是一些在Python Web项目中常用的库的推荐:

  1. Web框架:

    • Flask:Flask是一个轻量级的Python Web框架,适用于小型到中型的项目。
    • Django:Django是一个功能强大的Python Web框架,适用于大型项目和快速开发。
  2. ORM(对象关系映射):

    • SQLAlchemy:SQLAlchemy是一个流行的Python ORM库,它提供了多种数据库后端的支持,并具有强大的查询和模型定义功能。
  3. 用户权限认证:

    • Flask-Login:用于用户会话管理和身份验证的Flask扩展。
    • Django-Allauth:Django的全功能身份验证和账户管理解决方案。
  4. JWT(JSON Web Tokens):

    • PyJWT:PyJWT是Python中处理JWT的库,可以用于用户身份验证和授权。

这些库在Python Web开发中广泛使用,可以根据项目的需求选择合适的库。希望这些推荐对您有所帮助。如果您需要更多信息或有其他问题,请随时提问。

rust 是不熟悉的语言,我最近在尝试学习,同样的思路,还可以问 rust 的 web 开发套件。

chatGPT 回答如下:

当使用Rust进行Web项目开发时,以下是一些推荐的库和框架:

  1. Web框架:

    • Actix-web:Actix-web是一个高性能的、基于异步的Web框架,适用于构建快速、可伸缩的Web应用程序。
    • Rocket:Rocket是一个易于使用的Web框架,它提供了类型安全的路由和请求/响应处理。
  2. ORM(对象关系映射):

    • Diesel:Diesel是Rust的ORM库,它提供了类型安全的数据库查询和模型定义功能。
    • sqlx:sqlx是一个异步SQL库,允许您使用Rust进行数据库操作。
  3. 用户权限认证:

    • Keycloak:Keycloak是一个开源的身份和访问管理解决方案,可以用于用户身份验证和授权。
    • Auth0:Auth0是一个身份验证和授权服务,可以轻松集成到Rust应用程序中。
  4. JWT(JSON Web Tokens):

    • jsonwebtoken:jsonwebtoken是Rust中处理JWT的库,可用于身份验证和令牌生成。

这些库和框架可以帮助您构建高性能、安全的Rust Web应用程序。根据项目的需求和您的偏好,选择适合的库和框架进行开发。如果您需要更多信息或有其他问题,请随时提问。

不知道这个答案质量,你觉得如何呢?毫无疑问,这个答案,吊打搜索引擎。我这里只是简单举例,你还可以提供更复杂的需求,让它提供更多的推荐。

思考

通过上面的这些案例,我主要想说 ChatGPT 能像人类一样思考,但它的思考的模式是我们提供的。

这里面有一个非常简单的道理,如果你把 ChatGPT 想象是一个真正的人类,即使这个人类一个非常牛逼的大佬,但是如果他不是从教育你的角度出发,就不会说一些无关内容,一些的互动都是基于你的主动性,你的输入。如果你的问题的简单,它必然是回答的简单。

同理,如果你想让 ChatGPT 思考,你需要告诉它如何思考。这就是你要提供的信息,这个信息最能体现你的个人能力了。ChatGPT 能思考,但是基于的内容是你的输入的扩展。

结论

我想说 ChatGPT 不仅是一个对话工具,更是一个强大的技术资源搜索助手,或者说,它可以成为你的朋友,导师,关键在于你是否了解如何与它交流,让它如何去做。

它改变了寻找技术解决方案的方式。我通过简单的对话,让它思考推导,而不是像以前的智障 AI 或搜索引擎一样针对问题固定返回某个回答。

这种结合 AI 技术的搜索方法不仅节省了我们的时间,还为我们提供了更加精确和深入的技术见解,而非是简单的列举。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Autosar --- CRC8 SAE J1850 CRC计算

前言 CRC计算一般用于通信中,用来保证一组数据的完整性。 发送方发送一组数据dataACRC检验码CRCa(CRC校验码由数据算出); 接收方接收到数据dataACRC校验码CRCa,接收方通过与发送方约定好的计算公式,计算出一…

*p++和(*p)++一样吗

大家好,今天给大家介绍*p和(*p)的区别,文章末尾附有分享大家一个资料包,差不多150多G。里面学习内容、面经、项目都比较新也比较全!可进群免费领取。 *p 和 (*p) 在 C/C 语言中具有不同的含义。 *p:这个表…

Java研学-Maven基础

一 概述 Maven是一个跨平台的项目管理工具,主要用于基于 Java 平台的项目(Maven 底层为Java)构建、依赖包管理和项目信息管理,只需要运行一条简单的命令,就能高效的完成构建动作   Maven 能提供一种项目的依赖配置&a…

精细微调技术在大型预训练模型优化中的应用

目录 前言1 Delta微调简介2 参数微调的有效性2.1 通用知识的激发2.2 高效的优化手段3 Delta微调的类别3.1 增量式微调3.2 指定式微调3.3 重参数化方法 4 统一不同微调方法4.1 整合多种微调方法4.2 动态调整微调策略4.3 超参数搜索和优化 结语 前言 随着大型预训练模型在自然语…

超优秀的三维模型优化平台(轻量化、格式转换、可视化等)

老子云概述 老子云3D可视化快速开发平台,集云压缩、云烘焙、云存储云展示于一体,使3D模型资源自动输出至移动端PC端、Web端,能在多设备、全平台进行展示和交互,是全球领先、自主可控的自动化3D云引擎。 平台架构 平台特性 基于 …

C#,人工智能,机器人,路径规划,A*(AStar Algorithm)算法、源代码及计算数据可视化

Peter Hart Nils Nilsson Bertram Raphael 参考: C#,人工智能(AI)机器人路径规划(Path Planning)的ARA*(Anytime Replanning A* Algorithm)算法与源程序https://blog.csdn.net/…

Apache Doris (六十四): Flink Doris Connector - (1)-源码编译

🏡 个人主页:IT贫道-CSDN博客 🚩 私聊博主:私聊博主加WX好友,获取更多资料哦~ 🔔 博主个人B栈地址:豹哥教你学编程的个人空间-豹哥教你学编程个人主页-哔哩哔哩视频 目录 1. Flink与Doris版本兼容

【大数据】Flink 详解(八):SQL 篇 Ⅰ

《Flink 详解》系列(已完结),共包含以下 10 10 10 篇文章: 【大数据】Flink 详解(一):基础篇【大数据】Flink 详解(二):核心篇 Ⅰ【大数据】Flink 详解&…

基于Java+SSM+MYSQL的助农特色农产品销售系统详细设计和实现【附源码】

基于JavaSSM助农特色农产品销售系统详细设计和实现【附源码】 🍅 作者主页 央顺技术团队 🍅 欢迎点赞 👍 收藏 ⭐留言 📝 🍅 文末获取源码联系方式 📝 🍅 查看下方微信号获取联系方式 承接各种定…

笔试面试题——继承和多态

📘北尘_:个人主页 🌎个人专栏:《Linux操作系统》《经典算法试题 》《C》 《数据结构与算法》 ☀️走在路上,不忘来时的初心 文章目录 一、什么是多态?二、什么是重载、重写(覆盖)、重定义(隐藏)?三、 inli…

使用 Python 创造你自己的计算机游戏(游戏编程快速上手)第四版:第十九章到第二十一章

十九、碰撞检测 原文:inventwithpython.com/invent4thed/chapter19.html 译者:飞龙 协议:CC BY-NC-SA 4.0 碰撞检测涉及确定屏幕上的两个物体何时相互接触(即发生碰撞)。碰撞检测对于游戏非常有用。例如,如…

《动手学深度学习》学习笔记 第9章 现代循环神经网络

本系列为《动手学深度学习》学习笔记 书籍链接:动手学深度学习 笔记是从第四章开始,前面三章为基础知识,有需要的可以自己去看看 关于本系列笔记: 书里为了让读者更好的理解,有大篇幅的描述性的文字,内容很…

成功 BOM 流程的五个基本要素

您应该以确保 BOM 流程的方式实现和启用它们: 准确的 当前的 完全的 清除 可行的 追求准确性 为下游提供准确数据 制造商使用其 BOM 来通知下游操作他们需要执行什么。不言而喻,向其他团队和员工提供准确的信息至关重要;否则&…

transbigdata笔记:栅格参数优化

在transbigdata中,栅格参数有如下几个 params(lonStart,latStart,deltaLon,deltaLat,theta) 如何选择合适的栅格参数是很重要的事情,这会对最终的分析结果产生很大的影响。 怎么选择参数,和数据以及分析的目的息息相关,transbi…

25考研英语复习计划

Hello各位小伙伴大家好,今天要给大家分享的是英语备考计划,大家可以作为参考,制定适合自己的备考计划。 【英一/二】 英语分为英一、英二,一般学硕英一,专硕英二。 英一要比英二难度大。 【复习计划】 1-2月&#xf…

383. 观光(dp思想运用,Dijkstra)

383. 观光 - AcWing题库 “您的个人假期”旅行社组织了一次比荷卢经济联盟的巴士之旅。 比荷卢经济联盟有很多公交线路。 每天公共汽车都会从一座城市开往另一座城市。 沿途汽车可能会在一些城市(零或更多)停靠。 旅行社计划旅途从 S 城市出发&…

1.C语言基础知识

这里写目录标题 1.第一个C语言程序2.注释3.标识符4.关键字5.数据类型6.变量7.常量8.运算符9.输入输出输入输出 1.第一个C语言程序 C语言的编程框架 #include <stdio.h> int main() {/* 我的第一个 C 程序 */printf("Hello, World! \n");return 0; }2.注释 单行…

信管网2023年上半年信息系统项目管理师论文真题

链接 信息系统项目管理师真题题库 - 信管网 上午综合知识、下午案例分析和下午论文三部分 可以单个试题查看 可以在线考试 在线考试又分&#xff1a;考试模式、练习模式和机考模式

黑马程序员JavaWeb开发|案例:tlias智能学习辅助系统(6)解散部门

指路&#xff08;1&#xff09;&#xff08;2&#xff09;&#xff08;3&#xff09;&#xff08;4&#xff09;&#xff08;5&#xff09;&#x1f447; 黑马程序员JavaWeb开发|案例&#xff1a;tlias智能学习辅助系统&#xff08;1&#xff09;准备工作、部门管理_tlias智能…

【Qt】Qt配置

需要云服务器等云产品来学习Linux的同学可以移步/-->腾讯云<--/-->阿里云<--/-->华为云<--/官网&#xff0c;轻量型云服务器低至112元/年&#xff0c;新用户首次下单享超低折扣。 目录 一、Qt SDK下载 二、配置环境变量 三、新建工程(QWidget) 四、QWidg…