fxchen / SlackGPT

Use this starter application to explore interacting with OpenAI's ChatGPT inside of Slack. I discovered ChatGPT is way more powerful than expected. It's exciting, sometimes wrong, and delightful all at once. Feedback loops with AI whereever we're working is a step-wise gain in productivity.
MIT License
35 stars 9 forks source link

Not using the ChatGPT API #1

Open protodave opened 1 year ago

protodave commented 1 year ago

Nice work, and useful to have GPT-3 access directly in Slack. And cool to see the Slack next-gen platform in action... and Deno too!

One clarification you might want to mention in your README... this isn't using ChatGPT, which doesn't have a released official API yet.

This is using the completions endpoint, which is fine for zero-shot scenarios, but it isn't stateful or conversational (not maintaining a conversation_id/parent_id that ChatGPT uses, for example).

This also uses the text-davinci-003 model, which is part of the GPT-3.5 series like the ChatGPT model, but they are distinct.

Though some folks have reverse-engineered the ChatGPT API and have released libraries to access the unofficial API until the official one is available:

Node: https://github.com/transitive-bullshit/chatgpt-api

Python: https://github.com/acheong08/ChatGPT https://github.com/rawandahmad698/PyChatGPT

fxchen commented 1 year ago

Hey there! Appreciate the clarification. I'll add a note this uses the GPT-3.5 API (but lacks iteration cycles that's useful in the magic in ChatGPT).

The session-based ChatGPT packages have browser-based workarounds that are still unsupported by the official API thus far.

I'd like to build threads for iteration once the API is supported in OpenAI. A natural extension of SlackGPT would be using threads to keep / pass state back to OpenAI's future ChatGPT.

protodave commented 1 year ago

A message thread would be a great fit to manage an ongoing ChatGPT session, good idea! And I suppose you could maintain the conversation_id/parent_id state either in the metadata for the messages and responses, or maybe somehow in the thread itself if that allows for custom metadata fields.

fxchen commented 1 year ago

Hey @protodave! I had a chance this morning to update and implement the tool against OpenAI's new Chat Completions API.

Building threading could be useful if there's interest!

BigBerny commented 1 year ago

Building threading could be useful if there's interest!

That would be awesome. To predict it should also only use the input from this thread. This could also improve the quality.