5分钟内构建自定义训练的 ChatGPT

更新时间:2023/10/19, 13:04

本文将教你如何在5分钟内运行一个本地聊天GPT,该GPT是根据你的自定义数据进行训练的。 一个自定义训练的LLM机器人可以用于扫描大量数据并进行特定领域的对话。例如,你可以将机器人训练在公司知识库、教育材料、金融/法律甚至是分享旅行计划以规划你的完美路线上 🙂

这可以在5分钟内完成,让我们开始吧。

照片由Volodymyr Hryshchenko在Unsplash上提供

先决条件:

  • 本文假设你已经安装了Python 3.*.*和Pip(可以在这里下载)。要验证这一点,请打开终端并输入:python --versionpython3 --version 如果你正确设置了,你应该会得到类似下面的输出:

(确保在本指南中始终使用正确的Python引用)

  • pip --versionpip3 --version 如果你正确设置了,你应该会得到类似下面的输出:

(确保在本指南中始终使用正确的Pip引用)

  • 本文假设你已经拥有一个OpenAi账户(可以在这里创建)

  • 准备一些英文数据;我建议从少于100MB开始,然后慢慢添加更多。例如,数据可以是PDF、CSV或TXT格式。

让我们开始吧

(1)在终端中:

  • 升级Pip(Python包管理器): python -m pip install -U pip

  • 安装以下库: pip install openai gpt_index==0.4.24 langchain==0.0.118 PyPDF2 PyCryptodome gradio

OpenAI - 大型语言模型(LLM)用于创建和训练AI聊天机器人。 GPT Index - 用于连接你的数据。 PyPDF2 - 用于解析PDF。 Gradio - 聊天机器人用户界面。 Lang Chain - 用于开发由语言模型驱动的应用程序的框架。

  • 现在让我们创建你的机器人。进入你想创建机器人的文件夹: mkdir chatbot cd chatbot mkdir docs touch app.py

(2)在你喜欢的代码或文本编辑器中,打开app.py,并将以下代码粘贴到其中,然后保存:

from gpt_index import SimpleDirectoryReader, GPTListIndex, GPTSimpleVectorIndex, LLMPredictor, PromptHelper
from langchain.chat_models import ChatOpenAI
import gradio as gr
import sys
import os

os.environ["OPENAI_API_KEY"] = 'Your Secret API Key'

def construct_index(directory_path):
  max_input_size = 4096
  num_outputs = 512
  max_chunk_overlap = 20
  chunk_size_limit = 600

  prompt_helper = PromptHelper(max_input_size, num_outputs, max_chunk_overlap, chunk_size_limit=chunk_size_limit)
  llm_predictor = LLMPredictor(llm=ChatOpenAI(temperature=0.7, model_name="gpt-3.5-turbo", max_tokens=num_outputs))
  documents = SimpleDirectoryReader(directory_path).load_data()
  index = GPTSimpleVectorIndex(documents, llm_predictor=llm_predictor, prompt_helper=prompt_helper)
  index.save_to_disk('index.json')
  
  return index

def chatbot(input_text):
  index = GPTSimpleVectorIndex.load_from_disk('index.json')
  response = index.query(input_text, response_mode="compact")
  return response.response

iface = gr.Interface(fn=chatbot,
                     inputs=gr.components.Textbox(lines=7, label="输入你的文本"),
                     outputs="text",
                     title="自定义训练的AI聊天机器人")

index = construct_index("docs")
iface.launch(share=True)

(3)现在将你的数据文件移动到新创建的/chatbot/docs文件夹中。

(4)在浏览器中:

  1. 通过访问以下网址获取一个免费的OpenAi API密钥:https://platform.openai.com/account/api-keys

  2. 如有必要,请登录。

  3. 点击“+ 创建新的密钥”。

  4. 给你的密钥起个名字,然后点击“创建密钥”。

  5. 复制密钥并保存以备下一步使用。

  6. 在app.py中粘贴密钥,替换'Your Secret API Key'。

(5)回到终端,在/chatbot/文件夹中运行:python app.py

(6)打开你喜欢的浏览器,打开此URL:http://127.0.0.1:7860

就是这样。你完成了! 你应该会看到类似下面的界面:

现在你可以找到有价值的信息来教你的机器人,并学习如何从中受益。

AI奇想空间
AI奇想空间
https://aimazing.site
AI惊奇站是一个汇聚人工智能工具、资源和教程的导航网站。 在这里,你可以发现最新的AI技术、工具和应用,学习如何使用各种AI平台和框架,获取丰富的AI资源。 欢迎广大AI爱好者加入我们的社区,开启你的AI之旅!
AI交流群
Copyright © 2024 AI奇想空间.微信