Firebase Genkit <> Anthropic AI Plugin
genkitx-anthropicai
is a community plugin for using Anthropic AI and all its supported models with Firebase GenKit.
Installation
Install the plugin in your project with your favorite package manager:
npm install genkitx-anthropicai
yarn add genkitx-anthropicai
Usage
Initialize
import 'dotenv/config';
import { configureGenkit } from '@genkit-ai/core';
import { defineFlow, startFlowsServer } from '@genkit-ai/flow';
import { anthropic } from 'genkitx-anthropicai';
configureGenkit({
plugins: [
anthropic({ apiKey: process.env.ANTHROPIC_API_KEY }),
],
logLevel: 'debug',
enableTracingAndMetrics: true,
});
Basic examples
The simplest way to call the text generation model is by using the helper function generate
:
const response = await generate({
model: claude3Haiku,
prompt: 'Tell me a joke.',
});
console.log(await response.text());
Multi-modal prompt
const response = await generate({
model: claude3Haiku,
prompt: [
{ text: 'What animal is in the photo?' },
{ media: { url: imageUrl } },
],
config: {
visualDetailLevel: 'low',
},
});
console.log(await response.text());
Within a flow
export const myFlow = defineFlow(
{
name: 'menuSuggestionFlow',
inputSchema: z.string(),
outputSchema: z.string(),
},
async (subject) => {
const llmResponse = await generate({
prompt: `Suggest an item for the menu of a ${subject} themed restaurant`,
model: claude3Opus,
});
return llmResponse.text();
}
);
startFlowsServer();
Contributing
Want to contribute to the project? That's awesome! Head over to our Contribution Guidelines.
Need support?
[!NOTE]
This repository depends on Google's Firebase Genkit. For issues and questions related to GenKit, please refer to instructions available in GenKit's repository.
Reach out by opening a discussion on Github Discussions.
Credits
This plugin is proudly maintained by the team at The Fire Company. 🔥
License
This project is licensed under the Apache 2.0 License.