ご友人を Novita AI にご紹介いただくと、お二人とも LLM API クレジットとして $10 を獲得できます(最大合計 $500 まで)。
開発者コミュニティを支援するため、Qwen2.5-7B、Qwen 3 0.6B、Qwen 3 1.7B、Qwen 3 4B は現在 Novita AI で無料でご利用いただけます。
天気を教えてくれるだけでなく、実際にライブで確認してくれる AI、概念を説明するだけでなく、パーソナライズされたレポートやチャートを生成したり、会議をスケジュールしてくれる AI を想像してみてください。推論、多言語対話、ビジュアル生成(HTML/SVG)に特化した強力で軽量なモデル GLM Z1 9B 0414 と組み合わせることで、関数呼び出しはさらに実用的になります。両者が連携することで、スマートアシスタントが実現します。
関数呼び出し(Function Calling)とは?
https://www.youtube.com/watch?v=Qor2VZoBib0
関数呼び出しにより、大規模言語モデル(LLM)は外部ツール、API、サービスとやり取りできるようになります。モデルはトレーニングデータのみに依存するのではなく、以下のことができるようになります。
- 外部の助けが必要かどうかを判断する
- 呼び出す適切な関数を選択する
- 適切に構造化されたパラメータを生成する
- 結果を応答に組み込む
これは、AI に電卓、カレンダー、旅行アプリなどを与えてタスクを支援するようなものと考えてください。
関数呼び出しの仕組み
- ユーザー入力 → モデルがクエリを受け取り分析する
- 関数選択 → 関連するツールまたは API を決定する
- パラメータ生成 → 構造化された入力(例:JSON)を構築する
- 関数実行 → 関数を実行し、結果を取得する
- 応答統合 → ユーザーに完全な回答を返す
例:「東京の天気は?」
| ステップ | 説明 |
| ユーザー入力 | 「東京の天気は?」 |
| 必要性の特定 | リアルタイムデータが必要 |
| 関数選択 | getWeather(location, units) を呼び出す |
| パラメータ生成 | { “location”: “Tokyo”, “units”: “celsius” } |
| API 実行 | 天気 API にリクエスト |
| 最終応答 | 「今日の東京は 22°C で晴れです。」 |
GLM Z1 9B 0414 とは?
モデル仕様
- パラメータ数: 90億(9B)、パフォーマンスとリソース効率のバランスを取った軽量設計。
- コンテキストウィンドウ: 32K、長文処理と複雑なタスクをサポート。
パフォーマンスの利点
- 高いパフォーマンス対サイズ比: 数学的推論、一般的なタスク、複雑な推論シナリオに優れ、軽量デプロイに最適。
- 主な強み:
- 数学的推論: AIME24、AIME25、Omni-MATH などのタスクで優れたパフォーマンス。
- コード生成: LCB(2408–2501)などのタスクで強力な結果。
- 指示追従と Q&A: SysBench(ISR)、IFEval、ArenaHard のタスクで優秀。
- 包括的なツール統合: BFCL(v3)などのタスクで良好なパフォーマンス。

トレーニングと最適化
- 事前学習データ: GLM-4-32B からの 15T の高品質データに基づいて構築。推論タイプの合成データを大量に含み、論理と推論能力を強化。
- 事後学習最適化: 人間の嗜好アライメント(Human Preference Alignment)を活用し、対話シナリオでのパフォーマンスを最適化。
GLM Z1 9B 0414 の拡張機能
- 多言語サポート
- 26言語をサポートし、中国語と英語で堅牢なパフォーマンスを発揮。グローバルアプリケーションに最適。
- テキスト生成と可視化
- テキスト間変換: 多様なテキスト生成タスクを処理。
- 視覚出力: 構造化された HTML および SVG コンテンツを生成し、インタラクティブ性とユーザビリティを向上。
- データとトレーニングの強み
- 広範な事前学習: 幅広いドメインをカバーする 15T の高品質データでトレーニングされ、合成推論データを含むため、強い汎化能力を保証。
- 対話最適化: 人間の嗜好アライメントにより微調整され、現実的で応答性の高い対話生成を実現。
GLM Z1 9B 0414 + 関数呼び出し = ?

1. 多言語アプリケーション
- リアルタイム翻訳:
関数呼び出しを利用して翻訳 API を統合し、サポートされている 26 言語で瞬時に正確な翻訳を実現。
- 用途:
- 多言語カスタマーサポートシステム。
- グローバル会議やライブストリーム向けのリアルタイム字幕。
- 用途:
- クロスランゲージチャットボット:
複数の言語での会話をシームレスに処理。対話最適化と関数呼び出しを活用して、文化的・文脈的に正確な応答を実現。
- 用途:
- グローバル E コマースプラットフォーム。
- 多言語教育用チャットボット。
- 用途:
2. 動的テキスト生成
- コンテンツパーソナライゼーション:
関数呼び出しを使用してユーザーデータにアクセスし、自然なテキストでパーソナライズされたレコメンデーションやレポートを生成。
- 用途:
- 教育プラットフォーム向けの個別学習計画。
- E コマース向けのカスタマイズされたマーケティングコンテンツ。
- 用途:
- 自動レポート生成:
テキスト生成と関数呼び出しを組み合わせ、リアルタイムデータ(売上、分析など)を取得し、構造化されたビジネスレポートを作成。
- 用途:
- ビジネスインテリジェンスダッシュボード。
- 財務または運用サマリー。
- 用途:
3. 可視化を活用したアプリケーション
- インタラクティブコンテンツ生成:
関数呼び出しを利用して構造化された HTML および SVG 要素を生成し、インタラクティブ性と可視化を強化。
- 用途:
- データ分析プラットフォーム向けの動的チャートやグラフ。
- 教育ツール向けのインタラクティブラーニングモジュールやインフォグラフィック。
- 用途:
- Web コンテンツ自動化:
動的 Web ページやアプリケーション向けのビジュアルコンポーネントを自動生成。
- 用途:
- 自動ニュースレター作成。
- インタラクティブな Web デザインアシスタント。
- 用途:
4. 対話駆動型インテリジェントアシスタント
- リアルタイムデータにアクセスするスマートアシスタント:
対話最適化と関数呼び出しを使用してリアルタイムデータ(天気、ニュース、株価など)を取得し、実用的な応答を提供。
- 用途:
- 仮想パーソナルアシスタント。
- リアルタイム旅行・イベントプランナー。
- 用途:
- タスク自動化:
関数呼び出しにより、アシスタントがスケジュール設定、メール送信、IoT デバイス管理などのタスクを実行可能。
- 用途:
- スマートホームシステム(照明、サーモスタットの制御など)。
- オフィス自動化ツール(会議スケジュール、メール下書きなど)。
- 用途:
5. 高度なトレーニングと推論アプリケーション
- 教育ツール:
推論能力と関数呼び出しを組み合わせて教育コンテンツを取得・分析し、クイズを作成したり数学の問題を解決。
- 用途:
- アダプティブラーニングプラットフォーム。
- 数学・理科の個別指導アシスタント。
- 用途:
- 科学研究支援:
推論事前学習と関数呼び出しを活用して、外部データを取得し洞察を生成したりデータセットを分析。
- 用途:
- 科学・技術分野の研究者向けツール。
- 自動文献レビューアシスタント。
- 用途:
6. マルチモーダルアプリケーション
- マルチモーダルコンテンツアシスタント:
テキスト生成とビジュアル機能を統合し、視覚的な説明やインタラクティブガイドなどのマルチモーダル出力を生成。
- 用途:
- インタラクティブ医療診断ツール(テキスト説明と注釈付きビジュアルの組み合わせ)。
- テキストと図を用いた製品組み立て・修理手順。
- 用途:
- クリエイティブコンテンツ生成:
ビジュアル出力機能を使用して、芸術的なビジュアル、インフォグラフィック、広告を作成。
- 用途:
- クリエイティブライティング・デザインアシスタント。
- マーケティングキャンペーン向けの広告コピーとグラフィック作成。
- 用途:
Novita AI で GLM Z1 9B 0414 の関数呼び出しを使用する方法
Novita AI は各 LLM の機能説明のサポートを開始しており、[コンソール](https://novita.ai/models-console/?utm_source=blog_llm&utm_medium=article&utm_campaign=/ llama-4-maverick-function-calling/) と [ドキュメント](https://novita.ai/docs/guides/llm-function-calling/?utm_source=blog_llm&utm_medium=article&utm_campaign= llama-4-maverick-function-calling) で直接確認できます。
ステップ 1: Novita AI にログイン
Novita AI のホームページにアクセスしたら、右上にある 「Log In」 または 「Get Started」 ボタンをクリックしてください。Google、GitHub、Hugging Face、または ** メールアドレス** で簡単にログインできます。お好きな方法をお選びください!

ステップ 2: コンソールで「Model API」をクリック!
ログインすると、Novita コンソールのダッシュボードに移動します。上部から 「Model API」 をクリックしてください。このセクションでは、利用可能なモデルの一覧と、** 関数呼び出し(Function Calling)** や ** 構造化出力(Structured Outputs)** をサポートしているかどうかなど、各モデルの機能に関する詳細情報にアクセスできます。

ステップ 3: モデルを選択して確認!
興味のあるモデルを見つけてクリックすると、右側にパネルが表示されます。「Supported Capabilities」 の下で、** 関数呼び出し(Function Calling)** と ** 構造化出力(Structured Outputs)** がサポートされているかどうかをすぐに確認できます。

ステップ 4: クライアントを初期化する
まず、Novita API キーを使ってクライアントを初期化します。
from openai import OpenAI
import json
client = OpenAI(
base_url="https://api.novita.ai/v3/openai",
# Novita AI API キーはこちらから取得: https://novita.ai/settings/key-management.
api_key="<YOUR Novita AI API Key>",
)
model = "thudm/glm-z1-9b-0414"
ステップ 5: 呼び出す関数を定義する
次に、モデルが呼び出せる Python 関数を定義します。この例では、天気情報を取得する関数です。
# Example function to simulate fetching weather data.
def get_weather(location):
"""Retrieves the current weather for a given location."""
print("Calling get_weather function with location: ", location)
# In a real application, you would call an external weather API here.
# This is a simplified example returning hardcoded data.
return json.dumps({"location": location, "temperature": "60 degrees Fahrenheit"})
ステップ 6: Tools とユーザーメッセージを含む API リクエストを構築する
次に、Novita エンドポイントへの API リクエストを作成します。このリクエストには、モデルが使用できる関数を定義する tools パラメータと、ユーザーのメッセージが含まれます。
tools = [
{
"type": "function",
"function": {
"name": "get_weather",
"description": "Get weather of an location, the user shoud supply a location first",
"parameters": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "The city and state, e.g. San Francisco, CA",
}
},
"required": ["location"]
},
}
},
]
messages = [
{
"role": "user",
"content": "What is the weather in San Francisco?"
}
]
# Let's send the request and print the response.
response = client.chat.completions.create(
model=model,
messages=messages,
tools=tools,
)
# Please check if the response contains tool calls if in production.
tool_call = response.choices[0].message.tool_calls[0]
print(tool_call.model_dump())
出力:
{'id': '0', 'function': {'arguments': '{"location": "San Francisco, CA"}', 'name': 'get_weather'}, 'type': 'function'}
関数呼び出し + GLM Z1 9B = 会話、思考、行動が可能なインテリジェントでモジュール化された多言語アシスタント。リアルタイムダッシュボード、言語ボット、科学ツールなどを構築する場合でも、この組み合わせは LLM の推論とアクションを橋渡しします。Novita AI のプラグアンドプレイサポートのおかげで、開発者は最小限のコードと最大限の柔軟性で、これらの機能を簡単に製品に組み込むことができます。
よくある質問
関数呼び出しで具体的に何ができるようになりますか?
関数呼び出しにより、LLM は天気 API、データベース、カスタム関数などの外部ツールの結果を選択、実行し、それらを使って応答できるようになります。
GLM Z1 9B が関数呼び出しに適している理由は何ですか?
その推論力、多言語サポート、HTML/SVG 生成能力により、動的でインタラクティブなグローバルアプリケーションに最適です。
関数呼び出しの実装は難しいですか?
いいえ。Novita AI を使用すれば、関数を定義し、スキーマを提供し、API を使ってモデルの応答とツール出力を統合するだけです。
Novita AI は、AI の野心を実現するオールインワンのクラウドプラットフォームです。統合 API、サーバーレス、GPU インスタンス — コスト効率の高いツールを提供。インフラを排除し、無料で始めて、AI のビジョンを現実にしましょう。

