不会写代码,也能部署一个独立ChatGPT?

news/2024/4/26 10:35:18/文章来源:https://blog.csdn.net/shmily77love/article/details/129028440

在这里插入图片描述

本教程使用GPT-3模型接口模拟ChatGPT项目,虽然与真正的ChatGPT存在差异,但是演示了ChatGPT的工作原理。

(ChatGPT服务是基于GPT-3模型,经过大量的微调训练而来的,本教程暂时不包含训练内容,之后我们会讲如何进行二次训练)

部署的本地api接口使用了node-chatgpt-api这个库,库基于Node.js开发。项目地址:
https://github.com/waylaidwanderer/node-chatgpt-api

要求Node.js环境 >= 16.0.0
如果没有安装Node.js,可以到这里https://nodejs.org/en/下载安装
安装完成后,打开cmd,输入node,可以看到安装完成,版本符合要求

D:\>node
Welcome to Node.js v16.14.0.
Type ".help" for more information.
> .exit

另外还需要你有一个OpenAI的 API KEY,
可以在https://platform.openai.com/account/api-keys获取

然后同下载项目:

D:\dev2023>git clone https://github.com/waylaidwanderer/node-chatgpt-api.git
Cloning into 'node-chatgpt-api'...
remote: Enumerating objects: 576, done.
remote: Counting objects: 100% (330/330), done.
remote: Compressing objects: 100% (92/92), done.
Receiving objects: 100% (576/576), 232.08 KiB | 805.00 KiB/s, done.246 eceiving objects:  97% (559/576)Resolving deltas: 100% (351/351), done.

进入项目文件夹:

D:\dev2023>cd node-chatgpt-api

安装项目依赖:

D:\dev2023\node-chatgpt-api>npm i
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@waylaidwanderer/fetch-event-source@3.0.1',
npm WARN EBADENGINE   required: { node: '>=16.15' },
npm WARN EBADENGINE   current: { node: 'v16.14.0', npm: '8.5.2' }
npm WARN EBADENGINE }added 163 packages, and audited 164 packages in 5s38 packages are looking for fundingrun `npm fund` for detailsfound 0 vulnerabilities
npm notice
npm notice New major version of npm available! 8.5.2 -> 9.4.2
npm notice Changelog: https://github.com/npm/cli/releases/tag/v9.4.2
npm notice Run npm install -g npm@9.4.2 to update!

编辑配置文件:
将settings.example.js复制一份为settings.js

D:\dev2023\node-chatgpt-api>copy settings.example.js settings.js
已复制         1 个文件。

然后用编辑器打开settings.js文件进行编辑

export default {// OpenAI API 密钥openaiApiKey: process.env.OPENAI_API_KEY || '这里填写您的openai密钥',chatGptClient: {// (可选)在 https://platform.openai.com/docs/api-reference/completions 中描述的参数modelOptions: {// 默认情况下模型设置为 text-chat-davinci-002-20221122,但您可以在此处覆盖它和其他任何参数model: 'text-chat-davinci-002-20221122',},// (可选)设置自定义说明,而不是“您是 ChatGPT...”// promptPrefix: 'You are Bob, a cowboy in Western times...',// (可选)为用户设置自定义名称// userLabel: 'User',// (可选)为 ChatGPT 设置自定义名称// chatGptLabel: 'ChatGPT',// (可选)设置为 true 以启用 `console.debug()` 日志记录debug: false,},// Keyv 缓存的选项,详见 https://www.npmjs.com/package/keyv。// 这用于存储对话,并支持其他驱动程序(默认情况下,对话存储在内存中)cacheOptions: {},// API 服务器的选项apiOptions: {port: process.env.API_PORT || 3000,host: process.env.API_HOST || 'localhost',// (可选)设置为 true 以启用 `console.debug()` 日志记录debug: false,},// 如果设置,ChatGPTClient 将使用 `keyv-file` 将对话存储到此 JSON 文件中,而不是存储在内存中。// 但是,如果设置了 cacheOptions.store,它将覆盖此设置。

这里可以过时行很多配置,比如你可以给ChatGPT换一个名字,
比如:你叫小美…
完整的ChatGPT自定义说明:
"You are ChatGPT, a large language model trained by OpenAI. You answer as concisely as possible for each response (e.g. don’t be verbose). It is very important that you answer as concisely as possible, so please remember this. If you are generating a list, do not have too many items. Keep the number of items short. Knowledge cutoff: 2021-09 Current date: 2023-01-31
“你是 ChatGPT,一个由 OpenAI 训练的大型语言模型。对于每个响应,你的回答尽可能简洁(例如,不要冗长)。尽可能简洁地回答是非常重要的,所以请记住这一点。如果您正在生成一个列表,请不要有太多的项目。保持项目的数量短。知识截止日期: 2021-09 当前日期: 2023-01-31”
默认只需要填好密钥就可以进行使用了,
但是模型定义这里可能需要换成官方的付费模型text-davinci-003。
注意,此处的model默认填的 text-chat-davinci-002-20221122 这是一个泄露模型,使用不计费但是经常无法连接,所以如果你想换成正常的,可以填写 text-davinci-003,这个是计费的模型,使用会扣除帐户余额,每个帐户默认赠送18美元,用完之后需要绑定国外信用卡才能继续消费。
使用项目:
输入npm run cli启动对话

D:\dev2023\node-chatgpt-api>npm run cli> @waylaidwanderer/chatgpt-api@1.10.5 cli
> node bin/cli.js╔═══════════════╗║  ChatGPT CLI  ║╚═══════════════╝Type "!" to access the command menu.
? Write a message: !
❯ !editor - Open the editor (for multi-line messages)!resume - Resume last conversation!new - Start new conversation!copy - Copy conversation to clipboard!delete-all - Delete all conversations!exit - Exit ChatGPT CLI

输入!符号可以看到内置了几种命令
!

editor - Open the editor (for multi-line messages) - 打开编辑器(适用于多行消息)
!resume - Resume last conversation - 恢复上一次对话
!new - Start new conversation  - 开始新对话
!copy - Copy conversation to clipboard - 将对话复制到剪贴板
!delete-all - Delete all conversations  - 删除所有对话
!exit - Exit ChatGPT CLI - 退出ChatGPT CLI

我们可以尝试一下聊天:

Type "!" to access the command menu.
? Write a message: 你好┌ ChatGPT ───────────────────┐│  你好!我能为你做些什么?│└────────────────────────────┘

如果您熟悉Node.js开发,您可以将此项目嵌入到您的项目中进行开发。当然,它也可以作为一个纯粹的API接口来调用,以实现您自己的用户管理系统,管理不同用户的上下文,以及未来将要分享的自定义数据集模型训练以及训练后的使用。

// 启动一个node.js服务器
npm start 或者 npm run server 
// 启动一个docker服务器
docker-compose up

使用方法
发送消息:

{"message": "Hello, how are you today?","conversationId": "your-conversation-id (optional)","parentMessageId": "your-parent-message-id (optional)"
}

返回消息:

// HTTP/1.1 200 OK
{"response": "I'm doing well, thank you! How are you?","conversationId": "your-conversation-id","messageId": "response-message-id"
}

ChatGPT正在迅速走红,全球都在推广和关注这个项目,许多人也正在尝试从中变现获利。然而,他们所采用的方法往往都过于简单和低门槛,如“写作文”、“写求职信”等。为了实现更高水平的商业价值,我们希望尝试更复杂,更深度定制的方法。例如,我们可以通过收集数据库并进行二次训练,比如训练一个适合公司实际情况的客户服务的机器人。
因此,我们将在以后逐渐分享我们的研究步骤和操作方法,以帮助那些希望深入了解GPT模型训练的朋友。这样,他们就可以以更低的技术门槛实现更高级的商业价值。

更多精彩内容可以关注同名公众号

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

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

相关文章

ChatGPT 的 10 种集成模式:从开源 AI 体验平台 ClickPrompt 中受到的启发

和国内外的很多公司一样,在 Open AI 公司开放了 ChatGPT API 接口之后,我们也在探索如何去结合到业务中。而在探索的过程中,我们发现了一个问题,大部分的业务人员并不了解 AI 的能力,所以我们开源构建了 ClickPrompt&a…

ChatGPT有多强?真的能替代程序员?一起来看看!

最近网络上很多文章都在说ChatGPT,神乎其神,我也试着玩了一下,这里分享下过程。 从结果来说,它离替代程序员还有很长的一段路要做。因为程序的工作虽然是由各个小模块组成,但是一个系统性的大逻辑,可能是现…

【分享】21个ChatGPT镜像站

分享21个能在国内无需科学上网使用ChatGPT的网站 ChatGPT镜像站(更新GPT4镜像站) AI EDU https://theb.ai/ https://poe.com/ https://dev.yqcloud.top/ https://chat.uue.me/ GeekChat https://qachat.vercel.app ChatGPT3.5国产镜像-博弈Ai Ch…

chatgpt免费获取KEY-chatgpt免费版生成文本

chatgpt有免费版本吗?OpenAI提供了两种版本的GPT模型,即GPT-2和GPT-3。其中GPT-2的某些层次在2019年对外开放,并提供了一些API,可以供用户免费试用,并在规定范围内广泛应用。但例如访问GPT API,调用更高等级…

chatGPT 中科院学术优化 超详细安装教程

1.下载 项目地址:https://github.com/binary-husky/chatgpt_academic 第一种:可以直接下载zip安装包,然后直接解压。 第二种:采用git来下载 git clone https://github.com/binary-husky/chatgpt_academic.git cd chatgpt_acad…

如何在新必应(New Bing)使用Chatgpt功能

1.效果展示 chatgpt回答的还是很全面的。 2.准备工作 2.1准备1个邮箱用来接收候选人名单通过的消息,我用的微软的outlook免费邮箱,可以直接点击这里注册 2.2下载最新的Microsoft Edge浏览器(),然后下载这个modheader…

开发自己私有chatGPT(六)训练自己的chatGPT openai模型,微调模型,列出微调任务,使用自定义模型教程...

在开发私有chatGPT的时候,如果我们使用官方的基础模型,那么回答的问题可能不符合我们自己的预设答案 现在就是通过官方的训练方法,提供一部分数据进去,训练出自己的私有模型 按照工具 pip install --upgrade openai设置环境变量 e…

ChatGPT提问指令大全(建议收藏)

在使用 ChatGPT 时,当你给的指令越精确,它的回答会越到位,举例来说,假如你要请它帮忙写文案,如果没给予指定情境与对象,它会不知道该如何回答的更加准确。 一、写报告 1、我现在正在 [报告的情境与目的]。…

Github的开源项目ChuanhuChatGPT和gpt-academic,专用于学术拓展ChatGPT

目录1 前言2 Chuanhu ChatGPT的安装部署3 ChatGPT学术优化3.1 主要功能3.2 下载软件安装运行3.3 用docker运行3.4 自定义快捷键(类似function)3.5 配置代理4 讨论1 前言 专用于科研工作的拓展Tool,优化Paper润色、markdown、Tex公式双显示、…

【ChatGPT】参加计算机科学考试(GPT-4对比GPT-3.5)

ChatGPT真的“无敌”了吗???? 当【ChatGPT】参加大学生计算机科学考试1.简介2.介绍3.ChatGPT(GPT-4对比GPT-3.5)参加计算机考试实验4.实验设计4.1实验介绍4.2 对ChatGPT提出问题4.3测试结果5. GTP-46. 讨论1.简介 我们…

ChatGPT调研

ChatGPT调研背景:ChatGPT简单介绍FINETUNED LANGUAGE MODELS ARE ZERO-SHOT LEARNERSFine-Tuning Language Models from Human PreferencesLearning to Summarize with Human FeedbackTraining language models to follow instructions with human feedbackChatGPTC…

ChatGPT在智能投顾领域应用探讨

ChatGPT上线不到一周用户突破100万,据报道称,ChatGPT开发者OpenAI预计ChatGPT明年年营收将会达到2亿美元,2024年营收将达到10亿美元。业内也都是ChatGPT的溢美之词,关于其实现的探讨已有不少。对其在具体场景中的应用探讨不多&…

如何使用自己的chatgpt

怎么开始chatgpt 对普通用户来说可以简单认为就是一个智能聊天机器人,比以往的智能机器人更加强大。要使用ChatGPT要做哪些准备工作呢 使用的工具 一个google邮箱账号 sms 接码平台 如何开始 首先点开 chatgpt官网 用google账号注册 然后就是短信验证 由于没有…

中科院学术专用版 ChatGPT,开源了!

公众号关注 “GitHubDaily”设为 “星标”,每天带你逛 GitHub!周末的时候,一位开发者将名为「ChatGPT Academic」的项目开源至 GitHub。仅用了短短一两天,该项目 Star 数便增长到了 1800,成为 GitHub 上又一个基于 Cha…

使用简单的编程为您的网站构建具有自定义知识的类似 ChatGPT 的聊天机器人

与 ChatGPT 类似,但其形式可以插入您的网站,并通过将基本的“老派”NLP 与尖端的 GPT-3 相结合,使用任何类型的定制信息进行扩展。 介绍 在 2022 年底,您很可能已经听说过 ChatGPT,甚至通过使用它见证了它的强大。ChatGPT 是一项革命性的人工智能技术,它允许用户与非常智…

快速集成ChatGPT,请收藏好这份入门指南(Python版)

ChatGPT 是 GPT-3 语言模型的变体,专为会话语言生成而设计。如果要在 Python 中使用 ChatGPT,您需要安装 OpenAI API 客户端并获取 API 密钥。在本文中,我们将设置一个简单的示例,教您在 Python 程序中使用 ChatGPT 所需的确切步骤…

ChatGPT和New Bing作为AI界新宠,两者有何异同

ChatGPT和New Bing是两个不同的实体,它们之间有一些区别也有一些相似之处。我先说说各自的特点,再汇总说说两者的异同点。 ChatGPT的特点: ChatGPT是一个基于神经网络的自然语言处理模型,能够自动生成自然语言响应。ChatGPT的模型…

我让API版的ChatGPT长了记性!

OpenAI的API接口是基于请求/响应模式的,每次请求的上下文是独立的,不会被记录和保存。因此,ChatGPT机器人无法记录和理解上一次请求的内容,也不会把上下文信息带入到下一次请求中。请看下面我通过API调用的方式和ChatGPT的聊天记录…

关于Chatgpt的所思所悟

关于最近看到的各种有关chatgpt的热火朝天的讨论、以及自己的所思所悟。我也有一些关于chatgpt的看法,随便写写。1、chatgpt 是类似于一种模电转数电的进步。模电转数电是指我们自然届的一些连续信号被采样后可以作为计算机等机器可以处理的离散值。说起来有点玄乎&…

沙龙|AI iPhone时刻来临!如何获得登上类ChatGPT的船票?

出品|网易科技数字星球作者|袁宁编辑|丁广胜兴奋麻了!还没从ChatGPT带来的震撼中回过神来,过去几天GPT-4、Microsoft 365 Copilot、Midjourney V5、Google PaLM API、文心一言相继引爆,互联网巨头纷纷抢滩入…