打造个人专属 chatGPT

打造个人专属 chatGPT

部署一个专属的 chatGPT,告别网络和各种烦恼,从此 AI 无忧。还可以使用各种其他不同的模型。
author
Wonderhows January 08, 2024

介绍

在不断发展的人工智能领域,无缝管理和访问来自不同提供商的多种语言模型的能力对于开发人员、爱好者和企业来说是一个游戏规则改变者。今天,我们将深入探讨 One API 和 NextChat 的创新世界,这两个强大的开源项目正在重塑我们与 AI 语言模型(如 OpenAI 的 GPT 系列、Azure OpenAI Service、Anthropic Claude、Google PaLM 2 和 Gemini)交互的方式,和更多。通过组合这些工具,您可以创建私人、可定制且经济高效的 ChatGPT 体验,供个人或共享使用。

One API:通往领先 AI 语言模型的统一网关

One API 是一个强大的 OpenAI API 管理和分发系统,以其多功能性和用户友好的方法而脱颖而出。借助 One API,您可以通过一个简化的界面访问多种大型语言模型 (LLM)。无论您使用 OpenAI 的 SDK 还是标准 HTTP 请求协议,One API 都只需一个 API 密钥即可简化流程。

主要功能:

  • 多提供商支持:使用一个统一的系统与各个人工智能提供商连接。
  • 流媒体支持:借助流媒体支持,享受与大多数模型的实时交互。
  • 内置计费:通过令牌和基于请求的计费系统控制您的成本,管理员可以在其中为每个模型和提供商设置单独的价格。
  • 即用即付:用户受益于灵活且经济高效的解决方案,该解决方案优于 ChatGPT Plus 等传统订阅模式。

NextChat:类似 ChatGPT 的可自定义 Web 客户端

NextChat,以前称为 ChatGPT Next Web,是一款专为 OpenAI 服务设计的尖端跨平台 Web 客户端。它超越了标准的聊天界面,为那些渴望更定制的人工智能交互的人提供了增强的功能。

主要功能:

  • 自定义指令和提示:使用自定义 GPT 指令和提示快捷方式定制您的 AI 体验。
  • 可调整参数:通过设置 temperature 、 max_tokens 、 top_p 和 attached message count 等参数来微调您的对话。
  • 更强的定制性:与标准 ChatGPT 相比,NextChat 提供了更加个性化的触感,迎合了希望更好地控制 AI 交互的用户。
  • PWA 支持:Web 应用程序可以作为 PWA(渐进式 Web 应用程序)安装在您的设备上,从而提供更原生的体验。

将 One API 与 NextChat 相结合:个人 AI 引擎

通过将 One API 与 NextChat 集成,您可以使用 API 密钥和自定义 GPT 提示部署您自己的私有 ChatGPT 实例。这种组合提供了一个独特的机会:

  • 一键多个提供程序:使用单个 API 密钥访问各种 LLM 提供程序和模型。
  • 私密且可共享:为自己设置私人 ChatGPT 或邀请朋友和家人享受您的定制 AI 平台。
  • 轻松部署:借助 Docker,这两个项目都是容器化的,可以使用 docker-compose 进行简单部署。

部署 One API 和 NextChat

要开始享受个性化的 ChatGPT 体验,您需要:

  • 在您的系统上安装 Docker 和 Docker Compose。
  • 克隆 One API 和 NextChat 的存储库。
  • 根据您的偏好和提供的文档配置设置。
  • 使用 docker-compose 部署每项服务,瞧,您已经准备好与您的定制 AI 互动了!
version: "3.8"

services:
  # https://github.com/songquanpeng/one-api/blob/main/docker-compose.yml
  one-api:
    image: justsong/one-api:latest # Repalce it with `justsong/one-api-en:latest` to use English version
    container_name: one-api
    restart: always
    command: --log-dir /app/logs
    ports:
      - "3000:3000"
    volumes:
      - ./data/oneapi:/data
      - ./logs:/app/logs
    environment:
      - SQL_DSN=oneapi:123456@tcp(db:3306)/one-api  # Modified this line, or comment out to use SQLite as database
      - REDIS_CONN_STRING=redis://redis
      - SESSION_SECRET=random_string  # Replace with a random string
      - TZ=Asia/Shanghai  # Use your own timezone
    depends_on:
      - redis
      - db
    healthcheck:
      test: [ "CMD-SHELL", "wget -q -O - http://localhost:3000/api/status | grep -o '\"success\":\\s*true' | awk -F: '{print $2}'" ]
      interval: 30s
      timeout: 10s
      retries: 3

  redis:
    image: redis:latest
    container_name: redis
    restart: always

  db:
    image: mysql:8.2.0
    restart: always
    container_name: mysql
    volumes:
      - ./data/mysql:/var/lib/mysql
    ports:
      - '3306:3306'
    environment: # Init the database with these environment variables
      TZ: Asia/Shanghai
      MYSQL_ROOT_PASSWORD: 'OneAPI@justsong'
      MYSQL_USER: oneapi
      MYSQL_PASSWORD: '123456'
      MYSQL_DATABASE: one-api

  # https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/blob/main/docker-compose.yml
  chatgpt-next-web:
    image: yidadaa/chatgpt-next-web
    container_name: chatgpt-next-web
    restart: always
    ports:
      - "3001:3000"

现在这两个服务已在您的计算机上运行,​​您可以分别通过 http://localhost:3000 和 http://localhost:3001 访问它们。

请按照 One API 的文档来配置设置并正确部署它们。

如何使用自定义 ChatGPT

成功部署服务后,第一步涉及在 One API 中配置您首选的大型语言模型 (LLM) 及其各自的提供程序。随后,生成一个 token 作为您唯一的 API 密钥。此密钥需要与 NextChat 设置中的 One API 入口点集成,建立两个服务之间的链接。

配置完成后,您就可以与个性化 AI 进行对话了。

为了更加方便,您可以在 One API 的设置中将 NextChat 指定为默认聊天客户端。通过这样做,将在 One API 的 token 管理页面上提供自动配置 NextChat 的快捷方式,从而简化连接和使用 AI 平台的过程。

结论

One API 和 NextChat 代表了人工智能助手领域可访问性和定制化的新时代。通过利用这些工具,您可以享受量身定制、高效且经济高效的 ChatGPT 体验。无论是为了个人享受、教育目的,还是作为您的业务工具,个性化人工智能的力量现在都触手可及。

comments powered by Disqus