Skip to content

Yet another ChatGPT UI, but more fit and svelte. Sveltekit app to have multiple conversations with chatbots.

License

Notifications You must be signed in to change notification settings

juliooa/the_agents

Repository files navigation

agents

The Agents

Yet another ChatGPT UI, but more fit and svelte, and with a secure backend.

Backend/Frontend Sveltekit app to have multiple conversations with chatbots. It connects to the OpenAI API.

Techstack

Features

  • Deploy in your own server
  • Safely store your API Key in the server
  • Run locally in your machine
  • Configurable amount of messages to send
  • Configurable system message to guide the assistant
  • Prompt templates: Speed up your questions with predefined templates
  • Prompt template parameters: Add parameters to the template and change them easily for
  • Start agents with predefined system message and prompt templates
  • Save all the messages in your database, continue your conversations later
  • Save the system message and prompt templates of conversations in the database
  • You can easily change the database provider to whatever you want
  • Auth system your needs.
  • Streaming messages
  • Edit messages
  • Create images with Dall-e
  • Voice input
  • Voice answers
  • Share conversations
  • Upload your own documents
  • Plugins

Setup

  • Create a .env file with your OpenAI Api key, and the urls of your postgres databases. See .env.supabase.example for reference. Your file should look like this:
SECRET_OPENAI_API_KEY="sk-XXXX"
DIRECT_URL="postgres:https://postgres:[YOUR_PASSWORD]@project.supabase.co:5432/postgres?connect_timeout=300"
DATABASE_URL="postgres:https://postgres:[YOUR_PASSWORD]@project.supabase.co:6543/postgres?pgbouncer=true"

If you want to use sqlite for a local database, check .env.sqlite.example, your file should look like this:

SECRET_OPENAI_API_KEY="sk-XXXXXXXX"
DATABASE_URL="file:./database_name.db"
  • npm install
  • npx prisma migrate dev to start the database and apply the schema
  • npm run dev to execute

Deploy

Add the environment variables to your system.

For serverless(e.g. Vercel) you can use Supabase as database, check this documentation.

Screenshots

Screen Shot 2023-04-06 at 00 36 43

Screen Shot 2023-04-06 at 00 36 14

Screen Shot 2023-04-06 at 00 36 23

Screen Shot 2023-04-06 at 00 36 32

Contact

Hi! you can find me here @julioandresdev

About

Yet another ChatGPT UI, but more fit and svelte. Sveltekit app to have multiple conversations with chatbots.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published