命令行版 ChatGPT,支持代码高亮,流式输出

开源地址: https://github.com/evilpan/gptcli

前两天 OpenAI 公开了 gpt-3.5-turbo 的接口,于是想着能不能用命令行实现一个简单的版本。一方面是对于程序员而言命令行非常常用,另一方面也是因为 Web 版本的比较难部署,需要额外的服务器。

于是周末撸了两天,先是实现了一个简单的版本,可以请求 OpenAI api 并获取结果,然后把结果用 markdown 在终端上渲染出来。后来网友建议加上流式的输出,于是又调研了以下,发现确实可以实现。不过这期间有个小坑就是 openai 的流式 api 使用了 aiohttp 这个库,这个库本身支持 HTTP/HTTPS proxy,但是不支持 socks,所以后来通过一个三方的拓展去间接改造了以下。

总而言之,目前支持的功能如下:

  • 流式输出
  • Markdown/代码高亮
  • 支持对话上下文
  • 支持科学访问 api.openat.com
  • 支持输入多行(通过 < 命令)

一些内置的命令:

Input: help
options:<        输入多行reset    清空会话,删除上下文help	   帮助exit     退出

实现效果: https://asciinema.org/a/564585

ChatGPT 命令行版本

彩蛋:
在这里插入图片描述

开源地址: https://github.com/evilpan/gptcli

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

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

相关文章

【微软亚洲研究院交流20191031】周明博士(自然语言处理导论)

周明博士现任微软亚洲研究院首席研究员&#xff0c;同时担任中国计算机学会理事、中文信息技术专委会主任、术语工作委员会主任、以及中国中文信息学会常务理事&#xff0c;并且在哈尔滨工业大学、天津大学、南开大学、山东大学等多所院校兼任博士导师。他是中国第一个中英翻译…

只有程序猿才能看懂的搞笑段子

目录 一、PHP是最好的语言 二、你需要客户端吗 三、 大爷年轻的秘诀 四、 神特马的注释 五、对联 六、凑整 七、你的今天就是我的明天 八、好像没买错 九、 婚礼誓言 十、永生 一、PHP是最好的语言 女&#xff1a;你能让这个论坛的人都吵起来&#xff0c;我今晚就跟你走.男&am…

解决鼠标光标圆圈一直闪烁问题

问题 今天早上开机之后&#xff0c;电脑鼠标小圈圈就一直闪烁&#xff0c;百度了半天&#xff0c;从网上一直搜索&#xff0c;怎么解决。最终我发现他在后台其实有一个东西一直在跑。是搜狗的一个服务。 1.按住shiftctrlesc打开任务管理器&#xff0c;找到搜狗服务 2.右键结束…

离职两年后,程序员遭前东家索赔:Bug 是你写的

整理 | 郑丽媛 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 问&#xff1a;身为一名程序员&#xff0c;你能确保至今写的代码中没有一个 Bug 吗&#xff1f; 程序员&#xff1a;当然不能。 问&#xff1a;那你不怕这些 Bug 导致重大损失&#xff0c;然后公司起…

对话投资人:我们已经不看虚拟数字人赛道了

被新概念迷花眼&#xff0c;热闹过后&#xff0c;投资人们的思考开始趋于冷静。 数科星球 原创 作者丨数数 编辑丨十里香 在定义上&#xff0c;数字人、虚拟人或数字替身都是将人物进行虚拟仿真。其三者概念略有不同&#xff0c;其中&#xff0c;虚拟人以抖音平台中的虚拟网红&…

离职两年的程序员,被前东家索赔:bug是你写的.....

问&#xff1a;身为一名程序员&#xff0c;你能确保至今写的代码中没有一个 Bug 吗&#xff1f; 程序员&#xff1a;当然不能。 问&#xff1a;那你不怕这些 Bug 导致重大损失&#xff0c;然后公司起诉你吗&#xff1f; 程序员&#xff1a;哈&#xff0c;还有这样的事&#xff…

最小化动态编程语言的缺点

本文介绍了动态语言的优缺点&#xff0c;倡导大家在享受动态语言的自由度时&#xff0c;也要尽可能地像静态语言那样思考&#xff0c;遵循一些规范和原则&#xff0c;避免一些隐患和错误。 原文链接&#xff1a;https://stackoverflow.blog/2023/01/19/adding-structure-to-dyn…

盘点微服务架构下的诸多身份验证方式

身份认证是授予用户访问系统并授予使用系统的必要权限的过程。而提供了这一功能的服务&#xff0c;就是身份认证服务。 作者 | 罗泽轩&#xff0c; 赵士瑞 责编 |梦依丹 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 在传统的单体软件应用程序中&#xff0…

第5章信息系统工程

信息系统工程是用系统工程的原理、方法来指导信息系统建设与管理的一门工程技术学科&#xff0c;它是信息科学、管理科学、系统科学、计算机科学与通信技术相结合的综合性、交叉性、具有独特风格的应用学科。当前信息系统工程的主要任务是研究信息处理过程内在的规律&#xff0…

离职两年后,程序员遭前东家索赔:Bug是你写的

&#x1f447;&#x1f447;关注后回复 “进群” &#xff0c;拉你进程序员交流群&#x1f447;&#x1f447; 整理 | 郑丽媛 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 问&#xff1a;身为一名程序员&#xff0c;你能确保至今写的代码中没有一个 Bug 吗&…

ChatGPT 过时了,Auto-GPT才是未来

Auto-GPT概述 AutoGPT 是一项卓越的 AI 技术&#xff0c;一个实验性开源应用程序&#xff0c;它通过 API 利用 GPT-4 和 GPT-3.5 通过迭代自己的提示并在每次迭代中构建它们来创建成熟的项目。Auto-GPT是 GPT-4 完全自主运行并突破 AI 可能性界限的首批示例之一。它可以读写文件…

【PPT】《挑战用chatgpt完成流水线操作的ppt,再也不用担心每周肝组会报告ppt了#人工智能 #chatgpt应用领域 快学起来!!!》- 知识点目录

《挑战用chatgpt完成流水线操作的ppt&#xff0c;再也不用担心每周肝组会报告ppt了#人工智能 #chatgpt应用领域 快学起来&#xff01;&#xff01;&#xff01;》 1. PPT文字模板说明&#xff08;Prompt&#xff09; 我的名字叫做【haozi】,帮我制作一篇内容为《如何做好一名…

如何通过ChatGPT快速生成PPT?ChatGPT搭配闪击PPT生成PPT,你只需要输入一个标题

了解闪击PPT的【文字转PPT】功能 闪击PPT有一个文本转PPT功能&#xff0c;这也是今天的主角 我的名字叫做芝士不吃&#xff0c;帮我制作一篇内容为《秦朝为什么会灭亡》PPT&#xff0c;要求如下&#xff1a; 第一、一定要使用中文。 第二、页面形式有3种&#xff0c;封面、目…

【3分钟高效制作PPT】ChatGPT搭配闪击PPT生成PPT,你只需要输入一个标题

Hello&#xff0c;大家好&#xff0c;我是你的好伙伴AI博士 今天我来分享一下&#xff0c;怎么用ChatGPT配合闪击PPT&#xff0c;只输入一个标题&#xff0c;怎么生成一份高颜值的PPT。 第一步&#xff1a;了解闪击PPT的【文字转PPT】功能 闪击PPT有一个文本转PPT功能&#x…

如何使用ChatGPT的API(一)大语言模型如何工作

这篇文章介绍大语言模型的一些概念&#xff0c;包括它是如何工作的&#xff0c;什么是Token等等。 大语言模型如何工作 我们从一个示例开始说起。 当我们写一个提示“我喜欢吃”&#xff0c;然后要求一个大型语言模型根据这个提示填写后面可能的内容。它可能会说&#xff0c…

IP-Guard能否限制PC端微信登录?

能否限制PC端微信登录&#xff1f; 不能限制微信登录&#xff0c;但可以通过应用程序控制策略&#xff0c;禁止微信程序启动。 在控制台-【策略】-【应用程序】&#xff0c;添加以下策略&#xff1a; 动作&#xff1a;禁止 应用程序&#xff1a;wechat.exe 可以实现禁止微信启…

七年老程序员的三四月总结:三十岁、准备婚礼、三次分享

你好&#xff0c;我是 shixin&#xff0c;一名工作七年的安卓开发。 每两个月我会做一次总结&#xff0c;记下这段时间里有意义的事和值得反复看的内容&#xff0c;为的是留一些回忆、评估自己的行为、沉淀有价值的信息。 一转眼 2023 年过去了三分之一&#xff0c;这两个月经历…

一张图就是一个故事,用 SceneXplain 讲个好故事

精准的图像描述不仅可以让人们更容易理解图像背后的故事和信息&#xff0c;还可以让图像更易于被检索和识别。然而&#xff0c;对于那些复杂的图像来说&#xff0c;写出既准确又详细的描述实在是件非常困难的事情。 图像描述算法的演变 所谓 Image Caption(图像描述)任务&#…

NLP 中语言表示 (向量化) 的基本原理和历史演变综述

目录 1 前言2 语言表示2.1 离散表示2.1.1 独热编码2.1.2 词袋模型2.1.3 TF-IDF 模型2.1.4 N-gram 模型2.1.5 基于聚类的表示 2.2 连续表示2.2.1 分布式表示2.2.2 Word Embedding2.2.2.1 Word2Vec2.2.2.2 GloVe2.2.2.3 FastText 2.2.3 基础神经网络模型2.2.3.1 神经词袋模型2.2.…

七年程序员的三四月总结:三十岁、准备婚礼、三次分享

你好&#xff0c;我是 shixin&#xff0c;一名工作七年的安卓开发。 每两个月我会做一次总结&#xff0c;记下这段时间里有意义的事和值得反复看的内容&#xff0c;为的是留一些回忆、评估自己的行为、沉淀有价值的信息。 一转眼 2023 年过去了三分之一&#xff0c;这两个月经…