Skip to content

Example project showing how you can use Edge Config and Feature Flags with the Vercel AI SDK

Notifications You must be signed in to change notification settings

vercel-labs/ai-sdk-flags-edge-config

Repository files navigation

Vercel AI SDK, Next.js, Edge Config and Feature Flags Example

This example demonstrates how to use the Vercel AI SDK with Next.js, Feature Flags, and Edge Config to create a flexible AI-powered application with dynamic model switching capabilities.

Deploy your own

Deploy with Vercel

How to use

Run create-next-app with npm, Yarn, or pnpm to bootstrap the example:

npx create-next-app --example https://github.com/vercel-labs/ai-sdk-flags-edge-config ai-sdk-flags-edge-config-example
yarn create next-app --example https://github.com/vercel-labs/ai-sdk-flags-edge-config ai-sdk-flags-edge-config-example
pnpm create next-app --example https://github.com/vercel-labs/ai-sdk-flags-edge-config ai-sdk-flags-edge-config-example

To run the example locally you need to:

  1. Sign up for accounts with the AI providers you want to use (e.g., OpenAI, Anthropic).
  2. Get / Add API keys for each provider.
  3. Set up Edge Config in your Vercel dashboard.
  4. Set the required environment variables as shown in the .env.example file, but in a new file called .env.
  5. npm install to install the required dependencies.
  6. npm run dev to launch the development server.

Note: you can generate the value for the FLAGS_SECRET by running the following code in your terminal:

node -e "console.log(crypto.randomBytes(32).toString('base64url'))"

To run the node-example.ts file run the following command in your terminal

pnpm tsx node-example.ts

Learn More

To learn more about Vercel AI SDK, Next.js, Feature Flags, and Edge Config, take a look at the following resources:

About

Example project showing how you can use Edge Config and Feature Flags with the Vercel AI SDK

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published