chrisbward / go-chatgpt

An unofficial ChatGPT client in Golang.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ChatGPT client (unofficial)

Unofficial golang client for ChatGPT. Reverse Engineered from chat.openai.com

Usage

  1. Install the package.
go get github.com/abhayptp/go-chatgpt
  1. Get bearer token from the browser.

To avoid needing to refresh bearer token every hour, you can also copy "__Secure-next-auth.session-token" key from cookie and pass it in Credentials in Step 3.

  1. Pass the bearer token while initializing client.
package main

import (
	"fmt"

	"github.com/abhayptp/go-chatgpt"
)

func main() {

	// Initialize. Copy bearer-token and session-token from browser developer tools.
	c := chatgpt.NewChatGpt(chatgpt.NewClient(&chatgpt.Credentials{
		BearerToken: "Bearer <bearer-token>",
		SessionToken: "<session-token>",
		}))

	// Send message
	res, err := c.SendMessage("hello")
	if err != nil {
		// Handle err
	}

	// Handle response
	fmt.Println(res)
}

About

An unofficial ChatGPT client in Golang.


Languages

Language:Go 100.0%