straico-custom-provider
v0.1.0
Published
Straico custom provider for Vercel AI SDK
Maintainers
Readme
Straico Custom Provider for Vercel AI SDK
This package provides a custom provider for using the Straico API with the Vercel AI SDK.
Project Structure
src/provider/index-simple.ts- Simplified implementation that doesn't depend on @ai-sdk/providersrc/provider/straico-provider.ts- Original implementation following Vercel AI SDK provider patternsexamples/- Example usage and integration with Next.js
Installation
yarn add straico-custom-providerUsage
import { straico } from 'straico-custom-provider';
// Use the provider with a specific model
const model = straico('anthropic/claude-3-haiku:beta', {
fileUrls: ['https://example.com/file.csv'],
youtubeUrls: ['https://www.youtube.com/watch?v=example'],
});
// Generate a completion
const result = await model.doGenerate([
{ type: 'text', text: 'What key terms from the file also appear in the YouTube video?' }
], {});
console.log(result);Configuration
You can configure the provider by creating a custom instance:
import { createStraicioProvider } from 'straico-custom-provider';
const customStraico = createStraicioProvider({
apiKey: 'your-api-key', // Or set STRAICO_API_KEY environment variable
baseURL: 'https://your-proxy.com/v1', // Custom API endpoint
headers: {
'X-Custom-Header': 'value'
}
});Environment Variables
STRAICO_API_KEY: Your Straico API key
Integration with Next.js
See examples/integration-example.md for a complete example of integrating with Next.js and the Vercel AI SDK.
About Straico
Straico is an API that allows you to:
- Process prompts with multiple models simultaneously
- Work with files and YouTube videos
- Get detailed usage and pricing information
Example Request Format
const data = {
"models": [
"anthropic/claude-3-haiku:beta",
"openai/gpt-3.5-turbo-0125"
],
"message": "Which key terms from the 100-word space document also appear in the YouTube video about the universe?",
"file_urls": [
"https://prompt-rack.s3.amazonaws.com/api/1721329178731_space_words.csv"
],
"youtube_urls": [
"https://www.youtube.com/watch?v=zORUUqJd81M"
]
};Development Notes
We've created two implementations:
- Original Implementation - Following the Vercel AI SDK provider patterns, but encountering issues with the latest version of @ai-sdk/provider
- Simplified Implementation - A standalone implementation that doesn't depend on @ai-sdk/provider
We recommend using the simplified implementation, which is exported as the default from this package.
Development
# Install dependencies
yarn install
# Build the package
yarn build
# Run in watch mode during development
yarn devLicense
MIT
