Skip to content
Avatar of vaithschmitzvaithschmitz/segment-ai-copilot

Next.js AI Chatbot with Twilio Segment Analytics

An open-source AI copilot with built-in segment analytics using Next.js, Vercel AI SDK, OpenAI, Vercel KV, and Twilio Segment.

Framework
Use Case
Next.js AI Chatbot with Twilio Segment Thumbnail

Features

Model Providers

This template ships with OpenAI gpt-3.5-turbo as the default. However, thanks to the Vercel AI SDK, you can switch LLM providers to Anthropic, Cohere, Hugging Face, or using LangChain with just a few lines of code.

Deploy Your Own

You can deploy your own version of the Next.js AI Chatbot with Twilio Segment observability to Vercel with one click:

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.

Creating a Postgres Database Instance

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

Remember to update your environment variables (POSTGRES_URL, POSTGRES_PRISMA_URL, POSTGRES_URL_NO_SSL, POSTGRES_URL_NON_POOLING, POSTGRES_USER, POSTGRES_HOST, POSTGRES_PASSWORD, POSTGRES_DATABASE) in the .env file with the appropriate credentials provided during the Postgres database setup.

Enabling Twilio Segment model tracking

For the full guided walkthrough, follow the blog post here.

Use your existing Twilio Segment account or create a free one here. Create a new node.js source by following the instructions here and record your write key.

Remember to update the segment write key in your environment .env file (NEXT_PUBLIC_SEGMENT_WRITE_KEY) with the write key to your node.js Segment source.

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, Twilio Segment 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 seed
pnpm dev

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

Authors

This template is created by Vercel, Next.js and Twilio Segment team members, with contributions from:

Next.js AI Chatbot with Twilio Segment Thumbnail
Avatar of vaithschmitzvaithschmitz/segment-ai-copilot

Next.js AI Chatbot with Twilio Segment Analytics

An open-source AI copilot with built-in segment analytics using Next.js, Vercel AI SDK, OpenAI, Vercel KV, and Twilio Segment.

Framework
Use Case

Features

Model Providers

This template ships with OpenAI gpt-3.5-turbo as the default. However, thanks to the Vercel AI SDK, you can switch LLM providers to Anthropic, Cohere, Hugging Face, or using LangChain with just a few lines of code.

Deploy Your Own

You can deploy your own version of the Next.js AI Chatbot with Twilio Segment observability to Vercel with one click:

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.

Creating a Postgres Database Instance

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

Remember to update your environment variables (POSTGRES_URL, POSTGRES_PRISMA_URL, POSTGRES_URL_NO_SSL, POSTGRES_URL_NON_POOLING, POSTGRES_USER, POSTGRES_HOST, POSTGRES_PASSWORD, POSTGRES_DATABASE) in the .env file with the appropriate credentials provided during the Postgres database setup.

Enabling Twilio Segment model tracking

For the full guided walkthrough, follow the blog post here.

Use your existing Twilio Segment account or create a free one here. Create a new node.js source by following the instructions here and record your write key.

Remember to update the segment write key in your environment .env file (NEXT_PUBLIC_SEGMENT_WRITE_KEY) with the write key to your node.js Segment source.

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, Twilio Segment 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 seed
pnpm dev

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

Authors

This template is created by Vercel, Next.js and Twilio Segment team members, with contributions from:

Unleash New Possibilities

Deploy your app on Vercel and unlock its full potential