Installation Guide | Documentation | Contributing | License
This project provides a unified wrapper around the OpenAI, Claude, Cohere and Mistral APIs for Laravel. The goal is to simplify switching between different AI models and APIs, making it as seamless as possible.
Watch a short video on how to get set up in under 5 minutes.
- Open AI, Mistral, Claude & Cohere
- Conversation => Quickly prototype/build a chatbot (with history via DB)
- Completion => Complete or respond to a given prompt
- Open AI, Mistral (ONLY)
- Embedding => Create a vector representation from text
- Open AI (ONLY)
- Audio => Create an Audio file from a text prompt
- Image => Create an Image from a text prompt
- Moderation => Moderate text and flag for unwanted content (great for moderating comments)
- Transcription => Transcribe an audio file
- Quick Utilities (supported by all models)
- Summarize => Summarizes the given input
- extractKeywords => Extracts Keywords from a given input
- translateText => Translates the given input into another language
- generateContent => Generates content ideas from a given topic
The easiest way to install the package in your laravel app is to run the following command from within your project directory:
composer require paparascaldev/sidekick
Once Sidekick is installed you need to update your .env
file with your access tokens.
You only need to specify the token for the provider(s) you will use.
SIDEKICK_OPENAI_TOKEN='{API_KEY_HERE} (Recommended)'
SIDEKICK_MISTRAL_TOKEN='{API_KEY_HERE} (Optional)'
SIDEKICK_CLAUDE_TOKEN='{API_KEY_HERE} (Optional)'
SIDEKICK_COHERE_TOKEN='{API_KEY_HERE} (Optional)'
If you are not yet signed up with any of the AI providers, here are some links to help:
- https://platform.openai.com (Open Ai)
- https://console.anthropic.com (Claude)
- https://console.mistral.ai (Mistral)
- https://dashboard.cohere.com (Cohere)
Run your migrations using the command below:
php artisan migrate
After the .env
is updated you can start testing the plugin.
In order to see some examples of Sidekick in action I have created a playground. This is not available by default because some may not wish to use it.
If you would like to use it run the following artisan command to install the playground:
php artisan sidekick:install
This will install the routes and views into your application.
On completion, you can access the playground at:
/sidekick
Please refer to the wiki documentation that can be found here: Documentation
To find out about how you can get involved checkout the CONTRIBUTING.md or read my post on it here: https://ashleyjohnson.co.uk/journal/calling-all-laravel-devs-lets-collaborate-on-sidekick
Also, star my repository if you think it is useful.
I have tested the package using the following models:
gpt-3.5-turbo, gpt-4, tts-1, tts-1-hd, dall-e-2, dall-e-3, whisper-1, text-embedding-3-small, text-embedding-3-large, text-embedding-ada-002, text-moderation-latest, text-moderation-stable, text-moderation-007
mistral-small-latest, mistral-medium-latest, mistral-large-latest, open-mistral-7b, mistral-embed
claude-3-opus-20240229, claude-3-sonnet-20240229, claude-3-haiku-20240307
command-r-08-2024 command-r-plus-08-2024
Thank you to everyone who stars this repository.