Create a fake API using ChatGPT's website
https://github.com/acheong08/ChatGPT-to-API
ce0e59e853
feat: support dotenv fix: change gpt-4-mobile 2 gpt-4 |
||
---|---|---|
.github/workflows | ||
cases/sider | ||
conversion | ||
docs | ||
internal | ||
tools | ||
typings | ||
.env.example | ||
.gitignore | ||
docker-compose.yml | ||
Dockerfile | ||
go.mod | ||
go.sum | ||
handlers.go | ||
main.go | ||
middleware.go | ||
README_CN.md | ||
README.md |
ChatGPT-to-API
Create a fake API using ChatGPT's website
IMPORTANT
You will not get free support for this repository. This was made for my own personal use and documentation will continue to be limited as I don't really need documentation. You will find more detailed documentation in the Chinese docs by a contributor.
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
Getting set up
git clone https://github.com/acheong08/ChatGPT-to-API
cd ChatGPT-to-API
go build
./freechatgpt
Environment variables
PUID
- A cookie found on chat.openai.com for Plus users. This gets around Cloudflare rate limitshttp_proxy
- SOCKS5 or HTTP proxy.socks5://HOST:PORT
SERVER_HOST
- Set to 127.0.0.1 by defaultSERVER_PORT
- Set to 8080 by defaultOPENAI_EMAIL
andOPENAI_PASSWORD
- It will automatically refresh your PUID if set (requires Plus account)
Files (Optional)
access_tokens.json
- A JSON array of access tokens for cycling (Alternatively, send a PATCH request to the correct endpoint)proxies.txt
- A list of proxies separated by new line (Format:USERNAME:PASSWORD:HOST:PORT
)
Admin API docs
https://github.com/acheong08/ChatGPT-to-API/blob/master/docs/admin.md