1
0
Create a fake API using ChatGPT's website https://github.com/acheong08/ChatGPT-to-API
This repository has been archived on 2024-02-27. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
2023-05-17 21:23:34 +08:00
.github/workflows docker push on release only 2023-04-12 19:01:44 +08:00
docs format 2023-04-12 19:01:08 +08:00
internal Optional PUID 2023-05-17 19:42:19 +08:00
tools proxy test 2023-05-15 23:10:32 +08:00
.gitignore fix my idiocy 2023-05-15 19:29:09 +08:00
docker-compose.yml Docker (#2) 2023-04-12 10:31:44 +08:00
Dockerfile Update Dockerfile 2023-04-12 11:29:45 +08:00
go.mod load tokens from file 2023-04-11 12:28:01 +08:00
go.sum load tokens from file 2023-04-11 12:28:01 +08:00
handlers.go enable GPT-4 by default 2023-05-17 21:23:34 +08:00
main.go remove PUID 2023-04-30 17:13:20 +08:00
middleware.go refactor 2023-04-05 18:07:07 +08:00
README.md Update README.md 2023-04-20 08:23:52 +08:00

ChatGPT-to-API

Create a fake API using ChatGPT's website

API endpoint: http://127.0.0.1:8080/v1/chat/completions.

Help needed

  • Documentation.

Setup

Authentication

Access token retrieval has been automated: https://github.com/acheong08/ChatGPT-to-API/tree/master/tools/authenticator

Converting from a newline delimited list of access tokens to access_tokens.json

#!/bin/bash     

START="["
END="]"

TOKENS=""

while read -r line; do
  if [ -z "$TOKENS" ]; then
    TOKENS="\"$line\""
  else
    TOKENS+=",\"$line\""
  fi
done < access_tokens.txt

echo "$START$TOKENS$END" > access_tokens.json

Cloudflare annoyances

Proxy used by default or export API_REVERSE_PROXY="https://your.own.proxy.com/api/conversation"

Docker build & Run

docker build -t chatgpt-to-api .

# Running the API
docker run --name chatgpttoapi -d -p 127.0.0.1:8080:8080 chatgpt-to-api

# API path
http://127.0.0.1:8080/v1/chat/completions

Admin API docs

https://github.com/acheong08/ChatGPT-to-API/blob/master/docs/admin.md

API usage docs

https://platform.openai.com/docs/api-reference/chat

Docker compose

Hub address

version: '3'

services:
  app:
    image: acheong08/chatgpt-to-api # Use latest tag
    container_name: chatgpttoapi
    restart: unless-stopped
    ports:
      - '8080:8080'
    environment:
      SERVER_HOST: 0.0.0.0
      SERVER_PORT: 8080
      ADMIN_PASSWORD: TotallySecurePassword
      # If the parameter API_REVERSE_PROXY is empty, the default request URL is https://ai.fakeopen.com/api/conversation