Vercel AI SDK統合
Scavioは Vercel AI SDK向けのすぐに使えるツール群を提供しています。@scavio/ai-sdkからツールをインポートし、generateTextまたはstreamTextに渡すだけで、任意のAI SDKエージェントにGoogle、YouTube、Reddit、Amazon、Walmart、TikTok、Instagramを横断したリアルタイム検索を付与できます—1つのパッケージ、1つのAPIキー、カスタムHTTPコードは不要です。
前提条件
- Node.js 18以降。
- dashboard.scavio.devから取得したScavio APIキー。
インストール
npm install @scavio/ai-sdk aiaiとzodはピア依存関係です。scavio JS SDKは同梱されており、内部で呼び出されます。
APIキーの設定
export SCAVIO_API_KEY=sk_live_your_key各ツールファクトリは環境変数からSCAVIO_API_KEYを読み取ります。明示的に渡すこともできます:scavioSearch({ apiKey: "sk_live_..." })。
クイックスタート
import { generateText, stepCountIs } from "ai";
import { openai } from "@ai-sdk/openai";
import { scavioTools } from "@scavio/ai-sdk";
const { text } = await generateText({
model: openai("gpt-4o-mini"),
tools: scavioTools(),
stopWhen: stepCountIs(3),
prompt: "Find the official GitHub repo of the Agno framework and summarize it",
});
console.log(text);単一ツールの使用
各プロバイダーは独自のファクトリとしてもエクスポートされているため、モデルに提供するツールリストを絞り込むことができます:
import { generateText, stepCountIs } from "ai";
import { openai } from "@ai-sdk/openai";
import { scavioSearch, scavioAmazonSearch } from "@scavio/ai-sdk";
const { text } = await generateText({
model: openai("gpt-4o-mini"),
tools: {
scavio_search: scavioSearch({ maxResults: 5 }),
scavio_amazon_search: scavioAmazonSearch(),
},
stopWhen: stepCountIs(3),
prompt: "Compare prices for a mechanical keyboard on Amazon",
});各ファクトリは{ apiKey?, maxResults?, ...ScavioConfig }を受け取ります。maxResultsは、長いresults配列がモデルに到達する前に切り詰め(デフォルトは10)、トークン使用量を抑えます。
利用可能なツール
scavioTools()は、すべてのツールを名前でキー付けして返すため、toolsオプションにそのまま展開できます。または、ファクトリを個別にインポートすることもできます。
| ファクトリ | ツール名 | プロバイダー |
|---|---|---|
scavioSearch | scavio_search | Google Web検索 |
scavioYoutubeSearch | scavio_youtube_search | YouTube動画検索 |
scavioRedditSearch | scavio_reddit_search | Reddit (2クレジット) |
scavioAmazonSearch | scavio_amazon_search | Amazon商品 |
scavioWalmartSearch | scavio_walmart_search | Walmart商品 |
scavioTiktokSearch | scavio_tiktok_search | TikTok動画 |
scavioInstagramSearch | scavio_instagram_search | Instagramユーザー |
仕組み
各ツールは、型付けされたZod入力スキーマを持つ標準的なAI SDKのtool()です。そのため、モデルは正確な引数のヒントを得られ、SDKは実行前に呼び出しを検証します。呼び出しはscavio JS SDKを経由し、認証、レート制限、リクエストのフォーマットを処理します。ツールの結果は、生のScavio JSONレスポンスとしてモデルに返されます。
クレジットコスト
ほとんどの呼び出しは1クレジットです。Redditは2クレジット、Googleはlight_request=falseの場合に2クレジットかかります。プランの制限については レート制限リファレンスを、リトライのガイダンスについては エラーリファレンスを参照してください。