Skip to content
This repository has been archived by the owner on Jun 2, 2024. It is now read-only.

Commit

Permalink
v5 - Library rewrite and Conversation Plugins (#40)
Browse files Browse the repository at this point in the history
  • Loading branch information
maxijonson authored Jul 30, 2023
1 parent 7bbb7a8 commit 059d44e
Show file tree
Hide file tree
Showing 431 changed files with 4,946 additions and 2,288 deletions.
3 changes: 2 additions & 1 deletion .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,9 @@ body:
multiple: true
options:
- "Library (gpt-turbo)"
- "CLI (gpt-turbo-cli)"
- "Stats Plugin (gpt-turbo-plugin-stats)"
- "Web (gpt-turbo-web)"
- "CLI (gpt-turbo-cli)"
- "Nest (gpt-turbo-nest)"
- "Discord (gpt-turbo-discord)"
validations:
Expand Down
3 changes: 2 additions & 1 deletion .github/ISSUE_TEMPLATE/docs_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,9 @@ body:
options:
- "Monorepo"
- "Library (gpt-turbo)"
- "CLI (gpt-turbo-cli)"
- "Stats Plugin (gpt-turbo-plugin-stats)"
- "Web (gpt-turbo-web)"
- "CLI (gpt-turbo-cli)"
- "Nest (gpt-turbo-nest)"
- "Discord (gpt-turbo-discord)"
validations:
Expand Down
3 changes: 2 additions & 1 deletion .github/ISSUE_TEMPLATE/feat_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,9 @@ body:
multiple: true
options:
- "Library (gpt-turbo)"
- "CLI (gpt-turbo-cli)"
- "Stats Plugin (gpt-turbo-plugin-stats)"
- "Web (gpt-turbo-web)"
- "CLI (gpt-turbo-cli)"
- "Nest (gpt-turbo-nest)"
- "Discord (gpt-turbo-discord)"
- type: dropdown
Expand Down
2 changes: 2 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ Issue: #
<!-- Which part of the project is affected by the pull request? Check all that apply. -->

- [ ] Library
- Plugins
- [ ] gpt-turbo-plugin-stats
- Implementations
- [ ] CLI
- [ ] Web
Expand Down
3 changes: 2 additions & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -168,8 +168,9 @@ Overall, try to keep consistency with the existing codebase, even if it's not ho
There are no strict rules for commit messages as all PRs will be squashed into a single commit by a maintainer when merging. However, we try to follow the following convention, which you can use (or not) in your contribution to help reviewers when reviewing your PRs.

- `[library]`: for changes to the library or its documentation.
- `[cli]`: for changes to the CLI implementation or its documentation.
- `[stats]`: for changes to the `gpt-turbo-plugin-stats` plugin or its documentation.
- `[web]`: for changes to the Web implementation or its documentation.
- `[cli]`: for changes to the CLI implementation or its documentation.
- `[nest]`: for changes to the Nest implementation or its documentation.
- `[discord]`: for changes to the Discord implementation or its documentation.
- `[docs]`: for changes to the documentation **not related to the library or one of its implementations**. (e.g. changes to the root README.md file or this contributing guide). These are usually markdown files.
Expand Down
33 changes: 24 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,17 @@
<img src="./logo/logo-inline-transparent.png" alt="GPT Turbo" width="524" />

[![npm i gpt-turbo](https://img.shields.io/npm/v/gpt-turbo?color=brightgreen&label=gpt-turbo&logo=npm)](https://www.npmjs.com/package/gpt-turbo)

Implementations using GPT Turbo

[![npm i -g gpt-turbo-cli](https://img.shields.io/npm/v/gpt-turbo-cli?color=brightgreen&label=gpt-turbo-cli&logo=windowsterminal&logoColor=white)](https://www.npmjs.com/package/gpt-turbo-cli)
[![https://gpt-turbo-web.chintristan.io/](https://img.shields.io/github/package-json/v/maxijonson/gpt-turbo?color=brightgreen&filename=packages%2Fweb%2Fpackage.json&label=gpt-turbo-web&logo=react)](https://gpt-turbo-web.chintristan.io/)
[![GPT Turbo - Nest](https://img.shields.io/github/package-json/v/maxijonson/gpt-turbo?color=brightgreen&filename=packages%2Fnest%2Fpackage.json&label=gpt-turbo-nest&logo=nestjs)](https://github.com/maxijonson/gpt-turbo/tree/develop/packages/nest)
[![GPT Turbo - Discord](https://img.shields.io/github/package-json/v/maxijonson/gpt-turbo?color=brightgreen&filename=packages%2Fdiscord%2Fpackage.json&label=gpt-turbo-discord&logo=discord)](https://discord.gg/Aa77KCmwRx)
[![https://gpt-turbo-web.chintristan.io/](https://img.shields.io/github/package-json/v/maxijonson/gpt-turbo?color=brightgreen&filename=packages/implementations/web/package.json&label=gpt-turbo-web&logo=react)](https://gpt-turbo-web.chintristan.io/)
[![GPT Turbo - Nest](https://img.shields.io/github/package-json/v/maxijonson/gpt-turbo?color=brightgreen&filename=packages/implementations/nest/package.json&label=gpt-turbo-nest&logo=nestjs)](https://github.com/maxijonson/gpt-turbo/tree/develop/packages/implementations/nest)
[![GPT Turbo - Discord](https://img.shields.io/github/package-json/v/maxijonson/gpt-turbo?color=brightgreen&filename=packages/implementations/discord/package.json&label=gpt-turbo-discord&logo=discord)](https://discord.gg/Aa77KCmwRx)

Plugins for GPT Turbo

[![npm i gpt-turbo-plugin-stats](https://img.shields.io/npm/v/gpt-turbo-plugin-stats?color=brightgreen&label=gpt-turbo-plugin-stats&logo=npm)](https://www.npmjs.com/package/gpt-turbo-plugin-stats)

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
</div>
Expand All @@ -14,7 +21,7 @@

> Are you a dev looking for the library? [Click here](./packages/lib/)!
GPT Turbo is a JavaScript library for seamless integration with OpenAI's Chat Completion API. It ensures smooth conversation continuity and message history tracking, perfect for creating conversational AI applications.
GPT Turbo is a JavaScript library for seamless integration with OpenAI's Chat Completion API. It allows you to manage conversation history for smooth conversation continuity, fine-tune chat completion parameters and define callable functions. The library also supports plugins for extending its functionality beyond the core features.

## Features

Expand All @@ -30,10 +37,12 @@ GPT Turbo is a JavaScript library for seamless integration with OpenAI's Chat Co

📜 Keeps track of the conversation history for you, making conversation continuity a breeze.

💰 Estimate the cost and size of conversations before sending them to the API.
💰 Estimate the cost and size of conversations before sending them to the API. (*through the `gpt-turbo-plugin-stats` plugin*)

💾 Easily persist conversations with serialization and deserialization methods.

🔌 Includes a plugin system for extending the library's functionality.

💻 Built entirely with TypeScript.

⚔️ Battle-tested in multiple environments. (See [implementations](#implementations))
Expand All @@ -42,10 +51,16 @@ GPT Turbo is a JavaScript library for seamless integration with OpenAI's Chat Co

This repo is a mono-repo containing both the [Library](./packages/lib/) and small projects powered by it. Here's a list of all the projects that were built with the GPT Turbo [Library](./packages/lib/)

- [CLI](./packages/cli/): A command-line interface to chat straight from your terminal.
- [Web](./packages/web/): A web app, very similar to ChatGPT, for handling chats in the browser.
- [Nest](./packages/nest/): A NestJS backend, for interacting with the library via a REST API.
- [Discord](./packages/discord/): A Discord bot for chatting in Discord servers, similar to Discord's own Clyde AI bot.
- [Web](./packages/implementations/web/): A web app, very similar to ChatGPT, for handling chats in the browser.
- [Discord](./packages/implementations/discord/): A Discord bot for chatting in Discord servers, similar to Discord's own Clyde AI bot.
- [CLI](./packages/implementations/cli/): A command-line interface to chat straight from your terminal.
- [Nest](./packages/implementations/nest/): A NestJS backend, for interacting with the library via a REST API.

## Plugins

GPT Turbo has a plugin system for extending the library's functionality. While anyone can create and publish custom plugins, this repo contains the following home-made plugins:

- [gpt-turbo-plugin-stats](./packages/plugins/gpt-turbo-plugin-stats/): A plugin for estimating the cost and size of conversations before sending them to the API.

## Discord

Expand Down
3 changes: 2 additions & 1 deletion lerna.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
{
"$schema": "node_modules/lerna/schemas/lerna-schema.json",
"version": "4.5.0"
"version": "4.5.0",
"useNx": false
}
Loading

0 comments on commit 059d44e

Please sign in to comment.