Skip to content
generated from vercel/ai-chatbot

your personal digital assistant, with publicly shareable conversations

License

Notifications You must be signed in to change notification settings

antoinewg/3x2y1z.com

Repository files navigation

An open-source AI chatbot app template built with Next.js, the Vercel AI SDK, OpenAI, and Vercel KV.

What's added in this repo, more than in the template:

  • authentication with Clerk
  • database with convex.dev
  • use gpt-4 instead of gpt-3.5

Features

  • Next.js App Router
  • React Server Components (RSCs), Suspense, and Server Actions
  • Vercel AI SDK for streaming chat UI
  • Support for OpenAI (default), Anthropic, Hugging Face, or custom AI chat models and/or LangChain
  • Edge runtime-ready
  • shadcn/ui
  • Chat History, rate limiting, and session storage with Vercel KV
  • Clerk for authentication and user management

Model Providers

This template ships with OpenAI gpt-4 as the default.

Creating a KV Database Instance

Follow the steps outlined in the quick start guide provided by Vercel. This guide will assist you in creating and configuring your KV database instance on Vercel, enabling your application to interact with it.

Remember to update your environment variables (KV_URL, KV_REST_API_URL, KV_REST_API_TOKEN, KV_REST_API_READ_ONLY_TOKEN) in the .env file with the appropriate credentials provided during the KV database setup.

Checkout to the branch convex to see convex as a primary database instead.

Running locally

You will need to use the environment variables defined in .env.example to run Next.js AI Chatbot. It's recommended you use Vercel Environment Variables for this, but a .env file is all that is necessary.

Note: You should not commit your .env file or it will expose secrets that will allow others to control access to your various OpenAI and authentication provider accounts.

  1. Install Vercel CLI: npm i -g vercel
  2. Link local instance with Vercel and GitHub accounts (creates .vercel directory): vercel link
  3. Download your environment variables: vercel env pull
pnpm install
pnpm dev

Your app template should now be running on localhost:3000.