65 lines
2.9 KiB
Markdown
65 lines
2.9 KiB
Markdown
<a href="https://nextjs.chat/">
|
|
<img alt="Next.js 13 and App Router-ready AI chatbot." src="https://nextjs.chat/opengraph-image?257c2a5cdc6cb3cb">
|
|
<h1 align="center">Next.js Chat</h1>
|
|
</a>
|
|
|
|
<p align="center">
|
|
Next.js 13 and App Router-ready AI chatbot.
|
|
</p>
|
|
|
|
<p align="center">
|
|
<a href="#introduction"><strong>Introduction</strong></a> ·
|
|
<a href="#model-providers"><strong>Model Providers</strong></a> ·
|
|
<a href="#running-locally"><strong>Running locally</strong></a> ·
|
|
<a href="#authors"><strong>Authors</strong></a>
|
|
</p>
|
|
<br/>
|
|
|
|
# Introduction
|
|
|
|
A Next.js 13 and App Router-ready AI chatbot template featuring:
|
|
|
|
- [Next.js](https://nextjs.org) App Router
|
|
- React Server Components (RSCs), Suspense, and Server Actions
|
|
- [Vercel AI SDK](https://sdk.vercel.ai/docs) for streaming chat UI
|
|
- Support for OpenAI (default), Anthropic, HuggingFace, or custom AI chat models and/or LangChain
|
|
- Edge runtime-ready
|
|
- [shadcn/ui](https://ui.shadcn.com)
|
|
- Styling with [Tailwind CSS](https://tailwindcss.com)
|
|
- [Radix UI](https://radix-ui.com) for headless component primitives
|
|
- Icons from [Phosphor Icons](https://phosphoricons.com)
|
|
- Chat History, rate limiting, and session storage with [Vercel KV](https://vercel.com/storage/kv)
|
|
- [Next Auth](https://github.com/next-auth) for authentication
|
|
|
|
## Model Providers
|
|
|
|
This template ships with OpenAI `gpt-3.5-turbo` as the default. However, thanks to the [Vercel AI SDK](https://sdk.vercel.ai/docs), switching LLM providers to [Anthropic](https://anthropic.com), [HuggingFace](https://huggingface.co), or using [LangChain](https://js.langchain.com) with just a few lines of code.
|
|
|
|
## Running locally
|
|
|
|
You will need to use the environment variables [defined in `.env.example`](.env.example) to run Next.js AI Chatbot. It's recommended you use [Vercel Environment Variables](https://vercel.com/docs/concepts/projects/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`
|
|
|
|
```bash
|
|
pnpm install
|
|
pnpm dev
|
|
```
|
|
|
|
Your app should now be running on [localhost:3000](http://localhost:3000/).
|
|
|
|
## Authors
|
|
|
|
This library is created by [Vercel](https://vercel.com) and [Next.js](https://nextjs.org) team members, with contributions from:
|
|
|
|
- Jared Palmer ([@jaredpalmer](https://twitter.com/jaredpalmer)) - [Vercel](https://vercel.com)
|
|
- Shu Ding ([@shuding\_](https://twitter.com/shuding_)) - [Vercel](https://vercel.com)
|
|
- shadcn ([@shadcn](https://twitter.com/shadcn)) - [Contractor](https://shadcn.com)
|
|
|
|
<a href="https://github.com/vercel-labs/ai-chatbot/graphs/contributors">
|
|
<img src="https://contrib.rocks/image?repo=vercel-labs/ai-chatbot" />
|
|
</a>
|