こんにちは、エムザス ITサービス部です。
生成AIに「最新のニュースについて教えて」と質問して、期待通りの答えが返ってこなかった経験はありませんか?多くのAIには「知識のカットオフ」と呼ばれる、学習データが特定の日付で止まっているという弱点が存在します。
しかし、GoogleのGemini APIに搭載された機能を活用すれば、この弱点を克服し、指定したWebページの最新情報をリアルタイムで参照させることが可能です。
この記事では、AIの知識の限界を超える「URL参照機能」の使い方を、具体的なサンプルコードを交えて分かりやすくご紹介します。
AIの弱点「知識のカットオフ」とは?
AIモデルは、開発の段階で膨大な量のテキストや画像データを学習します。しかし、その学習データは、ある特定の時点(カットオフ日)で区切られており、それ以降に起きた新しい出来事や発見された情報については基本的に知識がありません。
そのため、「昨日発表された新製品のスペックは?」といった直近の情報を尋ねても、AIは正確に答えることができないのです。これがAIの大きな課題の一つとされていました。
Gemini APIの「Tools」で外部情報を参照
この「知識のカットオフ」問題を解決するのが、Gemini APIのTools(ツール)機能です。
この機能を使うと、AIが自身の内部知識だけでなく、Google検索や指定したWebページといった外部の情報源にアクセスできるようになります。今回は、特定のURLの情報を直接参照させる方法に焦点を当てます。
これにより、開発者はAIに対し、特定のWebページの内容を理解させた上で回答を生成させることが可能になります。つまり、カットオフ日を気にすることなく、常に最新で正確な情報に基づいた応答をAIにさせることができるのです。
【サンプルコード】指定したURLの内容をAIに要約させる
では、実際にどのようにコードを書くのか見ていきましょう。ここでは、Pythonを使って特定のURLの内容をGeminiに要約させる例をご紹介します。
このサンプルでは、Gemini APIのToolの一つであるURL Contextを使い、参照させたいURLを指定します。
import {
GoogleGenAI,
} from '@google/genai';
async function main() {
const ai = new GoogleGenAI({
apiKey: process.env.GEMINI_API_KEY,
});
const tools = [
{ urlContext: {} },
];
const config = {
thinkingConfig: {
thinkingBudget: -1,
},
tools,
responseMimeType: 'text/plain',
};
const model = 'gemini-2.5-pro';
const contents = [
{
role: 'user',
parts: [
{
text: `ここにプロンプトを入力`,
},
],
},
];
const response = await ai.models.generateContentStream({
model,
config,
contents,
});
let fileIndex = 0;
for await (const chunk of response) {
console.log(chunk.text);
}
}
main();
URL Contextツールを設定することで、Geminiはプロンプト(指示)の実行時に指定されたURLにアクセスし、その内容を文脈として理解します。
このコードを実行すると、指定されたページの内容をリアルタイムで読み込み、その情報を基に要約と重要ポイントの抽出を行ってくれます。
このように、AIの知識を外部の最新情報で補強することで、より正確で実用的なアプリケーションを開発することが可能になります。
今回は、Gemini APIのツール機能を使って、AIの「知識のカットオフ」という弱点を克服する方法をご紹介しました。
おわりに
- AIの弱点: 学習データが古く、最新情報に追いつけない。
- 解決策: Gemini APIのTools機能で、特定のURLなど外部情報を参照させる。
- 効果: AIにリアルタイムの情報を与え、回答の鮮度と正確性を飛躍的に向上させる。
この機能を活用すれば、単なる物知りなAIではなく、常に最新の情報にアクセスできる強力なリサーチアシスタントや、特定のドキュメントに精通した専門家のようなAIを構築できます。
ぜひ、皆さんの業務や開発にこのテクニックを取り入れて、AIの可能性をさらに引き出してみてください。