From 41aada0a4ac5fcff3a37efd926591b45e6ef9afe Mon Sep 17 00:00:00 2001 From: Alvin Bryan Date: Fri, 27 Sep 2024 17:51:00 +0100 Subject: [PATCH] first draft --- .../feature-flag-tutorials/use-cases/ai.md | 187 ++++++++++++++++++ .../use-cases/sveltekit-chatbot.png | Bin 0 -> 61474 bytes 2 files changed, 187 insertions(+) create mode 100644 website/docs/feature-flag-tutorials/use-cases/ai.md create mode 100644 website/docs/feature-flag-tutorials/use-cases/sveltekit-chatbot.png diff --git a/website/docs/feature-flag-tutorials/use-cases/ai.md b/website/docs/feature-flag-tutorials/use-cases/ai.md new file mode 100644 index 0000000000..4ea7907385 --- /dev/null +++ b/website/docs/feature-flag-tutorials/use-cases/ai.md @@ -0,0 +1,187 @@ +--- +title: How to use feature flags with AI +slug: /feature-flag-tutorials/use-cases/ai +--- + +Many tech companies today are implementing some form of generative AI with LLMs into their products. This is usually a chatbot or a content generator. + +The main way to interact with LLMs today is via a set of APIs, usually either OpenAI, Anthropic or aggregators like Groq. All the APIs usually have similar parameters, like: + +- `model`: The model and the specific version of the model to use. +- `prompt`: The prompt to give to the LLM. + +Because all these models vary a lot in their capabilities, chances are you'll be testing multiple models, and multiple versions of the same model, and multiple prompts. + +This is where feature flags are super useful. And this is what we'll be doing in this tutorial. + +We'll be starting with a basic chatbot. I know building a chatbot is a total cliché at this point, but it's a small, self-contained example that everyone knows how to interact with. You can take this example and apply it to any other use case where you need to interact with an LLM via an API. + +First, clone the repo: + +```sh +git clone https://github.com/alvinometric/feature-flags-ai +cd feature-flags-ai +``` + +Install the dependencies + +```sh +npm install +``` + +Run the app + +```sh +npm run dev +``` + +And you should see something like this: + +![chatbot UI](./sveltekit-chatbot.png) + +This is a simple Sveltekit app with a chatbot UI. It doesn't really matter if you've never used Sveltekit before. It's similar to Next.js or Nuxt or SolidStart, where your file structure defines your routes. + +The most important file for this tutorial is the `src/routes/api/chat/+server.js` file. + +It creates an API endpoint at `/api/chat`. When your frontend sends a POST request to `/api/chat`, this is the code that handles it. + +```javascript +import { createOpenAI } from "@ai-sdk/openai"; +import { streamText } from "ai"; +import { env } from "$env/dynamic/private"; + +const openai = createOpenAI({ + apiKey: env.OPENAI_API_KEY ?? "", +}); + +const variants = { + variant1: { + model: "gpt-3.5-turbo", + max_tokens: 4096, + temperature: 1, + }, + variant2: { + model: "gpt-4-turbo", + max_tokens: 4096, + temperature: 1, + }, + variant3: { + model: "gpt-4-vision-preview", + max_tokens: 4096, + temperature: 1, + }, +}; + +export const POST = async ({ request }) => { + const { messages } = await request.json(); + const variant = variants["variant1"]; + const result = await streamText({ + model: openai(variant.model), + messages, + max_tokens: variant.max_tokens, + temperature: variant.temperature, + }); + return result.toDataStreamResponse(); +}; +``` + +This file is doing a few key things: + +1. It sets up our OpenAI client with an API key. +2. It defines different AI model configurations in the `variants` object. +3. The `POST` function handles incoming chat requests. + +When a request comes in, it: + +- Extracts the messages from the request body +- Selects a variant (currently hardcoded to 'variant1') +- Uses the OpenAI API to generate a response +- Streams the response back to the client + +The `streamText` function part of some utilities provided by Vercel's AI SDK, which helps deal with real-time streaming of the AI's responses and other AI-related tasks. + +## Creating a feature flag with AI variants + +Instead of hardcoding `variant1`, we want to use feature flags to dynamically choose which AI model to use. This will let us easily switch between models, test different configurations, or even do some A/B testing. + +To implement this, we'll need to: + +1. Set up a feature flag provider (we'll use Unleash). +2. Replace our static `variants` selection with feature flag calls. +3. Use the feature flag in our code to determine which AI model and settings to use for each request. + +## 2. Install a local feature flag provider + +In this section, we’ll install Unleash, run the instance locally, log in, and create a feature flag. If you prefer, you can use other tools instead of Unleash, but you’ll need to update the code accordingly. The basic steps will probably be the same. + +Use Git to clone the Unleash repository and Docker to build and run it. Open a terminal window and run the following commands: + +```sh +git clone https://github.com/unleash/unleash.git +cd unleash +docker compose up -d +``` + +You will now have Unleash installed onto your machine and running in the background. You can access this instance in your web browser at [http://localhost:4242](http://localhost:4242). + +Log in to the platform using these credentials: + +``` +Username: admin +Password: unleash4all +``` + +Click the ‘New feature flag’ button to create a new feature flag. + + + +### Adding AI feature flags + +Now let's go back to the code and grab our AI config from the feature flag that we just created. + +First, install the Unleash Node.js client: + +```sh +npm install unleash-client +``` + +Now, let's modify our `+server.js` file to use Unleash: + +```javascript +import { initialize } from "unleash-client"; +import { createOpenAI } from "@ai-sdk/openai"; +import { streamText } from "ai"; +import { env } from "$env/dynamic/private"; + +const openai = createOpenAI({ + apiKey: env.OPENAI_API_KEY ?? "", +}); + +const unleash = initialize({ + url: "http://localhost:4242/api/", + appName: "my-ai-app", + customHeaders: { Authorization: env.UNLEASH_API_KEY ?? "" }, +}); + +export const POST = async ({ request }) => { + const { messages } = await request.json(); + + // Get the feature flag variant + const variant = unleash.getVariant("gpt-versions"); + + const result = await streamText({ + model: openai(variant.model), + messages, + max_tokens: variant.max_tokens, + temperature: variant.temperature, + }); + + return result.toDataStreamResponse(); +}; +``` + +This setup uses the Unleash client to fetch the value of a feature flag called `gpt-versions`. + +Now, instead of hardcoding 'variant1', we're dynamically choosing the AI model based on the feature flag variant. + +This setup gives us a ton of flexibility. Want to roll out GPT-4 to 10% of your users? Easy. Need to quickly switch everyone back to GPT-3.5 because of a bug? No problem. You can do all of this from your Unleash dashboard without touching your code. diff --git a/website/docs/feature-flag-tutorials/use-cases/sveltekit-chatbot.png b/website/docs/feature-flag-tutorials/use-cases/sveltekit-chatbot.png new file mode 100644 index 0000000000000000000000000000000000000000..e2fe363cc14ebb1f113e78a0219eeb7d7c0d0a9d GIT binary patch literal 61474 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 PU|a^e#yZr?*r5LdP@y~_ literal 0 HcmV?d00001